Now we're developping the feature of makedumpfile producing vmcore in
kdump-compressed format from sadump-related formats. The vmcores
generated from the sadump-related formats have register set collected
by sadump as ELF note, meaning that the registers could be the values
collected during execution in kernel text or user space; of course,
they could also be broken just as register set collected by kdump for
non-panic tasks.
Currently, on sadump-related formats, bt command displays register set
at top level, but doesn't on kdump-compressed format. This patch
changes the logic on kdump-compressed format so that bt displays the
register set in the same way as on sadump-related formats. If they are
not useful--that is, they don't belong to neither kernel text nor user
space--, the current logic remains.
Example:
[Before]
crash> bt
PID: 0 TASK: ffffffff80314b60 CPU: 0 COMMAND: "swapper"
#0 [ffffffff8045bf88] mwait_idle at ffffffff80056ca4
#1 [ffffffff8045bf90] cpu_idle at ffffffff80048fc5
[After]
crash> bt
PID: 0 TASK: ffffffff80314b60 CPU: 0 COMMAND: "swapper"
[exception RIP: mwait_idle_with_hints+102]
RIP: ffffffff8006b9bf RSP: ffffffff8045bf88 RFLAGS: 00000246
RAX: 0000000000000000 RBX: ffffffff80056c98 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 000000000008fc00 R8: ffffffff8045a000 R9: ffff81047e4f6340
R10: 0000000000000002 R11: 0000000000000246 R12: 0000000000000018
R13: 0000000000000018 R14: 0000000000000018 R15: 0000000076c18a58
CS: 0010 SS: 0018
#0 [ffffffff8045bf88] mwait_idle at ffffffff80056ca4
#1 [ffffffff8045bf90] cpu_idle at ffffffff80048fc5
Signed-off-by: HATAYAMA Daisuke <d.hatayama(a)jp.fujitsu.com>
---
netdump.c | 17 +++++++++++++++++
x86.c | 2 ++
x86_64.c | 6 +++++-
3 files changed, 24 insertions(+), 1 deletions(-)