Prev: [PATCH] ARM: Gemini: fix compiler error in copypage-fa.c
Next: eclone (1/11): Factor out code to allocate pidmap page
From: Catalin Marinas on 4 May 2010 10:50 With commits 08677214 and 59be5a8e, alloc_bootmem()/free_bootmem() and friends use the early_res functions for memory management when NO_BOOTMEM is enabled. This patch adds the kmemleak calls in the corresponding code paths for bootmem allocations. Signed-off-by: Catalin Marinas <catalin.marinas(a)arm.com> Cc: Yinghai Lu <yinghai(a)kernel.org> Cc: H. Peter Anvin <hpa(a)zytor.com> --- mm/bootmem.c | 2 ++ mm/page_alloc.c | 1 + 2 files changed, 3 insertions(+), 0 deletions(-) diff --git a/mm/bootmem.c b/mm/bootmem.c index 58c66cc..0747f68 100644 --- a/mm/bootmem.c +++ b/mm/bootmem.c @@ -435,6 +435,7 @@ void __init free_bootmem_node(pg_data_t *pgdat, unsigned long physaddr, { #ifdef CONFIG_NO_BOOTMEM free_early(physaddr, physaddr + size); + kmemleak_free_part(__va(physaddr), size); #else unsigned long start, end; @@ -460,6 +461,7 @@ void __init free_bootmem(unsigned long addr, unsigned long size) { #ifdef CONFIG_NO_BOOTMEM free_early(addr, addr + size); + kmemleak_free_part(__va(addr), size); #else unsigned long start, end; diff --git a/mm/page_alloc.c b/mm/page_alloc.c index d03c946..e1bd32b 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -3440,6 +3440,7 @@ void * __init __alloc_memory_core_early(int nid, u64 size, u64 align, ptr = phys_to_virt(addr); memset(ptr, 0, size); reserve_early_without_check(addr, addr + size, "BOOTMEM"); + kmemleak_alloc(ptr, size, 1, 0); return ptr; } -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |