Page MenuHomeFreeBSD

Reduce the scope of the object lock in fault.

Authored by jeff on Oct 15 2019, 4:01 AM.



This avoids reacquiring the object lock after fault is complete because we can now unbusy and pip wakeup without it.

It also releases the lock earlier in CoW and avoids an expensive copy while the object lock is held.

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

jeff created this revision.Oct 15 2019, 4:01 AM
jeff edited the summary of this revision. (Show Details)Oct 15 2019, 4:07 AM
jeff added reviewers: kib, markj, alc.
markj accepted this revision.Oct 15 2019, 2:42 PM

I find the names fault_deallocate() and unlock_and_deallocate() confusing. I don't have a good alternative at the moment though.

193 ↗(On Diff #63284)

Presumably this unlock can also be moved up?

This revision is now accepted and ready to land.Oct 15 2019, 2:42 PM
kib accepted this revision.Oct 16 2019, 12:38 PM
kib added inline comments.
185 ↗(On Diff #63284)

I would suggest faultstate_deallocate.