lkml.org 
[lkml]   [2011]   [Jun]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
DateTue, 7 Jun 2011 21:41:03 +0800
Subject[PATCH] sched: correct testing need_resched in mutex_spin_on_owner()
FromHillf Danton <>
It is suppose to check the owner task that is not absolutly running on the
local CPU, and if NEED_RESCHED is happenly set on the current task of local
CPU, we get incorrect result.

Signed-off-by: Hillf Danton <dhillf@gmail.com>
---
kernel/sched.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/kernel/sched.c b/kernel/sched.c
index fd18f39..3ea64fe 100644
--- a/kernel/sched.c
+++ b/kernel/sched.c
@@ -4326,7 +4326,7 @@ int mutex_spin_on_owner(struct mutex *lock,
struct task_struct *owner)
return 0;

while (owner_running(lock, owner)) {
- if (need_resched())
+ if (test_tsk_need_resched(owner))
return 0;

arch_mutex_cpu_relax();

\
 
 \ /
  Last update: 2011-06-07 15:43    [from the cache]
©2003-2010