Lines Matching refs:lock
29 void debug_mutex_set_owner(struct mutex *lock, struct thread_info *new_owner) in debug_mutex_set_owner() argument
31 lock->owner = new_owner; in debug_mutex_set_owner()
34 void debug_mutex_lock_common(struct mutex *lock, struct mutex_waiter *waiter) in debug_mutex_lock_common() argument
41 void debug_mutex_wake_waiter(struct mutex *lock, struct mutex_waiter *waiter) in debug_mutex_wake_waiter() argument
43 SMP_DEBUG_LOCKS_WARN_ON(!spin_is_locked(&lock->wait_lock)); in debug_mutex_wake_waiter()
44 DEBUG_LOCKS_WARN_ON(list_empty(&lock->wait_list)); in debug_mutex_wake_waiter()
55 void debug_mutex_add_waiter(struct mutex *lock, struct mutex_waiter *waiter, in debug_mutex_add_waiter() argument
58 SMP_DEBUG_LOCKS_WARN_ON(!spin_is_locked(&lock->wait_lock)); in debug_mutex_add_waiter()
62 waiter->lock = lock; in debug_mutex_add_waiter()
65 void mutex_remove_waiter(struct mutex *lock, struct mutex_waiter *waiter, in mutex_remove_waiter() argument
77 void debug_mutex_unlock(struct mutex *lock) in debug_mutex_unlock() argument
82 DEBUG_LOCKS_WARN_ON(lock->magic != lock); in debug_mutex_unlock()
83 DEBUG_LOCKS_WARN_ON(lock->owner != current_thread_info()); in debug_mutex_unlock()
84 DEBUG_LOCKS_WARN_ON(!lock->wait_list.prev && !lock->wait_list.next); in debug_mutex_unlock()
85 DEBUG_LOCKS_WARN_ON(lock->owner != current_thread_info()); in debug_mutex_unlock()
88 void debug_mutex_init(struct mutex *lock, const char *name, in debug_mutex_init() argument
95 debug_check_no_locks_freed((void *)lock, sizeof(*lock)); in debug_mutex_init()
96 lockdep_init_map(&lock->dep_map, name, key, 0); in debug_mutex_init()
98 lock->owner = NULL; in debug_mutex_init()
99 lock->magic = lock; in debug_mutex_init()
110 void mutex_destroy(struct mutex *lock) in mutex_destroy() argument
112 DEBUG_LOCKS_WARN_ON(mutex_is_locked(lock)); in mutex_destroy()
113 lock->magic = NULL; in mutex_destroy()