]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu_capabilities: Track usb-host.guest-resets-all capability
authorMichal Privoznik <mprivozn@redhat.com>
Tue, 12 Jul 2022 10:19:37 +0000 (12:19 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Wed, 13 Jul 2022 14:00:59 +0000 (16:00 +0200)
We will need two attributes of usb-host device to set:
guest-reset and guest-resets-all. The former was introduced in
QEMU v4.0.0-rc0~56^2 and the other in v4.2.0-rc1~9^2. Hence,
track the latter only as it's only starting from that commit when
QEMU has both attributes.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
24 files changed:
src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml
tests/qemucapabilitiesdata/caps_4.2.0.ppc64.xml
tests/qemucapabilitiesdata/caps_4.2.0.s390x.xml
tests/qemucapabilitiesdata/caps_4.2.0.x86_64.xml
tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml
tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml
tests/qemucapabilitiesdata/caps_5.0.0.riscv64.xml
tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml
tests/qemucapabilitiesdata/caps_5.1.0.x86_64.xml
tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml
tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml
tests/qemucapabilitiesdata/caps_5.2.0.riscv64.xml
tests/qemucapabilitiesdata/caps_5.2.0.x86_64.xml
tests/qemucapabilitiesdata/caps_6.0.0.aarch64.xml
tests/qemucapabilitiesdata/caps_6.0.0.x86_64.xml
tests/qemucapabilitiesdata/caps_6.1.0.x86_64.xml
tests/qemucapabilitiesdata/caps_6.2.0.aarch64.xml
tests/qemucapabilitiesdata/caps_6.2.0.x86_64.xml
tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml
tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml
tests/qemucapabilitiesdata/caps_7.0.0.x86_64.xml
tests/qemucapabilitiesdata/caps_7.1.0.x86_64.xml

index 8586930266dd042dbbf5cb4d0bc405086e789e0c..fa8ffd19ca8a987b05b53a60be715c1e0c33f177 100644 (file)
@@ -671,6 +671,7 @@ VIR_ENUM_IMPL(virQEMUCaps,
               "chardev.qemu-vdagent", /* QEMU_CAPS_CHARDEV_QEMU_VDAGENT */
               "display-dbus", /* QEMU_CAPS_DISPLAY_DBUS */
               "iothread.thread-pool-max", /* QEMU_CAPS_IOTHREAD_THREAD_POOL_MAX */
+              "usb-host.guest-resets-all", /* QEMU_CAPS_USB_HOST_GUESTS_RESETS_ALL */
     );
 
 
@@ -1459,6 +1460,7 @@ static struct virQEMUCapsDevicePropsFlags virQEMUCapsDevicePropsPCIeRootPort[] =
 
 static struct virQEMUCapsDevicePropsFlags virQEMUCapsDevicePropsUSBHost[] = {
     { "hostdevice", QEMU_CAPS_USB_HOST_HOSTDEVICE, NULL },
+    { "guest-resets-all", QEMU_CAPS_USB_HOST_GUESTS_RESETS_ALL, NULL },
 };
 
 static struct virQEMUCapsDevicePropsFlags virQEMUCapsDevicePropsSpaprPCIHostBridge[] = {
index 6f35ba14854ee7164a6d372d5d32409ce24bd6e0..a409c1272c3882c6e3de434cf47b7f66626550e1 100644 (file)
@@ -650,6 +650,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
     QEMU_CAPS_CHARDEV_QEMU_VDAGENT, /* -chardev qemu-vdagent */
     QEMU_CAPS_DISPLAY_DBUS, /* -display dbus */
     QEMU_CAPS_IOTHREAD_THREAD_POOL_MAX, /* -object iothread.thread-pool-max */
+    QEMU_CAPS_USB_HOST_GUESTS_RESETS_ALL, /* -device usb-host.guest-resets-all */
 
     QEMU_CAPS_LAST /* this must always be the last item */
 } virQEMUCapsFlags;
index 162ace7b2b1b186f8f693b57a70eea7ea2035f32..875e4915814042f0a595b245dfe3e3e015a75ec4 100644 (file)
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
   <flag name='virtio-blk.queue-size'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>4002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700242</microcodeVersion>
index 7c5275210babb02196190548bf7df760005ce806..428ecd4f421e2028b51032418a384fed9b16bade 100644 (file)
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
   <flag name='virtio-blk.queue-size'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>4002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900242</microcodeVersion>
index ce5b782afd394e4223750592b06603b703101586..725745593c0866c298cd0d3241da313686ba6eeb 100644 (file)
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
   <flag name='virtio-blk.queue-size'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>4002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>39100242</microcodeVersion>
index 9ee4c0534dd4c178307574ab2c38f0cbf1b16d68..6a54c44d792b42921a8fbffcb56a51bf498b437c 100644 (file)
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
   <flag name='virtio-blk.queue-size'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>4002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100242</microcodeVersion>
index 29ee31473f90ccb65a689371daa6e3531ca50d6a..35998cabf033762025008d012e4927451c21983d 100644 (file)
   <flag name='virtio-blk.queue-size'/>
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>5000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700241</microcodeVersion>
index 1fdec901a66ad3494a926024c62274d76a760ceb..b8ddf2e9a82aee7d628e934208af4c94fcf139b7 100644 (file)
   <flag name='virtio-blk.queue-size'/>
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>5000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900241</microcodeVersion>
index 3b58e7fece2454cddc330272981e722569e7493d..c49c25825583269fedfdd95366c08218d11531ac 100644 (file)
   <flag name='virtio-blk.queue-size'/>
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>5000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>0</microcodeVersion>
index bee5a84cf9546c51ccdf908d98a812d3b625076f..ce297f2ef52759ae6d174d3dd8318643c188447f 100644 (file)
   <flag name='virtio-blk.queue-size'/>
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>5000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100241</microcodeVersion>
index 070f64cb1ca550c85135b7c3586d23bc7d6967c2..a49650cbccd1429cd6d96daa1c4231d281c3fa08 100644 (file)
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-net.rss'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>5001000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100242</microcodeVersion>
index 8e17532f3a0f48ae6bf2e869c17e296cfee43d94..42a4418a088389b2fb1265198ef40c383ec1a94f 100644 (file)
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-net.rss'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>5002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700243</microcodeVersion>
index df02e264d7ce604b909d45af054e9498ff2e54f0..d0dd058743971d5e89e4358006747c839d0f3893 100644 (file)
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-net.rss'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>5002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900243</microcodeVersion>
index 7cb4383693c86f9be1c5b572f336dafc8cf20c81..25339f86d94aaf5ffc1590506dd6d2c115292174 100644 (file)
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-net.rss'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>5002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>0</microcodeVersion>
index cad4ed40e6844b0f9f62c992f3e765b081250974..4ff03dbeada1a0ab6e72a31e0e38863dee7ce0f6 100644 (file)
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-net.rss'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>5002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100243</microcodeVersion>
index 4b4cc2d3aa5c32e6713b2b34901af7853dc25567..2d861da97bdc122372971c94afb7209ea0b1ab8a 100644 (file)
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-net.rss'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>6000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700242</microcodeVersion>
index 8c61bf8a84ecdfa78d4ac159a2ee930859dbd235..38acee5f183b8eb199df1a11b32eef068a3e013c 100644 (file)
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-net.rss'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>6000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100242</microcodeVersion>
index afd8f606ebfb9fafc5456eb7e263b942ff03701f..b03c6bfc249a76dbd7c32e10bd5a11f1f295d0f2 100644 (file)
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-net.rss'/>
   <flag name='chardev.qemu-vdagent'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>6001000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100243</microcodeVersion>
index 86fc46918f301888ed23edf9688ea276c939cde2..942c0ba1691cc5e6fb333cdb8feec86a700dba39 100644 (file)
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-net.rss'/>
   <flag name='chardev.qemu-vdagent'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>6001050</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700244</microcodeVersion>
index 19605d93aefb09bc2a6c7e1946c396bce47ffb7d..32f226acbd6c8437abac17a85e2851e2b701e9ea 100644 (file)
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-net.rss'/>
   <flag name='chardev.qemu-vdagent'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>6002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100244</microcodeVersion>
index e24e2235fbfce8f8a184f0e1ce1e9d8e5c862580..f4d7cbdd1066416413da0272f33012d02d0e423e 100644 (file)
   <flag name='virtio-iommu.boot-bypass'/>
   <flag name='virtio-net.rss'/>
   <flag name='chardev.qemu-vdagent'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>6002092</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700243</microcodeVersion>
index 83e0f50e3af2acf37852fac2aade07d0dd07f394..2f895294deefe0bbbafca4f2a1b80e1d5346f5e2 100644 (file)
   <flag name='virtio-iommu.boot-bypass'/>
   <flag name='virtio-net.rss'/>
   <flag name='chardev.qemu-vdagent'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>7000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900243</microcodeVersion>
index 05f844fd5b075e96e8939c78520f768ebdb159bc..17ea778d383e441d15300f40ddc45deac8e43ab7 100644 (file)
   <flag name='virtio-net.rss'/>
   <flag name='chardev.qemu-vdagent'/>
   <flag name='display-dbus'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>7000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100243</microcodeVersion>
index 3707d9b7c9ee3e2bb8e75750522e42908e15ae8f..5f5c839fea9b40dc82da947a16576a34e9693764 100644 (file)
   <flag name='chardev.qemu-vdagent'/>
   <flag name='display-dbus'/>
   <flag name='iothread.thread-pool-max'/>
+  <flag name='usb-host.guest-resets-all'/>
   <version>7000050</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100244</microcodeVersion>