Re: [PATCH] mm: percpu: use kmemleak_ignore_phys() instead of kmemleak_free()

From: Catalin Marinas
Date: Tue Jul 12 2022 - 07:00:00 EST


On Wed, Jul 06, 2022 at 10:44:11PM +0800, patrick wang wrote:
> On Wed, Jul 6, 2022 at 5:20 AM Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:
> >
> > On Tue, 5 Jul 2022 19:31:58 +0800 Patrick Wang <patrick.wang.shcn@xxxxxxxxx> wrote:
> >
> > > Kmemleak recently added a rbtree to store the objects
> > > allocted with physical address. Those objects can't be
> > > freed with kmemleak_free(). Use kmemleak_ignore_phys()
> > > instead of kmemleak_free() for those objects.
> >
> > Thanks. What are the user-visible runtime effects of this?
>
> According to the comments, percpu allocations are tracked
> by kmemleak separately. Kmemleak_free() was used to avoid
> the unnecessary tracking. If kmemleak_free() fails, those
> objects would be scanned by kmemleak, which is unnecessary
> but shouldn't lead to other effects.
>
> I didn't observe any anomaly without this commit on riscv
> and arm64.

What could happen is an increased rate of false negatives as it scans
more than necessary.

> > And are we able to identify a commit for the Fixes: line?
>
> 0c24e061196c (mm: kmemleak: add rbtree and store physical
> address for objects allocated with PA)
> Current in mm-stable.

I think we could add a Fixes line for the above. For the patch:

Reviewed-by: Catalin Marinas <catalin.marinas@xxxxxxx>