Parcourir la source

Pull mca-check-psp into release branch

Tony Luck il y a 19 ans
Parent
commit
cf1d469ec1
1 fichiers modifiés avec 13 ajouts et 4 suppressions
  1. 13 4
      arch/ia64/kernel/mca_drv.c

+ 13 - 4
arch/ia64/kernel/mca_drv.c

@@ -547,9 +547,20 @@ recover_from_processor_error(int platform, slidx_table_t *slidx,
 		(pal_processor_state_info_t*)peidx_psp(peidx);
 		(pal_processor_state_info_t*)peidx_psp(peidx);
 
 
 	/*
 	/*
-	 * We cannot recover errors with other than bus_check.
+	 * Processor recovery status must key off of the PAL recovery
+	 * status in the Processor State Parameter.
 	 */
 	 */
-	if (psp->cc || psp->rc || psp->uc)
+
+	/*
+	 * The machine check is corrected.
+	 */
+	if (psp->cm == 1)
+		return 1;
+
+	/*
+	 * The error was not contained.  Software must be reset.
+	 */
+	if (psp->us || psp->ci == 0)
 		return 0;
 		return 0;
 
 
 	/*
 	/*
@@ -570,8 +581,6 @@ recover_from_processor_error(int platform, slidx_table_t *slidx,
 		return 0;
 		return 0;
 	if (pbci->eb && pbci->bsi > 0)
 	if (pbci->eb && pbci->bsi > 0)
 		return 0;
 		return 0;
-	if (psp->ci == 0)
-		return 0;
 
 
 	/*
 	/*
 	 * This is a local MCA and estimated as recoverble external bus error.
 	 * This is a local MCA and estimated as recoverble external bus error.