From: Mahesh Salgaonkar Date: Tue, 28 Mar 2017 13:45:04 +0000 (+0530) Subject: powerpc/book3s: Print the kernel function name in machine check X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=5b1d6fc2d4d927852214f2a7e2a8eb1bdce3b574;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git 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 Signed-off-by: Michael Ellerman --- 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) {