Messages in this thread | | | Date | Fri, 17 Dec 1999 09:36:20 -0500 (EST) | From | William Montgomery <> | Subject | Re: scheduling problem? |
| |
On Fri, 17 Dec 1999, Ingo Molnar wrote: > > cool! One of the last big scheduling mysteries fixed :-) > Ahh, not so fast :)
The patch supplied by Jamie Lokier appears to fix the scheduling problem related to the idle task, however, there is a related problem which can occur. It is possible for a SCHED_OTHER task to be running in user mode when a rtc_interrupt occurs which sends a SIGIO to a SCHED_FIFO task, the SCHED_FIFO task is put on the run queue and the need_resched flag of the SCHED_OTHER task is set but the ret_with_resched is not run and the SCHED_OTHER task can continue for several milliseconds before schedule is run.
The above scenario can also occur when setitimer is used as a timing source and a SIGALRM is sent. Maybe we should *always* run ret_with_resched upon ret_from_intr and not only when in supervisor mode? Any reasons this would cause problems? Maybe also after running bottom halfs (in the case of setitimer)?
Wm
- 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/
| |