]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu_capabilities: Introduce QEMU_CAPS_DRIVE_NVME
authorMichal Privoznik <mprivozn@redhat.com>
Wed, 5 Jun 2019 14:11:03 +0000 (16:11 +0200)
committerMichal Privoznik <mprivozn@redhat.com>
Tue, 17 Dec 2019 09:04:44 +0000 (10:04 +0100)
This capability tracks if qemu is capable of:

  -drive file.driver=nvme

The feature was added in QEMU's commit of v2.12.0-rc0~104^2~2.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Cole Robinson <crobinso@redhat.com>
24 files changed:
src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
tests/qemucapabilitiesdata/caps_2.12.0.aarch64.xml
tests/qemucapabilitiesdata/caps_2.12.0.ppc64.xml
tests/qemucapabilitiesdata/caps_2.12.0.s390x.xml
tests/qemucapabilitiesdata/caps_2.12.0.x86_64.xml
tests/qemucapabilitiesdata/caps_3.0.0.ppc64.xml
tests/qemucapabilitiesdata/caps_3.0.0.riscv32.xml
tests/qemucapabilitiesdata/caps_3.0.0.riscv64.xml
tests/qemucapabilitiesdata/caps_3.0.0.s390x.xml
tests/qemucapabilitiesdata/caps_3.0.0.x86_64.xml
tests/qemucapabilitiesdata/caps_3.1.0.ppc64.xml
tests/qemucapabilitiesdata/caps_3.1.0.x86_64.xml
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

index 5c058f155e042ae727339a1e79f4cd7ffaaa7a66..2223589058248ad71cb8a727843921f8d3293a08 100644 (file)
@@ -552,6 +552,7 @@ VIR_ENUM_IMPL(virQEMUCaps,
               "arm-max-cpu",
               "blockdev-file-dynamic-auto-read-only",
               "savevm-monitor-nodes",
+              "drive-nvme",
     );
 
 
@@ -1399,6 +1400,7 @@ static struct virQEMUCapsStringFlags virQEMUCapsQMPSchemaQueries[] = {
     { "blockdev-add/arg-type/+file/drop-cache", QEMU_CAPS_MIGRATION_FILE_DROP_CACHE },
     { "blockdev-add/arg-type/+file/$dynamic-auto-read-only", QEMU_CAPS_BLOCK_FILE_AUTO_READONLY_DYNAMIC },
     { "human-monitor-command/$savevm-monitor-nodes", QEMU_CAPS_SAVEVM_MONITOR_NODES },
+    { "blockdev-add/arg-type/+nvme", QEMU_CAPS_DRIVE_NVME },
 };
 
 typedef struct _virQEMUCapsObjectTypeProps virQEMUCapsObjectTypeProps;
index 9b380574f5e1612c265e014bd968eb6f275da7d8..1b2522126c0db8ebf13c5e268914cfaa6172c088 100644 (file)
@@ -533,6 +533,7 @@ typedef enum { /* virQEMUCapsFlags grouping marker for syntax-check */
     QEMU_CAPS_ARM_MAX_CPU, /* max-arm-cpu type exists */
     QEMU_CAPS_BLOCK_FILE_AUTO_READONLY_DYNAMIC, /* the auto-read-only property of block backends for files is dynamic */
     QEMU_CAPS_SAVEVM_MONITOR_NODES, /* 'savevm' handles monitor-owned nodes properly */
+    QEMU_CAPS_DRIVE_NVME, /* -drive file.driver=nvme */
 
     QEMU_CAPS_LAST /* this must always be the last item */
 } virQEMUCapsFlags;
index 5d1bfb798f659adcdeca986898f5bccd1dc624cd..72c63533a35bd0b1c480a219d24ca7339853c556 100644 (file)
   <flag name='iothread.poll-max-ns'/>
   <flag name='memory-backend-file.align'/>
   <flag name='arm-max-cpu'/>
+  <flag name='drive-nvme'/>
   <version>2012000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700289</microcodeVersion>
index 84179e8ef6b8acdb5041ea2bc7c5ab387eb05c94..147c017fe304931850ff4e0a3e6eff19ec3633d3 100644 (file)
   <flag name='memory-backend-memfd.hugetlb'/>
   <flag name='iothread.poll-max-ns'/>
   <flag name='memory-backend-file.align'/>
