mm: percpu: use kmemleak_ignore_phys() instead of kmemleak_free()
authorPatrick Wang <patrick.wang.shcn@gmail.com>
Tue, 5 Jul 2022 11:31:58 +0000 (19:31 +0800)
committerakpm <akpm@linux-foundation.org>
Mon, 18 Jul 2022 00:14:47 +0000 (17:14 -0700)
commita317ebccaa3609917a2c021af870cf3fa607ab0c
tree611a57a7aedb9881148552c53187f9269ff2f595
parent48725bbc0c3828bb9e36b632c6bf0326ed292ffb
mm: percpu: use kmemleak_ignore_phys() instead of kmemleak_free()

Kmemleak recently added a rbtree to store the objects allocted with
physical address.  Those objects can't be freed with kmemleak_free().

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.

Use kmemleak_ignore_phys() instead of kmemleak_free() for those
objects.

Link: https://lkml.kernel.org/r/20220705113158.127600-1-patrick.wang.shcn@gmail.com
Fixes: 0c24e061196c ("mm: kmemleak: add rbtree and store physical address for objects allocated with PA")
Signed-off-by: Patrick Wang <patrick.wang.shcn@gmail.com>
Cc: Dennis Zhou <dennis@kernel.org>
Cc: Tejun Heo <tj@kernel.org>
Cc: Christoph Lameter <cl@linux.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/percpu.c