diff --git a/sys/arm64/arm64/pmap.c b/sys/arm64/arm64/pmap.c index a62ee3d05957..b46bcd6ac0c0 100644 --- a/sys/arm64/arm64/pmap.c +++ b/sys/arm64/arm64/pmap.c @@ -1043,7 +1043,6 @@ pmap_invalidate_page(pmap_t pmap, vm_offset_t va) { uint64_t r; - sched_pin(); dsb(ishst); if (pmap == kernel_pmap) { r = atop(va); @@ -1054,11 +1053,10 @@ pmap_invalidate_page(pmap_t pmap, vm_offset_t va) } dsb(ish); isb(); - sched_unpin(); } static __inline void -pmap_invalidate_range_nopin(pmap_t pmap, vm_offset_t sva, vm_offset_t eva) +pmap_invalidate_range(pmap_t pmap, vm_offset_t sva, vm_offset_t eva) { uint64_t end, r, start; @@ -1079,21 +1077,11 @@ pmap_invalidate_range_nopin(pmap_t pmap, vm_offset_t sva, vm_offset_t eva) isb(); } -static __inline void -pmap_invalidate_range(pmap_t pmap, vm_offset_t sva, vm_offset_t eva) -{ - - sched_pin(); - pmap_invalidate_range_nopin(pmap, sva, eva); - sched_unpin(); -} - static __inline void pmap_invalidate_all(pmap_t pmap) { uint64_t r; - sched_pin(); dsb(ishst); if (pmap == kernel_pmap) { __asm __volatile("tlbi vmalle1is"); @@ -1103,7 +1091,6 @@ pmap_invalidate_all(pmap_t pmap) } dsb(ish); isb(); - sched_unpin(); } /* @@ -3114,7 +3101,7 @@ pmap_update_entry(pmap_t pmap, pd_entry_t *pte, pd_entry_t newpte, * lookup the physical address. */ pmap_clear_bits(pte, ATTR_DESCR_VALID); - pmap_invalidate_range_nopin(pmap, va, va + size); + pmap_invalidate_range(pmap, va, va + size); /* Create the new mapping */ pmap_store(pte, newpte);