From 5351c544bf7f2f767a41f4ab842fc0dadedfa1ce Mon Sep 17 00:00:00 2001 From: Thomas Gleixner Date: Wed, 23 Feb 2011 23:52:21 +0000 Subject: [PATCH] --- yaml --- r: 234771 b: refs/heads/master c: 8eb90c30e0e815a1308828352eabd03ca04229dd h: refs/heads/master i: 234769: 35b180ee18aa558f346d8c9b9d99f7cef19979d2 234767: b11eeae684638fba91856cf157eb5a4eddd360c0 v: v3 --- [refs] | 2 +- trunk/kernel/sched.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index db70093c7a39..22391d1adb18 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 0c4602ff88d6d6ef0ee6d228ee9acaa6448ff6f5 +refs/heads/master: 8eb90c30e0e815a1308828352eabd03ca04229dd diff --git a/trunk/kernel/sched.c b/trunk/kernel/sched.c index 18d38e4ec7ba..66ca5d9ba83c 100644 --- a/trunk/kernel/sched.c +++ b/trunk/kernel/sched.c @@ -2224,7 +2224,10 @@ unsigned long wait_task_inactive(struct task_struct *p, long match_state) * yield - it could be a while. */ if (unlikely(on_rq)) { - schedule_timeout_uninterruptible(1); + ktime_t to = ktime_set(0, NSEC_PER_SEC/HZ); + + set_current_state(TASK_UNINTERRUPTIBLE); + schedule_hrtimeout(&to, HRTIMER_MODE_REL); continue; }