Commit f010bc643a (target-i386: add feature kvm_pv_unhalt) introduced the kvm_pv_unhalt feature but didn't enable it by default.
Without kvm_pv_unhalt we see a measurable degradation in scheduling performance, so enabling it by default does make sense IMHO. This patch just flips it to default to on by default. [With kvm_pv_unhalt disabled] $ perf bench sched messaging -l 10000 Total time: 8.573 [sec] [With kvm_pv_unhalt enabled] $ perf bench sched messaging -l 10000 Total time: 4.416 [sec] Signed-off-by: Alexander Graf <ag...@suse.de> --- Let's ask everyone who was involved back then whether this is a feature that is good to enable by default. My measurements imply so, but who knows... Also, I'd kindly like to ask for guidance on how to make this reasonably well backwards compatible. I assume we only want to flip the default in newer machine models? If so, how? --- target/i386/cpu.c | 1 + 1 file changed, 1 insertion(+) diff --git a/target/i386/cpu.c b/target/i386/cpu.c index 69676e13e1..c58f4ab24f 100644 --- a/target/i386/cpu.c +++ b/target/i386/cpu.c @@ -1581,6 +1581,7 @@ static PropValue kvm_default_props[] = { { "kvm-asyncpf", "on" }, { "kvm-steal-time", "on" }, { "kvm-pv-eoi", "on" }, + { "kvm-pv-unhalt", "on" }, { "kvmclock-stable-bit", "on" }, { "x2apic", "on" }, { "acpi", "off" }, -- 2.12.3