Commit 76d5d4c5 authored by Guo Weikang's avatar Guo Weikang Committed by Andrew Morton
Browse files

mm/kmemleak: fix percpu memory leak detection failure

kmemleak_alloc_percpu gives an incorrect min_count parameter, causing
percpu memory to be considered a gray object.

Link: https://lkml.kernel.org/r/20241227092311.3572500-1-guoweikang.kernel@gmail.com


Fixes: 8c868592 ("mm/kmemleak: use IS_ERR_PCPU() for pointer in the percpu address space")
Signed-off-by: default avatarGuo Weikang <guoweikang.kernel@gmail.com>
Acked-by: default avatarUros Bizjak <ubizjak@gmail.com>
Acked-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
Cc: Guo Weikang <guoweikang.kernel@gmail.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent cd6313be
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1093,7 +1093,7 @@ void __ref kmemleak_alloc_percpu(const void __percpu *ptr, size_t size,
	pr_debug("%s(0x%px, %zu)\n", __func__, ptr, size);

	if (kmemleak_enabled && ptr && !IS_ERR_PCPU(ptr))
		create_object_percpu((__force unsigned long)ptr, size, 0, gfp);
		create_object_percpu((__force unsigned long)ptr, size, 1, gfp);
}
EXPORT_SYMBOL_GPL(kmemleak_alloc_percpu);