]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: Assume and retire QEMU_CAPS_BLOCKDEV_BACKUP
authorPeter Krempa <pkrempa@redhat.com>
Fri, 22 Jul 2022 09:41:59 +0000 (11:41 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Thu, 11 Aug 2022 13:26:32 +0000 (15:26 +0200)
The blockdev-backup QMP command was introduced in qemu-2.3.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
29 files changed:
src/qemu/qemu_backup.c
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.sparc.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.s390x.xml
tests/qemucapabilitiesdata/caps_5.2.0.x86_64.xml
tests/qemucapabilitiesdata/caps_6.0.0.aarch64.xml
tests/qemucapabilitiesdata/caps_6.0.0.s390x.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.ppc64.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 7ce6ca13cff17304e9a5ebd11e608216ee52b66e..52801869708e298323af6e2913d21de6d532ed23 100644 (file)
@@ -802,12 +802,6 @@ qemuBackupBegin(virDomainObj *vm,
         goto endjob;
     }
 
-    if (!virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_BLOCKDEV_BACKUP)) {
-        virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s",
-                       _("backup is not supported with this QEMU"));
-        goto endjob;
-    }
-
     if (virDomainBackupAlignDisks(def, vm->def, suffix) < 0)
         goto endjob;
 
index c213d3f9be2aeccebb8eede7f242e8557276ccd5..5adde83a2e9ec4a48f703fd0cb8aa4cee962f6a1 100644 (file)
@@ -621,7 +621,7 @@ VIR_ENUM_IMPL(virQEMUCaps,
               /* 395 */
               "vnc-power-control", /* QEMU_CAPS_VNC_POWER_CONTROL */
               "audiodev", /* X_QEMU_CAPS_AUDIODEV */
-              "blockdev-backup", /* QEMU_CAPS_BLOCKDEV_BACKUP */
+              "blockdev-backup", /* X_QEMU_CAPS_BLOCKDEV_BACKUP */
               "object.qapified", /* QEMU_CAPS_OBJECT_JSON */
               "rotation-rate", /* QEMU_CAPS_ROTATION_RATE */
 
@@ -1585,7 +1585,6 @@ static struct virQEMUCapsStringFlags virQEMUCapsQMPSchemaQueries[] = {
     { "blockdev-add/arg-type/+file/aio/^io_uring", QEMU_CAPS_AIO_IO_URING },
     { "blockdev-add/arg-type/+rbd/encrypt", QEMU_CAPS_RBD_ENCRYPTION },
     { "blockdev-add/arg-type/+nbd/tls-hostname", QEMU_CAPS_BLOCKDEV_NBD_TLS_HOSTNAME },
-    { "blockdev-backup", QEMU_CAPS_BLOCKDEV_BACKUP },
     { "blockdev-snapshot/$allow-write-only-overlay", QEMU_CAPS_BLOCKDEV_SNAPSHOT_ALLOW_WRITE_ONLY },
     { "chardev-add/arg-type/backend/+socket/data/reconnect", QEMU_CAPS_CHARDEV_RECONNECT },
     { "chardev-add/arg-type/backend/+file/data/logfile", QEMU_CAPS_CHARDEV_LOGFILE },
@@ -5240,8 +5239,7 @@ virQEMUCapsInitQMPVersionCaps(virQEMUCaps *qemuCaps)
 void
 virQEMUCapsInitProcessCapsInterlock(virQEMUCaps *qemuCaps)
 {
-    if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_BLOCKDEV_BACKUP) &&
-        virQEMUCapsGet(qemuCaps, QEMU_CAPS_BLOCKDEV_REOPEN) &&
+    if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_BLOCKDEV_REOPEN) &&
         virQEMUCapsGet(qemuCaps, QEMU_CAPS_MIGRATION_PARAM_BLOCK_BITMAP_MAPPING))
         virQEMUCapsSet(qemuCaps, QEMU_CAPS_INCREMENTAL_BACKUP);
 
