Message ID | 1261990080-15330-1-git-send-email-avi@redhat.com |
---|---|
State | New |
Headers | show |
On Mon, Dec 28, 2009 at 10:48:00AM +0200, Avi Kivity wrote: > Due to upstream qemu changes we no longer expose the host cpu vendor id > to the guest. This leads to failures when the syscall/sysenter instructions > are used in compatibility mode. > > Change the default to override when kvm is enabled. Applied and queued for stable-0.12, thanks.
Avi Kivity wrote: > Due to upstream qemu changes we no longer expose the host cpu vendor id > to the guest. This leads to failures when the syscall/sysenter instructions > are used in compatibility mode. > > Change the default to override when kvm is enabled. This is a good change, although it always bothers me when there has to be a difference between kvm-enabled and kvm-disabled, because I run some guests in both modes at different times. Out of interest, are the guest-visible differences between kvm-enabled mode and kvm-disabled mode documented somewhere? Thanks, -- Jamie
diff --git a/target-i386/helper.c b/target-i386/helper.c index 9a50da6..b58fd82 100644 --- a/target-i386/helper.c +++ b/target-i386/helper.c @@ -518,7 +518,7 @@ static int cpu_x86_register (CPUX86State *env, const char *cpu_model) env->cpuid_vendor2 = CPUID_VENDOR_INTEL_2; env->cpuid_vendor3 = CPUID_VENDOR_INTEL_3; } - env->cpuid_vendor_override = def->vendor_override; + env->cpuid_vendor_override = def->vendor_override || kvm_enabled(); env->cpuid_level = def->level; if (def->family > 0x0f) env->cpuid_version = 0xf00 | ((def->family - 0x0f) << 20);
Due to upstream qemu changes we no longer expose the host cpu vendor id to the guest. This leads to failures when the syscall/sysenter instructions are used in compatibility mode. Change the default to override when kvm is enabled. Signed-off-by: Avi Kivity <avi@redhat.com> --- target-i386/helper.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)