aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxc/xc_cpuid_x86.c
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2009-03-09 08:54:19 +0000
committerKeir Fraser <keir.fraser@citrix.com>2009-03-09 08:54:19 +0000
commit52699620965db5bd229788223427d4559644b36e (patch)
treef15361eef5a4b94b3b1bd4e3d74085687bc62ae7 /tools/libxc/xc_cpuid_x86.c
parent6db42837ce7ac8c7028dc8416a11442775af3c45 (diff)
downloadxen-52699620965db5bd229788223427d4559644b36e.tar.gz
xen-52699620965db5bd229788223427d4559644b36e.tar.bz2
xen-52699620965db5bd229788223427d4559644b36e.zip
x86: Mask X86_FEATURE_XSAVE in cpuid leaf 1, ecx, as we don't allow
guests to use it (by setting cr4.OSXSAVE). This prevents crashes in pvops kernels, as new versions of Linux try to use this feature. Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Diffstat (limited to 'tools/libxc/xc_cpuid_x86.c')
-rw-r--r--tools/libxc/xc_cpuid_x86.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/tools/libxc/xc_cpuid_x86.c b/tools/libxc/xc_cpuid_x86.c
index d75fe2b013..f9ef0de10b 100644
--- a/tools/libxc/xc_cpuid_x86.c
+++ b/tools/libxc/xc_cpuid_x86.c
@@ -311,6 +311,7 @@ static void xc_cpuid_pv_policy(
clear_bit(X86_FEATURE_XTPR, regs[2]);
clear_bit(X86_FEATURE_PDCM, regs[2]);
clear_bit(X86_FEATURE_DCA, regs[2]);
+ clear_bit(X86_FEATURE_XSAVE, regs[2]);
set_bit(X86_FEATURE_HYPERVISOR, regs[2]);
break;
case 0x80000001: