summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMahesh Salgaonkar <mahesh@linux.vnet.ibm.com>2017-03-28 19:15:04 +0530
committerMichael Ellerman <mpe@ellerman.id.au>2017-04-03 16:11:36 +1000
commit5b1d6fc2d4d927852214f2a7e2a8eb1bdce3b574 (patch)
tree7aefec4f4f08e1a10ea46f122cc110708a9d102a
parentf4ea6dcb08ea2c6c996c373573caf74d48d23b84 (diff)
powerpc/book3s: Print the kernel function name in machine check
For D-side errors we print the load/store address that caused the machine check as 'Effective address'. But the instruction that may have caused the machine check can also be helpful, so in addition to printing the NIP, also print the kernel function name as well. After this patch the MCE console log would look like: Severe Machine check interrupt [Recovered] NIP [d00000001bc70194]: init_module+0x194/0x2b0 [bork_kernel] Initiator: CPU Error type: SLB [Parity] Effective address: d000000026de0000 Signed-off-by: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
-rw-r--r--arch/powerpc/kernel/mce.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/kernel/mce.c b/arch/powerpc/kernel/mce.c
index 399aeafb7dd4..b960f00f4908 100644
--- a/arch/powerpc/kernel/mce.c
+++ b/arch/powerpc/kernel/mce.c
@@ -311,7 +311,7 @@ void machine_check_print_event_info(struct machine_check_event *evt)
printk("%s%s Machine check interrupt [%s]\n", level, sevstr,
evt->disposition == MCE_DISPOSITION_RECOVERED ?
"Recovered" : "Not recovered");
- printk("%s NIP: %016llx\n", level, evt->srr0);
+ printk("%s NIP [%016llx]: %pS\n", level, evt->srr0, (void *)evt->srr0);
printk("%s Initiator: %s\n", level,
evt->initiator == MCE_INITIATOR_CPU ? "CPU" : "Unknown");
switch (evt->error_type) {