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
Unknown Object (File)
Fri, Mar 27, 10:46 AM
Unknown Object (File)
Thu, Mar 26, 2:40 PM
Unknown Object (File)
Tue, Mar 24, 12:04 AM
Unknown Object (File)
Mon, Mar 23, 3:44 PM
Unknown Object (File)
Sun, Mar 22, 11:50 PM
Unknown Object (File)
Sun, Mar 22, 7:10 PM
Unknown Object (File)
Thu, Mar 19, 7:30 PM
Unknown Object (File)
Tue, Mar 10, 9:57 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

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