[lkml]   [2011]   [Apr]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
SubjectRe: [PATCH 04/21] sched: Change the ttwu success details
On Wed, 2011-04-13 at 11:23 +0200, Peter Zijlstra wrote:
> and workqueue wakeups, and I doubt extra wakeups will cause lockups.

Damn assumptions ;-)

Index: linux-2.6/kernel/sched.c
--- linux-2.6.orig/kernel/sched.c
+++ linux-2.6/kernel/sched.c
@@ -2447,7 +2447,7 @@ static inline void ttwu_post_activation(
/* if a worker is waking up, notify workqueue */
- if ((p->flags & PF_WQ_WORKER) && success)
+ if (p->flags & PF_WQ_WORKER)
wq_worker_waking_up(p, cpu_of(rq));

Appears to be sufficient to cause the lockup, so somehow the whole
workqueue stuff relies on the fact that waking a TASK_(UN)INTERRUPTIBLE
task that hasn't been dequeued yet isn't a wakeup.

Tejun any quick clues as to why and how to cure this?

/me goes read that stuff

 \ /
  Last update: 2011-04-13 12:49    [W:0.126 / U:30.036 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site