Page MenuHomeFreeBSD

Eliminate thread pinning from broadcast TLB invalidation functions on arm64

Authored by alc on Fri, Nov 22, 7:09 PM.



On arm64, I see no reason why we need to pin the underlying thread in pmap_invalidate_{all,page,range}(). These functions are using an instruction that broadcasts the invalidation to other processors, so even if a thread migrates in the midst of one of these functions every processor will still perform the invalidations.

Test Plan

I've been running with this change in place for weeks.

Diff Detail

rS FreeBSD src repository
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

alc created this revision.Fri, Nov 22, 7:09 PM
andrew accepted this revision.Wed, Nov 27, 8:10 AM
This revision is now accepted and ready to land.Wed, Nov 27, 8:10 AM
markj accepted this revision.Wed, Nov 27, 3:10 PM