powerpc: dump kernel log before carrying out fadump or kdump
authorGanesh Goudar <ganeshgr@linux.ibm.com>
Wed, 4 Sep 2019 07:59:49 +0000 (13:29 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 7 Oct 2019 16:57:02 +0000 (18:57 +0200)
[ 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

index 02fe6d0..d5f351f 100644 (file)
@@ -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