[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1228989052.332.12.camel@pc1117.cambridge.arm.com>
Date: Thu, 11 Dec 2008 09:50:52 +0000
From: Catalin Marinas <catalin.marinas@....com>
To: Dave Hansen <dave@...ux.vnet.ibm.com>
Cc: linux-kernel@...r.kernel.org
Subject: Re: [PATCH 07/15] kmemleak: Add memleak_alloc callback from
alloc_large_system_hash
On Wed, 2008-12-10 at 11:04 -0800, Dave Hansen wrote:
> On Wed, 2008-12-10 at 18:27 +0000, Catalin Marinas wrote:
> >
> > @@ -4570,6 +4571,8 @@ void *__init alloc_large_system_hash(const char *tablename,
> > if (_hash_mask)
> > *_hash_mask = (1 << log2qty) - 1;
> >
> > + memleak_alloc(table, size, 1, GFP_ATOMIC);
> > +
> > return table;
> > }
>
> Why is this sucker GFP_ATOMIC?
It could be GFP_KERNEL, it don't think it really matter at this point.
> Since alloc_large_system_hash() is using bootmem (and is called early),
> I'm a little surprised that it is OK to call into memleak_alloc() which
> uses kmem_cache_alloc(). Is the slab even set up at this point?
It doesn't need to be. Early callbacks like this are logged by kmemleak
in a buffer and properly registered once the slab allocator is fully
initialised (slab initialisation needs to allocate some memory for
itself as well).
--
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