As kref_put_mutex() may take the mutex (on the final unreference), mark it up with might_lock() so that the caller is unconditionally checked by lockdep.
Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk> Cc: Peter Zijlstra <pet...@infradead.org> --- include/linux/kref.h | 1 + 1 file changed, 1 insertion(+) diff --git a/include/linux/kref.h b/include/linux/kref.h index e15828fd71f1..f55b73674bfb 100644 --- a/include/linux/kref.h +++ b/include/linux/kref.h @@ -102,6 +102,7 @@ static inline int kref_put_mutex(struct kref *kref, void (*release)(struct kref *kref), struct mutex *lock) { + might_lock(lock); WARN_ON(release == NULL); if (unlikely(!atomic_add_unless(&kref->refcount, -1, 1))) { mutex_lock(lock); -- 2.11.0