]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
check whether qemu supports multi function PCI device
authorWen Congyang <wency@cn.fujitsu.com>
Mon, 9 May 2011 06:59:16 +0000 (14:59 +0800)
committerWen Congyang <wency@cn.fujitsu.com>
Mon, 13 Jun 2011 01:27:21 +0000 (09:27 +0800)
qemu supports multi function PCI device at least version 0.13.0.

src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
tests/qemuhelptest.c

index c69cf1db08da495ca95d20484e6519b5a58d474a..28c89b5bf9a73625deefafb9c1cfd863a28c3635 100644 (file)
@@ -119,6 +119,8 @@ VIR_ENUM_IMPL(qemuCaps, QEMU_CAPS_LAST,
               "device-spicevmc",
               "virtio-tx-alg",
               "device-qxl-vga",
+
+              "pci-multifunction", /* 60 */
     );
 
 struct qemu_feature_flags {
@@ -1024,6 +1026,9 @@ qemuCapsComputeCmdFlags(const char *help,
      */
      if (version >= 13000)
         qemuCapsSet(flags, QEMU_CAPS_MONITOR_JSON);
+
+    if (version >= 13000)
+        qemuCapsSet(flags, QEMU_CAPS_PCI_MULTIFUNCTION);
 }
 
 /* We parse the output of 'qemu -help' to get the QEMU
index 4c1ad631db8d2709f41c8b45e1a4dd441126c0fd..e6d2fa372818e2d16128ce660b6ca45c8df8f5e8 100644 (file)
@@ -95,6 +95,7 @@ enum qemuCapsFlags {
     QEMU_CAPS_DEVICE_SPICEVMC   = 57, /* older -device spicevmc*/
     QEMU_CAPS_VIRTIO_TX_ALG     = 58, /* -device virtio-net-pci,tx=string */
     QEMU_CAPS_DEVICE_QXL_VGA    = 59, /* Is the primary and vga campatible qxl device named qxl-vga? */
+    QEMU_CAPS_PCI_MULTIFUNCTION = 60, /* -device multifunction=on|off */
 
     QEMU_CAPS_LAST,                   /* this must always be the last item */
 };
index 71780d8a8fd6db738636d3662f45bb8154b6c9bc..327a0c7fec38719ded06fdd3efe44b4aafa1faf2 100644 (file)
@@ -430,7 +430,8 @@ mymain(void)
             QEMU_CAPS_VGA_NONE,
             QEMU_CAPS_MIGRATE_QEMU_FD,
             QEMU_CAPS_DRIVE_AIO,
-            QEMU_CAPS_DEVICE_SPICEVMC);
+            QEMU_CAPS_DEVICE_SPICEVMC,
+            QEMU_CAPS_PCI_MULTIFUNCTION);
     DO_TEST("qemu-kvm-0.12.1.2-rhel61", 12001, 1, 0,
             QEMU_CAPS_VNC_COLON,
             QEMU_CAPS_NO_REBOOT,