Hi, Thanks for your answer, but a tasklet runs in interrupt context (in_interrupt() != 0) so it doesn't support schedule() call included in "down" semaphore function.
Any other idea ? Laurent. > -----Message d'origine----- > De : Thiago Galesi [mailto:thiagogalesi at gmail.com] > Envoy? : lun. 29 mai 2006 18:13 > ? : Laurent Lagrange > Cc : linuxppc-embedded at ozlabs.org > Objet : Re: Linux kernel thread with Linux 2.6.x > > > > > > As the interrupt handler can't be scheduled, I have made a > kernel thread > > which waits forever on a semaphore. > > This semaphore is set when a received packet interrupt occured. > > You should look into tasklets for this. Not that your system is not > OK, but, as you said it, it's not fast enough. > > Note that you still have some limitations using tasklets, but it's > more flexible than Interrupt handlers. > >