Page MenuHomeFreeBSD

callout: fix using shared rmlocks
ClosedPublic

Authored by kp on Apr 19 2022, 4:20 PM.
Tags
None
Referenced Files
Unknown Object (File)
Sun, Oct 12, 1:49 PM
Unknown Object (File)
Sat, Oct 11, 5:03 PM
Unknown Object (File)
Sat, Oct 11, 8:28 AM
Unknown Object (File)
Sat, Oct 11, 8:28 AM
Unknown Object (File)
Sat, Oct 11, 1:03 AM
Unknown Object (File)
Sun, Sep 28, 10:34 PM
Unknown Object (File)
Sun, Sep 28, 10:20 PM
Unknown Object (File)
Sun, Sep 28, 8:01 PM
Subscribers

Details

Summary

15b1eb142c changed the callout code to store the CALLOUT_SHAREDLOCK flag
in c_iflags (where it used to be c_flags), but failed to update the
check in softclock_call_cc(). This resulted in the callout code always
taking the write lock, even if a read lock had been requested (with
the CALLOUT_SHAREDLOCK flag in callout_init_rm()).

MFC after: 1 week
Sponsored by: Rubicon Communications, LLC ("Netgate")

Diff Detail

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