[PATCH] stacktrace: Use PF_KTHREAD to check for kernel threads

From: Thomas Gleixner
Date: Tue Jul 02 2019 - 11:53:42 EST


!current->mm is not a reliable indicator for kernel threads as they might
temporarily use a user mm. Check for PF_KTHREAD instead.

Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
---
--- a/kernel/stacktrace.c
+++ b/kernel/stacktrace.c
@@ -228,7 +228,7 @@ unsigned int stack_trace_save_user(unsig
};

/* Trace user stack if not a kernel thread */
- if (!current->mm)
+ if (current->flags & PF_KTHREAD)
return 0;

arch_stack_walk_user(consume_entry, &c, task_pt_regs(current));