kernel_optimize_test/include/asm-x86
Thomas Gleixner 985a34bd75 x86: remove quicklists
quicklists cause a serious memory leak on 32-bit x86,
as documented at:

  http://bugzilla.kernel.org/show_bug.cgi?id=9991

the reason is that the quicklist pool is a special-purpose
cache that grows out of proportion. It is not accounted for
anywhere and users have no way to even realize that it's
the quicklists that are causing RAM usage spikes. It was
supposed to be a relatively small pool, but as demonstrated
by KOSAKI Motohiro, they can grow as large as:

  Quicklists:    1194304 kB

given how much trouble this code has caused historically,
and given that Andrew objected to its introduction on x86
(years ago), the best option at this point is to remove them.

[ any performance benefits of caching constructed pgds should
  be implemented in a more generic way (possibly within the page
  allocator), while still allowing constructed pages to be
  allocated by other workloads. ]

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2008-03-11 17:11:55 +01:00
..
mach-bigsmp x86: cleanup mpspec variants 2008-01-30 13:30:35 +01:00
mach-default x86: cleanup mpspec variants 2008-01-30 13:30:35 +01:00
mach-es7000 x86: cleanup mpspec variants 2008-01-30 13:30:35 +01:00
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 x86: cleanup mpspec variants 2008-01-30 13:30:35 +01:00
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 x86: actually merge <asm/alternative.h> 2008-01-30 13:30:30 +01:00
apic.h x86: adjust enable_NMI_through_LVT0() 2008-01-30 13:31:24 +01:00
apicdef.h x86: extended interrupt LVT support for AMD Barcelona 2008-01-30 13:30:40 +01:00
arch_hooks.h x86: move debug related declarations to kdebug.h 2008-01-30 13:30:17 +01:00
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 x86: partial unification of asm-x86/bitops.h 2008-01-30 13:30:55 +01:00
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 x86: nuke a ton of unused exports 2008-01-30 13:30:28 +01:00
bugs.h x86: add include to cpu/intel.c 2008-02-04 16:48:04 +01:00
byteorder.h
cache.h
cacheflush.h x86: include proper prototypes for rodata_test 2008-02-14 23:30:20 +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 x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
checksum.h
cmpxchg_32.h x86: fall back on interrupt disable in cmpxchg8b on 80386 and 80486 2008-01-30 13:30:47 +01:00
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_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 x86: merge include/asm-x86/dma.h 2008-01-30 13:30:20 +01:00
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: no robust/pi futex for real i386 CPUs 2008-02-26 12:56:06 +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: make mxcsr_feature_mask static again 2008-02-19 16:18:28 +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 x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
ia32.h x86: TLS cleanup 2008-01-30 13:30:46 +01:00
ide.h x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
idle.h x86: remove dead code and exports 2008-01-30 13:30:28 +01:00
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 x86: merge include/asm-x86/sparsemem.h 2008-01-30 13:30:37 +01:00
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 x86: irqflags consolidation 2008-01-30 13:30:33 +01:00
ist.h
k8.h x86: move k8 related declarations 2008-01-30 13:30:16 +01:00
Kbuild Really unexport asm/page.h 2008-03-06 08:13:47 -08:00
kdebug.h x86: make dump_pagetable() static 2008-02-14 23:30:19 +01:00
kexec.h x86: unify kexec_{32|64}.h 2008-01-30 13:31:26 +01:00
kmap_types.h
kprobes.h Kprobes: indicate kretprobe support in Kconfig 2008-03-04 16:35:11 -08: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 lguest: include function prototypes 2008-02-26 12:55:49 +01: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 x86: isolate the rtc code for sharing 2008-01-30 13:30:26 +01:00
mca_dma.h
mca.h
mce.h x86: rename the struct pt_regs members for 32/64-bit consistency 2008-01-30 13:30:56 +01:00
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 x86: cleanup mpspec variants 2008-01-30 13:30:35 +01:00
mpspec.h x86: cleanup smp.h variants 2008-01-30 13:30:36 +01:00
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 x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
nmi_64.h x86: nmi_64.c: make code static 2008-01-30 13:30:31 +01:00
nmi.h
nops.h x86: add comments for NOPs 2008-02-26 12:55:51 +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 x86: rename KERNEL_TEXT_SIZE => KERNEL_IMAGE_SIZE 2008-02-26 12:55:56 +01: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 x86: pci-dma_64.c: cleanups 2008-01-30 13:30:31 +01:00
pci-direct.h
pci.h x86: consolidate toloplogy_32/64.h 2008-01-30 13:30:38 +01:00
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: remove quicklists 2008-03-11 17:11:55 +01:00
pgtable_64.h Revert "x86: fix pmd_bad and pud_bad to support huge pages" 2008-03-03 10:02:44 -08: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 x86: minor cleanup of comments in processor.h 2008-02-19 16:18:32 +01: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: fix ptrace_bts_config structure declaration 2008-02-29 18:55:43 +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 x86: merge resume-trace.h variants 2008-01-30 13:30:38 +01:00
rio.h x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
rtc.h
rwlock.h x86: use immediates instead of RW_LOCK_BIAS_STR 2008-01-30 13:30:34 +01:00
rwsem.h x86: fix UML and -regparm=3 2008-01-30 13:33:00 +01:00
scatterlist.h x86: merge include/asm-x86/scatterlist.h 2008-01-30 13:30:21 +01:00
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 x86: use generic register names in struct sigcontext 2008-01-30 13:30:56 +01:00
sigcontext.h x86: fix sigcontext.h user export 2008-02-13 16:20:35 +01:00
siginfo.h
signal.h x86 single_step: TIF_FORCED_TF 2008-01-30 13:30:50 +01:00
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 x86: merge include/asm-x86/sparsemem.h 2008-01-30 13:30:37 +01:00
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 x86: merge tlbflush.h variants 2008-01-30 13:30:35 +01:00
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 x86 vDSO: i386 vdso32 2008-01-30 13:30:42 +01:00
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 x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
xor_64.h x86: remove more bogus filenames in comments. 2008-01-30 13:30:28 +01:00
xor.h