Re: Weightless process class

From: Rik van Riel (riel@conectiva.com.br)
Date: Wed Oct 04 2000 - 16:16:57 EST


On Thu, 5 Oct 2000, Matti Aarnio wrote:
> On Wed, Oct 04, 2000 at 12:49:43PM -0700, LA Walsh wrote:
> > > One problem here is that you might end up with a weightless
> > > process having grabbed a superblock lock, after which a
> > > normal priority CPU hog kicks in and starves the weightless
> > > process.
> > ---
> > One way would be to set a flag "I'm holding a lock" and when
> > it releases the lock(s), deschedule it?
>
> There is a well-known name for this -- priority inversion.
>
> Implement the whole shebang of starvation avoidance tricks,
> and we can whak the scheduler to group processes into separate
> subsets, which in current system leads to starvation lockups.
>
> A thing for 2.5 ? (With possible backport to 2.4 latter.)

We don't need that.

We just need one boolean per thread ... is it holding a kernel
lock or not?

If it is, make sure its scheduling latency isn't too high.

If it isn't holding any lock, we can do with it what we want,
including completely starving the task for several seconds
(or even minutes) if scheduling latency or VM pressure warrants
it.

regards,

Rik

--
"What you're running that piece of shit Gnome?!?!"
       -- Miguel de Icaza, UKUUG 2000

http://www.conectiva.com/ http://www.surriel.com/

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Oct 07 2000 - 21:00:15 EST