kernel-ark/arch/x86
Frederic Weisbecker ebc8827f75 x86: Barf when vmalloc and kmemcheck faults happen in NMI
In x86, faults exit by executing the iret instruction, which then
reenables NMIs if we faulted in NMI context. Then if a fault
happens in NMI, another NMI can nest after the fault exits.

But we don't yet support nested NMIs because we have only one NMI
stack. To prevent from that, check that vmalloc and kmemcheck
faults don't happen in this context. Most of the other kernel faults
in NMIs can be more easily spotted by finding explicit
copy_from,to_user() calls on review.

Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
2010-10-14 20:43:36 +02:00
..
boot x86, setup: Fix earlyprintk=serial,0x3f8,115200 2010-09-21 10:18:33 -07:00
configs defconfig reduction 2010-08-14 22:26:53 +02:00
crypto Merge git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 2010-05-03 11:28:58 +08:00
ia32 x86-64, compat: Retruncate rax after ia32 syscall entry tracing 2010-09-14 16:08:47 -07:00
include/asm Merge commit 'v2.6.36-rc7' into perf/core 2010-10-08 10:46:27 +02:00
kernel Merge commit 'v2.6.36-rc7' into perf/core 2010-10-08 10:46:27 +02:00
kvm KVM: i8259: fix migration 2010-09-08 14:50:58 -03:00
lguest lguest: update comments to reflect LHCALL_LOAD_GDT_ENTRY. 2010-09-21 10:54:02 +09:30
lib Merge branch 'x86/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-08-13 10:35:48 -07:00
math-emu x86, fpu: Unbreak FPU emulation 2010-05-10 13:37:16 -07:00
mm x86: Barf when vmalloc and kmemcheck faults happen in NMI 2010-10-14 20:43:36 +02:00
oprofile oprofile: Add Support for Intel CPU Family 6 / Model 29 2010-09-21 12:22:48 +02:00
pci x86/PCI: use for_each_pci_dev() 2010-07-30 09:47:33 -07:00
power x86, tsc, sched: Recompute cyc2ns_offset's during resume from sleep states 2010-08-20 14:59:02 +02:00
tools x86: Remove trailing spaces in messages 2010-02-07 17:47:51 +01:00
vdso Merge branches 'x86-cleanups-for-linus', 'x86-vmware-for-linus', 'x86-mtrr-for-linus', 'x86-apic-for-linus', 'x86-fpu-for-linus' and 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-08-06 16:22:59 -07:00
video
xen xen: do not initialize PV timers on HVM if !xen_have_vector_callback 2010-10-05 13:39:23 +01:00
.gitignore add random binaries to .gitignore 2010-04-08 11:34:34 +02:00
Kbuild x86: standardize Kbuild rules 2009-04-16 18:09:02 +02:00
Kconfig jump label/x86/sparc64: Remove !CC_OPTIMIZE_FOR_SIZE config conditions 2010-09-22 23:10:23 -04:00
Kconfig.cpu Merge branch 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-05-18 08:58:16 -07:00
Kconfig.debug Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2010-05-18 08:40:21 -07:00
Makefile x86, build: Disable -fPIE when compiling with CONFIG_CC_STACKPROTECTOR=y 2010-09-13 15:53:16 -07:00
Makefile_32.cpu Merge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip 2009-12-08 13:38:11 -08:00