Changeset View
Changeset View
Standalone View
Standalone View
sys/amd64/include/pmap.h
Show First 20 Lines • Show All 450 Lines • ▼ Show 20 Lines | |||||
extern vm_paddr_t dmaplimit; | extern vm_paddr_t dmaplimit; | ||||
extern int pmap_pcid_enabled; | extern int pmap_pcid_enabled; | ||||
extern int invpcid_works; | extern int invpcid_works; | ||||
#define pmap_page_get_memattr(m) ((vm_memattr_t)(m)->md.pat_mode) | #define pmap_page_get_memattr(m) ((vm_memattr_t)(m)->md.pat_mode) | ||||
#define pmap_page_is_write_mapped(m) (((m)->a.flags & PGA_WRITEABLE) != 0) | #define pmap_page_is_write_mapped(m) (((m)->a.flags & PGA_WRITEABLE) != 0) | ||||
#define pmap_unmapbios(va, sz) pmap_unmapdev((va), (sz)) | #define pmap_unmapbios(va, sz) pmap_unmapdev((va), (sz)) | ||||
#define pmap_vm_page_alloc_check(m) \ | |||||
KASSERT(m->phys_addr < kernphys || m->phys_addr >= KERNend, \ | |||||
("allocating kernel page %p", m)); | |||||
struct thread; | struct thread; | ||||
void pmap_activate_boot(pmap_t pmap); | void pmap_activate_boot(pmap_t pmap); | ||||
void pmap_activate_sw(struct thread *); | void pmap_activate_sw(struct thread *); | ||||
void pmap_allow_2m_x_ept_recalculate(void); | void pmap_allow_2m_x_ept_recalculate(void); | ||||
void pmap_bootstrap(vm_paddr_t *); | void pmap_bootstrap(vm_paddr_t *); | ||||
int pmap_cache_bits(pmap_t pmap, int mode, boolean_t is_pde); | int pmap_cache_bits(pmap_t pmap, int mode, boolean_t is_pde); | ||||
int pmap_change_attr(vm_offset_t, vm_size_t, int); | int pmap_change_attr(vm_offset_t, vm_size_t, int); | ||||
Show All 37 Lines | |||||
void pmap_pti_pcid_invlrng(uint64_t ucr3, uint64_t kcr3, vm_offset_t sva, | void pmap_pti_pcid_invlrng(uint64_t ucr3, uint64_t kcr3, vm_offset_t sva, | ||||
vm_offset_t eva); | vm_offset_t eva); | ||||
int pmap_pkru_clear(pmap_t pmap, vm_offset_t sva, vm_offset_t eva); | int pmap_pkru_clear(pmap_t pmap, vm_offset_t sva, vm_offset_t eva); | ||||
int pmap_pkru_set(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, | int pmap_pkru_set(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, | ||||
u_int keyidx, int flags); | u_int keyidx, int flags); | ||||
void pmap_thread_init_invl_gen(struct thread *td); | void pmap_thread_init_invl_gen(struct thread *td); | ||||
int pmap_vmspace_copy(pmap_t dst_pmap, pmap_t src_pmap); | int pmap_vmspace_copy(pmap_t dst_pmap, pmap_t src_pmap); | ||||
void pmap_page_array_startup(long count); | void pmap_page_array_startup(long count); | ||||
vm_page_t pmap_page_alloc_below_4g(bool zeroed); | |||||
#ifdef KASAN | #ifdef KASAN | ||||
void pmap_kasan_enter(vm_offset_t); | void pmap_kasan_enter(vm_offset_t); | ||||
#endif | #endif | ||||
#endif /* _KERNEL */ | #endif /* _KERNEL */ | ||||
/* Return various clipped indexes for a given VA */ | /* Return various clipped indexes for a given VA */ | ||||
Show All 38 Lines |