From c84be0815680e400c4f1acc00fce4181dda20c66 Mon Sep 17 00:00:00 2001 From: Cole Robinson Date: May 03 2018 20:37:41 +0000 Subject: conf: format/parse as tristate is a bare boolean XML property. We don't really use this format anymore and instead prefer tristate since it's required for modeling on/off/default. If for example future qemu started enabling vmcoreinfo by default we wouldn't have any way for the user to turn this off. Convert it to tristate. For writing XML this is semanticly the same, is processed as . For apps reading guest XML this is technically an API change, as they might misinterpret , however this has only been present in libvirt since 3.10.0 and I don't think any apps are dependent on this yet Reviewed-by: John Ferlan Signed-off-by: Cole Robinson --- diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in index 6a0110e..caeb14e 100644 --- a/docs/formatdomain.html.in +++ b/docs/formatdomain.html.in @@ -1880,6 +1880,7 @@ <gic version='2'/> <ioapic driver='qemu'/> <hpt resizing='required'/> + <vmcoreinfo state='on'/> </features> ... @@ -2061,7 +2062,7 @@
vmcoreinfo
Enable QEMU vmcoreinfo device to let the guest kernel save debug - details. Since 3.10.0 (QEMU only) + details. Since 4.4.0 (QEMU only)
diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng index 7bad7dd..0a6b29b 100644 --- a/docs/schemas/domaincommon.rng +++ b/docs/schemas/domaincommon.rng @@ -5039,7 +5039,11 @@ - + + + + + diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 0ea3e4c..c92725d 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -19305,7 +19305,6 @@ virDomainDefParseXML(xmlDocPtr xml, case VIR_DOMAIN_FEATURE_VIRIDIAN: case VIR_DOMAIN_FEATURE_PRIVNET: case VIR_DOMAIN_FEATURE_HYPERV: - case VIR_DOMAIN_FEATURE_VMCOREINFO: case VIR_DOMAIN_FEATURE_KVM: def->features[val] = VIR_TRISTATE_SWITCH_ON; break; @@ -19324,6 +19323,7 @@ virDomainDefParseXML(xmlDocPtr xml, } break; + case VIR_DOMAIN_FEATURE_VMCOREINFO: case VIR_DOMAIN_FEATURE_HAP: case VIR_DOMAIN_FEATURE_PMU: case VIR_DOMAIN_FEATURE_PVSPINLOCK: @@ -26893,7 +26893,6 @@ virDomainDefFormatInternal(virDomainDefPtr def, case VIR_DOMAIN_FEATURE_ACPI: case VIR_DOMAIN_FEATURE_PAE: case VIR_DOMAIN_FEATURE_VIRIDIAN: - case VIR_DOMAIN_FEATURE_VMCOREINFO: case VIR_DOMAIN_FEATURE_PRIVNET: switch ((virTristateSwitch) def->features[i]) { case VIR_TRISTATE_SWITCH_ABSENT: @@ -26914,6 +26913,7 @@ virDomainDefFormatInternal(virDomainDefPtr def, break; + case VIR_DOMAIN_FEATURE_VMCOREINFO: case VIR_DOMAIN_FEATURE_HAP: case VIR_DOMAIN_FEATURE_PMU: case VIR_DOMAIN_FEATURE_PVSPINLOCK: diff --git a/tests/qemuxml2xmloutdata/vmcoreinfo.xml b/tests/qemuxml2xmloutdata/vmcoreinfo.xml index d0cd2f2..48b75d7 100644 --- a/tests/qemuxml2xmloutdata/vmcoreinfo.xml +++ b/tests/qemuxml2xmloutdata/vmcoreinfo.xml @@ -9,7 +9,7 @@ - + destroy