Re: [PATCH 75/80] qemu: Retire QEMU_CAPS_BLOCKDEV

2022-08-05 Thread Pavel Hrdina
On Tue, Jul 26, 2022 at 04:37:53PM +0200, Peter Krempa wrote:
> Signed-off-by: Peter Krempa 
> ---
>  src/qemu/qemu_capabilities.c  | 13 +
>  src/qemu/qemu_capabilities.h  |  2 +-
>  src/qemu/qemu_process.c   | 10 --
>  tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml |  1 -
>  tests/qemucapabilitiesdata/caps_4.2.0.ppc64.xml   |  1 -
>  tests/qemucapabilitiesdata/caps_4.2.0.s390x.xml   |  1 -
>  tests/qemucapabilitiesdata/caps_4.2.0.x86_64.xml  |  1 -
>  tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml |  1 -
>  tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml   |  1 -
>  tests/qemucapabilitiesdata/caps_5.0.0.riscv64.xml |  1 -
>  tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml  |  1 -
>  tests/qemucapabilitiesdata/caps_5.1.0.sparc.xml   |  1 -
>  tests/qemucapabilitiesdata/caps_5.1.0.x86_64.xml  |  1 -
>  tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml |  1 -
>  tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml   |  1 -
>  tests/qemucapabilitiesdata/caps_5.2.0.riscv64.xml |  1 -
>  tests/qemucapabilitiesdata/caps_5.2.0.s390x.xml   |  1 -
>  tests/qemucapabilitiesdata/caps_5.2.0.x86_64.xml  |  1 -
>  tests/qemucapabilitiesdata/caps_6.0.0.aarch64.xml |  1 -
>  tests/qemucapabilitiesdata/caps_6.0.0.s390x.xml   |  1 -
>  tests/qemucapabilitiesdata/caps_6.0.0.x86_64.xml  |  1 -
>  tests/qemucapabilitiesdata/caps_6.1.0.x86_64.xml  |  1 -
>  tests/qemucapabilitiesdata/caps_6.2.0.aarch64.xml |  1 -
>  tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml   |  1 -
>  tests/qemucapabilitiesdata/caps_6.2.0.x86_64.xml  |  1 -
>  tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml |  1 -
>  tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml   |  1 -
>  tests/qemucapabilitiesdata/caps_7.0.0.x86_64.xml  |  1 -
>  tests/qemucapabilitiesdata/caps_7.1.0.x86_64.xml  |  1 -
>  tests/qemuhotplugtest.c   |  1 -
>  tests/testutilsqemu.c |  3 ---
>  31 files changed, 6 insertions(+), 49 deletions(-)

Reviewed-by: Pavel Hrdina 


signature.asc
Description: PGP signature


[PATCH 75/80] qemu: Retire QEMU_CAPS_BLOCKDEV

2022-07-26 Thread Peter Krempa
Signed-off-by: Peter Krempa 
---
 src/qemu/qemu_capabilities.c  | 13 +
 src/qemu/qemu_capabilities.h  |  2 +-
 src/qemu/qemu_process.c   | 10 --
 tests/qemucapabilitiesdata/caps_4.2.0.aarch64.xml |  1 -
 tests/qemucapabilitiesdata/caps_4.2.0.ppc64.xml   |  1 -
 tests/qemucapabilitiesdata/caps_4.2.0.s390x.xml   |  1 -
 tests/qemucapabilitiesdata/caps_4.2.0.x86_64.xml  |  1 -
 tests/qemucapabilitiesdata/caps_5.0.0.aarch64.xml |  1 -
 tests/qemucapabilitiesdata/caps_5.0.0.ppc64.xml   |  1 -
 tests/qemucapabilitiesdata/caps_5.0.0.riscv64.xml |  1 -
 tests/qemucapabilitiesdata/caps_5.0.0.x86_64.xml  |  1 -
 tests/qemucapabilitiesdata/caps_5.1.0.sparc.xml   |  1 -
 tests/qemucapabilitiesdata/caps_5.1.0.x86_64.xml  |  1 -
 tests/qemucapabilitiesdata/caps_5.2.0.aarch64.xml |  1 -
 tests/qemucapabilitiesdata/caps_5.2.0.ppc64.xml   |  1 -
 tests/qemucapabilitiesdata/caps_5.2.0.riscv64.xml |  1 -
 tests/qemucapabilitiesdata/caps_5.2.0.s390x.xml   |  1 -
 tests/qemucapabilitiesdata/caps_5.2.0.x86_64.xml  |  1 -
 tests/qemucapabilitiesdata/caps_6.0.0.aarch64.xml |  1 -
 tests/qemucapabilitiesdata/caps_6.0.0.s390x.xml   |  1 -
 tests/qemucapabilitiesdata/caps_6.0.0.x86_64.xml  |  1 -
 tests/qemucapabilitiesdata/caps_6.1.0.x86_64.xml  |  1 -
 tests/qemucapabilitiesdata/caps_6.2.0.aarch64.xml |  1 -
 tests/qemucapabilitiesdata/caps_6.2.0.ppc64.xml   |  1 -
 tests/qemucapabilitiesdata/caps_6.2.0.x86_64.xml  |  1 -
 tests/qemucapabilitiesdata/caps_7.0.0.aarch64.xml |  1 -
 tests/qemucapabilitiesdata/caps_7.0.0.ppc64.xml   |  1 -
 tests/qemucapabilitiesdata/caps_7.0.0.x86_64.xml  |  1 -
 tests/qemucapabilitiesdata/caps_7.1.0.x86_64.xml  |  1 -
 tests/qemuhotplugtest.c   |  1 -
 tests/testutilsqemu.c |  3 ---
 31 files changed, 6 insertions(+), 49 deletions(-)

diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index b91f46bb12..7342eb3596 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -504,7 +504,7 @@ VIR_ENUM_IMPL(virQEMUCaps,
   "usb-storage.werror", /* X_QEMU_CAPS_USB_STORAGE_WERROR */
   "egl-headless", /* QEMU_CAPS_EGL_HEADLESS */
   "vfio-pci.display", /* QEMU_CAPS_VFIO_PCI_DISPLAY */
-  "blockdev", /* QEMU_CAPS_BLOCKDEV */
+  "blockdev", /* X_QEMU_CAPS_BLOCKDEV */

   /* 315 */
   "vfio-ap", /* QEMU_CAPS_DEVICE_VFIO_AP */
@@ -5224,10 +5224,6 @@ virQEMUCapsInitQMPBasicArch(virQEMUCaps *qemuCaps)
 static void
 virQEMUCapsInitQMPVersionCaps(virQEMUCaps *qemuCaps)
 {
-/* While the removal of pre-blockdev code is in progress we always 
hard-code
- * the support for QEMU_CAPS_BLOCKDEV */
-virQEMUCapsSet(qemuCaps, QEMU_CAPS_BLOCKDEV);
-
 /* -enable-fips is deprecated in QEMU 5.2.0, and QEMU
  * should be built with gcrypt to achieve FIPS compliance
  * automatically / implicitly
@@ -6093,13 +6089,13 @@ struct virQEMUCapsDomainFeatureCapabilityTuple {

 /**
  * This maps the qemu features to the entries in  of the domain
- * capability XML.
+ * capability XML. Use QEMU_CAPS_LAST to always enable a domain feature.
  * */
 static const struct virQEMUCapsDomainFeatureCapabilityTuple domCapsTuples[] = {
 { VIR_DOMAIN_CAPS_FEATURE_IOTHREADS, QEMU_CAPS_OBJECT_IOTHREAD },
 { VIR_DOMAIN_CAPS_FEATURE_VMCOREINFO, QEMU_CAPS_DEVICE_VMCOREINFO },
 { VIR_DOMAIN_CAPS_FEATURE_GENID, QEMU_CAPS_DEVICE_VMGENID },
-{ VIR_DOMAIN_CAPS_FEATURE_BACKING_STORE_INPUT, QEMU_CAPS_BLOCKDEV },
+{ VIR_DOMAIN_CAPS_FEATURE_BACKING_STORE_INPUT, QEMU_CAPS_LAST },
 { VIR_DOMAIN_CAPS_FEATURE_BACKUP, QEMU_CAPS_INCREMENTAL_BACKUP },
 };

@@ -6111,7 +6107,8 @@ virQEMUCapsFillDomainFeaturesFromQEMUCaps(virQEMUCaps 
*qemuCaps,
 size_t i;

 for (i = 0; i < G_N_ELEMENTS(domCapsTuples); i++) {
-if (virQEMUCapsGet(qemuCaps, domCapsTuples[i].qemucap))
+if (virQEMUCapsGet(qemuCaps, domCapsTuples[i].qemucap) ||
+domCapsTuples[i].qemucap == QEMU_CAPS_LAST)
 domCaps->features[domCapsTuples[i].domcap] = VIR_TRISTATE_BOOL_YES;
 else
 domCaps->features[domCapsTuples[i].domcap] = VIR_TRISTATE_BOOL_NO;
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
index 5f982b11d5..f8d4d3df05 100644
--- a/src/qemu/qemu_capabilities.h
+++ b/src/qemu/qemu_capabilities.h
@@ -483,7 +483,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for 
syntax-check */
 X_QEMU_CAPS_USB_STORAGE_WERROR, /* -device usb-storage,werror=..,rerror=.. 
*/
 QEMU_CAPS_EGL_HEADLESS, /* -display egl-headless */
 QEMU_CAPS_VFIO_PCI_DISPLAY, /* -device vfio-pci.display */
-QEMU_CAPS_BLOCKDEV, /* -blockdev and blockdev-add are supported */
+X_QEMU_CAPS_BLOCKDEV, /* -blockdev and blockdev-add are supported */

 /* 315 */
 QEMU_CAPS_DEVICE_VFIO_AP, /* -device vfio-ap */
diff --git