]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: add capability for qemu-vdagent chardev
authorJonathon Jongsma <jjongsma@redhat.com>
Mon, 14 Mar 2022 20:29:54 +0000 (15:29 -0500)
committerJonathon Jongsma <jjongsma@redhat.com>
Tue, 10 May 2022 16:00:13 +0000 (11:00 -0500)
Detect whether qemu supports the qemu-vdagent character device. This
enables support for copy/paste with VNC graphics.

Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
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 1ed4cda7f0d42077bd5015801245421f51cc397a..4a03f4794b914919b2132a2493f421f83a8ce17f 100644 (file)
@@ -672,6 +672,9 @@ VIR_ENUM_IMPL(virQEMUCaps,
               "virtio-iommu-pci", /* QEMU_CAPS_DEVICE_VIRTIO_IOMMU_PCI */
               "virtio-iommu.boot-bypass", /* QEMU_CAPS_VIRTIO_IOMMU_BOOT_BYPASS */
               "virtio-net.rss", /* QEMU_CAPS_VIRTIO_NET_RSS */
+
+              /* 430 */
+              "chardev.qemu-vdagent", /* QEMU_CAPS_CHARDEV_QEMU_VDAGENT */
     );
 
 
@@ -1622,6 +1625,7 @@ static struct virQEMUCapsStringFlags virQEMUCapsQMPSchemaQueries[] = {
     { "set-numa-node/arg-type/+hmat-lb", QEMU_CAPS_NUMA_HMAT },
     { "object-add/arg-type/+sev-guest/kernel-hashes", QEMU_CAPS_SEV_GUEST_KERNEL_HASHES },
     { "calc-dirty-rate/arg-type/mode", QEMU_CAPS_DIRTYRATE_MODE },
+    { "chardev-add/arg-type/backend/+qemu-vdagent", QEMU_CAPS_CHARDEV_QEMU_VDAGENT },
 };
 
 typedef struct _virQEMUCapsObjectTypeProps virQEMUCapsObjectTypeProps;
index 9b240e47fb1b900ebbd53b44cb125a83af5ca548..baddb059b2f8552ff6c81e43bf299c4dadc2fabd 100644 (file)
@@ -648,6 +648,9 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
     QEMU_CAPS_VIRTIO_IOMMU_BOOT_BYPASS, /* virtio-iommu.boot-bypass */
     QEMU_CAPS_VIRTIO_NET_RSS, /* virtio-net rss feature */
 
+    /* 430 */
+    QEMU_CAPS_CHARDEV_QEMU_VDAGENT, /* -chardev qemu-vdagent */
+
     QEMU_CAPS_LAST /* this must always be the last item */
 } virQEMUCapsFlags;
 
index ddeca62290c287a8916ad65174caf3034d07b51e..7127e5d18a0ed976997c18e285a38d2c063b539c 100644 (file)
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-net.rss'/>
+  <flag name='chardev.qemu-vdagent'/>
   <version>6001000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100243</microcodeVersion>
index 553894037223c84c296d5906a6b0937045d7250a..e45682a648ee0f0fd7ec996a9c348d95cb36068f 100644 (file)
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-net.rss'/>
+  <flag name='chardev.qemu-vdagent'/>
   <version>6001050</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700244</microcodeVersion>
index dba5ecaf87f303055fb174008e33519fabdf3e78..5eae115b2866088531865248de43e3257699270f 100644 (file)
   <flag name='memory-backend-file.prealloc-threads'/>
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-net.rss'/>
+  <flag name='chardev.qemu-vdagent'/>
   <version>6002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100244</microcodeVersion>
index 257b0f625d34f61baa4e722c0b6964c295410923..c20b360e017995fe98637b608f145f90f3ab1887 100644 (file)
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-iommu.boot-bypass'/>
   <flag name='virtio-net.rss'/>
+  <flag name='chardev.qemu-vdagent'/>
   <version>6002092</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700243</microcodeVersion>
index de989bea2470c4e995ca4f0f06337bc640f29af9..945227b7f449515fbed39eb3158519604f43e630 100644 (file)
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-iommu.boot-bypass'/>
   <flag name='virtio-net.rss'/>
+  <flag name='chardev.qemu-vdagent'/>
   <version>7000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900243</microcodeVersion>
index 8074c97ecd8c45bb2c53db3cb4e7b1821521c2e9..48fef44c9a3bfcbe25e6862ac593b39281cd4f72 100644 (file)
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-iommu.boot-bypass'/>
   <flag name='virtio-net.rss'/>
+  <flag name='chardev.qemu-vdagent'/>
   <version>7000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100243</microcodeVersion>
index dd37a3762c09abf70307dc1f2510d767a654a6de..332d9a1ac32662df56277eb6f8503fba88cceab0 100644 (file)
   <flag name='virtio-iommu-pci'/>
   <flag name='virtio-iommu.boot-bypass'/>
   <flag name='virtio-net.rss'/>
+  <flag name='chardev.qemu-vdagent'/>
   <version>7000050</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100244</microcodeVersion>