+  <flag name='drive-nvme'/>
   <version>2011090</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900289</microcodeVersion>
index 4be4018d446e1e581fe91e11556f650decdcba0a..8ff06337240522c0471bb6cdbf7f80213a3f615d 100644 (file)
   <flag name='memory-backend-file.align'/>
   <flag name='query-cpu-model-baseline'/>
   <flag name='query-cpu-model-comparison'/>
+  <flag name='drive-nvme'/>
   <version>2012000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>39100289</microcodeVersion>
index 81903cd4939a159d31f6e708cd9a7f67004728ef..85954d352e12933716277d19782340370d3b0304 100644 (file)
   <flag name='iothread.poll-max-ns'/>
   <flag name='memory-backend-file.align'/>
   <flag name='x86-max-cpu'/>
+  <flag name='drive-nvme'/>
   <version>2011090</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100289</microcodeVersion>
index 8714c3c1f4b28a2b86c9515d451069319e8fef7a..baea3007532cfcbdf9196ece2b0c1c67e5b73deb 100644 (file)
   <flag name='memory-backend-file.align'/>
   <flag name='bochs-display'/>
   <flag name='ramfb'/>
+  <flag name='drive-nvme'/>
   <version>2012050</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900239</microcodeVersion>
index a31fc2a2502e1a24ce9400715835fbfa3c6e516d..3b81ea11c3067f348222aefdac7f3f3ee523a518 100644 (file)
@@ -93,6 +93,7 @@
   <flag name='iothread.poll-max-ns'/>
   <flag name='memory-backend-file.align'/>
   <flag name='ramfb'/>
+  <flag name='drive-nvme'/>
   <version>3000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>0</microcodeVersion>
index 6bf0e687259f0c79f7d778fec9503e3c320db654..615667d9b2b4dd297fa6df2e1c4aee9ce9d39cdc 100644 (file)
@@ -93,6 +93,7 @@
   <flag name='iothread.poll-max-ns'/>
   <flag name='memory-backend-file.align'/>
   <flag name='ramfb'/>
+  <flag name='drive-nvme'/>
   <version>3000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>0</microcodeVersion>
index 941369003bd5d6839269f2ab8807edda92a93216..34a4999294b8fee9f2d4bd676812a2f35b4907a1 100644 (file)
   <flag name='query-cpu-model-baseline'/>
   <flag name='query-cpu-model-comparison'/>
   <flag name='ramfb'/>
+  <flag name='drive-nvme'/>
   <version>3000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>39100239</microcodeVersion>
index 92abf01e4e68ec9c5fccc4fbbd9a82f5a9786962..3d5535f40429646dd0f65c3c337f2d771ca8b105 100644 (file)
   <flag name='x86-max-cpu'/>
   <flag name='bochs-display'/>
   <flag name='ramfb'/>
+  <flag name='drive-nvme'/>
   <version>3000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100239</microcodeVersion>
index 5667860b44bcb46e8d4a32db76a21e770730ec68..0f64cfb2ba6ef398070c815fda08d02236e72346 100644 (file)
   <flag name='memory-backend-file.pmem'/>
   <flag name='overcommit'/>
   <flag name='bochs-display'/>
+  <flag name='drive-nvme'/>
   <version>3000091</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900240</microcodeVersion>
index 5cdba54a11701a96cb561925eed369b1428fd0e3..c468ad0153d77ce237e49b885c47225183f457d8 100644 (file)
   <flag name='x86-max-cpu'/>
   <flag name='bochs-display'/>
   <flag name='ramfb'/>
+  <flag name='drive-nvme'/>
   <version>3000092</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100240</microcodeVersion>
index dacbadd208a035b83d5fb5cf1712c4a6f06dfb15..9fc3c7e6f5835640a19da81fcb9cb2c0584c9757 100644 (file)
   <flag name='migration-file-drop-cache'/>
   <flag name='ramfb'/>
   <flag name='arm-max-cpu'/>
+  <flag name='drive-nvme'/>
   <version>4000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700240</microcodeVersion>
