فهرست منبع

powerpc/eeh: Reorder output messages

We already had some output messages from EEH core. Occasionally,
we can see the output messages from EEH core before the stack
dump. That's not what we expected. The patch fixes that and shows
the stack dump prior to output messages from EEH core.

Signed-off-by: Gavin Shan <shangw@linux.vnet.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Gavin Shan 12 سال پیش
والد
کامیت
5293bf97a2
1فایلهای تغییر یافته به همراه3 افزوده شده و 3 حذف شده
  1. 3 3
      arch/powerpc/kernel/eeh.c

+ 3 - 3
arch/powerpc/kernel/eeh.c

@@ -327,11 +327,11 @@ static int eeh_phb_check_failure(struct eeh_pe *pe)
 	/* Isolate the PHB and send event */
 	/* Isolate the PHB and send event */
 	eeh_pe_state_mark(phb_pe, EEH_PE_ISOLATED);
 	eeh_pe_state_mark(phb_pe, EEH_PE_ISOLATED);
 	eeh_serialize_unlock(flags);
 	eeh_serialize_unlock(flags);
-	eeh_send_failure_event(phb_pe);
 
 
 	pr_err("EEH: PHB#%x failure detected\n",
 	pr_err("EEH: PHB#%x failure detected\n",
 		phb_pe->phb->global_number);
 		phb_pe->phb->global_number);
 	dump_stack();
 	dump_stack();
+	eeh_send_failure_event(phb_pe);
 
 
 	return 1;
 	return 1;
 out:
 out:
@@ -454,8 +454,6 @@ int eeh_dev_check_failure(struct eeh_dev *edev)
 	eeh_pe_state_mark(pe, EEH_PE_ISOLATED);
 	eeh_pe_state_mark(pe, EEH_PE_ISOLATED);
 	eeh_serialize_unlock(flags);
 	eeh_serialize_unlock(flags);
 
 
-	eeh_send_failure_event(pe);
-
 	/* Most EEH events are due to device driver bugs.  Having
 	/* Most EEH events are due to device driver bugs.  Having
 	 * a stack trace will help the device-driver authors figure
 	 * a stack trace will help the device-driver authors figure
 	 * out what happened.  So print that out.
 	 * out what happened.  So print that out.
@@ -464,6 +462,8 @@ int eeh_dev_check_failure(struct eeh_dev *edev)
 		pe->addr, pe->phb->global_number);
 		pe->addr, pe->phb->global_number);
 	dump_stack();
 	dump_stack();
 
 
+	eeh_send_failure_event(pe);
+
 	return 1;
 	return 1;
 
 
 dn_unlock:
 dn_unlock: