aboutsummaryrefslogtreecommitdiff
path: root/sys/alpha/include/pmap.h
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2002-02-06 04:30:26 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2002-02-06 04:30:26 +0000
commit78a1485fd1050cfef430fd037c54415e6f2e13ba (patch)
tree2d0f06748a7a9932a6c9c09800474f8c9daa8d46 /sys/alpha/include/pmap.h
parentadb423b12dc3f910cb581396fd8bee8d224529c0 (diff)
Notes
Diffstat (limited to 'sys/alpha/include/pmap.h')
-rw-r--r--sys/alpha/include/pmap.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/sys/alpha/include/pmap.h b/sys/alpha/include/pmap.h
index bd06d9ec68885..1c258d9261827 100644
--- a/sys/alpha/include/pmap.h
+++ b/sys/alpha/include/pmap.h
@@ -165,6 +165,10 @@ struct md_page {
TAILQ_HEAD(,pv_entry) pv_list;
};
+#define ASN_BITS 8
+#define ASNGEN_BITS (32 - ASN_BITS)
+#define ASNGEN_MASK ((1 << ASNGEN_BITS) - 1)
+
struct pmap {
pt_entry_t *pm_lev1; /* KVA of lev0map */
vm_object_t pm_pteobj; /* Container for pte's */
@@ -172,11 +176,12 @@ struct pmap {
int pm_count; /* reference count */
u_int32_t pm_active; /* active cpus */
struct {
- u_int32_t asn:8; /* address space number */
- u_int32_t gen:24; /* generation number */
+ u_int32_t asn:ASN_BITS; /* address space number */
+ u_int32_t gen:ASNGEN_BITS; /* generation number */
} pm_asn[MAXCPU];
struct pmap_statistics pm_stats; /* pmap statistics */
struct vm_page *pm_ptphint; /* pmap ptp hint */
+ LIST_ENTRY(pmap) pm_list; /* list of all pmaps. */
};
#define pmap_resident_count(pmap) (pmap)->pm_stats.resident_count