Lines Matching refs:lock
57 struct drm_lock *lock = data; in drm_lock() local
60 if (lock->context == DRM_KERNEL_CONTEXT) { in drm_lock()
62 DRM_CURRENTPID, lock->context); in drm_lock()
67 lock->context, DRM_CURRENTPID, dev->lock.hw_lock->lock, in drm_lock()
68 lock->flags); in drm_lock()
71 lock->context < 0) in drm_lock()
76 if (drm_lock_take(&dev->lock, lock->context)) { in drm_lock()
77 dev->lock.file_priv = file_priv; in drm_lock()
78 dev->lock.lock_time = jiffies; in drm_lock()
84 ret = mtx_sleep((void *)&dev->lock.lock_queue, &dev->dev_lock, in drm_lock()
94 DRM_DEBUG("%d %s\n", lock->context, in drm_lock()
103 (lock->flags & _DRM_LOCK_QUIESCENT)) in drm_lock()
111 struct drm_lock *lock = data; in drm_unlock() local
114 lock->context, DRM_CURRENTPID, dev->lock.hw_lock->lock, in drm_unlock()
115 lock->flags); in drm_unlock()
117 if (lock->context == DRM_KERNEL_CONTEXT) { in drm_unlock()
119 DRM_CURRENTPID, lock->context); in drm_unlock()
126 drm_lock_transfer(&dev->lock, DRM_KERNEL_CONTEXT); in drm_unlock()
128 if (drm_lock_free(&dev->lock, DRM_KERNEL_CONTEXT)) { in drm_unlock()
138 volatile unsigned int *lock = &lock_data->hw_lock->lock; in drm_lock_take() local
142 old = *lock; in drm_lock_take()
147 } while (!atomic_cmpset_int(lock, old, new)); in drm_lock_take()
169 volatile unsigned int *lock = &lock_data->hw_lock->lock; in drm_lock_transfer() local
174 old = *lock; in drm_lock_transfer()
176 } while (!atomic_cmpset_int(lock, old, new)); in drm_lock_transfer()
183 volatile unsigned int *lock = &lock_data->hw_lock->lock; in drm_lock_free() local
188 old = *lock; in drm_lock_free()
190 } while (!atomic_cmpset_int(lock, old, new)); in drm_lock_free()