llvm /
scudo /
910aafcfc5fda11e1286ffd1435cb1b690ac68a1 [scudo] Fix the use of ASSERT_CAPABILITY in TSD (#68273)
In getCache()/getQuarantineCache(), they return a reference to variable
guarded by a mutex. After #67776, thread-safey analysis checks if a
variable return by reference has the lock held. The ASSERT_CAPABILITY
only claims after calling that function, the lock will be held. But not
asserting that the lock is held *before* calling that function.
In the patch, we switch to use REQUIRES() and assertLocked() to mark the
code paths. Also remove the misused ASSERT_CAPABILITY.
Fixes #67795, #67796
GitOrigin-RevId: ea2036e1e56b720d7da8d46f62263ba46c126522
5 files changed