index cd860daa9f5a67d4d93da07bb2f3a4bde1e6e15c..e84dd557a4d8c0b5d61f1be9fbaa4b0df166aedf 100644 (file)
   <flag name='bochs-display'/>
   <flag name='migration-file-drop-cache'/>
   <flag name='machine.pseries.cap-ccf-assist'/>
+  <flag name='drive-nvme'/>
   <version>4000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900240</microcodeVersion>
index a1a1a26ece4f9e523c12d679d0856f163d41f363..bc675fc727067e4d4f2ee0969c6fd63c23d83323 100644 (file)
   <flag name='nbd-bitmap'/>
   <flag name='bochs-display'/>
   <flag name='migration-file-drop-cache'/>
+  <flag name='drive-nvme'/>
   <version>4000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>0</microcodeVersion>
index 5bdc1e9451ffddacb1d55ddb0cd27c1134ec8c6c..1eeda32b7cef7cc84aa807b4d544ab103596f8fb 100644 (file)
   <flag name='nbd-bitmap'/>
   <flag name='bochs-display'/>
   <flag name='migration-file-drop-cache'/>
+  <flag name='drive-nvme'/>
   <version>4000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>0</microcodeVersion>
index 54f7aba2dc3cccdb51f558086d58f72f3c81f60e..8b8acd5a33d75112ca7ca5d10b3a75e739453043 100644 (file)
   <flag name='migration-file-drop-cache'/>
   <flag name='query-cpu-model-baseline'/>
   <flag name='query-cpu-model-comparison'/>
+  <flag name='drive-nvme'/>
   <version>4000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>39100240</microcodeVersion>
index 90f84527107e470608236fb96741b92b18d3feca..c29be71658fcee8dac905b077ce4b234c4dffa4d 100644 (file)
   <flag name='bochs-display'/>
   <flag name='migration-file-drop-cache'/>
   <flag name='ramfb'/>
+  <flag name='drive-nvme'/>
   <version>4000000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100240</microcodeVersion>
index 9f1675aa55d7bcfd88158cd4f8f33bd42dd8d76d..2bc9672063bed7f8bf1344e997badd89cb27085f 100644 (file)
   <flag name='vhost-user-vga'/>
   <flag name='ramfb'/>
   <flag name='blockdev-file-dynamic-auto-read-only'/>
+  <flag name='drive-nvme'/>
   <version>4001000</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100241</microcodeVersion>
index 6ed4829be6109c7cc8c8286f50fd72ad037237ce..588e682064b2c836c42c0a770ba17ee9bc3d5e62 100644 (file)
   <flag name='arm-max-cpu'/>
   <flag name='blockdev-file-dynamic-auto-read-only'/>
   <flag name='savevm-monitor-nodes'/>
+  <flag name='drive-nvme'/>
   <version>4001050</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>61700242</microcodeVersion>
index bc7042e7e1a74013b3738bbc8e86fa495705d6f6..9a480c4eb31aed81fc209bc38397021934d604b2 100644 (file)
   <flag name='vhost-user-vga'/>
   <flag name='machine.pseries.cap-ccf-assist'/>
   <flag name='blockdev-file-dynamic-auto-read-only'/>
+  <flag name='drive-nvme'/>
   <version>4001050</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>42900242</microcodeVersion>
index 714634dcc31631a8f05cb2a4d5121abe89db3da1..505b3adcb697bf6bffb6d5f54bb6b6e344d91de1 100644 (file)
   <flag name='query-cpu-model-baseline'/>
   <flag name='query-cpu-model-comparison'/>
   <flag name='blockdev-file-dynamic-auto-read-only'/>
+  <flag name='drive-nvme'/>
   <version>4001050</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>39100242</microcodeVersion>
index c7bac03f4406325a6f00389393d03c7ef24f18ad..31302c9a7bbddc96268fffd9f647573171220f9a 100644 (file)
   <flag name='ramfb'/>
   <flag name='blockdev-file-dynamic-auto-read-only'/>
   <flag name='savevm-monitor-nodes'/>
+  <flag name='drive-nvme'/>
   <version>4001092</version>
   <kvmVersion>0</kvmVersion>
   <microcodeVersion>43100242</microcodeVersion>