Currently we might get following warning while unwinding the stack: PID: 0 TASK: 40471790 CPU: 0 COMMAND: "swapper" #0 [<403396b0>] (schedule) from [<4002e978>] #1 [<4002e978>] (cpu_idle) from [<40008930>] #2 [<40008930>] (start_kernel) from [<80008034>] bt: WARNING: UNWIND: cannot find index for 80008034
This is due the fact that we didn't limit the stack unwinding to the kernel (and modules) text. Fix this by adding limit to the kernel text only. Signed-off-by: Mika Westerberg <[email protected]> --- unwind_arm.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/unwind_arm.c b/unwind_arm.c index cc5eb7c..58fb5da 100644 --- a/unwind_arm.c +++ b/unwind_arm.c @@ -592,6 +592,9 @@ unwind_frame(struct stackframe *frame, ulong stacktop) low = frame->sp; high = stacktop; + if (!is_kernel_text(frame->pc)) + return FALSE; + tbl = search_table(frame->pc); if (!tbl) { error(WARNING, "UNWIND: cannot find unwind table for %lx\n", -- 1.7.3.2 -- Crash-utility mailing list [email protected] https://www.redhat.com/mailman/listinfo/crash-utility
