linux/include/asm-x86
Thomas Gleixner 76ebd0548d x86: introduce page pool in cpa
DEBUG_PAGEALLOC was not possible on 64-bit due to its early-bootup
hardcoded reliance on PSE pages, and the unrobustness of the runtime
splitup of large pages. The splitup ended in recursive calls to
alloc_pages() when a page for a pte split was requested.

Avoid the recursion with a preallocated page pool, which is used to
split up large mappings and gets refilled in the return path of
kernel_map_pages after the split has been done. The size of the page
pool is adjusted to the available memory.

This part just implements the page pool and the initialization w/o
using it yet.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2008-02-09 23:24:09 +01:00
..
mach-bigsmp
mach-default
mach-es7000
mach-generic x86: add generic GPIO support to x86 2008-01-30 13:33:35 +01:00
mach-numaq x86: move NUMAQ io handling into arch/x86/pci/numa.c 2008-02-04 16:48:03 +01:00
mach-rdc321x x86: add support for the RDC R-321x SoC 2008-01-30 13:33:36 +01:00
mach-summit
mach-visws
mach-voyager time: delete comments that refer to noexistent symbols 2008-02-03 16:20:13 +02:00
xen
a.out-core.h aout: suppress A.OUT library support if !CONFIG_ARCH_SUPPORTS_AOUT 2008-02-08 09:22:30 -08:00
a.out.h aout: move STACK_TOP[_MAX] to asm/processor.h 2008-02-08 09:22:29 -08:00
acpi.h x86: fix sparse warnings in acpi/bus.c 2008-02-09 23:24:08 +01:00
agp.h x86: remove flush_agp_mappings() 2008-01-30 13:34:07 +01:00
alternative-asm.h
alternative.h
apic.h x86: adjust enable_NMI_through_LVT0() 2008-01-30 13:31:24 +01:00
apicdef.h
arch_hooks.h
asm.h x86: add _ASM_EXTABLE macro to <asm/asm.h> 2008-02-04 16:47:56 +01:00
atomic_32.h
atomic_64.h
atomic.h
auxvec.h
bitops_32.h
bitops_64.h iommu sg: kill __clear_bit_string and find_next_zero_string 2008-02-05 09:44:11 -08:00
bitops.h x86: change bitwise operations to get a void parameter. 2008-01-30 13:31:31 +01:00
boot.h
bootparam.h x86: EFI runtime service support 2008-01-30 13:31:19 +01:00
bug.h
bugs.h x86: add include to cpu/intel.c 2008-02-04 16:48:04 +01:00
byteorder.h
cache.h
cacheflush.h x86: introduce page pool in cpa 2008-02-09 23:24:09 +01:00
calgary.h
calling.h x86: clean up include/asm-x86/calling.h 2008-01-30 13:32:49 +01:00
checksum_32.h
checksum_64.h
checksum.h
cmpxchg_32.h
cmpxchg_64.h Add cmpxchg64 and cmpxchg64_local to x86_64 2008-02-07 08:42:31 -08:00
cmpxchg.h
compat.h asm-*/compat.h: fix typo in comment 2008-02-03 16:32:51 +02:00
cpu.h x86: avoid section mismatch involving arch_register_cpu 2008-02-01 17:49:43 +01:00
cpufeature.h x86: add feature macros for the gbpages cpuid bit 2008-02-04 16:48:09 +01:00
cputime.h
current_32.h
current_64.h
current.h
debugreg.h
delay.h Fix __const_udelay declaration and definition mismatches 2008-02-06 10:41:06 -08:00
desc_64.h x86: unify set_tss_desc 2008-01-30 13:31:14 +01:00
desc_defs.h x86: move _set_gate and its users to a common location 2008-01-30 13:31:14 +01:00
desc.h x86: x86 TLS desc_struct cleanup 2008-01-30 13:31:51 +01:00
device.h
div64.h
dma-mapping_32.h
dma-mapping_64.h
dma-mapping.h
dma.h
dmi.h x86 32-bit boot: rename bt_ioremap() to early_ioremap() 2008-01-30 13:33:44 +01:00
ds.h x86, ptrace: support 32bit-cross-64bit BTS recording 2008-01-30 13:32:03 +01:00
dwarf2_32.h
dwarf2_64.h
dwarf2.h
e820_32.h x86_32: trim memory by updating e820 2008-01-30 13:33:32 +01:00
e820_64.h x86_64: make bootmap_start page align v6 2008-02-01 17:49:41 +01:00
e820.h x86: fix the missing BIOS area check in page_is_ram 2008-01-30 13:34:06 +01:00
edac.h
efi.h x86: fix EFI mapping 2008-02-04 16:48:06 +01:00
elf.h Cleanup asm/{elf,page,user}.h: #ifdef __KERNEL__ is no longer needed 2008-02-07 08:42:30 -08:00
emergency-restart.h x86: reboot_{32|64}.c unification 2008-01-30 13:32:51 +01:00
errno.h
fb.h
fcntl.h
fixmap_32.h x86: early boot debugging via FireWire (ohci1394_dma=early) 2008-01-30 13:34:11 +01:00
fixmap_64.h x86: early boot debugging via FireWire (ohci1394_dma=early) 2008-01-30 13:34:11 +01:00
fixmap.h
floppy.h
frame.h
futex.h x86: use _ASM_EXTABLE macro in include/asm-x86/futex.h 2008-02-04 16:47:58 +01:00
gart.h x86: disable the GART early, 64-bit 2008-01-30 13:33:09 +01:00
genapic_32.h
genapic_64.h
genapic.h
geode.h x86: GEODE: MFGPT: Use "just-in-time" detection for the MFGPT timers 2008-02-09 23:24:08 +01:00
gpio.h x86: add generic GPIO support to x86 2008-01-30 13:33:35 +01:00
hardirq_32.h
hardirq_64.h
hardirq.h
highmem.h i386: Resolve dependency of asm-i386/pgtable.h on highmem.h 2008-02-05 09:44:14 -08:00
hpet.h x86, rtc: make CONFIG_HPET_EMULATE_RTC usable from modules 2008-01-30 13:33:28 +01:00
hw_irq_32.h x86: remove final FASTCALL() uses 2008-02-04 16:48:03 +01:00
hw_irq_64.h x86: provide a native_init_IRQ function on 64-bit 2008-01-30 13:33:19 +01:00
hw_irq.h
hypertransport.h
i387.h x86: use _ASM_EXTABLE macro in include/asm-x86/i387.h 2008-02-04 16:47:58 +01:00
i8253.h x86: isolate PIC/PIT in/out calls 2008-01-30 13:33:14 +01:00
i8259.h x86: isolate PIC/PIT in/out calls 2008-01-30 13:33:14 +01:00
ia32_unistd.h
ia32.h
ide.h
idle.h
intel_arch_perfmon.h
io_32.h x86: remove special NUMAQ support in io_32.h 2008-02-04 16:48:03 +01:00
io_64.h x86: make ioremap() UC by default 2008-01-30 13:34:09 +01:00
io_apic.h
io.h
ioctl.h
ioctls.h
iommu.h
ipcbuf.h
ipi.h
irq_32.h
irq_64.h
irq_regs_32.h
irq_regs_64.h
irq_regs.h
irq.h
irqflags.h
ist.h
k8.h
Kbuild Unexport asm/user.h and linux/user.h 2008-02-07 08:42:29 -08:00
kdebug.h x86: add the capability to print fuzzy backtraces 2008-01-30 13:33:07 +01:00
kexec.h x86: unify kexec_{32|64}.h 2008-01-30 13:31:26 +01:00
kmap_types.h
kprobes.h x86: get rid of _MASK flags 2008-01-30 13:31:27 +01:00
kvm_host.h KVM: x86 emulator: Only allow VMCALL/VMMCALL trapped by #UD 2008-01-30 18:01:21 +02:00
kvm_para.h KVM: Per-architecture hypercall definitions 2008-01-30 17:52:55 +02:00
kvm_x86_emulate.h KVM: Move arch dependent files to new directory arch/x86/kvm/ 2008-01-30 18:01:18 +02:00
kvm.h KVM: Portability: Move kvm_fpu to asm-x86/kvm.h 2008-01-30 18:01:22 +02:00
ldt.h
lguest_hcall.h
lguest.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus 2008-01-31 09:35:32 +11:00
linkage.h x86: fix UML and -regparm=3 2008-01-30 13:33:00 +01:00
local.h x86: local.h fix checkpatch warnings 2008-01-30 13:31:26 +01:00
mach_apic.h
math_emu.h x86: x86 user_regset cleanup 2008-01-30 13:31:55 +01:00
mc146818rtc.h
mca_dma.h
mca.h
mce.h
mman.h
mmu_context_32.h x86: voluntary leave_mm before entering ACPI C3 2008-01-30 13:32:01 +01:00
mmu_context_64.h x86: put generic mm_hooks include into PARAVIRT 2008-01-30 13:33:19 +01:00
mmu_context.h
mmu.h x86: voluntary leave_mm before entering ACPI C3 2008-01-30 13:32:01 +01:00
mmx.h
mmzone_32.h Introduce flags for reserve_bootmem() 2008-02-07 08:42:25 -08:00
mmzone_64.h x86: change size of node ids from u8 to s16 2008-01-30 13:33:25 +01:00
mmzone.h
module.h x86: unify module_{32|64}.h 2008-01-30 13:31:43 +01:00
mpspec_def.h
mpspec.h
msgbuf.h
msidef.h
msr-index.h x86: msr for AMD Fam 10h mmio 2008-01-30 13:33:18 +01:00
msr.h x86: use _ASM_EXTABLE macro in include/asm-x86/msr.h 2008-02-04 16:47:58 +01:00
mtrr.h x86, 32-bit: trim memory not covered by wb mtrrs 2008-01-30 13:33:18 +01:00
mutex_32.h x86: remove fastcall from include/asm-x86 2008-01-30 13:31:17 +01:00
mutex_64.h
mutex.h
namei.h
nmi_32.h
nmi_64.h
nmi.h
nops.h x86: move nop declarations into separate include file 2008-01-30 13:32:38 +01:00
numa_32.h x86: arch/x86/mm/init_32.c cleanup 2008-01-30 13:34:10 +01:00
numa_64.h x86: change size of node ids from u8 to s16 2008-01-30 13:33:25 +01:00
numa.h
numaq.h
page_32.h x86: construct 32-bit boot time page tables in native format. 2008-02-09 23:24:09 +01:00
page_64.h CONFIG_HIGHPTE vs. sub-page page tables. 2008-02-08 09:22:42 -08:00
page.h x86: rename LARGE_PAGE_SIZE to PMD_PAGE_SIZE 2008-02-04 16:48:08 +01:00
param.h
paravirt.h x86: add mm parameter to paravirt_alloc_pd 2008-01-30 13:33:39 +01:00
parport.h
pci_32.h
pci_64.h
pci-direct.h
pci.h
pda.h x86: clean up include/asm-x86/pda.h 2008-01-30 13:31:25 +01:00
percpu.h x86: unify percpu.h 2008-01-30 13:32:53 +01:00
pgalloc_32.h CONFIG_HIGHPTE vs. sub-page page tables. 2008-02-08 09:22:42 -08:00
pgalloc_64.h CONFIG_HIGHPTE vs. sub-page page tables. 2008-02-08 09:22:42 -08:00
pgalloc.h
pgtable_32.h x86: construct 32-bit boot time page tables in native format. 2008-02-09 23:24:09 +01:00
pgtable_64.h x86: add pgtable accessor functions for gbpages 2008-02-04 16:48:09 +01:00
pgtable-2level-defs.h
pgtable-2level.h x86: clean up pte_exec 2008-01-30 13:33:42 +01:00
pgtable-3level-defs.h
pgtable-3level.h x86: update reference for PAE tlb flushing 2008-02-04 16:48:02 +01:00
pgtable.h x86: sparse warnings in pageattr.c 2008-02-09 23:24:08 +01:00
poll.h
posix_types_32.h asm-*/posix_types.h: scrub __GLIBC__ 2008-02-08 09:22:34 -08:00
posix_types_64.h
posix_types.h
prctl.h
processor-cyrix.h
processor-flags.h
processor.h aout: move STACK_TOP[_MAX] to asm/processor.h 2008-02-08 09:22:29 -08:00
proto.h x86: replace hard coded reservations in 64-bit early boot code with dynamic table 2008-01-30 13:33:17 +01:00
ptrace-abi.h x86, ptrace: add bts_struct size to status command 2008-01-30 13:32:54 +01:00
ptrace.h x86: rename stack_pointer to kernel_trap_sp 2008-01-30 13:33:16 +01:00
reboot_fixups.h
reboot.h
required-features.h
resource.h
resume-trace.h
rio.h
rtc.h
rwlock.h
rwsem.h x86: fix UML and -regparm=3 2008-01-30 13:33:00 +01:00
scatterlist.h
seccomp_32.h
seccomp_64.h
seccomp.h
sections.h
segment.h x86: early_idt_handler improvements, 64-bit 2008-01-30 13:33:06 +01:00
semaphore_32.h x86: fix UML and -regparm=3 2008-01-30 13:33:00 +01:00
semaphore_64.h
semaphore.h
sembuf.h
serial.h
setup.h x86: prepare 64-bit architecture initialization for paravirt 2008-01-30 13:31:11 +01:00
shmbuf.h
shmparam.h
sigcontext32.h
sigcontext.h
siginfo.h
signal.h
smp_32.h x86: cleanup x86_cpu_to_apicid references 2008-01-30 13:33:11 +01:00
smp_64.h x86: change bios_cpu_apicid to percpu data variable 2008-01-30 13:33:12 +01:00
smp.h
socket.h [NET]: Introducing socket mark socket option. 2008-01-31 19:27:19 -08:00
sockios.h
sparsemem.h
spinlock_types.h x86: FIFO ticket spinlocks 2008-01-30 13:31:21 +01:00
spinlock.h x86: big ticket locks 2008-01-30 13:33:00 +01:00
srat.h
stacktrace.h x86: add the capability to print fuzzy backtraces 2008-01-30 13:33:07 +01:00
stat.h
statfs.h
string_32.h x86: sparse errors from string_32.h 2008-02-04 16:48:01 +01:00
string_64.h
string.h
suspend_32.h x86: unify struct desc_ptr 2008-01-30 13:31:12 +01:00
suspend_64.h x86: make __{save,restore}_processor_state static 2008-01-30 13:31:23 +01:00
suspend.h
swiotlb.h
sync_bitops.h
system_64.h x86: move switch_to macro to system.h 2008-01-30 13:31:08 +01:00
system.h x86: remove final FASTCALL() uses 2008-02-04 16:48:03 +01:00
tce.h
termbits.h
termios.h tty: fix tty network driver interactions with TCGET/TCSET calls (x86 fix) 2008-02-07 08:42:16 -08:00
therm_throt.h
thread_info_32.h x86, ptrace: support for branch trace store(BTS) 2008-01-30 13:31:09 +01:00
thread_info_64.h x86: fix duplicated TIF on 64-bit 2008-01-30 23:27:57 +01:00
thread_info.h
time.h x86: prepare time related functions for paravirt 2008-01-30 13:31:10 +01:00
timer.h
timex.h read_current_timer() cleanups 2008-02-06 10:41:02 -08:00
tlb.h
tlbflush.h
topology.h x86: change size of node ids from u8 to s16 2008-01-30 13:33:25 +01:00
tsc.h x86: get_cycles() fix 2008-01-30 13:33:24 +01:00
types.h
uaccess_32.h x86: use _ASM_EXTABLE macro in include/asm-x86/uaccess_32.h 2008-02-04 16:47:59 +01:00
uaccess_64.h x86: use _ASM_EXTABLE macro in include/asm-x86/uaccess_64.h 2008-02-04 16:47:59 +01:00
uaccess.h
ucontext.h
unaligned.h
unistd_32.h timerfd: wire the new timerfd API to the x86 family 2008-02-05 09:44:07 -08:00
unistd_64.h timerfd: wire the new timerfd API to the x86 family 2008-02-05 09:44:07 -08:00
unistd.h
unwind.h
user32.h
user_32.h Sanitize the type of struct user.u_ar0 2008-02-07 08:42:30 -08:00
user_64.h Sanitize the type of struct user.u_ar0 2008-02-07 08:42:30 -08:00
user.h Cleanup asm/{elf,page,user}.h: #ifdef __KERNEL__ is no longer needed 2008-02-07 08:42:30 -08:00
vdso.h
vga.h
vgtod.h
vic.h
vm86.h x86: add function prototype to vm86.h 2008-02-04 16:48:04 +01:00
vmi_time.h
vmi.h
voyager.h
vsyscall.h x86: map vsyscalls early enough 2008-01-30 13:32:39 +01:00
xor_32.h
xor_64.h
xor.h