You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
let held_locks =MustLocksetRW.to_must_lockset @@ fst @@Arg.remove' ctx ~warn:false without_mutexin
212
+
let held_locks =MustLockset.remove without_mutex (MustLocksetRW.to_must_lockset ls)in
213
213
let protecting = protecting ~write protection v in
214
214
(* TODO: unsound in 29/24, why did we do this before? *)
215
215
(* if Mutexes.mem verifier_atomic (Lockset.export_locks (Lockset.remove (without_mutex, true) ctx.local)) then
216
216
false
217
217
else *)
218
218
MustLockset.disjoint held_locks protecting
219
-
|Queries.MustBeProtectedBy{mutex = Addrmutex_mv; global=v; write; protection}whenMval.is_definite mutex_mv -> (* only definite Addrs can be in must-locksets to begin with, anything else cannot protect anything *)
0 commit comments