|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] tools/xl: Make extra= usable in combination with cmdline=
c/s 986aea7fbe "xl.cfg: add 'cmdline' in config file" introduced cmdline= and
make extra= and root= unusable if cmdline= was present.
For the vm.cfg file itself, this makes sense. However, for development
purposes it is very convenient to have a cmdline= in the cfg file, and specify
extra= on the `xl create` command line.
While updating the manpage, correct the entry for cmdline=. There is never
any appending which goes on with this option, but after this change extra= may
be appended to cmdline=.
Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
CC: Ian Jackson <Ian.Jackson@xxxxxxxxxx>
CC: Wei Liu <wl@xxxxxxx>
CC: Anthony PERARD <anthony.perard@xxxxxxxxxx>
In particular, this is useful for testing Xen as a PVH guest, where switching
between a PV and PVH dom0 involves adding "dom0=pvh dom0-iommu=none" to
command line. Now, given a single build of Xen under test, two tests can be
run with just
# xl create shim.cfg ramdisk=\"test-pv64-example\"
and
# xl create shim.cfg ramdisk=\"test-hvm64-example\" extra=\"dom0=pvh\
dom0-iommu=none\"
without needing to edit shim.cfg inbetween.
---
docs/man/xl.cfg.5.pod.in | 14 ++++++++++----
tools/xl/xl_parse.c | 12 ++++++++----
2 files changed, 18 insertions(+), 8 deletions(-)
diff --git a/docs/man/xl.cfg.5.pod.in b/docs/man/xl.cfg.5.pod.in
index c99d40307e..ca34f3c623 100644
--- a/docs/man/xl.cfg.5.pod.in
+++ b/docs/man/xl.cfg.5.pod.in
@@ -431,18 +431,24 @@ Load the specified file as the ramdisk.
=item B<cmdline="STRING">
-Append B<STRING> to the kernel command line. (Note: the meaning of
-this is guest specific). It can replace B<root="STRING">
-along with B<extra="STRING"> and is preferred. When B<cmdline="STRING"> is set,
-B<root="STRING"> and B<extra="STRING"> will be ignored.
+Use B<STRING> as the kernel command line. (Note: the meaning of this is guest
+specific).
+
+When this option is specified, B<root="STRING"> will be ignored.
=item B<root="STRING">
+This option is deprecated and its use is discouraged. It will be ignored if
+B<cmdline=> is specified.
+
Append B<root=STRING> to the kernel command line (Note: the meaning of this
is guest specific).
=item B<extra="STRING">
+This option is deprecated and its use in configuration files is discouraged.
+It may however be useful to use on the command line for B<xl create>.
+
Append B<STRING> to the kernel command line. (Note: the meaning of this
is guest specific).
diff --git a/tools/xl/xl_parse.c b/tools/xl/xl_parse.c
index e105bda2bb..2cad5c6e08 100644
--- a/tools/xl/xl_parse.c
+++ b/tools/xl/xl_parse.c
@@ -287,10 +287,14 @@ static char *parse_cmdline(XLU_Config *config)
xlu_cfg_get_string (config, "extra", &extra, 0);
if (buf) {
- cmdline = strdup(buf);
- if (root || extra)
- fprintf(stderr, "Warning: ignoring root= and extra= "
- "in favour of cmdline=\n");
+ if (root)
+ fprintf(stderr, "Warning: ignoring root= in favour of cmdline=\n");
+
+ if (extra) {
+ xasprintf(&cmdline, "%s %s", buf, extra);
+ } else {
+ cmdline = strdup(buf);
+ }
} else {
if (root && extra) {
xasprintf(&cmdline, "root=%s %s", root, extra);
--
2.11.0
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |