Lines Matching refs:mp
215 #define _mtx_obtain_lock(mp, tid) \ argument
216 atomic_cmpset_acq_ptr(&(mp)->mtx_lock, MTX_UNOWNED, (tid))
218 #define _mtx_obtain_lock_fetch(mp, vp, tid) \ argument
219 atomic_fcmpset_acq_ptr(&(mp)->mtx_lock, vp, (tid))
222 #define _mtx_release_lock(mp, tid) \ argument
223 atomic_cmpset_rel_ptr(&(mp)->mtx_lock, (tid), MTX_UNOWNED)
226 #define _mtx_release_lock_quick(mp) \ argument
227 atomic_store_rel_ptr(&(mp)->mtx_lock, MTX_UNOWNED)
229 #define _mtx_release_lock_fetch(mp, vp) \ argument
230 atomic_fcmpset_rel_ptr(&(mp)->mtx_lock, (vp), MTX_UNOWNED)
239 #define __mtx_lock(mp, tid, opts, file, line) do { \ argument
244 !_mtx_obtain_lock_fetch((mp), &_v, _tid))) \
245 _mtx_lock_sleep((mp), _v, (opts), (file), (line)); \
255 #define __mtx_lock_spin(mp, tid, opts, file, line) do { \ argument
261 !_mtx_obtain_lock_fetch((mp), &_v, _tid))) \
262 _mtx_lock_spin((mp), _v, (opts), (file), (line)); \
264 #define __mtx_trylock_spin(mp, tid, opts, file, line) __extension__ ({ \ argument
269 if (((mp)->mtx_lock != MTX_UNOWNED || !_mtx_obtain_lock((mp), _tid))) {\
274 mp, 0, 0, file, line); \
280 #define __mtx_lock_spin(mp, tid, opts, file, line) do { \ argument
284 if ((mp)->mtx_lock == _tid) \
285 (mp)->mtx_recurse++; \
287 KASSERT((mp)->mtx_lock == MTX_UNOWNED, ("corrupt spinlock")); \
288 (mp)->mtx_lock = _tid; \
291 #define __mtx_trylock_spin(mp, tid, opts, file, line) __extension__ ({ \ argument
296 if ((mp)->mtx_lock != MTX_UNOWNED) { \
300 (mp)->mtx_lock = _tid; \
308 #define __mtx_unlock(mp, tid, opts, file, line) do { \ argument
312 !_mtx_release_lock_fetch((mp), &_v))) \
313 _mtx_unlock_sleep((mp), _v, (opts), (file), (line)); \
327 #define __mtx_unlock_spin(mp) do { \ argument
328 if (mtx_recursed((mp))) \
329 (mp)->mtx_recurse--; \
331 LOCKSTAT_PROFILE_RELEASE_LOCK(spin__release, mp); \
332 _mtx_release_lock_quick((mp)); \
337 #define __mtx_unlock_spin(mp) do { \ argument
338 if (mtx_recursed((mp))) \
339 (mp)->mtx_recurse--; \
341 LOCKSTAT_PROFILE_RELEASE_LOCK(spin__release, mp); \
342 (mp)->mtx_lock = MTX_UNOWNED; \