summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2018-02-26 03:29:59 +0300
committerLinus Torvalds <torvalds@linux-foundation.org>2018-02-26 03:29:59 +0300
commit9c897096bbabaca1ad042a35cc1ef441d809ddc8 (patch)
tree97588a441878a6efe10711e059419316645e80b1 /include
parent297ea1b7f717db660fa6eb543dc0af41f7bf8d57 (diff)
parent472e8c55cf6622d1c112dc2bc777f68bbd4189db (diff)
downloadlinux-9c897096bbabaca1ad042a35cc1ef441d809ddc8.tar.xz
Merge branch 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull locking fixes from Thomas Gleixner: "Three patches to fix memory ordering issues on ALPHA and a comment to clarify the usage scope of a mutex internal function" * 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: locking/xchg/alpha: Fix xchg() and cmpxchg() memory ordering bugs locking/xchg/alpha: Clean up barrier usage by using smp_mb() in place of __ASM__MB locking/xchg/alpha: Add unconditional memory barrier to cmpxchg() locking/mutex: Add comment to __mutex_owner() to deter usage
Diffstat (limited to 'include')
-rw-r--r--include/linux/mutex.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/mutex.h b/include/linux/mutex.h
index f25c13423bd4..cb3bbed4e633 100644
--- a/include/linux/mutex.h
+++ b/include/linux/mutex.h
@@ -66,6 +66,11 @@ struct mutex {
#endif
};
+/*
+ * Internal helper function; C doesn't allow us to hide it :/
+ *
+ * DO NOT USE (outside of mutex code).
+ */
static inline struct task_struct *__mutex_owner(struct mutex *lock)
{
return (struct task_struct *)(atomic_long_read(&lock->owner) & ~0x07);