Page MenuHomeFreeBSD

vfs: fully lockless v_writecount adjustment
ClosedPublic

Authored by mjg on Nov 26 2021, 1:03 PM.
Tags
None
Referenced Files
Unknown Object (File)
Apr 10 2024, 6:46 AM
Unknown Object (File)
Apr 10 2024, 4:04 AM
Unknown Object (File)
Mar 18 2024, 3:22 AM
Unknown Object (File)
Mar 18 2024, 3:22 AM
Unknown Object (File)
Mar 4 2024, 8:10 AM
Unknown Object (File)
Feb 3 2024, 5:06 AM
Unknown Object (File)
Jan 23 2024, 8:47 AM
Unknown Object (File)
Jan 16 2024, 6:41 PM
Subscribers

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

mjg requested review of this revision.Nov 26 2021, 1:03 PM
mjg updated this revision to Diff 99051.
  • upload correct patch
sys/kern/vfs_default.c
1322

Isn't this unsafe? You should ref the vnode before adding 1 to execcount if you ever saw n == 0, and rollback before returning if actually used cmpset was for n < 0.

sys/kern/vfs_default.c
1322

this can only be a problem if someone bogusly adjusts writecount back to 0, but i can make the change if you insist

mjg retitled this revision from vfs: fully lockless v_writecount adjustmen to vfs: fully lockless v_writecount adjustment.
This revision is now accepted and ready to land.Nov 27 2021, 9:22 PM
This revision was automatically updated to reflect the committed changes.