Hi Alexey, On Thu, Jun 6, 2024 at 4:03 AM Alexey Makhalov <alexey.makhalov@xxxxxxxxxxxx> wrote: > > Hi Tao, thanks for putting all these things together. The patch set > looks good to me. It was tested against various kernel versions/flavors > and VMware dump formats. No issues. Note: x86_64 architecture only. > Regards, Thanks a lot for your testing! Thanks, Tao Liu > --Alexey > > On 5/31/24 2:19 AM, Tao Liu wrote: > > 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/vmware > > gdb stack unwinding support. > > > > === part 2 > > > > - arm64: > > arm64: Add gdb stack unwinding support > > > > - vmware: > > vmware_guestdump: Various format versions support > > x86_64: fix gdb bt for vmware dumps > > set_context(): check if context is already current > > > > - x86_64: > > x86_64: Fix invalid input "=>" for bt command > > 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: > > 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 > > === > > > > v4 -> v3: > > Fixed the author issue in [PATCH v3 06/16] Fix gdb_interface: restore gdb's > > output streams at end of gdb_interface. > > > > v3 -> v2: > > 1) Updated CC list as pointed out in [4] > > 2) Compiling issues as in [5] > > > > > > 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 > > [4]: https://www.mail-archive.com/devel@xxxxxxxxxxxxxxxxxxxxxxxxxxx/msg00681.html > > [5]: https://www.mail-archive.com/devel@xxxxxxxxxxxxxxxxxxxxxxxxxxx/msg00715.html > > > > Aditya Gupta (2): > > Remove 'frame' from prohibited commands list > > ppc64: correct gdb passthroughs by implementing machdep->get_cpu_reg > > > > Alexey Makhalov (3): > > set_context(): check if context is already current > > x86_64: fix gdb bt for vmware dumps > > vmware_guestdump: Various format versions support > > > > 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 | 33 +++-- > > tools.c | 8 +- > > vmware_guestdump.c | 316 ++++++++++++++++++++++++++++++++------------- > > x86_64.c | 302 ++++++++++++++++++++++++++++++++++++++----- > > 11 files changed, 1151 insertions(+), 192 deletions(-) > > > -- > 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 -- 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