device_lock
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_exit(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_exit(&device_lock);
kmutex_t device_lock;
mutex_init(&device_lock, MUTEX_DEFAULT, IPL_NONE);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
KASSERT(mutex_owned(&device_lock));
KASSERT(mutex_owned(&device_lock));
KASSERT(mutex_owned(&device_lock));
&devsw_cv, &device_lock);
&devsw_cv, &device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
localcount_release(lc, &devsw_cv, &device_lock);
localcount_release(lc, &devsw_cv, &device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_exit(&device_lock);
mutex_exit(&device_lock);
mutex_exit(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
cv_wait(&specfs_iocv, &device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
top: mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_exit(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
cv_wait(&specfs_iocv, &device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
error = cv_wait_sig(&specfs_iocv, &device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
mutex_exit(&device_lock);
mutex_enter(&device_lock);
extern kmutex_t device_lock;
struct device_lock;
typedef struct device_lock *device_lock_t;
struct device_lock dv_lock;