index 32dd6bb76eef47613f2a9b6f7e5db8fce826d08c..6c1b43d69f64a9e63f04d2513efd93282ca52977 100644 (file)
@@ -600,7 +600,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
     /* 395 */
     QEMU_CAPS_VNC_POWER_CONTROL, /* -vnc power-control option */
     X_QEMU_CAPS_AUDIODEV, /* -audiodev instead of QEMU_AUDIO_DRV */
-    QEMU_CAPS_BLOCKDEV_BACKUP, /* qemu supports the blockdev-backup job */
+    X_QEMU_CAPS_BLOCKDEV_BACKUP, /* qemu supports the blockdev-backup job */
     QEMU_CAPS_OBJECT_JSON, /* parameters for object-add are formally described */
     QEMU_CAPS_ROTATION_RATE, /* scsi-disk / ide-drive rotation-rate prop */
 
index 782607d29a9edff9dfa4c29ca4354691270a7e08..c80ccfcdfc08d4d19f560f489512cde8b1bdd8bb 100644 (file)
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index dd921f8df114e326f1591f86f2068ea21fd940e3..96975114d3a48179ee94bb7caac4c4b1f7e4b3d3 100644 (file)
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index 9cb275d5d061b357020470e57a5330147f9f4711..d29feec20983849a7b5ff86028b447cbfcd4bec3 100644 (file)
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index e6859d90453a810461ec54b1b98abe5ac3b1ecb5..8a54a8865a678dba0728d13c991cf8cc93cc3205 100644 (file)
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index 19854cb911b30ed4bd9ab43d121e70f442d897b6..c98bb55f02f3f9906ee391654b776ae7ad9240fc 100644 (file)
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index 51b581eeb8d260c6d1dbe6c749b5e909b6071c60..8fbe7bbe1eb0675bda13bdca7985d45aa469417a 100644 (file)
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index 9c3127334c71d21a034078fdc10b9ca9ff0c1aea..62520103ae95cd5e6507d1258fd49d5d747743d4 100644 (file)
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index ab771f0c93beedb16e4d82bb989a8f991c692700..52f6e9fdbab53cca1c1f23cc4d12de14fd31a451 100644 (file)
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index b64668d4a07695f0bd4cd3597388cf2cd3e71f91..7c2a77e7c5d9dea09431a3d902a458a8f8029bb6 100644 (file)
@@ -62,7 +62,6 @@
   <flag name='netdev.vhost-vdpa'/>
   <flag name='ncr53c90'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index 4fce645f5c0f9501ccf1cb6f88175ea256b4618a..b111184c5f8eb9b14e90f1385ddac0d71d3831e6 100644 (file)
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index e56ef330405bcfd71768e3cd68036a51cd8c7841..7c52fe68d6e4993c576addc8133939bf330f06c7 100644 (file)
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index 5f4444e8863bb0d50dc8e4fb17b8b674725b299f..015dcb7a6689bd27b90164108d7f0da19d1020a4 100644 (file)
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index e5fc38177d5b66234c85584be31669c8979af51e..d3e71aa7ce21b91ef3ba1c54f5cc1c11cac2ede3 100644 (file)
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index 642a3395f4e72b2614540992fd0016ed903a98a9..39381c219e0ead339c9851be66432e6a70926edd 100644 (file)
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index 5fd15aae279bfad05f1ddbc5ff17edcc422a5698..cc5f4bef5666c16cc15c9d6bd74ecbfbc85dffe2 100644 (file)
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
-  <flag name='blockdev-backup'/>
   <flag name='rotation-rate'/>
   <flag name='input-linux'/>
   <flag name='query-display-options'/>
index 59d95992eb52160b043042f7df474c10a806e897..55c25340a8dfd9fef974d453b1844f59cc4ae5a1 100644 (file)
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <flag name='migration-param.block-bitmap-mapping'/>
   <flag name='vnc-power-control'/>
-  <flag name='blockdev-backup'/>
   <flag name='object.qapified'/>
   <flag name='rotation-rate'/>
   <flag name='compat-deprecated'/>
index 25bca758b71ef9992a312846f1a35b2777fdb54e..9503af76f9b9f1d2114ae7038206b21cde4d8a53 100644 (file)
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <flag name='migration-param.block-bitmap-mapping'/>
   <flag name='vnc-power-control'/>
