On Tue, Sep 15, 2015 at 09:02:24PM +0300, Kosta Zertsekel wrote: > >> On 10 September 2015 at 20:49, Kosta Zertsekel <zertsekel@xxxxxxxxx> > >> Also, I see that in 4.2 there are only ~76 drivers that use threaded > >> interrupt: > >> ``` > >> $ git grep -l IRQ_WAKE_THREAD | sort | grep -v "\.h" | wc -l > >> 76 > >> ``` > > > On Sun, Sep 13, 2015 at 2:16 PM, Rami Rosen <roszenrami@xxxxxxxxx> wrote: > > This kernel and older ones include device drivers which use threaded IRQs > > (call request_threaded_irq(), etc). > > For example, many of the driver under drivers/input/touchscreen are > > using threaded IRQs: > > Following link is from kernel 3.18: > > http://lxr.free-electrons.com/source/drivers/input/touchscreen/ucb1400_ts.c?v > =3.18 > > > > How did you came to the conclusion that this kernel does not support > > threaded IRQs ? could it be that you simply do not use device drivers > > that use this mechanism ? > > In the given touch screen driver request_threaded_irq() provides NULL > for the thread function pointer. Hence, the non-threaded IRQ mechanism > is actually being used. This is why I grepped for IRQ_WAKE_THREAD and > not for request_threaded_irq. > > So, the questions remains. > Why only ~76 drivers use the threaded IRQ mechanism? Because people have not converted older code to the newer mechanism. > What are the cons of the threaded IRQ mechanism? Slower throughput and added complexity. _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies