Similar to the qemu.conf knob 'deprecation_behavior' add a
per-VM knob
in the QEMU namespace:
<qemu:deprecation behavior='...'/>
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
docs/drvqemu.rst | 48 +++++++++++++++++++
docs/schemas/domaincommon.rng | 16 +++++++
src/qemu/qemu_domain.c | 10 +++-
src/qemu/qemu_domain.h | 5 ++
tests/qemuxml2argvdata/qemu-ns.xml | 1 +
.../qemu-ns.x86_64-latest.xml | 1 +
6 files changed, 80 insertions(+), 1 deletion(-)
diff --git a/docs/drvqemu.rst b/docs/drvqemu.rst
index 0f8fd9e47d..41c9c5d8e1 100644
--- a/docs/drvqemu.rst
+++ b/docs/drvqemu.rst
@@ -523,6 +523,54 @@ Example:
</qemu:capabilities>
</domain>
+Control of QEMU deprecation warnings
+------------------------------------
+
+The following knob controls how QEMU behaves towards deprecated commands and
+arguments used by libvirt:
+
+::
+
+ <domain type='qemu'
xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
+ <name>testvm</name>
+
+ [...]
+
+ <qemu:deprecation behavior='crash'/>
+
+This setting is meant for developers and CI efforts to make it obvious when
+libvirt relies on fields which are deprecated so that it can be fixes as soon
+as possible.
+
+Possible options are:
+
+``none``
+ (default) qemu is supposed to accept and output deprecated fields and commands
+
+``omit``
+ qemu is instructed to omit deprecated fields on output, behaviour towards
+ fields and commadns from libvirtd is not changed