-  <flag name='blockdev-backup'/>
   <flag name='object.qapified'/>
   <flag name='rotation-rate'/>
   <flag name='compat-deprecated'/>
index e89c36402338d907e764dd11421aa2f8c48a528c..a025d7dad5638e63d2a638af6ddfe34005db404d 100644 (file)
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <flag name='migration-param.block-bitmap-mapping'/>
   <flag name='vnc-power-control'/>
-  <flag name='blockdev-backup'/>
   <flag name='object.qapified'/>
   <flag name='rotation-rate'/>
   <flag name='compat-deprecated'/>
index f32a3f48e812a7f2b888e68d63a9cecdb86826e0..01a258d2f3296625f93a20f39b2501ca92f31f0b 100644 (file)
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <flag name='migration-param.block-bitmap-mapping'/>
   <flag name='vnc-power-control'/>
-  <flag name='blockdev-backup'/>
   <flag name='object.qapified'/>
   <flag name='rotation-rate'/>
   <flag name='compat-deprecated'/>
index c01a0d91cc6f07369e111103acf25449714f0ca5..152600bfae6fa1cf2a5e33815bf2ed4806fc59b8 100644 (file)
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <flag name='migration-param.block-bitmap-mapping'/>
   <flag name='vnc-power-control'/>
-  <flag name='blockdev-backup'/>
   <flag name='object.qapified'/>
   <flag name='rotation-rate'/>
   <flag name='compat-deprecated'/>
index 02911198732708da90d51246de1e38d5c66961f9..e34a6e5d00682fd8f728db7555b1e78bb0a7e542 100644 (file)
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <flag name='migration-param.block-bitmap-mapping'/>
   <flag name='vnc-power-control'/>
-  <flag name='blockdev-backup'/>
   <flag name='object.qapified'/>
   <flag name='rotation-rate'/>
   <flag name='compat-deprecated'/>
index 50c04c60200da420883be0914c65e60698338820..699c3cff3a9c9c3c99d99daef3c42ff4e4b46ee6 100644 (file)
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <flag name='migration-param.block-bitmap-mapping'/>
   <flag name='vnc-power-control'/>
-  <flag name='blockdev-backup'/>
   <flag name='object.qapified'/>
   <flag name='rotation-rate'/>
   <flag name='compat-deprecated'/>
index d48167f6086de915e6bf7c840e6847e523344282..d57b80ceb20b58c4f733003f7c72a87705874c84 100644 (file)
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <flag name='migration-param.block-bitmap-mapping'/>
   <flag name='vnc-power-control'/>
-  <flag name='blockdev-backup'/>
   <flag name='object.qapified'/>
   <flag name='rotation-rate'/>
   <flag name='compat-deprecated'/>
index c4155dd4d592c92a1f939c5fab855a12d4678723..4c29a96360b5529b5d8180e3a0534226210bfe88 100644 (file)
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <flag name='migration-param.block-bitmap-mapping'/>
   <flag name='vnc-power-control'/>
-  <flag name='blockdev-backup'/>
   <flag name='object.qapified'/>
   <flag name='rotation-rate'/>
   <flag name='compat-deprecated'/>
index 4dba9159484743d447518d183287184870d3e269..e1d2e50785bad22b64ee1a7c79aa35c864b37f8f 100644 (file)
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <flag name='migration-param.block-bitmap-mapping'/>
   <flag name='vnc-power-control'/>
-  <flag name='blockdev-backup'/>
   <flag name='object.qapified'/>
   <flag name='rotation-rate'/>
   <flag name='compat-deprecated'/>
index 2ee44edfab3741f1970ad679efc4f71520fe9c98..fa66d192a1752dece358054059b6c93d24b8d8b9 100644 (file)
   <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <flag name='migration-param.block-bitmap-mapping'/>
   <flag name='vnc-power-control'/>
-  <flag name='blockdev-backup'/>
   <flag name='object.qapified'/>
   <flag name='rotation-rate'/>
   <flag name='compat-deprecated'/>