On 7/29/2019 4:37 PM, Peter Zijlstra wrote:
On Mon, Jul 29, 2019 at 04:22:58PM +0530, Mukesh Ojha wrote:
Let's use the mutex flag macro(which got moved from mutex.c
to linux/mutex.h in the last patch) instead of hard code
value which was used in __mutex_owner().
Signed-off-by: Mukesh Ojha <mo...@codeaurora.org>
---
include/linux/mutex.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/linux/mutex.h b/include/linux/mutex.h
index 79b28be..c3833ba 100644
--- a/include/linux/mutex.h
+++ b/include/linux/mutex.h
@@ -87,7 +87,7 @@ struct mutex {
*/
static inline struct task_struct *__mutex_owner(struct mutex *lock)
{
- return (struct task_struct *)(atomic_long_read(&lock->owner) & ~0x07);
+ return (struct task_struct *)(atomic_long_read(&lock->owner) &
~MUTEX_FLAGS);
}
I would _much_ rather move __mutex_owner() out of line, you're exposing
far too much stuff.
if i understand you correctly, you want me to move __mutex_owner() to
mutex.c
__mutex_owner() is used in mutex_is_locked() and mutex_trylock_recursive
inside linux/mutex.h.
Shall i move them as well ?
Thanks,
Mukesh