xen: mask out SEP from CPUID
authorJeremy Fitzhardinge <jeremy@xensource.com>
Fri, 29 Feb 2008 17:55:43 +0000 (18:55 +0100)
committerIngo Molnar <mingo@elte.hu>
Fri, 29 Feb 2008 17:55:43 +0000 (18:55 +0100)
Fix 32-on-64 pvops kernel:

we don't want userspace using syscall/sysenter, even if the hypervisor
supports it, so mask it out from CPUID.

Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/xen/enlighten.c

index 49e5358f481a2fdcb5e7eec2c2d4087ec256786a..8b9ee27805fdd10be4cb19b082131745d1c4a670 100644 (file)
@@ -153,6 +153,7 @@ static void xen_cpuid(unsigned int *ax, unsigned int *bx,
        if (*ax == 1)
                maskedx = ~((1 << X86_FEATURE_APIC) |  /* disable APIC */
                            (1 << X86_FEATURE_ACPI) |  /* disable ACPI */
+                           (1 << X86_FEATURE_SEP)  |  /* disable SEP */
                            (1 << X86_FEATURE_ACC));   /* thermal monitoring */
 
        asm(XEN_EMULATE_PREFIX "cpuid"