Messages in this thread | | | Subject | Re: [sched/rt] Optimization of function pull_rt_task() | From | Steven Rostedt <> | Date | Wed, 18 Apr 2012 14:32:56 -0400 |
| |
On Mon, 2012-04-16 at 12:06 -0400, Steven Rostedt wrote: > On Sun, 2012-04-15 at 23:45 +0400, Kirill Tkhai wrote: > > The condition (src_rq->rt.rt_nr_running) is weak because it doesn't > > consider the cases when src_rq has only processes bound to it (when > > single cpu is allowed). It may be running kernel thread like > > migration/x etc. > > > > So it's better to use more stronger condition which is able to exclude > > above conditions. The function has_pushable_tasks() complitely does > > this. A task may be pullable for another cpu rq only if he is pushable > > for his own queue. > > I considered this before, and for some reason I never did the change. > I'll have to think about it. It seems like this would be the obvious > case, but I think there was something not so obvious that caused issues. > But I don't remember what it was. > > I'll have to rethink this again.
I can't find anything wrong with this change. Maybe things change, or I was thinking of another change.
I'll apply it and start running my tests against it.
Thanks!
-- Steve
| |