aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mutex-debug.h
diff options
context:
space:
mode:
authorMaarten Lankhorst <maarten.lankhorst@canonical.com>2013-06-24 10:30:04 +0200
committerIngo Molnar <mingo@kernel.org>2013-06-26 12:10:56 +0200
commit040a0a37100563754bb1fee6ff6427420bcfa609 (patch)
tree153e76b27ef95f57ad2055d42b8bb07cb1f8d493 /include/linux/mutex-debug.h
parentarch: Make __mutex_fastpath_lock_retval return whether fastpath succeeded or not (diff)
downloadlinux-dev-040a0a37100563754bb1fee6ff6427420bcfa609.tar.xz
linux-dev-040a0a37100563754bb1fee6ff6427420bcfa609.zip
mutex: Add support for wound/wait style locks
Wound/wait mutexes are used when other multiple lock acquisitions of a similar type can be done in an arbitrary order. The deadlock handling used here is called wait/wound in the RDBMS literature: The older tasks waits until it can acquire the contended lock. The younger tasks needs to back off and drop all the locks it is currently holding, i.e. the younger task is wounded. For full documentation please read Documentation/ww-mutex-design.txt. References: https://lwn.net/Articles/548909/ Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Rob Clark <robdclark@gmail.com> Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: dri-devel@lists.freedesktop.org Cc: linaro-mm-sig@lists.linaro.org Cc: rostedt@goodmis.org Cc: daniel@ffwll.ch Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Andrew Morton <akpm@linux-foundation.org> Cc: Thomas Gleixner <tglx@linutronix.de> Link: http://lkml.kernel.org/r/51C8038C.9000106@canonical.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'include/linux/mutex-debug.h')
-rw-r--r--include/linux/mutex-debug.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/mutex-debug.h b/include/linux/mutex-debug.h
index 731d77d6e155..4ac8b1977b73 100644
--- a/include/linux/mutex-debug.h
+++ b/include/linux/mutex-debug.h
@@ -3,6 +3,7 @@
#include <linux/linkage.h>
#include <linux/lockdep.h>
+#include <linux/debug_locks.h>
/*
* Mutexes - debugging helpers: