From: Jim Fehlig Date: Tue, 23 Feb 2016 01:50:19 +0000 (-0700) Subject: xenconfig: change 'hap' setting to align with Xen behavior X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=4c9ffc53881c8d075b17e66c8b1abd9f2c45e20d;p=libvirt.git xenconfig: change 'hap' setting to align with Xen behavior hap is enabled by default in xm and xl config and usually only specified when it is desirable to disable hap (hap = 0). Change the xm,xl <-> xml converter to behave similarly. I.e. only produce 'hap = 0' when and vice versa. Signed-off-by: Jim Fehlig --- diff --git a/src/xenconfig/xen_common.c b/src/xenconfig/xen_common.c index 828c8e9b15..4dcd484e09 100644 --- a/src/xenconfig/xen_common.c +++ b/src/xenconfig/xen_common.c @@ -528,11 +528,11 @@ xenParseCPUFeatures(virConfPtr conf, virDomainDefPtr def) else if (val) def->features[VIR_DOMAIN_FEATURE_APIC] = VIR_TRISTATE_SWITCH_ON; - if (xenConfigGetBool(conf, "hap", &val, 0) < 0) + if (xenConfigGetBool(conf, "hap", &val, 1) < 0) return -1; - else if (val) - def->features[VIR_DOMAIN_FEATURE_HAP] = VIR_TRISTATE_SWITCH_ON; + else if (!val) + def->features[VIR_DOMAIN_FEATURE_HAP] = VIR_TRISTATE_SWITCH_OFF; if (xenConfigGetBool(conf, "viridian", &val, 0) < 0) return -1; @@ -1572,10 +1572,10 @@ xenFormatCPUFeatures(virConfPtr conf, virDomainDefPtr def) VIR_TRISTATE_SWITCH_ON) ? 1 : 0) < 0) return -1; - if (xenConfigSetInt(conf, "hap", - (def->features[VIR_DOMAIN_FEATURE_HAP] == - VIR_TRISTATE_SWITCH_ON) ? 1 : 0) < 0) - return -1; + if (def->features[VIR_DOMAIN_FEATURE_HAP] == VIR_TRISTATE_SWITCH_OFF) { + if (xenConfigSetInt(conf, "hap", 0) < 0) + return -1; + } if (xenConfigSetInt(conf, "viridian", (def->features[VIR_DOMAIN_FEATURE_VIRIDIAN] == diff --git a/tests/xlconfigdata/test-disk-positional-parms-full.cfg b/tests/xlconfigdata/test-disk-positional-parms-full.cfg index 026e451ca3..c5bbb03bf1 100644 --- a/tests/xlconfigdata/test-disk-positional-parms-full.cfg +++ b/tests/xlconfigdata/test-disk-positional-parms-full.cfg @@ -6,7 +6,6 @@ vcpus = 1 pae = 1 acpi = 1 apic = 1 -hap = 0 viridian = 0 rtc_timeoffset = 0 localtime = 0 diff --git a/tests/xlconfigdata/test-disk-positional-parms-partial.cfg b/tests/xlconfigdata/test-disk-positional-parms-partial.cfg index 0591037c43..09eeb94679 100644 --- a/tests/xlconfigdata/test-disk-positional-parms-partial.cfg +++ b/tests/xlconfigdata/test-disk-positional-parms-partial.cfg @@ -6,7 +6,6 @@ vcpus = 1 pae = 1 acpi = 1 apic = 1 -hap = 0 viridian = 0 rtc_timeoffset = 0 localtime = 0 diff --git a/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-bogus-extra.cfg b/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-bogus-extra.cfg index 83ab975e66..8012737c88 100644 --- a/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-bogus-extra.cfg +++ b/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-bogus-extra.cfg @@ -6,7 +6,6 @@ vcpus = 1 pae = 1 acpi = 1 apic = 1 -hap = 0 viridian = 0 rtc_timeoffset = 0 localtime = 0 diff --git a/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-extra.cfg b/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-extra.cfg index f452af62d8..4ed5a90e18 100644 --- a/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-extra.cfg +++ b/tests/xlconfigdata/test-fullvirt-direct-kernel-boot-extra.cfg @@ -6,7 +6,6 @@ vcpus = 1 pae = 1 acpi = 1 apic = 1 -hap = 0 viridian = 0 rtc_timeoffset = 0 localtime = 0 diff --git a/tests/xlconfigdata/test-fullvirt-direct-kernel-boot.cfg b/tests/xlconfigdata/test-fullvirt-direct-kernel-boot.cfg index 9ebbc89fe0..110f0a0cd1 100644 --- a/tests/xlconfigdata/test-fullvirt-direct-kernel-boot.cfg +++ b/tests/xlconfigdata/test-fullvirt-direct-kernel-boot.cfg @@ -6,7 +6,6 @@ vcpus = 1 pae = 1 acpi = 1 apic = 1 -hap = 0 viridian = 0 rtc_timeoffset = 0 localtime = 0 diff --git a/tests/xlconfigdata/test-fullvirt-multiusb.cfg b/tests/xlconfigdata/test-fullvirt-multiusb.cfg index 097de88b8f..003eb2b139 100755 --- a/tests/xlconfigdata/test-fullvirt-multiusb.cfg +++ b/tests/xlconfigdata/test-fullvirt-multiusb.cfg @@ -6,7 +6,6 @@ vcpus = 1 pae = 1 acpi = 1 apic = 1 -hap = 0 viridian = 0 rtc_timeoffset = 0 localtime = 0 diff --git a/tests/xlconfigdata/test-fullvirt-nohap.cfg b/tests/xlconfigdata/test-fullvirt-nohap.cfg new file mode 100644 index 0000000000..44bfa3c957 --- /dev/null +++ b/tests/xlconfigdata/test-fullvirt-nohap.cfg @@ -0,0 +1,26 @@ +name = "XenGuest2" +uuid = "c7a5fdb2-cdaf-9455-926a-d65c16db1809" +maxmem = 579 +memory = 394 +vcpus = 1 +pae = 1 +acpi = 1 +apic = 1 +hap = 0 +viridian = 0 +rtc_timeoffset = 0 +localtime = 0 +on_poweroff = "destroy" +on_reboot = "restart" +on_crash = "restart" +device_model = "/usr/lib/xen/bin/qemu-dm" +sdl = 0 +vnc = 1 +vncunused = 1 +vnclisten = "127.0.0.1" +vif = [ "mac=00:16:3e:66:92:9c,bridge=xenbr1,script=vif-bridge,model=e1000,rate=10240KB/s" ] +parallel = "none" +serial = "none" +builder = "hvm" +boot = "d" +disk = [ "format=raw,vdev=hda,access=rw,backendtype=phy,target=/dev/HostVG/XenGuest2", "format=qcow2,vdev=hdb,access=rw,backendtype=qdisk,target=/var/lib/libvirt/images/XenGuest2-home", "format=raw,vdev=hdc,access=ro,backendtype=qdisk,devtype=cdrom,target=/root/boot.iso" ] diff --git a/tests/xlconfigdata/test-fullvirt-nohap.xml b/tests/xlconfigdata/test-fullvirt-nohap.xml new file mode 100644 index 0000000000..d9dad2076e --- /dev/null +++ b/tests/xlconfigdata/test-fullvirt-nohap.xml @@ -0,0 +1,59 @@ + + XenGuest2 + c7a5fdb2-cdaf-9455-926a-d65c16db1809 + 592896 + 403456 + 1 + + hvm + /usr/lib/xen/boot/hvmloader + + + + + + + + + + destroy + restart + restart + + /usr/lib/xen/bin/qemu-dm + + + + +
+ + + + + +
+ + + + + + +
+ + + + + + + + +