Messages in this thread Patch in this message | | | Subject | Re: [PATCH] kmemleak: Ignore the aperture memory hole on x86_64 | From | Catalin Marinas <> | Date | Sun, 16 Aug 2009 22:48:55 +0100 |
| |
On Sun, 2009-08-16 at 12:08 +0200, Ingo Molnar wrote: > * Catalin Marinas <catalin.marinas@arm.com> wrote: > > diff --git a/arch/x86/kernel/aperture_64.c b/arch/x86/kernel/aperture_64.c > > index 676debf..cb690b3 100644 > > --- a/arch/x86/kernel/aperture_64.c > > +++ b/arch/x86/kernel/aperture_64.c > > @@ -94,6 +94,11 @@ static u32 __init allocate_aperture(void) > > * code for safe > > */ > > p = __alloc_bootmem_nopanic(aper_size, aper_size, 512ULL<<20); > > + /* > > + * Kmemleak should not scan this block as it may not be mapped via the > > + * kernel direct mapping. > > + */ > > + kmemleak_ignore(p); > > i tried this in -tip, it causes this build error: > > arch/x86/kernel/aperture_64.c: In function ‘allocate_aperture’: > arch/x86/kernel/aperture_64.c:101: error: implicit declaration of function ‘kmemleak_ignore’
Missing the #include. Here's the updated patch:
kmemleak: Ignore the aperture memory hole on x86_64
From: Catalin Marinas <catalin.marinas@arm.com>
This block is allocated with alloc_bootmem() and scanned by kmemleak but the kernel direct mapping may no longer exist. This patch tells kmemleak to ignore this memory hole.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Cc: Ingo Molnar <mingo@elte.hu> --- arch/x86/kernel/aperture_64.c | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/arch/x86/kernel/aperture_64.c b/arch/x86/kernel/aperture_64.c index 676debf..128111d 100644 --- a/arch/x86/kernel/aperture_64.c +++ b/arch/x86/kernel/aperture_64.c @@ -20,6 +20,7 @@ #include <linux/bitops.h> #include <linux/ioport.h> #include <linux/suspend.h> +#include <linux/kmemleak.h> #include <asm/e820.h> #include <asm/io.h> #include <asm/iommu.h> @@ -94,6 +95,11 @@ static u32 __init allocate_aperture(void) * code for safe */ p = __alloc_bootmem_nopanic(aper_size, aper_size, 512ULL<<20); + /* + * Kmemleak should not scan this block as it may not be mapped via the + * kernel direct mapping. + */ + kmemleak_ignore(p); if (!p || __pa(p)+aper_size > 0xffffffff) { printk(KERN_ERR "Cannot allocate aperture memory hole (%p,%uK)\n", Thanks.
-- Catalin
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |