diff options
Diffstat (limited to 'arch/x86/mm/init.c')
-rw-r--r-- | arch/x86/mm/init.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/arch/x86/mm/init.c b/arch/x86/mm/init.c index 620928903be3..d28a2d741f9e 100644 --- a/arch/x86/mm/init.c +++ b/arch/x86/mm/init.c | |||
@@ -122,8 +122,18 @@ __ref void *alloc_low_pages(unsigned int num) | |||
122 | return __va(pfn << PAGE_SHIFT); | 122 | return __va(pfn << PAGE_SHIFT); |
123 | } | 123 | } |
124 | 124 | ||
125 | /* need 3 4k for initial PMD_SIZE, 3 4k for 0-ISA_END_ADDRESS */ | 125 | /* |
126 | #define INIT_PGT_BUF_SIZE (6 * PAGE_SIZE) | 126 | * By default need 3 4k for initial PMD_SIZE, 3 4k for 0-ISA_END_ADDRESS. |
127 | * With KASLR memory randomization, depending on the machine e820 memory | ||
128 | * and the PUD alignment. We may need twice more pages when KASLR memory | ||
129 | * randomization is enabled. | ||
130 | */ | ||
131 | #ifndef CONFIG_RANDOMIZE_MEMORY | ||
132 | #define INIT_PGD_PAGE_COUNT 6 | ||
133 | #else | ||
134 | #define INIT_PGD_PAGE_COUNT 12 | ||
135 | #endif | ||
136 | #define INIT_PGT_BUF_SIZE (INIT_PGD_PAGE_COUNT * PAGE_SIZE) | ||
127 | RESERVE_BRK(early_pgt_alloc, INIT_PGT_BUF_SIZE); | 137 | RESERVE_BRK(early_pgt_alloc, INIT_PGT_BUF_SIZE); |
128 | void __init early_alloc_pgt_buf(void) | 138 | void __init early_alloc_pgt_buf(void) |
129 | { | 139 | { |