x86: prevent PGE flush from interruption/preemption
authorIngo Molnar <mingo@elte.hu>
Mon, 12 May 2008 19:21:15 +0000 (21:21 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Fri, 23 May 2008 16:16:15 +0000 (18:16 +0200)
commitb1979a5fda7869a790f4fd83fb06c78498d26ba1
treee15546fb2e002fbe1fa0a638c305bd30c8b19df5
parenta1289643adb6272c04db9399653ae195072c482a
x86: prevent PGE flush from interruption/preemption

CR4 manipulation is not protected against interrupts and preemption,
but KVM uses smp_function_call to manipulate the X86_CR4_VMXE bit
either from the CPU hotplug code or from the kvm_init call.

We need to protect the CR4 manipulation from both interrupts and
preemption.

Original bug report: http://lkml.org/lkml/2008/5/7/48
Bugzilla entry: http://bugzilla.kernel.org/show_bug.cgi?id=10642

This is not a regression from 2.6.25, it's a long standing and hard to
trigger bug.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
include/asm-x86/tlbflush.h