kernel-ark/include/asm-x86_64
Jan Beulich 8c914cb704 [PATCH] x86_64: actively synchronize vmalloc area when registering certain callbacks
While the modular aspect of the respective i386 patch doesn't apply to
x86-64 (as the top level page directory entry is shared between modules
and the base kernel), handlers registered with register_die_notifier()
are still under similar constraints for touching ioremap()ed or
vmalloc()ed memory. The likelihood of this problem becoming visible is
of course significantly lower, as the assigned virtual addresses would
have to cross a 2**39 byte boundary. This is because the callback gets
invoked
(a) in the page fault path before the top level page table propagation
gets carried out (hence a fault to propagate the top level page table
entry/entries mapping to module's code/data would nest infinitly) and
(b) in the NMI path, where nested faults must absolutely not happen,
since otherwise the IRET from the nested fault re-enables NMIs,
potentially resulting in nested NMI occurences.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-03-25 09:10:53 -08:00
..
8253pit.h
a.out.h [PATCH] x86_64: TASK_SIZE fixes for compatibility mode processes 2005-06-21 18:46:12 -07:00
acpi.h Revert "[PATCH] x86_64: Only do the clustered systems have unsynchronized TSC assumption on IBM systems" 2006-02-27 20:41:56 -08:00
agp.h [PATCH] AGP fix for Xen VMM 2005-06-07 12:35:43 -07:00
apic.h [PATCH] x86_64: Allow to run main time keeping from the local APIC interrupt 2006-02-04 16:43:13 -08:00
apicdef.h [PATCH] x86_64: x86_64 write apic id fix 2006-01-11 19:04:57 -08:00
atomic.h [PATCH] atomic: add_unless cmpxchg optimise 2006-03-23 07:38:17 -08:00
auxvec.h [PATCH] auxiliary vector cleanups 2005-09-07 16:57:21 -07:00
bitops.h [PATCH] x86_64: fls in asm for x86_64 2006-01-11 19:04:50 -08:00
boot.h
bootsetup.h
bug.h [PATCH] x86-64: reduce x86-64 bug frame by 4 bytes 2005-09-12 10:50:58 -07:00
bugs.h
byteorder.h
cache.h [PATCH] Move read_mostly definition to asm/cache.h 2006-03-23 07:38:10 -08:00
cacheflush.h [PATCH] x86/x86_64: mark rodata section read-only: x86-64 support 2006-01-06 08:33:36 -08:00
calling.h [PATCH] x86-64: Fix CFI information 2005-09-12 10:50:56 -07:00
checksum.h [NET]: Fix ipl=>ihl typo in ip_fast_csum 2005-08-29 16:02:48 -07:00
compat.h [PATCH] amd64: task_pt_regs() 2006-01-12 09:08:51 -08:00
cpu.h
cpufeature.h [PATCH] x86_64: Undo the earlier changes to remove unrolled copy/memset functions 2006-02-04 16:43:13 -08:00
cputime.h
current.h kbuild: alpha,x86_64 use generic asm-offsets.h support 2005-09-09 21:28:48 +02:00
debugreg.h
delay.h
desc.h [PATCH] x86_64: Align and pad x86_64 GDT on page boundary 2006-01-11 19:04:53 -08:00
div64.h
dma-mapping.h [PATCH] x86_64: Use function pointers to call DMA mapping functions 2006-01-11 19:04:55 -08:00
dma.h [PATCH] x86_64: Add 4GB DMA32 zone 2005-11-14 19:55:13 -08:00
dwarf2.h [PATCH] x86_64: Separate CONFIG_UNWIND_INFO from CONFIG_DEBUG_INFO 2006-01-11 19:01:10 -08:00
e820.h [PATCH] kdump: x86_64: add memmmap command line option 2006-01-10 08:01:27 -08:00
edac.h [PATCH] EDAC: core EDAC support code 2006-01-18 19:20:31 -08:00
elf.h [PATCH] x86_64: Increase the variability of the process stack on 64bit architectures 2006-03-25 09:10:52 -08:00
emergency-restart.h [PATCH] x86_64: Implemenent machine_emergency_restart 2005-07-26 14:35:42 -07:00
errno.h
fcntl.h [PATCH] Clean up struct flock definitions 2005-09-07 16:57:38 -07:00
fixmap.h [PATCH] mark several functions __always_inline 2006-01-14 18:27:15 -08:00
floppy.h [PATCH] make some things static 2005-05-05 16:36:47 -07:00
fpu32.h
futex.h [PATCH] FUTEX_WAKE_OP: pthread_cond_signal() speedup 2005-09-07 16:57:17 -07:00
gart-mapping.h [PATCH] x86_64: Use function pointers to call DMA mapping functions 2006-01-11 19:04:55 -08:00
genapic.h
hardirq.h [PATCH] i386/x86-64: Don't ack the APIC for bad interrupts when the APIC is not enabled 2006-02-04 16:43:15 -08:00
hpet.h [PATCH] x86-64: Fix HPET timer on x460 2006-02-11 21:41:11 -08:00
hw_irq.h [PATCH] x86_64: Remove useless KDB vector 2006-01-11 19:05:00 -08:00
i387.h [PATCH] amd64: task_thread_info() 2006-01-12 09:08:51 -08:00
ia32_unistd.h [PATCH] fstatat64 support 2006-02-11 21:41:10 -08:00
ia32.h [PATCH] x86_64: Flexmap for 32bit and randomized mappings for 64bit 2006-01-16 23:18:35 -08:00
ide.h
idle.h [PATCH] x86_64: Add idle notifiers 2006-01-11 19:04:55 -08:00
io_apic.h [ACPI] delete CONFIG_ACPI_BOOT 2005-08-24 12:08:54 -04:00
io.h [PATCH] remove ISA legacy functions: remove the helpers 2006-03-24 07:33:19 -08:00
ioctl.h [PATCH] Generic ioctl.h 2006-01-10 08:01:34 -08:00
ioctls.h
ipcbuf.h
ipi.h [PATCH] x86_64: Remove useless KDB vector 2006-01-11 19:05:00 -08:00
irq.h [PATCH] x86_64: Increase NR_IRQ_VECTORS to 32 * NR_CPUS 2006-01-16 11:27:59 -08:00
kdebug.h [PATCH] x86_64: make trap information available to die notification handlers 2006-01-11 19:01:10 -08:00
kexec.h [PATCH] Compilation of kexec/kdump broken 2006-02-03 08:32:09 -08:00
kmap_types.h
kprobes.h [PATCH] kprobes: fix build breakage 2006-01-10 08:01:40 -08:00
ldt.h
linkage.h
local.h [PATCH] x86-64: clean up local_add/sub arguments 2005-09-12 10:50:59 -07:00
mach_apic.h
mc146818rtc.h
mce.h [PATCH] x86_64: Support for AMD specific MCE Threshold. 2005-11-14 19:55:13 -08:00
mman.h [PATCH] add asm-generic/mman.h 2006-02-15 15:32:22 -08:00
mmsegment.h
mmu_context.h [PATCH] x86_64: {set,clear,test}_bit() related cleanup and pci_mmcfg_init() fix 2006-03-24 07:33:15 -08:00
mmu.h
mmx.h
mmzone.h [PATCH] x86_64: Move NUMA page_to_pfn/pfn_to_page functions out of line 2006-01-11 19:05:01 -08:00
module.h
mpspec.h Pull pnpacpi into acpica branch 2006-01-07 03:50:18 -05:00
msgbuf.h
msi.h [PATCH] PCI: Change MSI to use physical delivery mode always 2005-11-10 16:09:18 -08:00
msr.h [PATCH] Fix x86_64/msr.h interface to agree with i386/msr.h 2005-11-20 11:52:59 -08:00
mtrr.h [PATCH] Clean up mtrr compat ioctl code 2005-10-30 17:37:13 -08:00
mutex.h Fix mutex_trylock() copy-and-paste bug (x86, x86-64, generic mutex-dec.h) 2006-01-11 15:50:47 -08:00
namei.h
nmi.h [PATCH] x86_64: Collected NMI watchdog fixes. 2005-05-17 07:59:16 -07:00
node.h
numa.h [PATCH] x86_64: Rename struct node in x86-64 NUMA code to struct bootnode 2006-03-25 09:10:52 -08:00
numnodes.h
page.h [PATCH] x86_64: Allow nesting of int3 by default for kprobes 2006-01-16 11:27:58 -08:00
param.h [PATCH] Avoid namespace pollution in <asm/param.h> 2006-01-02 08:38:38 -08:00
parport.h
pci-direct.h
pci.h [PATCH] x86_64: no_iommu removal in pci-gart.c 2006-02-26 09:53:29 -08:00
pda.h [PATCH] x86_64: Allocate PDAs in the local node 2006-01-11 19:04:59 -08:00
percpu.h [PATCH] more for_each_cpu() conversions 2006-03-23 07:38:17 -08:00
pgalloc.h [PATCH] x86_64: actively synchronize vmalloc area when registering certain callbacks 2006-03-25 09:10:53 -08:00
pgtable.h [PATCH] x86_64: actively synchronize vmalloc area when registering certain callbacks 2006-03-25 09:10:53 -08:00
poll.h [PATCH] POLLRDHUP/EPOLLRDHUP handling for half-closed devices notifications 2006-03-25 08:22:56 -08:00
posix_types.h
prctl.h
processor.h [PATCH] x86_64: Flexmap for 32bit and randomized mappings for 64bit 2006-01-16 23:18:35 -08:00
proto.h [PATCH] x86_64: Move the SMP time selection earlier 2006-02-26 09:53:31 -08:00
ptrace.h [PATCH] xen: x86: Rename usermode macro 2005-06-23 09:45:14 -07:00
resource.h
rtc.h
rwlock.h [PATCH] Fix typo in x86_64 __build_write_lock_const assembly 2005-12-24 12:30:22 -08:00
scatterlist.h
seccomp.h
sections.h
segment.h [PATCH] x86_64: Remove unused segments 2006-01-11 19:05:01 -08:00
semaphore.h [PATCH] semaphore: Remove __MUTEX_INITIALIZER() 2005-10-30 17:37:27 -08:00
sembuf.h
serial.h [PATCH] Serial: Split 8250 port table (part 2) 2005-06-29 18:45:19 +01:00
setup.h
shmbuf.h
shmparam.h
sigcontext32.h
sigcontext.h
siginfo.h [PATCH] consolidate SIGEV_PAD_SIZE 2005-05-01 08:59:08 -07:00
signal.h [PATCH] Replace extern inline with static inline in asm-x86_64/* 2005-09-12 10:50:56 -07:00
smp.h [PATCH] x86_64: Fix compile error with !CONFIG_COMPAT 2006-01-11 19:04:57 -08:00
socket.h [NET]: Introduce SO_{SND,RCV}BUFFORCE socket options 2005-08-29 15:31:35 -07:00
sockios.h
sparsemem.h [PATCH] add x86-64 specific support for sparsemem 2005-06-23 09:45:07 -07:00
spinlock_types.h [PATCH] spinlock consolidation 2005-09-10 10:06:21 -07:00
spinlock.h [PATCH] x86_64: Use int operations in spinlocks to support more than 128 CPUs spinning. 2005-11-14 19:55:15 -08:00
stat.h
statfs.h
string.h
suspend.h [PATCH] x86_64: eliminate set_debug() 2006-03-25 09:10:52 -08:00
swiotlb.h [PATCH] x86_64: Use function pointers to call DMA mapping functions 2006-01-11 19:04:55 -08:00
system.h [PATCH] x86_64: eliminate set_debug() 2006-03-25 09:10:52 -08:00
termbits.h
termios.h
thread_info.h [PATCH] death of get_thread_info/put_thread_info 2006-01-12 09:08:59 -08:00
timex.h [PATCH] x86_64: On Intel CPUs don't do an additional CPU sync before RDTSC 2006-01-11 19:04:58 -08:00
tlb.h
tlbflush.h [PATCH] x86-64: Increase TLB flush array size 2005-09-12 10:49:58 -07:00
topology.h [PATCH] Export cpu topology in sysfs 2006-02-03 08:32:09 -08:00
types.h [PATCH] sab: consolidate kmem_bufctl_t 2005-09-05 00:05:48 -07:00
uaccess.h [PATCH] mark several functions __always_inline 2006-01-14 18:27:15 -08:00
ucontext.h
unaligned.h
unistd.h [PATCH] x86-64: Add sys_unshare 2006-02-08 15:52:15 -08:00
user32.h
user.h
vga.h
vsyscall32.h
vsyscall.h [PATCH] x86_64: sparse warning cleanups 2006-01-11 19:05:02 -08:00
xor.h