diff options
author | Ingo Molnar <mingo@elte.hu> | 2007-10-17 12:04:34 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@inhelltoy.tec.linutronix.de> | 2007-10-17 14:15:38 -0400 |
commit | 1e3e19723ecd58149388f3eecbd3285825f64f3b (patch) | |
tree | 5267cfd354e150412752daa360c548818f24e009 /arch/x86/kernel | |
parent | f97586b610dc87a6494236118321e56ffc13319c (diff) |
x86: prepare page allocator for high allocations on PAGEALLOC=y
To preserve the DMA pool in CONFIG_DEBUG_PAGEALLOC=y kernels, we'll
allocate pagetables from above the 16MB DMA limit, so we'll have to set
up boot pagetables to cover 16MB more RAM (worst-case).
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/kernel')
-rw-r--r-- | arch/x86/kernel/head_32.S | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/x86/kernel/head_32.S b/arch/x86/kernel/head_32.S index 9150ca9b5f80..0fa8a972a679 100644 --- a/arch/x86/kernel/head_32.S +++ b/arch/x86/kernel/head_32.S | |||
@@ -51,6 +51,15 @@ | |||
51 | */ | 51 | */ |
52 | LOW_PAGES = 1<<(32-PAGE_SHIFT_asm) | 52 | LOW_PAGES = 1<<(32-PAGE_SHIFT_asm) |
53 | 53 | ||
54 | /* | ||
55 | * To preserve the DMA pool in PAGEALLOC kernels, we'll allocate | ||
56 | * pagetables from above the 16MB DMA limit, so we'll have to set | ||
57 | * up pagetables 16MB more (worst-case): | ||
58 | */ | ||
59 | #ifdef CONFIG_DEBUG_PAGEALLOC | ||
60 | LOW_PAGES = LOW_PAGES + 0x1000000 | ||
61 | #endif | ||
62 | |||
54 | #if PTRS_PER_PMD > 1 | 63 | #if PTRS_PER_PMD > 1 |
55 | PAGE_TABLE_SIZE = (LOW_PAGES / PTRS_PER_PMD) + PTRS_PER_PGD | 64 | PAGE_TABLE_SIZE = (LOW_PAGES / PTRS_PER_PMD) + PTRS_PER_PGD |
56 | #else | 65 | #else |