aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm64/mm/init.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm64/mm/init.c')
-rw-r--r--arch/arm64/mm/init.c17
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 */
203static 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
209static inline void free_memmap(unsigned long start_pfn, unsigned long end_pfn) 201static 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
387void free_initmem(void) 379void 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
397void free_initrd_mem(unsigned long start, unsigned long end) 388void 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
405static int __init keepinitrd_setup(char *__unused) 394static int __init keepinitrd_setup(char *__unused)