.. | .. |
---|
36 | 36 | |
---|
37 | 37 | void debug_mutex_wake_waiter(struct mutex *lock, struct mutex_waiter *waiter) |
---|
38 | 38 | { |
---|
39 | | - SMP_DEBUG_LOCKS_WARN_ON(!spin_is_locked(&lock->wait_lock)); |
---|
| 39 | + lockdep_assert_held(&lock->wait_lock); |
---|
40 | 40 | DEBUG_LOCKS_WARN_ON(list_empty(&lock->wait_list)); |
---|
41 | 41 | DEBUG_LOCKS_WARN_ON(waiter->magic != waiter); |
---|
42 | 42 | DEBUG_LOCKS_WARN_ON(list_empty(&waiter->list)); |
---|
.. | .. |
---|
51 | 51 | void debug_mutex_add_waiter(struct mutex *lock, struct mutex_waiter *waiter, |
---|
52 | 52 | struct task_struct *task) |
---|
53 | 53 | { |
---|
54 | | - SMP_DEBUG_LOCKS_WARN_ON(!spin_is_locked(&lock->wait_lock)); |
---|
| 54 | + lockdep_assert_held(&lock->wait_lock); |
---|
55 | 55 | |
---|
56 | 56 | /* Mark the current thread as blocked on the lock: */ |
---|
57 | 57 | task->blocked_on = waiter; |
---|
.. | .. |
---|
85 | 85 | * Make sure we are not reinitializing a held lock: |
---|
86 | 86 | */ |
---|
87 | 87 | debug_check_no_locks_freed((void *)lock, sizeof(*lock)); |
---|
88 | | - lockdep_init_map(&lock->dep_map, name, key, 0); |
---|
| 88 | + lockdep_init_map_wait(&lock->dep_map, name, key, 0, LD_WAIT_SLEEP); |
---|
89 | 89 | #endif |
---|
90 | 90 | lock->magic = lock; |
---|
91 | 91 | } |
---|