locking/rtmutex: Get rid of RT_MUTEX_OWNER_MASKALL
authorThomas Gleixner <tglx@linutronix.de>
Wed, 30 Nov 2016 21:04:44 +0000 (21:04 +0000)
committerIngo Molnar <mingo@kernel.org>
Fri, 2 Dec 2016 10:13:57 +0000 (11:13 +0100)
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@linutronix.de>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: David Daney <ddaney@caviumnetworks.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Sebastian Siewior <bigeasy@linutronix.de>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Will Deacon <will.deacon@arm.com>
Link: http://lkml.kernel.org/r/20161130210030.509567906@linutronix.de
Signed-off-by: Ingo Molnar <mingo@kernel.org>
kernel/locking/rtmutex_common.h

index e317e1cbb3eba80098fa018de8573c1a1c7a86c0..990134617b4c0248be351df4075ae6e29e85fb6a 100644 (file)
@@ -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);
 }
 
 /*