Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 493d3586 authored by Jeremy Kerr's avatar Jeremy Kerr Committed by Ingo Molnar
Browse files

mutex-debug: check mutex magic before owner



Currently, the mutex debug code checks the lock->owner before lock->magic, so
a corrupt mutex will most likely result in failing the owner check, rather
than the magic check.

This change to debug_mutex_unlock does the magic check first, so
we have a better idea of what breaks.

Signed-off-by: default avatarJeremy Kerr <jk@ozlabs.org>
Acked-by: default avatarPeter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent f26a3988
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -79,8 +79,8 @@ void debug_mutex_unlock(struct mutex *lock)
	if (unlikely(!debug_locks))
		return;

	DEBUG_LOCKS_WARN_ON(lock->owner != current_thread_info());
	DEBUG_LOCKS_WARN_ON(lock->magic != lock);
	DEBUG_LOCKS_WARN_ON(lock->owner != current_thread_info());
	DEBUG_LOCKS_WARN_ON(!lock->wait_list.prev && !lock->wait_list.next);
	DEBUG_LOCKS_WARN_ON(lock->owner != current_thread_info());
}