Messages in this thread | | | Date | Tue, 27 Jul 1999 15:39:03 -0600 | From | yodaiken@chelm ... | Subject | Re: low priority soft RT? |
| |
On Wed, Jul 28, 1999 at 07:09:32AM +1000, Richard Gooch wrote: > So SCHED_IDLE shouldn't be lambasted for making a deadlock possible, > because SCHED_OTHER (in the presence of RT processes) can do the > same.
Sure. But another way of seeing it is: SCHED_FIFO/RR introduces the possibility of deadlocks and makes it seem more reasonable to introduce other scheduling classes that are not any worse. So the original mistake has a snowball effect. The problem is that SCHED_RR/FIFO is incorrectly implemented as the highest priority class. What is needed is a priority class switch that makes sure SCHED_OTHER gets some percentage of the cpu time. As I understand the POSIX specs, there is no specification of the interaction between scheduling policies. So it is POSIX compliant to give some time to SCHED_OTHER processes even when SCHED_RR processes are ready to run.
>Which is why I support moving !SCHED_OTHER processes to > SCHED_OTHER when they call schedule(), and moving them back when > schedule() returns.
Doesn't that defeat the purpose of the soft-rt? There is no point in being SCHED_RR only when you own the processor. Or maybe I misunderstand your idea?
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |