]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
mm/kmemleak: use PF_KTHREAD flag to detect kernel threads
authorZhongqiu Han <zhongqiu.han@oss.qualcomm.com>
Fri, 30 Jan 2026 09:37:29 +0000 (17:37 +0800)
committerAndrew Morton <akpm@linux-foundation.org>
Sun, 5 Apr 2026 20:53:02 +0000 (13:53 -0700)
Replace the current->mm check with PF_KTHREAD flag for more reliable
kernel thread detection in scan_should_stop().  The PF_KTHREAD flag is the
standard way to identify kernel threads and is not affected by temporary
mm borrowing via kthread_use_mm() (although kmemleak does not currently
encounter such cases, this makes the code more robust).

No functional change.

Link: https://lkml.kernel.org/r/20260130093729.2045858-3-zhongqiu.han@oss.qualcomm.com
Signed-off-by: Zhongqiu Han <zhongqiu.han@oss.qualcomm.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/kmemleak.c

index 2a24d9a4a835f0f12015653ed005f80669b7f882..fa8201e23222119dd5a239cb5caa9e1d1a631d68 100644 (file)
@@ -1505,10 +1505,10 @@ static int scan_should_stop(void)
         * This function may be called from either process or kthread context,
         * hence the need to check for both stop conditions.
         */
-       if (current->mm)
-               return signal_pending(current);
+       if (current->flags & PF_KTHREAD)
+               return kthread_should_stop();
 
-       return kthread_should_stop();
+       return signal_pending(current);
 }
 
 /*