On Tue, 2006-05-09 at 15:45 -0700, Kjetil S. Matheussen wrote: > > Hmm, it sounds like a solution could be to separate timers that just > > wake up a process from ones that do actual work and run them in separate > > kernel threads. > > > > I don't understand why you want that. To me (which > knows about nothing about how the kernel works), the solution to > the problem is crystal clear: The softirq timer needs to have the highest > priority, and the only thing the sofirq timer threads does is to > make sure threads that should be woken up are put into some kernel > schedule queue somehow. I don't understand why the softirq timer threads > should cause any latency problems, what does it do except scheduling > waiting threads? > Well as you have seen the softirq timer thread apparently does route cache flushing and a bunch of other things we don't want it to do. I was under the impression these were already done by separate threads. I think we are in agreement. I have to double check how it works in -rt - I've been running mainline lately which still has a single ksoftirqd process. Lee