[patch 3/4] rtmutex: Get rid of RT_MUTEX_OWNER_MASKALL

From: Thomas Gleixner
Date: Wed Nov 30 2016 - 16:09:17 EST


This is a left over from the original rtmutex implementation which used
both bit0 and bit1 in the owner pointer. Commit 8161239a8bcc ("rtmutex:
Simplify PI algorithm and make highest prio task get lock") removed the
usage of bit1, but kept the extra mask around. This is confusing at best.

Remove it and just use RT_MUTEX_HAS_WAITERS for the masking.

Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
---
kernel/locking/rtmutex_common.h | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

--- a/kernel/locking/rtmutex_common.h
+++ b/kernel/locking/rtmutex_common.h
@@ -71,13 +71,12 @@ task_top_pi_waiter(struct task_struct *p
* lock->owner state tracking:
*/
#define RT_MUTEX_HAS_WAITERS 1UL
-#define RT_MUTEX_OWNER_MASKALL 1UL

static inline struct task_struct *rt_mutex_owner(struct rt_mutex *lock)
{
unsigned long owner = (unsigned long) READ_ONCE(lock->owner);

- return (struct task_struct *) (owner & ~RT_MUTEX_OWNER_MASKALL);
+ return (struct task_struct *) (owner & ~RT_MUTEX_HAS_WAITERS);
}

/*