Since we have pt_regs read from the ELF note for active / panic task,
in both KDUMP and compressed diskdump, reuse the same function.
Signed-off-by: Suzuki K. Poulose <suzuki(a)in.ibm.com>
---
netdump.c | 2 ++
ppc.c | 7 +++++--
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/netdump.c b/netdump.c
index d23e45c..9e9d5f9 100644
--- a/netdump.c
+++ b/netdump.c
@@ -1696,6 +1696,8 @@ dump_Elf32_Nhdr(Elf32_Off offset, int store)
}
}
}
+ if (nd->num_prstatus_notes > 0)
+ pc->flags2 |= ELF_NOTES;
break;
case NT_PRPSINFO:
netdump_print("(NT_PRPSINFO)\n");
diff --git a/ppc.c b/ppc.c
index 078da4e..521fec2 100755
--- a/ppc.c
+++ b/ppc.c
@@ -1196,8 +1196,11 @@ ppc_dumpfile_stack_frame(struct bt_info *bt, ulong *getpc, ulong
*getsp)
{
struct syment *sp;
- /* For KDUMP get the SP, PC from pt_regs stored in the core */
- if (pc->flags & KDUMP) {
+ /*
+ * For KDUMP and compressed KDUMP get the SP, PC from pt_regs
+ * read from the Elf Note.
+ */
+ if (ELF_NOTES_VALID()) {
ppc_kdump_stack_frame(bt, getpc, getsp);
return;
}