powerpc/eeh: differentiate duplicate detection message
authorSam Bobroff <sbobroff@linux.ibm.com>
Thu, 17 Oct 2019 04:59:37 +0000 (15:59 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Wed, 13 Nov 2019 05:58:10 +0000 (16:58 +1100)
Currently when an EEH error is detected, the system log receives the
same (or almost the same) message twice:

  EEH: PHB#0 failure detected, location: N/A
  EEH: PHB#0 failure detected, location: N/A
or
  EEH: eeh_dev_check_failure: Frozen PHB#0-PE#0 detected
  EEH: Frozen PHB#0-PE#0 detected

This looks like a bug, but in fact the messages are from different
functions and mean slightly different things.  So keep both but change
one of the messages slightly, so that it's clear they are different:

  EEH: PHB#0 failure detected, location: N/A
  EEH: Recovering PHB#0, location: N/A
or
  EEH: eeh_dev_check_failure: Frozen PHB#0-PE#0 detected
  EEH: Recovering PHB#0-PE#0

Signed-off-by: Sam Bobroff <sbobroff@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/43817cb6e6631b0828b9a6e266f60d1f8ca8eb22.1571288375.git.sbobroff@linux.ibm.com
arch/powerpc/kernel/eeh_driver.c

index 516a42666b6b16a13929446bfff04dd93bb61f1c..3dd1a422fc29dd919f95f037fc57c0529fc0805b 100644 (file)
@@ -881,12 +881,12 @@ void eeh_handle_normal_event(struct eeh_pe *pe)
 
        /* Log the event */
        if (pe->type & EEH_PE_PHB) {
-               pr_err("EEH: PHB#%x failure detected, location: %s\n",
+               pr_err("EEH: Recovering PHB#%x, location: %s\n",
                        pe->phb->global_number, eeh_pe_loc_get(pe));
        } else {
                struct eeh_pe *phb_pe = eeh_phb_pe_get(pe->phb);
 
-               pr_err("EEH: Frozen PHB#%x-PE#%x detected\n",
+               pr_err("EEH: Recovering PHB#%x-PE#%x\n",
                       pe->phb->global_number, pe->addr);
                pr_err("EEH: PE location: %s, PHB location: %s\n",
                       eeh_pe_loc_get(pe), eeh_pe_loc_get(phb_pe));