linux-stable/arch/x86
Jeremy Fitzhardinge e826fe1ba1 xen: mask XSAVE from cpuid
Xen leaves XSAVE set in cpuid, but doesn't allow cr4.OSXSAVE
to be set.  This confuses the kernel and it ends up crashing on
an xsetbv instruction.

At boot time, try to set cr4.OSXSAVE, and mask XSAVE out of
cpuid it we can't.  This will produce a spurious error from Xen,
but allows us to support XSAVE if/when Xen does.

This also factors out the cpuid mask decisions to boot time.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
2009-03-30 09:25:28 -07:00
..
boot Merge branches 'x86/apic', 'x86/cpu', 'x86/fixmap', 'x86/mm', 'x86/sched', 'x86/setup-lzma', 'x86/signal' and 'x86/urgent' into x86/core 2009-03-04 02:22:31 +01:00
configs Merge branches 'x86/apic', 'x86/defconfig', 'x86/memtest', 'x86/mm' and 'linus' into x86/core 2009-02-26 06:31:32 +01:00
crypto crypto: aes-ni - Add support to Intel AES-NI instructions for x86_64 platform 2009-02-18 16:48:06 +08:00
ia32 Merge branch 'linus' into percpu-cpumask-x86-for-linus-2 2009-03-28 04:26:01 +01:00
include/asm x86/paravirt: finish change from lazy cpu to context switch start/end 2009-03-29 23:36:01 -07:00
kernel x86/paravirt: use percpu_ rather than __get_cpu_var 2009-03-29 23:36:04 -07:00
kvm KVM: VMX: Don't allow uninhibited access to EFER on i386 2009-03-24 11:03:15 +02:00
lguest x86/paravirt: finish change from lazy cpu to context switch start/end 2009-03-29 23:36:01 -07:00
lib x86: use _types.h headers in asm where available 2009-02-13 11:35:01 -08:00
math-emu Merge branch 'core/percpu' into percpu-cpumask-x86-for-linus-2 2009-03-27 17:28:43 +01:00
mm x86/paravirt: remove lazy mode in interrupts 2009-03-29 23:35:38 -07:00
oprofile x86: oprofile: don't set counter width from cpuid on Core2 2009-03-03 12:04:22 +01:00
pci x86, apic: remove genapic.h 2009-02-17 17:52:44 +01:00
power x86: use _types.h headers in asm where available 2009-02-13 11:35:01 -08:00
vdso x86, mm: rename TASK_SIZE64 => TASK_SIZE_MAX 2009-02-21 00:09:44 +01:00
video
xen xen: mask XSAVE from cpuid 2009-03-30 09:25:28 -07:00
Kconfig Merge branch 'core/percpu' into percpu-cpumask-x86-for-linus-2 2009-03-27 17:28:43 +01:00
Kconfig.cpu Merge branch 'x86/urgent' into core/percpu 2009-02-10 00:41:02 +01:00
Kconfig.debug Merge branch 'linus' into x86/apic 2009-02-22 20:05:19 +01:00
Makefile Merge branch 'core/percpu' into x86/core 2009-02-13 09:45:09 +01:00
Makefile_32.cpu