Page MenuHomeFreeBSD

kern_dup(): Call filecaps_free_prep() in a write section.
ClosedPublic

Authored by markj on Mar 18 2020, 10:18 PM.

Details

Summary

filecaps_free_prep() bzeros the capabilities structure and we need to be
careful to synchronize with unlocked readers, which expect a consistent
rights structure.

I'm not really sure it's even worth keeping filecaps_free_prep(), since it's
doing some unnecessary work.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

markj added reviewers: kib, mjg.
This revision is now accepted and ready to land.Mar 18 2020, 11:50 PM
mjg accepted this revision.EditedMar 19 2020, 3:07 AM

The original capsicum code introduced a lot of bzeroing which can probably be eliminated.