kernel-hacking-2024-linux-s.../arch/arc
Vineet Gupta e42404fa10 ARC: stack unwinding: don't assume non-current task is sleeping
To start stack unwinding (SP, PC and BLINK) are needed. When the
explicit execution context (pt_regs etc) is not available, unwinder
assumes the task is sleeping (in __switch_to()) and fetches SP and BLINK
from kernel mode stack.

But this assumption is not true, specially in a SMP system, when top
runs on 1 core, there may be active running processes on all cores.

So when unwinding non courrent tasks, ensure they are NOT running.

And while at it, handle the self unwinding case explicitly.

This came out of investigation of a customer reported hang with
rcutorture+top

Link: https://github.com/foss-for-synopsys-dwc-arc-processors/linux/issues/31
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
2020-11-17 20:12:01 -08:00
..
boot ARC: [dts] fix the errors detected by dtbs_check 2020-10-05 21:02:29 -07:00
configs ARC: [plat-eznps]: Drop support for EZChip NPS platform 2020-10-05 21:02:29 -07:00
include ARC: bitops: Remove unecessary operation and value 2020-11-17 20:10:21 -08:00
kernel ARC: stack unwinding: don't assume non-current task is sleeping 2020-11-17 20:12:01 -08:00
lib
mm ARC: mm: fix spelling mistakes 2020-11-17 20:12:01 -08:00
oprofile
plat-axs10x
plat-hsdk ARC: [plat-hsdk] Remap CCMs super early in asm boot trampoline 2020-11-02 11:45:09 -08:00
plat-sim
plat-tb10x
Kbuild
Kconfig Merge branch 'work.set_fs' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2020-10-22 09:59:21 -07:00
Kconfig.debug
Makefile ARC: [plat-eznps]: Drop support for EZChip NPS platform 2020-10-05 21:02:29 -07:00