aboutsummaryrefslogtreecommitdiff
path: root/include/asm-ia64/sn/xpc.h
diff options
context:
space:
mode:
authorRuss Anderson <rja@sgi.com>2007-08-21 16:45:12 -0500
committerTony Luck <tony.luck@intel.com>2007-12-19 11:19:19 -0800
commit64135fa97ce016058f95345425a9ebd04ee1bd2a (patch)
tree7b7cd85c07a608db9e01b39694d9af7a823bdfdb /include/asm-ia64/sn/xpc.h
parent091062284c05d13b3393f4fcfcedc0f52cb948b4 (diff)
[IA64] Fix Altix BTE error return status
The Altix shub2 BTE error detail bits are in a different location than on shub1. The current code does not take this into account resulting in all shub2 BTE failures mapping to "unknown". This patch reads the error detail bits from the proper location, so the correct BTE failure reason is returned for both shub1 and shub2. Signed-off-by: Russ Anderson <rja@sgi.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'include/asm-ia64/sn/xpc.h')
-rw-r--r--include/asm-ia64/sn/xpc.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/include/asm-ia64/sn/xpc.h b/include/asm-ia64/sn/xpc.h
index e52b8508083..8e5d7de9c63 100644
--- a/include/asm-ia64/sn/xpc.h
+++ b/include/asm-ia64/sn/xpc.h
@@ -3,7 +3,7 @@
* License. See the file "COPYING" in the main directory of this archive
* for more details.
*
- * Copyright (c) 2004-2006 Silicon Graphics, Inc. All Rights Reserved.
+ * Copyright (c) 2004-2007 Silicon Graphics, Inc. All Rights Reserved.
*/
@@ -1211,6 +1211,12 @@ xpc_IPI_init(int index)
static inline enum xpc_retval
xpc_map_bte_errors(bte_result_t error)
{
+ if (is_shub2()) {
+ if (BTE_VALID_SH2_ERROR(error))
+ return xpcBteSh2Start + error;
+ else
+ return xpcBteUnmappedError;
+ }
switch (error) {
case BTE_SUCCESS: return xpcSuccess;
case BTEFAIL_DIR: return xpcBteDirectoryError;