Page MenuHomeFreeBSD

mips pmap: pmap_emulate_modified race fix
ClosedPublic

Authored by freebsdphab-AX9_cmx.ietfng.org on Apr 21 2020, 6:35 PM.
Tags
Referenced Files
F174856709: D24523.id70964.diff
Tue, Oct 6, 2:04 PM
Unknown Object (File)
Sat, Oct 3, 11:02 PM
Unknown Object (File)
Tue, Sep 29, 3:49 PM
Unknown Object (File)
Sat, Sep 19, 1:59 PM
Unknown Object (File)
Wed, Sep 9, 7:25 AM
Unknown Object (File)
Sep 2 2026, 2:13 PM
Unknown Object (File)
Aug 26 2026, 12:52 AM
Unknown Object (File)
Aug 8 2026, 4:19 PM
Subscribers

Details

Summary

pmap_emulate_modify was assuming that no changes to the pmap could take
place between the TLB signaling the fault and pmap_emulate_modify's
acquisition of the pmap lock, but that's clearly not even true in the
uniprocessor case, nevermind the SMP case.

Address each possibility in turn.

Thanks to Konstantin Belousov and Mark Johnston for confirming the bug.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 30653
Build 28389: arc lint + arc unit