Page MenuHomeFreeBSD

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

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

Details

Summary

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

Lint
Lint Skipped
Unit
Unit Tests Skipped

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