powerpc/eeh: differentiate duplicate detection message

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
This commit is contained in:
Sam Bobroff 2019-10-17 15:59:37 +11:00 committed by Michael Ellerman
parent b948aaaf3e
commit de84ffc3cc

View File

@ -881,12 +881,12 @@ void eeh_handle_normal_event(struct eeh_pe *pe)
/* Log the event */ /* Log the event */
if (pe->type & EEH_PE_PHB) { 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)); pe->phb->global_number, eeh_pe_loc_get(pe));
} else { } else {
struct eeh_pe *phb_pe = eeh_phb_pe_get(pe->phb); 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); pe->phb->global_number, pe->addr);
pr_err("EEH: PE location: %s, PHB location: %s\n", pr_err("EEH: PE location: %s, PHB location: %s\n",
eeh_pe_loc_get(pe), eeh_pe_loc_get(phb_pe)); eeh_pe_loc_get(pe), eeh_pe_loc_get(phb_pe));