Jun Sun wrote: I have a feeling that we are going in circles. Tasklets are executed at the return of interrupt handler.On Thu, Aug 14, 2003 at 12:17:52PM +0300, Sirotkin, Alexander wrote:I suspect that what happens is as follows : system call arrives and while it's being processed and interrupt to one of the drivers arrives. This interrupt schedules a tasklet which however is not executed after the system call finishes,The tasklet should be executed at the return of interrupt handling. If not, there is a bug. However, I suspect that this is not enough. On mips (contrary to x86), system call is NOT an interrupt. It's a different exception with different handler. Therefore I suspect that tasklets are NOT called at the end of system call exception handler (which is a different handler, not do_IRQ). I can try to trace it, I just wanted to ensure that what I was saying makes sense. See above.only after the next timer interrupt which causes up to 10 ms latency (not all the time, only when somebody makes a system call).BTW, make sure tasklet_schedule() is indeed called in an interrupt handler. I am not sure why will happen otherwise. If you suspect it is a bug, you can easily trace them. You may my little tracing tool useful, http://linux.junsun.net/patches/generic/experimental/030716.a-jstrace.patch Jun -- Alexander Sirotkin SW Engineer Texas Instruments Broadband Communications Israel (BCIL) Tel: +972-9-9706587 ________________________________________________________________________ "Those who do not understand Unix are condemned to reinvent it, poorly." -- Henry Spencer |