| From 168a9fb4d7ffd0ee6692a5e9d137abfcfc784b60 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 4 Sep 2019 13:29:49 +0530 |
| Subject: powerpc: dump kernel log before carrying out fadump or kdump |
| |
| From: Ganesh Goudar <ganeshgr@linux.ibm.com> |
| |
| [ Upstream commit e7ca44ed3ba77fc26cf32650bb71584896662474 ] |
| |
| Since commit 4388c9b3a6ee ("powerpc: Do not send system reset request |
| through the oops path"), pstore dmesg file is not updated when dump is |
| triggered from HMC. This commit modified system reset (sreset) handler |
| to invoke fadump or kdump (if configured), without pushing dmesg to |
| pstore. This leaves pstore to have old dmesg data which won't be much |
| of a help if kdump fails to capture the dump. This patch fixes that by |
| calling kmsg_dump() before heading to fadump ot kdump. |
| |
| Fixes: 4388c9b3a6ee ("powerpc: Do not send system reset request through the oops path") |
| Reviewed-by: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com> |
| Reviewed-by: Nicholas Piggin <npiggin@gmail.com> |
| Signed-off-by: Ganesh Goudar <ganeshgr@linux.ibm.com> |
| Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> |
| Link: https://lore.kernel.org/r/20190904075949.15607-1-ganeshgr@linux.ibm.com |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| arch/powerpc/kernel/traps.c | 1 + |
| 1 file changed, 1 insertion(+) |
| |
| diff --git a/arch/powerpc/kernel/traps.c b/arch/powerpc/kernel/traps.c |
| index 02fe6d0201741..d5f351f02c153 100644 |
| --- a/arch/powerpc/kernel/traps.c |
| +++ b/arch/powerpc/kernel/traps.c |
| @@ -399,6 +399,7 @@ void system_reset_exception(struct pt_regs *regs) |
| if (debugger(regs)) |
| goto out; |
| |
| + kmsg_dump(KMSG_DUMP_OOPS); |
| /* |
| * A system reset is a request to dump, so we always send |
| * it through the crashdump code (if fadump or kdump are |
| -- |
| 2.20.1 |
| |