linux/include/asm-x86_64
Andi Kleen 8f4e956b31 x86: Stop MCEs and NMIs during code patching
When a machine check or NMI occurs while multiple byte code is patched
the CPU could theoretically see an inconsistent instruction and crash.
Prevent this by temporarily disabling MCEs and returning early in the
NMI handler.

Based on discussion with Mathieu Desnoyers.

Cc: Mathieu Desnoyers <compudj@krystal.dyndns.org>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-07-22 11:03:37 -07:00
..
8253pit.h
a.out.h arch: personality independent stack top 2007-07-19 10:04:45 -07:00
acpi.h x86_64: fake pxm-to-node mapping for fake numa 2007-07-21 18:37:10 -07:00
agp.h [AGPGART] Move [un]map_page_into_agp into asm/agp.h 2007-04-26 14:22:50 -04:00
alternative-asm.i
alternative.h x86: Fix alternatives and kprobes to remap write-protected kernel text 2007-07-22 11:03:37 -07:00
apic.h x86_64: Fix APIC typo 2007-07-21 18:37:09 -07:00
apicdef.h
atomic.h x86: create asm/cmpxchg.h 2007-05-08 11:15:20 -07:00
auxvec.h x86_64: Add vDSO for x86-64 with gettimeofday/clock_gettime/getcpu 2007-07-21 18:37:08 -07:00
bitops.h [PATCH] x86-64: Fix wrong gcc check in bitops.h 2007-02-13 13:26:25 +01:00
boot.h Make struct boot_params a real structure, and remove obsolete fields 2007-07-12 10:55:54 -07:00
bootparam.h Make struct boot_params a real structure, and remove obsolete fields 2007-07-12 10:55:54 -07:00
bootsetup.h [PATCH] Dynamic kernel command-line: x86_64 2007-02-12 09:48:39 -08:00
bug.h
bugs.h [PATCH] x86-64: Clean up asm-x86_64/bugs.h 2007-05-02 19:27:12 +02:00
byteorder.h
cache.h
cacheflush.h
calgary.h x86_64: make dump_error_regs a chip op 2007-07-21 18:37:11 -07:00
calling.h
checksum.h
cmpxchg.h x86: create asm/cmpxchg.h 2007-05-08 11:15:20 -07:00
compat.h Introduce compat_u64 and compat_s64 types 2007-07-16 09:05:48 -07:00
cpu.h
cpufeature.h Unify the CPU features vectors between i386 and x86-64 2007-07-12 10:55:54 -07:00
cputime.h
current.h
debugreg.h
delay.h
desc.h [PATCH] x86-64: Introduce load_TLS to the "for" loop. 2007-05-02 19:27:09 +02:00
desc_defs.h
device.h
div64.h
dma-mapping.h [PATCH] x86-64: dma_ops as const 2007-05-02 19:27:06 +02:00
dma.h
dmi.h x86_64: remove extra extern declaring about dmi_ioremap 2007-07-21 18:37:08 -07:00
dwarf2.h
e820.h Make definitions for struct e820entry and struct e820map consistent 2007-07-12 10:55:54 -07:00
edac.h
elf.h x86_64: Add vDSO for x86-64 with gettimeofday/clock_gettime/getcpu 2007-07-21 18:37:08 -07:00
emergency-restart.h
errno.h
fb.h fbdev: detect primary display device 2007-07-17 10:23:11 -07:00
fcntl.h
fixmap.h x86_64: fix wrong comment regarding set_fixmap() 2007-07-21 18:37:12 -07:00
floppy.h
fpu32.h
futex.h
genapic.h [PATCH] x86-64: always use physical delivery mode on > 8 CPUs 2007-05-02 19:27:04 +02:00
hardirq.h
hpet.h x86: share hpet.h with i386 2007-07-21 18:37:09 -07:00
hw_irq.h x86_64: Move functions declarations to header file 2007-07-21 18:37:12 -07:00
hypertransport.h
i387.h
i8253.h x86_64: use the global PIT lock 2007-07-21 18:37:12 -07:00
ia32.h
ia32_unistd.h
ide.h
idle.h
intel_arch_perfmon.h
io.h serial: convert early_uart to earlycon for 8250 2007-07-16 09:05:35 -07:00
io_apic.h [PATCH] io_apic.h needs apicdef.h 2007-03-05 07:57:50 -08:00
ioctl.h
ioctls.h
iommu.h x86_64: move iommu declaration from proto to iommu.h 2007-07-21 18:37:14 -07:00
ipcbuf.h
ipi.h [PATCH] x86-64: Use safe_apic_wait_icr_idle in __send_IPI_dest_field - x86_64 2007-05-02 19:27:18 +02:00
irq.h
irq_regs.h
irqflags.h [PATCH] x86-64: Use X86_EFLAGS_IF in x86-64/irqflags.h. 2007-05-02 19:27:11 +02:00
k8.h
Kbuild consolidate asm/const.h to linux/const.h 2007-05-08 11:15:13 -07:00
kdebug.h Revert "ipmi: add new IPMI nmi watchdog handling" 2007-05-14 15:24:24 -07:00
kexec.h kdump/kexec: calculate note size at compile time 2007-05-08 11:15:07 -07:00
kmap_types.h
kprobes.h jprobes: remove JPROBE_ENTRY() 2007-07-19 10:04:44 -07:00
ldt.h
linkage.h
local.h local_t: x86_64 extension 2007-05-08 11:15:20 -07:00
mach_apic.h
mc146818rtc.h
mce.h x86: Stop MCEs and NMIs during code patching 2007-07-22 11:03:37 -07:00
mman.h
mmsegment.h
mmu.h x86_64: Add vDSO for x86-64 with gettimeofday/clock_gettime/getcpu 2007-07-21 18:37:08 -07:00
mmu_context.h [PATCH] x86: PARAVIRT: add hooks to intercept mm creation and destruction 2007-05-02 19:27:14 +02:00
mmzone.h [PATCH] x86-64: configurable fake numa node sizes 2007-05-02 19:27:09 +02:00
module.h
mpspec.h
msgbuf.h
msidef.h
msr-index.h [PATCH] x86: Clean up x86 control register and MSR macros (corrected) 2007-05-02 19:27:12 +02:00
msr.h i386: Add safe variants of rdmsr_on_cpu and wrmsr_on_cpu 2007-05-08 17:22:01 +02:00
mtrr.h [PATCH] x86: Save the MTRRs of the BSP before booting an AP 2007-05-02 19:27:17 +02:00
mutex.h [PATCH] x86-64: Remove fastcall references in x86_64 code 2007-02-13 13:26:22 +01:00
namei.h
nmi.h x86: Stop MCEs and NMIs during code patching 2007-07-22 11:03:37 -07:00
node.h
numa.h
page.h Add __GFP_MOVABLE for callers to flag allocations from high memory that may be migrated 2007-07-17 10:22:59 -07:00
param.h
parport.h
pci-direct.h
pci.h x86-64: introduce struct pci_sysdata to facilitate sharing of ->sysdata 2007-07-21 18:37:14 -07:00
pda.h
percpu.h define new percpu interface for shared data 2007-07-19 10:04:44 -07:00
pgalloc.h x86_64: Quicklist support for x86_64 2007-07-21 18:37:09 -07:00
pgtable.h x86: Fix alternatives and kprobes to remap write-protected kernel text 2007-07-22 11:03:37 -07:00
poll.h Consolidate asm/poll.h 2007-05-11 08:29:34 -07:00
posix_types.h
prctl.h
processor-flags.h [PATCH] x86: Clean up x86 control register and MSR macros (corrected) 2007-05-02 19:27:12 +02:00
processor.h x86: remove support for the Rise CPU 2007-07-21 18:37:10 -07:00
proto.h x86: i386-show-unhandled-signals-v3 2007-07-22 11:03:37 -07:00
ptrace-abi.h
ptrace.h x86_64: asm/ptrace.h needs linux/compiler.h 2007-07-21 18:37:07 -07:00
required-features.h Use a new CPU feature word to cover features that are spread around 2007-07-12 10:55:54 -07:00
resource.h
resume-trace.h x86: PM_TRACE support 2007-07-21 18:37:10 -07:00
rio.h
rtc.h
rwlock.h
scatterlist.h PCI: scatterlist.h needs types.h 2007-05-02 19:02:34 -07:00
seccomp.h
sections.h
segment.h x86-64: add symbolic constants for the boot segment selectors 2007-07-12 10:55:54 -07:00
semaphore.h
sembuf.h
serial.h x86, serial: convert legacy COM ports to platform devices 2007-05-08 11:15:23 -07:00
setup.h [PATCH] x86_64: 2048-byte command line 2007-02-12 09:48:39 -08:00
shmbuf.h
shmparam.h
sigcontext.h
sigcontext32.h
siginfo.h
signal.h
smp.h Use the APIC to determine the hardware processor id - x86_64 2007-05-09 12:30:48 -07:00
socket.h [NET]: Adding SO_TIMESTAMPNS / SCM_TIMESTAMPNS support 2007-04-25 22:24:21 -07:00
sockios.h [NET]: Introduce SIOCGSTAMPNS ioctl to get timestamps with nanosec resolution 2007-04-25 22:24:04 -07:00
sparsemem.h
spinlock.h
spinlock_types.h
stacktrace.h
stat.h
statfs.h
string.h x86_64: Always use builtin memcpy on gcc 4.3 2007-07-21 18:37:08 -07:00
suspend.h [PATCH] x86-64: wakeup.S rename registers to reflect right names 2007-05-02 19:27:07 +02:00
swiotlb.h Revert "[IA64] swiotlb abstraction (e.g. for Xen)" 2007-03-06 13:31:45 -08:00
system.h x86_64: Use read and write crX in .c files 2007-07-22 11:03:37 -07:00
tce.h
termbits.h tty: i386/x86_64 arbitary speed support 2007-05-08 11:15:03 -07:00
termios.h [PATCH] consolidate line discipline number definitions 2007-02-11 10:51:26 -08:00
therm_throt.h
thread_info.h x86_64: support poll() on /dev/mcelog 2007-07-21 18:37:10 -07:00
timex.h x86_64: Untangle asm/hpet.h from asm/timex.h 2007-07-21 18:37:08 -07:00
tlb.h
tlbflush.h x86_64: flush_tlb_kernel_range() warning fix 2007-07-21 18:37:13 -07:00
topology.h x86-64: introduce struct pci_sysdata to facilitate sharing of ->sysdata 2007-07-21 18:37:14 -07:00
tsc.h [PATCH] i386: make x86_64 tsc header require i386 rather than vice-versa 2007-03-06 09:30:24 -08:00
types.h
uaccess.h [PATCH] kill bogus casts in amd64 uaccess.h 2007-03-14 15:27:50 -07:00
ucontext.h
unaligned.h
unistd.h sys_fallocate() implementation on i386, x86_64 and powerpc 2007-07-17 21:42:44 -04:00
unwind.h
user.h
user32.h
vga.h
vgtod.h x86_64: Add vDSO for x86-64 with gettimeofday/clock_gettime/getcpu 2007-07-21 18:37:08 -07:00
vsyscall.h x86_64: Add vDSO for x86-64 with gettimeofday/clock_gettime/getcpu 2007-07-21 18:37:08 -07:00
vsyscall32.h
xor.h