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 2000http://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