summaryrefslogtreecommitdiffstats
path: root/sys/i386/include/pmap.h
diff options
context:
space:
mode:
authorattilio <attilio@FreeBSD.org>2012-03-07 11:13:18 +0000
committerattilio <attilio@FreeBSD.org>2012-03-07 11:13:18 +0000
commitc3aa7e10fe7a2cfc2e5063bfb0e3be95ac23b98c (patch)
treecb466856e6a02e4e347475be41594785005f775b /sys/i386/include/pmap.h
parent9e6356665029119d3c87435a2c2342ad1f2df3bd (diff)
downloadFreeBSD-src-c3aa7e10fe7a2cfc2e5063bfb0e3be95ac23b98c.zip
FreeBSD-src-c3aa7e10fe7a2cfc2e5063bfb0e3be95ac23b98c.tar.gz
Port r226920,226941 from amd64.
Diffstat (limited to 'sys/i386/include/pmap.h')
-rw-r--r--sys/i386/include/pmap.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/sys/i386/include/pmap.h b/sys/i386/include/pmap.h
index 3012a00..63048e0 100644
--- a/sys/i386/include/pmap.h
+++ b/sys/i386/include/pmap.h
@@ -426,10 +426,20 @@ struct pv_entry;
struct pv_chunk;
struct md_page {
- TAILQ_HEAD(,pv_entry) pv_list;
- int pat_mode;
+ union {
+ TAILQ_HEAD(,pv_entry) pvi_list;
+ struct {
+ vm_page_t pii_left;
+ vm_page_t pii_right;
+ } pvi_siters;
+ } pv_structs;
+ int pat_mode;
};
+#define pv_list pv_structs.pvi_list
+#define pv_left pv_structs.pvi_siters.pii_left
+#define pv_right pv_structs.pvi_siters.pii_right
+
struct pmap {
struct mtx pm_mtx;
pd_entry_t *pm_pdir; /* KVA of page directory */
@@ -468,7 +478,7 @@ extern struct pmap kernel_pmap_store;
*/
typedef struct pv_entry {
vm_offset_t pv_va; /* virtual address for mapping */
- TAILQ_ENTRY(pv_entry) pv_list;
+ TAILQ_ENTRY(pv_entry) pv_next;
} *pv_entry_t;
/*
OpenPOWER on IntegriCloud