Re: [linux-audio-dev] priority inversion & inheritance

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] priority inversion & inheritance
From: yodaiken_AT_fsmlabs.com
Date: Thu Jul 11 2002 - 15:27:03 EEST


On Thu, Jul 11, 2002 at 10:38:23AM +0200, Martijn Sipkema wrote:
> > Linux is not real-time, it has a scheduler that, generally, makes sure
> > eventually everyone gets to run. I think people often understimate
> > how useful a "live" scheduler is and how limited a real-time priority
> > scheduler is.
>
> I agree. That's why it is needed. And for realtime threads SCHED_FIFO/RR

You lost me there. A RT scheduler is needed for RT tasks.

> is used. I fail to see what this has to do with priority inheritance. Are

I must have explained things quite poorly in the article you said you
read. Having a live scheduler allows you to _not_ understand all the
complex interactions between blocking operations in your system because
the liveness means that eventually whatever thread you are waiting for
will proceed. A priority driven Real-time scheduler is not live so if
you do not understand all blocking relationships, your system may die.

> you stating that Linux isn't suitable for any realtime use anyway and that
> I should in fact be using RTLinux?

I have no idea whether you should be using RTLinux, but it is absolutely
correct tht Liux is not suitable for hard realtime use.

> > > If the article is saying the programmer should be protected from missuse
> > > of priority inheritance by not supplying it, isn't that like Pascal? (I
> > > never liked Pascal).
> >
> > I think any use of priority inheritance is a misuse, and I am against
> > making the rest of the OS slow in order to provide it.
>
> Wel, I disagree. You have been stating this for years (and all this time,
> without a good reason). Now I still do not see a valid reason in your
> article.
>
> Apparently other people did see valid use for
> priority inheritance (me included). Does implementing priority inheritance
> make the operating system slower even when not using it?

I've yet to see an example where it was both needed and effective.
Perhaps you can give me one.
And, yes, it does make the system slower even when not using it, for
several reasons - mentioned in the paper. As one example, all your
wait queues need to be atomically re-orderable.

-- 
---------------------------------------------------------
Victor Yodaiken 
Finite State Machine Labs: The RTLinux Company.
 www.fsmlabs.com  www.rtlinux.com


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Thu Jul 11 2002 - 15:48:33 EEST