This patchset is a rebase/merged version of the following 3 patchsets: 1): [PATCH v10 0/5] Improve stack unwind on ppc64 [1] 2): [PATCH 0/5] x86_64 gdb stack unwinding support [2] 3): Clean up on top of one-thread-v2 [3] A complete description of gdb stack unwinding support for crash can be found in [1]. This patchset can be divided into the following 2 parts: 1) part1: arch independent, mainly modify on the crash_target.c/gdb_interface.c files, in preparation of the gdb side. 2) part2: arch specific part, for implementing ppc64/x86_64/arm64 gdb stack unwinding support. === part 2 arm64: Add gdb stack unwinding support Fix cpumask_t recursive dependence issue Parse stack by inactive_stack_frame priorily if the struct is valid x86_64: Add gdb stack unwinding support ppc64: correct gdb passthroughs by implementing machdep->get_cpu_reg === part 1 Stop stack unwinding at non-kernel address Fix gdb_interface: restore gdb's output streams at end of gdb_interface Print task pid/command instead of CPU index Rename get_cpu_reg to get_current_task_reg Let crash change gdb context Leave only one gdb thread for crash Remove 'frame' from prohibited commands list === v2 -> v1: 1) Added the patch: x86_64: Fix invalid input "=>" for bt command, thanks for Kazu's testing. 2) Modify the patch: x86_64: Add gdb stack unwinding support, added the pcp_save, spp_save and sp, for restoring the value in match of the original code logic. [1]: https://www.mail-archive.com/devel@xxxxxxxxxxxxxxxxxxxxxxxxxxx/msg00469.html [2]: https://www.mail-archive.com/devel@xxxxxxxxxxxxxxxxxxxxxxxxxxx/msg00488.html [3]: https://www.mail-archive.com/devel@xxxxxxxxxxxxxxxxxxxxxxxxxxx/msg00554.html Aditya Gupta (2): Remove 'frame' from prohibited commands list ppc64: correct gdb passthroughs by implementing machdep->get_cpu_reg Tao Liu (11): Leave only one gdb thread for crash Let crash change gdb context Rename get_cpu_reg to get_current_task_reg Print task pid/command instead of CPU index Fix gdb_interface: restore gdb's output streams at end of gdb_interface Stop stack unwinding at non-kernel address x86_64: Add gdb stack unwinding support Parse stack by inactive_stack_frame priorily if the struct is valid Fix cpumask_t recursive dependence issue x86_64: Fix invalid input "=>" for bt command arm64: Add gdb stack unwinding support arm64.c | 114 +++++++++++++++++- crash_target.c | 47 +++++--- defs.h | 187 +++++++++++++++++++++++++++++- gdb-10.2.patch | 79 +++++++++++++ gdb_interface.c | 33 ++---- kernel.c | 61 ++++++++-- ppc64.c | 163 ++++++++++++++++++++++++-- task.c | 30 +++-- tools.c | 8 +- x86_64.c | 299 +++++++++++++++++++++++++++++++++++++++++++----- 10 files changed, 916 insertions(+), 105 deletions(-) -- 2.40.1 -- Crash-utility mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxxxxxx https://${domain_name}/admin/lists/devel.lists.crash-utility.osci.io/ Contribution Guidelines: https://github.com/crash-utility/crash/wiki