LWN.net Logo

Moving interrupts to threads

Moving interrupts to threads

Posted Oct 16, 2008 14:42 UTC (Thu) by neli (subscriber, #51380)
In reply to: Moving interrupts to threads by jake
Parent article: Moving interrupts to threads

Don't these threaded interrupt handlers have even more overhead than workqueues? Workqueues are at least handled sequentially in the same thread; using threaded interrupt handlers means there are even more context switches.


(Log in to post comments)

Why threaded interrupt handlers are important

Posted Apr 10, 2011 15:01 UTC (Sun) by abacus (guest, #49001) [Link]

Don't these threaded interrupt handlers have even more overhead than workqueues? Workqueues are at least handled sequentially in the same thread; using threaded interrupt handlers means there are even more context switches.

I'm afraid that you have missed a key point about real-time systems. Design of a hard real-time system starts with deciding which threads in the system will run at real-time priority (SCHED_FIFO or SCHED_RR) and also at which priority (1..99). This step involves all threads in the system, including threaded interrupt handlers. By assigning a higher priority to certain application threads than the threaded interrupt handlers it becomes possible to obtain a system with low and bounded event response time. Handling some of the interrupt work via workqueues instead of threaded interrupt handlers would result in a larger event response time.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds