aboutsummaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorRuss Anderson <rja@efs.americas.sgi.com>2006-03-03 16:42:26 -0600
committerTony Luck <tony.luck@intel.com>2006-03-07 15:40:06 -0800
commite1c48554ae295de984eee83a7798e7fb394a1629 (patch)
tree1404fbe42ec92fdfbd9f5054bf0d6cfb8b152366 /arch
parentf032f90809ebbbd28feb90f97add2e0a869a42ed (diff)
[IA64] mca recovery return value when no bus check
When there is no bus check, the return code should be failure, not success. Signed-off-by: Russ Anderson (rja@sgi.com) Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch')
-rw-r--r--arch/ia64/kernel/mca_drv.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/arch/ia64/kernel/mca_drv.c b/arch/ia64/kernel/mca_drv.c
index 53ffb0633c7..e883d85906d 100644
--- a/arch/ia64/kernel/mca_drv.c
+++ b/arch/ia64/kernel/mca_drv.c
@@ -568,10 +568,15 @@ recover_from_processor_error(int platform, slidx_table_t *slidx,
return 0;
/*
- * If there is no bus error, record is weird but we need not to recover.
+ * The cache check and bus check bits have four possible states
+ * cc bc
+ * 0 0 Weird record, not recovered
+ * 1 0 Cache error, not recovered
+ * 0 1 I/O error, attempt recovery
+ * 1 1 Memory error, attempt recovery
*/
if (psp->bc == 0 || pbci == NULL)
- return 1;
+ return 0;
/*
* Sorry, we cannot handle so many.