[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <MDEHLPKNGKAHNMBLJOLKKEINIJAC.davids@webmaster.com>
Date: Mon, 3 Dec 2007 16:30:26 -0800
From: "David Schwartz" <davids@...master.com>
To: "Mark Lord" <lkml@....ca>, "Ingo Molnar" <mingo@...e.hu>
Cc: "Chris Friesen" <cfriesen@...tel.com>,
"Nick Piggin" <nickpiggin@...oo.com.au>,
"Zhang, Yanmin" <yanmin_zhang@...ux.intel.com>,
"Arjan van de Ven" <arjan@...radead.org>,
"Andrew Morton" <akpm@...ux-foundation.org>,
"LKML" <linux-kernel@...r.kernel.org>
Subject: RE: sched_yield: delete sysctl_sched_compat_yield
> * Mark Lord <lkml@....ca> wrote:
> > Ack. And what of the suggestion to try to ensure that a yielding task
> > simply not end up as the very next one chosen to run? Maybe by
> > swapping it with another (adjacent?) task in the tree if it comes out
> > on top again?
> we did that too for quite some time in CFS - it was found to be "not
> agressive enough" by some folks and "too agressive" by others. Then when
> people started bickering over this we added these two simple corner
> cases - switchable via a flag. (minimum agression and maximum agression)
They are both correct. It is not agressive enough if there are tasks other
than those two that are at the same static priority level and ready to run.
It is too agressive if the task it is swapped with is at a lower static
priority level.
Perhaps it might be possible to scan for the task at the same static
priority level that is ready-to-run but last in line among other
ready-to-run tasks and put it after that task? I think that's about as close
as we can get to the POSIX-specified behavior.
> > Thanks Ingo -- I *really* like this scheduler!
Just in case this isn't clear, I like CFS too and sincerely appreciate the
work Ingo, Con, and others have done on it.
DS
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists