Messages in this thread | | | Date | Tue, 21 Mar 2000 10:45:25 -0800 | From | Jun Sun <> | Subject | Re: scheduler ignores need_resched flag in 2.2.x and 2.3.x? |
| |
Jamie Lokier wrote: > > yodaiken@fsmlabs.com wrote: > > As far as I can tell, > > only place need_resched is set is in the scheduler and the sched idle loop. > > This is what makes Ingo's latency patch less dangerous: need_resched is hard > > to set. Your scenario requires that an interrupt routine, interrupting > > kernel mode, set needs_resched. Where does this happen? > > Whenever an interrupt wakes up a process. Alan says it's uncommon, but > it depends what devices you're using. Some device drivers do it for all > interrupts, if a process is waiting for some information from the device. > > -- Jamie
I don't know much about existing drivers. I know for embedded systems, processes reading files and getting blocked, interrupt handlers (or its bottom-half handler) waking them up is *VERY COMMON*.
I do agree that the window is small. (That is the reason I have to patch kernel in order to deterministically create the scenario in my test) Unfortunately, for most embedded systems, 99.99% of times being correct is not good enough.
Jun
- 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/
| |