From dbbbd034d6c06f5f74b4cf5c168bbdbcf65df78b Mon Sep 17 00:00:00 2001 From: Jan Kara Date: Mon, 13 Jun 2005 15:52:32 -0700 Subject: [PATCH] --- yaml --- r: 1990 b: refs/heads/master c: 6df3cecbb95345981718b38d357c50bc3425420a h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/kernel/sched.c | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 71ca3d500512..ce2bd52ef2c1 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f797f9cc5485b50c35c106b462e1bc432ec37f90 +refs/heads/master: 6df3cecbb95345981718b38d357c50bc3425420a diff --git a/trunk/kernel/sched.c b/trunk/kernel/sched.c index 66b2ed784822..f12a0c8a7d98 100644 --- a/trunk/kernel/sched.c +++ b/trunk/kernel/sched.c @@ -3755,19 +3755,22 @@ EXPORT_SYMBOL(cond_resched); */ int cond_resched_lock(spinlock_t * lock) { + int ret = 0; + if (need_lockbreak(lock)) { spin_unlock(lock); cpu_relax(); + ret = 1; spin_lock(lock); } if (need_resched()) { _raw_spin_unlock(lock); preempt_enable_no_resched(); __cond_resched(); + ret = 1; spin_lock(lock); - return 1; } - return 0; + return ret; } EXPORT_SYMBOL(cond_resched_lock);