On 02/23/2017 10:02 AM, Michal Privoznik wrote:
Introduce a qemu capability for -device nvdimm.
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
src/qemu/qemu_capabilities.c | 2 ++
src/qemu/qemu_capabilities.h | 1 +
tests/qemucapabilitiesdata/caps_2.6.0.x86_64.xml | 1 +
tests/qemucapabilitiesdata/caps_2.7.0.x86_64.xml | 1 +
tests/qemucapabilitiesdata/caps_2.8.0.x86_64.xml | 1 +
tests/qemucapabilitiesdata/caps_2.9.0.x86_64.xml | 1 +
6 files changed, 7 insertions(+)
Based on the conversation under 05/14 you can assume the following is squashed in:
diff --git i/src/qemu/qemu_capabilities.c w/src/qemu/qemu_capabilities.c
index 0e3f74de5..466931890 100644
--- i/src/qemu/qemu_capabilities.c
+++ w/src/qemu/qemu_capabilities.c
@@ -4356,6 +4356,13 @@ virQEMUCapsInitQMPMonitor(virQEMUCapsPtr qemuCaps,
virQEMUCapsProbeQMPGICCapabilities(qemuCaps, mon) < 0)
goto cleanup;
+ /* Prealloc on NVDIMMs is broken on older QEMUs leading to
+ * user data corruption. If we are dealing with such version
+ * of QEMU pretend we don't know how to NVDIMM. */
+ if (qemuCaps->version < 2009000 &&
+ virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_NVDIMM))
+ virQEMUCapsClear(qemuCaps, QEMU_CAPS_DEVICE_NVDIMM);
+
ret = 0;
cleanup:
return ret;
Michal