Lines Matching refs:lock
275 * probe context is lock-free -- synchronization is handled via the
284 * The lock ordering between these three locks is dtrace_meta_lock before
292 * role as a coarse-grained lock; it is acquired before both of these locks.
300 static kmutex_t dtrace_lock; /* probe state lock */
301 static kmutex_t dtrace_provider_lock; /* provider state lock */
302 static kmutex_t dtrace_meta_lock; /* meta-provider state lock */
321 static lck_mtx_t dtrace_lock; /* probe state lock */
322 static lck_mtx_t dtrace_provider_lock; /* provider state lock */
323 static lck_mtx_t dtrace_meta_lock; /* meta-provider state lock */
324 static lck_rw_t dtrace_dof_mode_lock; /* dof mode lock */
1595 uintptr_t kdata, lock, nstate;
1679 while ((lock = *lockp) & 1)
1684 (void *)lock, (void *)(lock + 1)) == (void *)lock)
1688 (void *)lock, (void *)(lock + 1)) == (void *)lock)
1698 lock = hash[bucket].dtdh_lock;
1813 ASSERT(hash[bucket].dtdh_lock == lock);
1814 ASSERT(lock & 1);
1828 * we assert that we aren't doing a dealloc (deallocs lock
1840 * of the lock word hasn't changed. If it has, we may have
1844 if (hash[bucket].dtdh_lock != lock)
1848 ASSERT(hash[bucket].dtdh_lock == lock);
1849 ASSERT(lock & 1);
3557 /* FIXME: awaits lock/mutex work */
3653 /* FIXME: awaits lock/mutex work */
15907 * when we released the dtrace lock. We have to dump this generation,
16452 * this, because it would lead us to the lock ordering violation
17228 * Lock ordering requires the dof mode lock be taken before
18086 * Safe to check this outside the dof mode lock
19676 * Create the dtrace lock group and attrs.
19723 (void)dtrace_abs_to_nano(0LL); /* Force once only call to clock_timebase_info (which can take a lock) */