diff options
Diffstat (limited to 'arch/arm64/mm/init.c')
-rw-r--r-- | arch/arm64/mm/init.c | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/arch/arm64/mm/init.c b/arch/arm64/mm/init.c index 997c6345cdd6..a398eb9018bb 100644 --- a/arch/arm64/mm/init.c +++ b/arch/arm64/mm/init.c | |||
@@ -197,14 +197,6 @@ void __init bootmem_init(void) | |||
197 | max_pfn = max_low_pfn = max; | 197 | max_pfn = max_low_pfn = max; |
198 | } | 198 | } |
199 | 199 | ||
200 | /* | ||
201 | * Poison init memory with an undefined instruction (0x0). | ||
202 | */ | ||
203 | static inline void poison_init_mem(void *s, size_t count) | ||
204 | { | ||
205 | memset(s, 0, count); | ||
206 | } | ||
207 | |||
208 | #ifndef CONFIG_SPARSEMEM_VMEMMAP | 200 | #ifndef CONFIG_SPARSEMEM_VMEMMAP |
209 | static inline void free_memmap(unsigned long start_pfn, unsigned long end_pfn) | 201 | static inline void free_memmap(unsigned long start_pfn, unsigned long end_pfn) |
210 | { | 202 | { |
@@ -386,8 +378,7 @@ void __init mem_init(void) | |||
386 | 378 | ||
387 | void free_initmem(void) | 379 | void free_initmem(void) |
388 | { | 380 | { |
389 | poison_init_mem(__init_begin, __init_end - __init_begin); | 381 | free_initmem_default(0); |
390 | free_initmem_default(-1); | ||
391 | } | 382 | } |
392 | 383 | ||
393 | #ifdef CONFIG_BLK_DEV_INITRD | 384 | #ifdef CONFIG_BLK_DEV_INITRD |
@@ -396,10 +387,8 @@ static int keep_initrd; | |||
396 | 387 | ||
397 | void free_initrd_mem(unsigned long start, unsigned long end) | 388 | void free_initrd_mem(unsigned long start, unsigned long end) |
398 | { | 389 | { |
399 | if (!keep_initrd) { | 390 | if (!keep_initrd) |
400 | poison_init_mem((void *)start, PAGE_ALIGN(end) - start); | 391 | free_reserved_area((void *)start, (void *)end, 0, "initrd"); |
401 | free_reserved_area((void *)start, (void *)end, -1, "initrd"); | ||
402 | } | ||
403 | } | 392 | } |
404 | 393 | ||
405 | static int __init keepinitrd_setup(char *__unused) | 394 | static int __init keepinitrd_setup(char *__unused) |