* [PATCH] arm: fixed backtrace when task running on another cpu
@ 2020-04-18 11:14 Wang Qing
0 siblings, 0 replies; only message in thread
From: Wang Qing @ 2020-04-18 11:14 UTC (permalink / raw)
To: Russell King, Thomas Gleixner, Eric W. Biederman, Enrico Weigelt,
Allison Randal, Wang Qing, Vincent Whitchurch, linux-arm-kernel,
linux-kernel
Cc: opensource.kernel
We cannot get FP when the task is currently running on another CPU,
in this case, current stack is printed instead of the task.
Also, thread_saved_fp() is the last time the task was switched out,
we should not use too.
Signed-off-by: Wang Qing <wangqing@vivo.com>
---
arch/arm/kernel/traps.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/arch/arm/kernel/traps.c b/arch/arm/kernel/traps.c
index 1e70e72..24e860a 100644
--- a/arch/arm/kernel/traps.c
+++ b/arch/arm/kernel/traps.c
@@ -222,6 +222,9 @@ static void dump_backtrace(struct pt_regs *regs, struct task_struct *tsk)
} else if (tsk != current) {
fp = thread_saved_fp(tsk);
mode = 0x10;
+ } else if (task_curr(tsk))
+ pr_info("tsk is running on another CPU, not trace!\n");
+ fp = 0;
} else {
asm("mov %0, fp" : "=r" (fp) : : "cc");
mode = 0x10;
--
2.7.4
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2020-04-18 11:14 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-18 11:14 [PATCH] arm: fixed backtrace when task running on another cpu Wang Qing
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).