]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu_capabilities: Introduce QEMU_CAPS_X_USE_CANONICAL_PATH_FOR_RAMBLOCK_ID
authorMichal Privoznik <mprivozn@redhat.com>
Mon, 11 Jan 2021 17:15:57 +0000 (18:15 +0100)
committerMichal Privoznik <mprivozn@redhat.com>
Thu, 11 Feb 2021 07:42:06 +0000 (08:42 +0100)
This capability tracks whether memory-backend-file has
"x-use-canonical-path-for-ramblock-id" attribute. Introduced into
QEMU by commit fa0cb34d2210cc749b9a70db99bb41c56ad20831. As of
QEMU commit 8db0b20415c129cf5e577a593a4a0372d90b7cc9 the property
is considered stable by qemu despite the 'x-' prefix to preserve
compatibility with released qemu versions.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
25 files changed:
src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
tests/qemucapabilitiesdata/caps_4.0.0.aarch64.xml
tests/qemucapabilitiesdata/caps_4.0.0.ppc64.xml
tests/qemucapabilitiesdata/caps_4.0.0.riscv32.xml
tests/qemucapabilitiesdata/caps_4.0.0.riscv64.xml
tests/qemucapabilitiesdata/caps_4.0.0.s390x.xml
tests/qemucapabilitiesdata/caps_4.0.0.x86_64.xml
tests/qemucapabilitiesdata/caps_4.1.0.x86_64.xml
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.x86_64.xml

index 24328ad6262c3d99bc45beee4373197800ba5dc2..ccf810ff961987e96cd4cd0b429032b58053aea3 100644 (file)
@@ -615,6 +615,7 @@ VIR_ENUM_IMPL(virQEMUCaps,
               /* 390 */
               "vhost-user-blk",
               "cpu-max",
+              "memory-backend-file.x-use-canonical-path-for-ramblock-id",
     );
 
 
@@ -1683,6 +1684,11 @@ static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsMemoryBackendFile[] =
     { "discard-data", QEMU_CAPS_OBJECT_MEMORY_FILE_DISCARD },
     { "align", QEMU_CAPS_OBJECT_MEMORY_FILE_ALIGN },
     { "pmem", QEMU_CAPS_OBJECT_MEMORY_FILE_PMEM },
+    /* As of QEMU commit 8db0b20415c129cf5e577a593a4a0372d90b7cc9 the
+     * "x-use-canonical-path-for-ramblock-id" property is considered stable and
+     * supported. The 'x-' prefix was kept for compatibility with already
+     * released qemu versions. */
+    { "x-use-canonical-path-for-ramblock-id", QEMU_CAPS_X_USE_CANONICAL_PATH_FOR_RAMBLOCK_ID },
 };
 
 static struct virQEMUCapsStringFlags virQEMUCapsObjectPropsMemoryBackendMemfd[] = {
index 79d443adfb3407a1066768e236cf909dce9e968a..6fd7922926c16c109cf6afad93f94cd214a5ede5 100644 (file)
@@ -595,6 +595,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
     /* 390 */
     QEMU_CAPS_DEVICE_VHOST_USER_BLK, /* -device vhost-user-blk */
     QEMU_CAPS_CPU_MAX, /* -cpu max */
+    QEMU_CAPS_X_USE_CANONICAL_PATH_FOR_RAMBLOCK_ID, /* -object memory-backend-file,x-use-canonical-path-for-ramblock-id= */
 
     QEMU_CAPS_LAST /* this must always be the last item */
 } virQEMUCapsFlags;
index c44d5c6ddff92d4b35e18ad352694818a1a77376..8bf4283e5b2c9f4c052c13843089b372018bf68d 100644 (file)
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>4000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700240</microcodeVersion>
index 7094752b29a1408b8e641f4cb366b1cf67d4a05d..f9bf0910a25eaa72df1d55776e2f7669b510f4f1 100644 (file)
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>4000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900240</microcodeVersion>
index de2b578b82e4e81bb8345780bb7c3ee2bdf79132..d56a19e6f9a7ea4e6ca94f90e4c9c34194108698 100644 (file)
   <flag name='dc390'/>
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>4000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>0</microcodeVersion>
index 754ad6db53364608dfe393b3817d236305c378d4..d35cb7e2ca7d451d7d25f7d31ebb05f314c83c9f 100644 (file)
   <flag name='dc390'/>
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>4000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>0</microcodeVersion>
index 8cc3a51eeb7dbcbfb4bdf21621d34386ca7186bf..4e1fdb7eda16c861366ec42f886b788333645d85 100644 (file)
   <flag name='fsdev.createmode'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>4000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>39100240</microcodeVersion>
