On Thu, 5 Oct 2000, Matti Aarnio wrote:
> On Wed, Oct 04, 2000 at 06:16:57PM -0300, Rik van Riel wrote:

        [priority inversion]
> > We don't need that.
> > 
> > We just need one boolean per thread ... is it holding a kernel
> > lock or not?
> 
>       The BKL or *any* (kernel) lock ?
> 
>       For my knowledge there is no limitation on how many
>       locks a thread can hold.  Having a single bool might
>       not be enough.  A counter is better ?

On return_to_userspace, you /know/ the thread has
released the kernel locks.

Though this might not work for IPC semaphores...

Then again, if the Montavista people (maybe together with
SGI or IBM folks?) can get a light-weight priority inversion
scheme working, then we'll have everything right ;)

> > If it is, make sure its scheduling latency isn't too high.
> 
>       e.g. all processes having *any* locks are raised to the highest 
>       possible class to make sure they are not starved out ?

SCHED_OTHER is enough for most purposes. OTOH, you
could have one SCHED_FIFO process block execution
of a higher priority SCHED_FIFO process that wants
a lock ... priority inversion anyway?

> > 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.
> 
>       Yes, that is obvious.

*grin*

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 [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/

Reply via email to