On Fri, 12 Jul 2002, Martijn Sipkema wrote: > This is correct. Even if the thread C is running in another application > and doesn\'t share any resources with A and B it will still be able to > preempt A (whilst holding the mutex) and thus block C indefinately. This > is called priority inversion. In any realistic environment there will > always be a thread C.
Will there? I think the situation is just the opposite. Only very few apps run with either SCHED_FIFO or SCHED_RR. And for a good reason, because by using these scheduling modes you basicly turns your Linux system into a fancy variation of msdos where badly behaving user-processes can deadlock your machine. Currently only audio apps (and usually not by default), cd-burners and some media playsr use SCHED_FIFO. But ok, ok, running the app's s_f threads at same priority does makes sense. -- http://www.eca.cx Audio software for Linux!
