From: Jim Fehlig Date: Fri, 17 Jun 2016 15:47:34 +0000 (+0100) Subject: libxl: add USB to hostdev domcapabilities X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=8bab1e7c057b5f62c25cba7439a05ed57f0c735e;p=libvirt.git libxl: add USB to hostdev domcapabilities Commit 2a58ed0b added support for creating guests with USB hostdevs. Commit fc21d10 later added support for hotplut of USB hostdevs. Advertise support for USB hostdevs in the domcapabilities. In addition add the appropriate caps for USB support on domaincapstest when libvirt is built on a Xen with LIBXL_HAVE_PVUSB. Otherwise domaincapstest would fail i.e. testing the wrong domain capabilities. Signed-off-by: Jim Fehlig Signed-off-by: Joao Martins --- diff --git a/src/libxl/libxl_capabilities.c b/src/libxl/libxl_capabilities.c index 45f098826a..0145116e98 100644 --- a/src/libxl/libxl_capabilities.c +++ b/src/libxl/libxl_capabilities.c @@ -492,6 +492,11 @@ libxlMakeDomainDeviceHostdevCaps(virDomainCapsDeviceHostdevPtr dev) VIR_DOMAIN_CAPS_ENUM_SET(dev->subsysType, VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI); +#ifdef LIBXL_HAVE_PVUSB + VIR_DOMAIN_CAPS_ENUM_SET(dev->subsysType, + VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_USB); +#endif + /* No virDomainHostdevCapsType for libxl */ virDomainCapsEnumClear(&dev->capsType); diff --git a/tests/domaincapsschemadata/libxl-xenfv-usb.xml b/tests/domaincapsschemadata/libxl-xenfv-usb.xml new file mode 100644 index 0000000000..c071d1240b --- /dev/null +++ b/tests/domaincapsschemadata/libxl-xenfv-usb.xml @@ -0,0 +1,69 @@ + + /usr/bin/qemu-system-x86_64 + xen + xenfv + x86_64 + + + + /usr/lib/xen/boot/hvmloader + /usr/lib/xen/boot/ovmf.bin + + rom + pflash + + + yes + + + + + + + disk + cdrom + + + ide + scsi + xen + + + + + sdl + vnc + spice + + + + + + subsystem + + + default + mandatory + requisite + optional + + + usb + pci + + + + xen + + + + + + + diff --git a/tests/domaincapsschemadata/libxl-xenpv-usb.xml b/tests/domaincapsschemadata/libxl-xenpv-usb.xml new file mode 100644 index 0000000000..4dd07bd966 --- /dev/null +++ b/tests/domaincapsschemadata/libxl-xenpv-usb.xml @@ -0,0 +1,59 @@ + + /usr/bin/qemu-system-x86_64 + xen + xenpv + x86_64 + + + + + + + + disk + cdrom + + + ide + scsi + xen + + + + + sdl + vnc + spice + + + + + + subsystem + + + default + mandatory + requisite + optional + + + usb + pci + + + + xen + + + + + + + diff --git a/tests/domaincapstest.c b/tests/domaincapstest.c index 9fb2c974ec..ae311464d6 100644 --- a/tests/domaincapstest.c +++ b/tests/domaincapstest.c @@ -367,9 +367,17 @@ mymain(void) #if WITH_LIBXL - DO_TEST_LIBXL("libxl-xenpv", "/usr/bin/qemu-system-x86_64", +# ifdef LIBXL_HAVE_PVUSB +# define LIBXL_XENPV_CAPS "libxl-xenpv-usb" +# define LIBXL_XENFV_CAPS "libxl-xenfv-usb" +# else +# define LIBXL_XENPV_CAPS "libxl-xenpv" +# define LIBXL_XENFV_CAPS "libxl-xenfv" +# endif + + DO_TEST_LIBXL(LIBXL_XENPV_CAPS, "/usr/bin/qemu-system-x86_64", "xenpv", "x86_64", VIR_DOMAIN_VIRT_XEN); - DO_TEST_LIBXL("libxl-xenfv", "/usr/bin/qemu-system-x86_64", + DO_TEST_LIBXL(LIBXL_XENFV_CAPS, "/usr/bin/qemu-system-x86_64", "xenfv", "x86_64", VIR_DOMAIN_VIRT_XEN); #endif /* WITH_LIBXL */