index 23a150348d0e3d103e33e707a0d07a97e9596ecb..df76bf3b465122e033686560906dc622048fbe76 100644 (file)
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>4000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100240</microcodeVersion>
index 792ea9e9e98747daada9519b08fb9d3ddb1d107d..026e5071a5ba66ca59fe8de8fab2f129aa98e8e7 100644 (file)
   <flag name='virtio-pmem-pci'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>4001000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100241</microcodeVersion>
index 20549834eb4dd38ccc10061061293f7a220d98be..57be9898725fc450cbb38e1f4f773897998f85a5 100644 (file)
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>4001050</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700242</microcodeVersion>
index 58c73f0a98363f8b36934f0c36f4b2a514a32c48..53a1b9ed184f1146b9d052c5c2d8ef679899517f 100644 (file)
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>4001050</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900242</microcodeVersion>
index 9bfdb2ce6306c67778df1bf33f1494d6c72d2ac0..79a16221c18e4a40ff1e45d1e13a8674b0e3fdfd 100644 (file)
   <flag name='fsdev.createmode'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>4002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>39100242</microcodeVersion>
index 10dc5d562edec385e7506ec50d80623888aac0b7..afd0f2254fb1d0a8c488d955907fa71d43699f3e 100644 (file)
   <flag name='virtio-pmem-pci'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>4002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100242</microcodeVersion>
index 3e8c87ece32dbc7875d3e3198ad907e2fd84a287..964df1076bbe283b3acf07fce145a3efdbca087f 100644 (file)
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>5000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700241</microcodeVersion>
index 49479c215fa05ebdcad019dab697c78381b86a8e..7398751fd84a8711b6bbcf42b85d0c06f61a0b26 100644 (file)
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>5000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900241</microcodeVersion>
index 496b75da20ba60098870a304e6ab113025f5fc6b..7a27dd75d9604bbb6e475f0f3163dfd69ba9aad2 100644 (file)
   <flag name='dc390'/>
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>5000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>0</microcodeVersion>
index 99155d9097270448c07639becbaff1fbb9fe7dda..eb700b541515fbe8dde2078c442cbaa032b96ef0 100644 (file)
   <flag name='virtio-pmem-pci'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>5000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100241</microcodeVersion>
index a293437850a496df6cbd7b9e3b664b64df304f67..704ca704e0f6542c8f8cf12bacc3fc56f006ef0a 100644 (file)
   <flag name='netdev.vhost-vdpa'/>
   <flag name='fsdev.createmode'/>
   <flag name='ncr53c90'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>5001000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>0</microcodeVersion>
index 9e1fa172dfc9f038dd9e6d4d2b0d8b146b3a4db2..a7a9af5dc10f4d6c304881fdd418f2aa58b22a00 100644 (file)
   <flag name='virtio-pmem-pci'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>5001000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100242</microcodeVersion>
index 1f015c2da1a5b3d8c9cc219c2ed14d8201c4f9d9..dec6fd250a09df0e36e86c7e50b00380fff80a75 100644 (file)
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>5002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700243</microcodeVersion>
index bc94e50e596874be047195ca0c33308b76735710..479bd90e372fb3e1668f8c15092e2bc638a352e6 100644 (file)
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>5002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900243</microcodeVersion>
index 0457018c93510526bfde99dc4df643b5a23fc608..9eaccb2089a3f1068f072eaaeeb6711f1321054e 100644 (file)
   <flag name='dc390'/>
   <flag name='am53c974'/>
   <flag name='vhost-user-blk'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>5002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>0</microcodeVersion>
index 8ca989facb4bd815e03921c1bf7d0785016afa8e..cdcd5cac57f434ab22191e7ab71756a8ef8a2dfe 100644 (file)
   <flag name='fsdev.createmode'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>5002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>39100243</microcodeVersion>
index c85362e1dbd790e2713d3f84d073b22c9118c0e0..5643d3b713db699a3f9c7caf42e0f98f4bd0ea1c 100644 (file)
   <flag name='virtio-pmem-pci'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>5002000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100243</microcodeVersion>
index c23b05ac7012daf42c4c74c459a874436f9e865e..ddfa7017980b0cb0b18280891f3b487880adc111 100644 (file)
   <flag name='vhost-user-fs.bootindex'/>
   <flag name='vhost-user-blk'/>
   <flag name='cpu-max'/>
+  <flag name='memory-backend-file.x-use-canonical-path-for-ramblock-id'/>
   <version>5002050</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100242</microcodeVersion>