[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <1250459335.8085.12.camel@pc1117.cambridge.arm.com>
Date: Sun, 16 Aug 2009 22:48:55 +0100
From: Catalin Marinas <catalin.marinas@....com>
To: Ingo Molnar <mingo@...e.hu>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
Andrew Morton <akpm@...ux-foundation.org>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] kmemleak: Ignore the aperture memory hole on x86_64
On Sun, 2009-08-16 at 12:08 +0200, Ingo Molnar wrote:
> * Catalin Marinas <catalin.marinas@....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@....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@....com>
Cc: Ingo Molnar <mingo@...e.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@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists