[libvirt] [PATCH 02/10] Convert character devices over to use -device

Daniel P. Berrange berrange at redhat.com
Tue Dec 15 15:14:42 UTC 2009


The current character device syntax uses either

  -serial tty,path=/dev/ttyS2

Or

  -chardev tty,id=serial0,path=/dev/ttyS2 -serial chardev:serial0

With the new -device support, we now prefer

  -chardev file,id=serial0,path=/tmp/serial.log -device isa-serial,chardev=serial0

This patch changes the existing -chardev syntax to use this new
scheme, and fallbacks to the old plain -serial syntax for old
QEMU.

The monitor device changes to

  -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -mon chardev=monitor

In addition, this patch adds --nodefaults, which kills off the
default serial, parallel, vga and nic devices. THis avoids the
need for us to explicitly turn each off
---
 src/qemu/qemu_conf.c                               |   74 +++++++++++++-------
 src/qemu/qemu_conf.h                               |    1 +
 .../qemuxml2argv-channel-guestfwd.args             |    2 +-
 .../qemuxml2argv-console-compat-chardev.args       |    2 +-
 .../qemuxml2argv-parallel-tcp-chardev.args         |    2 +-
 .../qemuxml2argv-serial-dev-chardev.args           |    2 +-
 .../qemuxml2argv-serial-file-chardev.args          |    2 +-
 .../qemuxml2argv-serial-many-chardev.args          |    2 +-
 .../qemuxml2argv-serial-pty-chardev.args           |    2 +-
 .../qemuxml2argv-serial-tcp-chardev.args           |    2 +-
 .../qemuxml2argv-serial-tcp-telnet-chardev.args    |    2 +-
 .../qemuxml2argv-serial-udp-chardev.args           |    2 +-
 .../qemuxml2argv-serial-unix-chardev.args          |    2 +-
 .../qemuxml2argv-serial-vc-chardev.args            |    2 +-
 tests/qemuxml2argvtest.c                           |   26 ++++----
 15 files changed, 74 insertions(+), 51 deletions(-)

