Home | History | Annotate | Download | only in include

Lines Matching defs:pmap

69  *	from: hp300: @(#)pmap.h	7.2 (Berkeley) 12/16/90
70 * from: @(#)pmap.h 7.4 (Berkeley) 5/12/91
71 * from: i386 pmap.h,v 1.54 1997/11/20 19:30:35 bde Exp
72 * $FreeBSD: releng/10.1/sys/ia64/include/pmap.h 268201 2014-07-02 23:57:55Z marcel $
106 * Pmap stuff
111 struct pmap {
113 TAILQ_HEAD(,pv_chunk) pm_pvchunk; /* list of mappings in pmap */
115 struct pmap_statistics pm_stats; /* pmap statistics */
116 uint64_t pm_refcount; /* pmap reference count, atomic */
119 typedef struct pmap *pmap_t;
123 #define PMAP_LOCK(pmap) mutex_enter(&(pmap)->pm_mtx)
124 #define PMAP_LOCK_ASSERT(pmap) KASSERT(mutex_owned(&(pmap)->pm_mtx))
125 #define PMAP_LOCK_DESTROY(pmap) mutex_destroy(&(pmap)->pm_mtx)
126 #define PMAP_LOCK_INIT(pmap) mutex_init(&(pmap)->pm_mtx, MUTEX_DEFAULT, IPL_NONE)
127 #define PMAP_LOCKED(pmap) mutex_owned(&(pmap)->pm_mtx)
128 #define PMAP_MTX(pmap) (&(pmap)->pm_mtx)
129 #define PMAP_TRYLOCK(pmap) mutex_tryenter(&(pmap)->pm_mtx)
130 #define PMAP_UNLOCK(pmap) mutex_exit(&(pmap)->pm_mtx)
145 /* optional pmap API functions, according to pmap(9) */
161 * Macros for locking pmap structures.
163 * Note that we if we access the kernel pmap in interrupt context, it
165 * operations, locking the kernel pmap is not necessary. Therefore,
166 * it is not necessary to block interrupts when locking pmap structures.
169 #define PMAP_LOCK(pmap) mutex_enter(&(pmap)->pm_slock)
170 #define PMAP_UNLOCK(pmap) mutex_exit(&(pmap)->pm_slock)
174 * pmap-specific data store in the vm_page structure.
205 struct pmap *pmap_switch(struct pmap *pmap);