Re: [PATCH v3 0/3] mm: kmemleak: Use a memory pool for kmemleak object allocations

From: Catalin Marinas
Date: Tue Aug 13 2019 - 05:41:04 EST


On Mon, Aug 12, 2019 at 02:07:30PM -0700, Andrew Morton wrote:
> On Mon, 12 Aug 2019 17:06:39 +0100 Catalin Marinas <catalin.marinas@xxxxxxx> wrote:
>
> > Following the discussions on v2 of this patch(set) [1], this series
> > takes slightly different approach:
> >
> > - it implements its own simple memory pool that does not rely on the
> > slab allocator
> >
> > - drops the early log buffer logic entirely since it can now allocate
> > metadata from the memory pool directly before kmemleak is fully
> > initialised
> >
> > - CONFIG_DEBUG_KMEMLEAK_EARLY_LOG_SIZE option is renamed to
> > CONFIG_DEBUG_KMEMLEAK_MEM_POOL_SIZE
> >
> > - moves the kmemleak_init() call earlier (mm_init())
> >
> > - to avoid a separate memory pool for struct scan_area, it makes the
> > tool robust when such allocations fail as scan areas are rather an
> > optimisation
> >
> > [1] http://lkml.kernel.org/r/20190727132334.9184-1-catalin.marinas@xxxxxxx
>
> Using the term "memory pool" is a little unfortunate, but better than
> using "mempool"!

I agree, it could have been more inspired. What about "metadata pool"
(together with function name updates etc.)? Happy to send a v4.

> The changelog doesn't answer the very first question: why not use
> mempools. Please send along a paragraph which explains this decision.

I posted one in reply to the patch where the changelog should be
updated.

Thanks.

--
Catalin