Page MenuHomeFreeBSD

Eliminate thread pinning from broadcast TLB invalidation functions on arm64
ClosedPublic

Authored by alc on Nov 22 2019, 7:09 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Oct 26, 4:54 AM
Unknown Object (File)
Oct 12 2025, 2:01 PM
Unknown Object (File)
Oct 12 2025, 2:01 PM
Unknown Object (File)
Oct 12 2025, 2:01 PM
Unknown Object (File)
Oct 12 2025, 2:59 AM
Unknown Object (File)
Oct 12 2025, 2:34 AM
Unknown Object (File)
Oct 11 2025, 12:22 AM
Unknown Object (File)
Sep 22 2025, 9:47 PM
Subscribers

Details

Summary

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

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable