summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/sys/mem.h
diff options
context:
space:
mode:
authorelowe <none@none>2005-11-14 22:03:14 -0800
committerelowe <none@none>2005-11-14 22:03:14 -0800
commitdb874c57ae335a07060499f1492b0d0e2593e26c (patch)
tree277124e72ab2806706c847b0d0a00a34f73438d5 /usr/src/uts/common/sys/mem.h
parent7a364d25fde47aa82704b12b5251bf7fac37f02e (diff)
downloadillumos-joyent-db874c57ae335a07060499f1492b0d0e2593e26c.tar.gz
4908967 toxic page handling on shutdown takes disproportionate amount of time
6330830 Aggressive page retire v3
Diffstat (limited to 'usr/src/uts/common/sys/mem.h')
-rw-r--r--usr/src/uts/common/sys/mem.h20
1 files changed, 17 insertions, 3 deletions
diff --git a/usr/src/uts/common/sys/mem.h b/usr/src/uts/common/sys/mem.h
index e741d56b9f..f2b23b8029 100644
--- a/usr/src/uts/common/sys/mem.h
+++ b/usr/src/uts/common/sys/mem.h
@@ -20,7 +20,7 @@
* CDDL HEADER END
*/
/*
- * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
+ * Copyright 2005 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
*/
@@ -60,11 +60,25 @@ typedef struct mem_vtop {
* and drivers should not make use of these interfaces: they can change without
* notice and programs that consume them will fail to run on future releases.
*/
-#define MEM_PAGE_RETIRE (('M' << 8) | 0x02)
-#define MEM_PAGE_ISRETIRED (('M' << 8) | 0x03)
#define MEM_NAME (('M' << 8) | 0x04)
#define MEM_INFO (('M' << 8) | 0x05)
+#define MEM_PAGE_RETIRE (('M' << 8) | 0x02)
+#define MEM_PAGE_ISRETIRED (('M' << 8) | 0x03)
+#define MEM_PAGE_UNRETIRE (('M' << 8) | 0x06)
+#define MEM_PAGE_GETERRORS (('M' << 8) | 0x07)
+#define MEM_PAGE_RETIRE_MCE (('M' << 8) | 0x08)
+#define MEM_PAGE_RETIRE_UE (('M' << 8) | 0x09)
+#define MEM_PAGE_RETIRE_TEST (('M' << 8) | 0x0A)
+
+/*
+ * Bits returned from MEM_PAGE_GETERRORS ioctl for use by fmd(1M).
+ */
+#define MEM_PAGE_ERR_NONE 0x0
+#define MEM_PAGE_ERR_MULTI_CE 0x1
+#define MEM_PAGE_ERR_UE 0x2
+#define MEM_PAGE_ERR_FMA_REQ 0x8
+
typedef struct mem_name {
uint64_t m_addr; /* memory address */
uint64_t m_synd; /* architecture-specific syndrome */