Lines Matching defs:pmap

1 /*	$NetBSD: pmap.h,v 1.28 2024/11/25 22:03:44 skrll Exp $	*/
34 * @(#)pmap.h 8.1 (Berkeley) 6/10/93
71 * @(#)pmap.h 8.1 (Berkeley) 6/10/93
166 struct pmap;
167 typedef bool (*pte_callback_t)(struct pmap *, vaddr_t, vaddr_t,
176 pt_entry_t *pmap_pte_lookup(struct pmap *, vaddr_t);
177 pt_entry_t *pmap_pte_reserve(struct pmap *, vaddr_t, int);
178 void pmap_pte_process(struct pmap *, vaddr_t, vaddr_t, pte_callback_t,
180 void pmap_segtab_activate(struct pmap *, struct lwp *);
181 void pmap_segtab_deactivate(struct pmap *);
182 void pmap_segtab_init(struct pmap *);
183 void pmap_segtab_destroy(struct pmap *, pte_callback_t, uintptr_t);
185 pd_entry_t *pmap_pde_lookup(struct pmap *, vaddr_t, paddr_t *);
186 bool pmap_pdetab_fixup(struct pmap *, vaddr_t);
194 #include <uvm/pmap/pmap_tlb.h>
197 * Machine dependent pmap structure.
199 struct pmap {
201 #define pm_refcnt pm_uobject.uo_refs /* pmap reference count */
215 kcpuset_t *pm_active; /* pmap was active on ... */
216 kcpuset_t *pm_onproc; /* pmap is active on ... */
228 struct pmap_statistics pm_stats; /* pmap statistics */
240 pmap_lock(struct pmap *pm)
247 pmap_unlock(struct pmap *pm)
254 struct pmap kernel_pmap;
268 * Initialize the kernel pmap.
271 #define PMAP_SIZE offsetof(struct pmap, pm_pai[PMAP_TLB_MAX])
273 #define PMAP_SIZE sizeof(struct pmap)
277 * The pools from which pmap structures and sub-structures are allocated.
299 #define pmap_wired_count(pmap) ((pmap)->pm_stats.wired_count)
300 #define pmap_resident_count(pmap) ((pmap)->pm_stats.resident_count)
327 EVCNT_INITIALIZER(EVCNT_TYPE_MISC, NULL, "pmap", desc); \
339 void pmap_db_pmap_print(struct pmap *, void (*)(const char *, ...) __printflike(1, 2));
343 struct pmap *