diff --git a/src/qemu/qemu_conf.c b/src/qemu/qemu_conf.c
index 61e719d..16e8d2c 100644
--- a/src/qemu/qemu_conf.c
+++ b/src/qemu/qemu_conf.c
@@ -909,6 +909,8 @@ static unsigned int qemudComputeCmdFlags(const char *help,
         flags |= QEMUD_CMD_FLAG_MEM_PATH;
     if (strstr(help, "-chardev"))
         flags |= QEMUD_CMD_FLAG_CHARDEV;
+    if (strstr(help, "-device"))
+        flags |= QEMUD_CMD_FLAG_DEVICE;
 
     if (version >= 9000)
         flags |= QEMUD_CMD_FLAG_VNC_COLON;
@@ -1945,6 +1947,9 @@ int qemudBuildCommandLine(virConnectPtr conn,
     if (!def->graphics)
         ADD_ARG_LIT("-nographic");
 
+    if (qemuCmdFlags & QEMUD_CMD_FLAG_DEVICE)
+        ADD_ARG_LIT("-nodefaults");
+
     if (monitor_chr) {
         virBuffer buf = VIR_BUFFER_INITIALIZER;
 
@@ -1959,26 +1964,32 @@ int qemudBuildCommandLine(virConnectPtr conn,
             ADD_ARG_LIT("-chardev");
             ADD_ARG(virBufferContentAndReset(&buf));
 
-            if (monitor_json)
-                virBufferAddLit(&buf, "control,");
+            virBufferAddLit(&buf, "chardev=monitor");
 
-            virBufferAddLit(&buf, "chardev:monitor");
-        }
+            if (virBufferError(&buf)) {
+                virBufferFreeAndReset(&buf);
+                goto no_memory;
+            }
 
-        else {
+            ADD_ARG_LIT("-mon");
+            if (monitor_json)
+                ADD_ARG_LIT("chardev=monitor,mode=control");
+            else
+                ADD_ARG_LIT("chardev=monitor,mode=readline");
+        } else {
             if (monitor_json)
                 virBufferAddLit(&buf, "control,");
 
             qemudBuildCommandLineChrDevStr(monitor_chr, &buf);
-        }
 
-        if (virBufferError(&buf)) {
-            virBufferFreeAndReset(&buf);
-            goto no_memory;
-        }
+            if (virBufferError(&buf)) {
+                virBufferFreeAndReset(&buf);
+                goto no_memory;
+            }
 
-        ADD_ARG_LIT("-monitor");
-        ADD_ARG_LIT(virBufferContentAndReset(&buf));
+            ADD_ARG_LIT("-monitor");
+            ADD_ARG(virBufferContentAndReset(&buf));
+        }
     }
 
     if (def->localtime)
@@ -2172,8 +2183,11 @@ int qemudBuildCommandLine(virConnectPtr conn,
     }
 
     if (!def->nnets) {
-        ADD_ARG_LIT("-net");
-        ADD_ARG_LIT("none");
+        /* If we have -device, then we set -nodefault alrady */
+        if (!(qemuCmdFlags & QEMUD_CMD_FLAG_DEVICE)) {
+            ADD_ARG_LIT("-net");
+            ADD_ARG_LIT("none");
+        }
     } else {
         for (i = 0 ; i < def->nnets ; i++) {
             virDomainNetDefPtr net = def->nets[i];
@@ -2232,15 +2246,19 @@ int qemudBuildCommandLine(virConnectPtr conn,
     }
 
     if (!def->nserials) {
-        ADD_ARG_LIT("-serial");
-        ADD_ARG_LIT("none");
+        /* If we have -device, then we set -nodefault alrady */
+        if (!(qemuCmdFlags & QEMUD_CMD_FLAG_DEVICE)) {
+            ADD_ARG_LIT("-serial");
+            ADD_ARG_LIT("none");
+        }
     } else {
         for (i = 0 ; i < def->nserials ; i++) {
             virBuffer buf = VIR_BUFFER_INITIALIZER;
             virDomainChrDefPtr serial = def->serials[i];
 
-            /* Use -chardev if it's available */
-            if (qemuCmdFlags & QEMUD_CMD_FLAG_CHARDEV) {
+            /* Use -chardev with -device if they are available */
+            if ((qemuCmdFlags & QEMUD_CMD_FLAG_CHARDEV) &&
+                (qemuCmdFlags & QEMUD_CMD_FLAG_DEVICE)) {
                 char id[16];
 
                 if (snprintf(id, sizeof(id), "serial%i", i) > sizeof(id))
@@ -2255,13 +2273,13 @@ int qemudBuildCommandLine(virConnectPtr conn,
                 ADD_ARG_LIT("-chardev");
                 ADD_ARG(virBufferContentAndReset(&buf));
 
-                virBufferVSprintf(&buf, "chardev:%s", id);
+                virBufferVSprintf(&buf, "isa-serial,chardev=%s", id);
                 if (virBufferError(&buf)) {
                     virBufferFreeAndReset(&buf);
                     goto no_memory;
                 }
 
-                ADD_ARG_LIT("-serial");
+                ADD_ARG_LIT("-device");
                 ADD_ARG(virBufferContentAndReset(&buf));
             }
 
@@ -2279,15 +2297,19 @@ int qemudBuildCommandLine(virConnectPtr conn,
     }
 
     if (!def->nparallels) {
-        ADD_ARG_LIT("-parallel");
-        ADD_ARG_LIT("none");
+        /* If we have -device, then we set -nodefault alrady */
+        if (!(qemuCmdFlags & QEMUD_CMD_FLAG_DEVICE)) {
+            ADD_ARG_LIT("-parallel");
+            ADD_ARG_LIT("none");
+        }
     } else {
         for (i = 0 ; i < def->nparallels ; i++) {
             virBuffer buf = VIR_BUFFER_INITIALIZER;
             virDomainChrDefPtr parallel = def->parallels[i];
 
-            /* Use -chardev if it's available */
-            if (qemuCmdFlags & QEMUD_CMD_FLAG_CHARDEV) {
+            /* Use -chardev with -device if they are available */
+            if ((qemuCmdFlags & QEMUD_CMD_FLAG_CHARDEV) &&
+                (qemuCmdFlags & QEMUD_CMD_FLAG_DEVICE)) {
                 char id[16];
 
                 if (snprintf(id, sizeof(id), "parallel%i", i) > sizeof(id))
@@ -2302,13 +2324,13 @@ int qemudBuildCommandLine(virConnectPtr conn,
                 ADD_ARG_LIT("-chardev");
                 ADD_ARG(virBufferContentAndReset(&buf));
 
-                virBufferVSprintf(&buf, "chardev:%s", id);
+                virBufferVSprintf(&buf, "isa-parallel,chardev=%s", id);
                 if (virBufferError(&buf)) {
                     virBufferFreeAndReset(&buf);
                     goto no_memory;
                 }
 
-                ADD_ARG_LIT("-parallel");
+                ADD_ARG_LIT("-device");
                 ADD_ARG(virBufferContentAndReset(&buf));
             }
 
diff --git a/src/qemu/qemu_conf.h b/src/qemu/qemu_conf.h
index cd59d4c..840b749 100644
--- a/src/qemu/qemu_conf.h
+++ b/src/qemu/qemu_conf.h
@@ -76,6 +76,7 @@ enum qemud_cmd_flags {
     QEMUD_CMD_FLAG_ENABLE_KVM    = (1 << 23), /* Is the -enable-kvm flag available to "enable KVM full virtualization support" */
     QEMUD_CMD_FLAG_0_12          = (1 << 24),
     QEMUD_CMD_FLAG_MONITOR_JSON  = QEMUD_CMD_FLAG_0_12, /* JSON mode for monitor */
+    QEMUD_CMD_FLAG_DEVICE        = (1 << 25), /* Is the new -chardev arg available */
 };
 
 /* Main driver state */
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-channel-guestfwd.args b/tests/qemuxml2argvdata/qemuxml2argv-channel-guestfwd.args
index deaff92..0e02207 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-channel-guestfwd.args
+++ b/tests/qemuxml2argvdata/qemuxml2argv-channel-guestfwd.args
@@ -1 +1 @@
-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -monitor chardev:monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net none -serial none -parallel none -chardev pipe,id=channel0,path=/tmp/guestfwd -net user,guestfwd=tcp:10.0.2.1:4600-chardev:channel0 -usb
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -nodefaults -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -mon chardev=monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -chardev pipe,id=channel0,path=/tmp/guestfwd -net user,guestfwd=tcp:10.0.2.1:4600-chardev:channel0 -usb
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-console-compat-chardev.args b/tests/qemuxml2argvdata/qemuxml2argv-console-compat-chardev.args
index fbb94f4..5957622 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-console-compat-chardev.args
+++ b/tests/qemuxml2argvdata/qemuxml2argv-console-compat-chardev.args
@@ -1 +1 @@
-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -monitor chardev:monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net none -chardev pty,id=serial0 -serial chardev:serial0 -parallel none -usb
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -nodefaults -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -mon chardev=monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -chardev pty,id=serial0 -device isa-serial,chardev=serial0 -usb
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp-chardev.args b/tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp-chardev.args
index 45d1759..d17a16a 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp-chardev.args
+++ b/tests/qemuxml2argvdata/qemuxml2argv-parallel-tcp-chardev.args
@@ -1 +1 @@
-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -monitor chardev:monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net none -serial none -chardev socket,id=parallel0,host=127.0.0.1,port=9999,server,nowait -parallel chardev:parallel0 -usb
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -nodefaults -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -mon chardev=monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -chardev socket,id=parallel0,host=127.0.0.1,port=9999,server,nowait -device isa-parallel,chardev=parallel0 -usb
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-dev-chardev.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-dev-chardev.args
index 3036f13..fb2e13b 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-serial-dev-chardev.args
+++ b/tests/qemuxml2argvdata/qemuxml2argv-serial-dev-chardev.args
@@ -1 +1 @@
-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -monitor chardev:monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net none -chardev tty,id=serial0,path=/dev/ttyS2 -serial chardev:serial0 -parallel none -usb
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -nodefaults -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -mon chardev=monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -chardev tty,id=serial0,path=/dev/ttyS2 -device isa-serial,chardev=serial0 -usb
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-file-chardev.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-file-chardev.args
index 1dcec2b..83bf35d 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-serial-file-chardev.args
+++ b/tests/qemuxml2argvdata/qemuxml2argv-serial-file-chardev.args
@@ -1 +1 @@
-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -monitor chardev:monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net none -chardev file,id=serial0,path=/tmp/serial.log -serial chardev:serial0 -parallel none -usb
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -nodefaults -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -mon chardev=monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -chardev file,id=serial0,path=/tmp/serial.log -device isa-serial,chardev=serial0 -usb
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-many-chardev.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-many-chardev.args
index dd98fcb..27a29ba 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-serial-many-chardev.args
+++ b/tests/qemuxml2argvdata/qemuxml2argv-serial-many-chardev.args
@@ -1 +1 @@
-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -monitor chardev:monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net none -chardev pty,id=serial0 -serial chardev:serial0 -chardev file,id=serial1,path=/tmp/serial.log -serial chardev:serial1 -parallel none -usb
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -nodefaults -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -mon chardev=monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -chardev pty,id=serial0 -device isa-serial,chardev=serial0 -chardev file,id=serial1,path=/tmp/serial.log -device isa-serial,chardev=serial1 -usb
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-pty-chardev.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-pty-chardev.args
index fbb94f4..5957622 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-serial-pty-chardev.args
+++ b/tests/qemuxml2argvdata/qemuxml2argv-serial-pty-chardev.args
@@ -1 +1 @@
-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -monitor chardev:monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net none -chardev pty,id=serial0 -serial chardev:serial0 -parallel none -usb
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -nodefaults -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -mon chardev=monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -chardev pty,id=serial0 -device isa-serial,chardev=serial0 -usb
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-chardev.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-chardev.args
index 50cfeb0..c4bfea8 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-chardev.args
+++ b/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-chardev.args
@@ -1 +1 @@
-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -monitor chardev:monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net none -chardev socket,id=serial0,host=127.0.0.1,port=9999 -serial chardev:serial0 -parallel none -usb
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -nodefaults -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -mon chardev=monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -chardev socket,id=serial0,host=127.0.0.1,port=9999 -device isa-serial,chardev=serial0 -usb
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet-chardev.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet-chardev.args
index 86fa8af..d25bed3 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet-chardev.args
+++ b/tests/qemuxml2argvdata/qemuxml2argv-serial-tcp-telnet-chardev.args
@@ -1 +1 @@
-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -monitor chardev:monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net none -chardev socket,id=serial0,host=127.0.0.1,port=9999,telnet,server,nowait -serial chardev:serial0 -parallel none -usb
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -nodefaults -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -mon chardev=monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -chardev socket,id=serial0,host=127.0.0.1,port=9999,telnet,server,nowait -device isa-serial,chardev=serial0 -usb
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-udp-chardev.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-udp-chardev.args
index 45421a4..f598f17 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-serial-udp-chardev.args
+++ b/tests/qemuxml2argvdata/qemuxml2argv-serial-udp-chardev.args
@@ -1 +1 @@
-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -monitor chardev:monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net none -chardev udp,id=serial0,host=127.0.0.1,port=9998,localaddr=127.0.0.1,localport=9999 -serial chardev:serial0 -parallel none -usb
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -nodefaults -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -mon chardev=monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -chardev udp,id=serial0,host=127.0.0.1,port=9998,localaddr=127.0.0.1,localport=9999 -device isa-serial,chardev=serial0 -usb
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-unix-chardev.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-unix-chardev.args
index f291156..071839a 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-serial-unix-chardev.args
+++ b/tests/qemuxml2argvdata/qemuxml2argv-serial-unix-chardev.args
@@ -1 +1 @@
-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -monitor chardev:monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net none -chardev socket,id=serial0,path=/tmp/serial.sock -serial chardev:serial0 -parallel none -usb
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -nodefaults -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -mon chardev=monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -chardev socket,id=serial0,path=/tmp/serial.sock -device isa-serial,chardev=serial0 -usb
diff --git a/tests/qemuxml2argvdata/qemuxml2argv-serial-vc-chardev.args b/tests/qemuxml2argvdata/qemuxml2argv-serial-vc-chardev.args
index a200225..0fcf8d8 100644
--- a/tests/qemuxml2argvdata/qemuxml2argv-serial-vc-chardev.args
+++ b/tests/qemuxml2argvdata/qemuxml2argv-serial-vc-chardev.args
@@ -1 +1 @@
-LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -monitor chardev:monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -net none -chardev vc,id=serial0 -serial chardev:serial0 -parallel none -usb
+LC_ALL=C PATH=/bin HOME=/home/test USER=test LOGNAME=test /usr/bin/qemu -S -M pc -m 214 -smp 1 -nographic -nodefaults -chardev socket,id=monitor,path=/tmp/test-monitor,server,nowait -mon chardev=monitor -no-acpi -boot c -hda /dev/HostVG/QEMUGuest1 -chardev vc,id=serial0 -device isa-serial,chardev=serial0 -usb
diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c
index 3b0aa2b..189832e 100644
--- a/tests/qemuxml2argvtest.c
+++ b/tests/qemuxml2argvtest.c
@@ -273,19 +273,19 @@ mymain(int argc, char **argv)
     DO_TEST("parallel-tcp", 0);
     DO_TEST("console-compat", 0);
 
-    DO_TEST("serial-vc-chardev", QEMUD_CMD_FLAG_CHARDEV);
-    DO_TEST("serial-pty-chardev", QEMUD_CMD_FLAG_CHARDEV);
-    DO_TEST("serial-dev-chardev", QEMUD_CMD_FLAG_CHARDEV);
-    DO_TEST("serial-file-chardev", QEMUD_CMD_FLAG_CHARDEV);
-    DO_TEST("serial-unix-chardev", QEMUD_CMD_FLAG_CHARDEV);
-    DO_TEST("serial-tcp-chardev", QEMUD_CMD_FLAG_CHARDEV);
-    DO_TEST("serial-udp-chardev", QEMUD_CMD_FLAG_CHARDEV);
-    DO_TEST("serial-tcp-telnet-chardev", QEMUD_CMD_FLAG_CHARDEV);
-    DO_TEST("serial-many-chardev", QEMUD_CMD_FLAG_CHARDEV);
-    DO_TEST("parallel-tcp-chardev", QEMUD_CMD_FLAG_CHARDEV);
-    DO_TEST("console-compat-chardev", QEMUD_CMD_FLAG_CHARDEV);
-
-    DO_TEST("channel-guestfwd", QEMUD_CMD_FLAG_CHARDEV);
+    DO_TEST("serial-vc-chardev", QEMUD_CMD_FLAG_CHARDEV|QEMUD_CMD_FLAG_DEVICE);
+    DO_TEST("serial-pty-chardev", QEMUD_CMD_FLAG_CHARDEV|QEMUD_CMD_FLAG_DEVICE);
+    DO_TEST("serial-dev-chardev", QEMUD_CMD_FLAG_CHARDEV|QEMUD_CMD_FLAG_DEVICE);
+    DO_TEST("serial-file-chardev", QEMUD_CMD_FLAG_CHARDEV|QEMUD_CMD_FLAG_DEVICE);
+    DO_TEST("serial-unix-chardev", QEMUD_CMD_FLAG_CHARDEV|QEMUD_CMD_FLAG_DEVICE);
+    DO_TEST("serial-tcp-chardev", QEMUD_CMD_FLAG_CHARDEV|QEMUD_CMD_FLAG_DEVICE);
+    DO_TEST("serial-udp-chardev", QEMUD_CMD_FLAG_CHARDEV|QEMUD_CMD_FLAG_DEVICE);
+    DO_TEST("serial-tcp-telnet-chardev", QEMUD_CMD_FLAG_CHARDEV|QEMUD_CMD_FLAG_DEVICE);
+    DO_TEST("serial-many-chardev", QEMUD_CMD_FLAG_CHARDEV|QEMUD_CMD_FLAG_DEVICE);
+    DO_TEST("parallel-tcp-chardev", QEMUD_CMD_FLAG_CHARDEV|QEMUD_CMD_FLAG_DEVICE);
+    DO_TEST("console-compat-chardev", QEMUD_CMD_FLAG_CHARDEV|QEMUD_CMD_FLAG_DEVICE);
+
+    DO_TEST("channel-guestfwd", QEMUD_CMD_FLAG_CHARDEV|QEMUD_CMD_FLAG_DEVICE);
 
     DO_TEST("sound", 0);
 
-- 
1.6.5.2




More information about the libvir-list mailing list