Page MenuHomeFreeBSD

Perform TLB invalidation before acquiring the PV list lock in pmap_enter()

Authored by alc on Jan 3 2020, 8:41 PM.



When a copy-on-write fault occurs, pmap_enter() is called to replace the mapping to the old read-only page with a mapping to the new read-write page. To destroy the old mapping, pmap_enter() destroys its page table and PV entries and invalidates its TLB entry. This change is intended to reduce the time that the PV list lock is held by performing the TLB invalidation a little earlier, in particular, before the PV list lock is acquired.

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.Jan 3 2020, 8:41 PM
markj accepted this revision.Jan 3 2020, 9:44 PM
This revision is now accepted and ready to land.Jan 3 2020, 9:44 PM
kib accepted this revision.Jan 4 2020, 4:10 AM