MCPcopy Create free account
hub / github.com/F-Stack/f-stack / pmap_invalidate_page

Function pmap_invalidate_page

freebsd/arm64/arm64/pmap.c:1197–1214  ·  view source on GitHub ↗

* Invalidate a single TLB entry. */

Source from the content-addressed store, hash-verified

1195 * Invalidate a single TLB entry.
1196 */
1197static __inline void
1198pmap_invalidate_page(pmap_t pmap, vm_offset_t va)
1199{
1200 uint64_t r;
1201
1202 PMAP_ASSERT_STAGE1(pmap);
1203
1204 dsb(ishst);
1205 if (pmap == kernel_pmap) {
1206 r = atop(va);
1207 __asm __volatile("tlbi vaae1is, %0" : : "r" (r));
1208 } else {
1209 r = ASID_TO_OPERAND(COOKIE_TO_ASID(pmap->pm_cookie)) | atop(va);
1210 __asm __volatile("tlbi vae1is, %0" : : "r" (r));
1211 }
1212 dsb(ish);
1213 isb();
1214}
1215
1216static __inline void
1217pmap_invalidate_range(pmap_t pmap, vm_offset_t sva, vm_offset_t eva)

Callers 15

pmap_kremoveFunction · 0.70
_pmap_unwire_l3Function · 0.70
pmap_abort_ptpFunction · 0.70
reclaim_pv_chunkFunction · 0.70
pmap_remove_l2Function · 0.70
pmap_remove_l3Function · 0.70
pmap_removeFunction · 0.70
pmap_remove_allFunction · 0.70
pmap_protect_l2Function · 0.70
pmap_protectFunction · 0.70
pmap_enterFunction · 0.70
pmap_enter_l2Function · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected