public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Interrupt Latencies
@ 2011-02-22  9:35 Schaefer Dr, Frank-Rene ()
  2011-02-22 12:33 ` Clemens Ladisch
  2011-02-22 14:39 ` Thomas Gleixner
  0 siblings, 2 replies; 7+ messages in thread
From: Schaefer Dr, Frank-Rene () @ 2011-02-22  9:35 UTC (permalink / raw)
  To: linux-kernel

Hello. 

Having read "Moving interrupts to threads" at

           http://lwn.net/Articles/302043/

I expected to reduce interrupt latency during a SPI 
communication by handling the transmit-receive in a 
'quick_check_handler' using 

           request_threaded_irq(...);


However, the difference in latency to "request_irq(...)" 
is not measurable. It is still in the range from 60 to 110us
on a 1.6 GHz Atom CPU. From "linux/interrupt.h" I conclude 
that depending on 

           CONFIG_GENERIC_HARDIQS

either 'request_irq' is mapped to 'request_threaded_irq' 
or vice versa. We are able to measure the latency precisely
as the difference of the time when the interrupt pin 'IN'
is raised and we raise our response pin 'OUT' as shown below.

      pin IN        .-------------------------
      ______________|
                    
      pin OUT                     .-----------
      ____________________________|
                          
                    |<- latency ->|

Could anyone point to locations in the kernel so that I can
precisely understand the mechanisms that cause the latency? It 
is totally incomprehensible to me why the 'quick_check_handler' 
must have a latency of 60us at min. (that are many thousand 
instructions).

Any help and comments are greatly appreciated.

Best Regards

Frank

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2011-02-24 12:18 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-02-22  9:35 Interrupt Latencies Schaefer Dr, Frank-Rene ()
2011-02-22 12:33 ` Clemens Ladisch
2011-02-24  8:01   ` Schaefer Dr, Frank-Rene ()
2011-02-24 12:18     ` Thomas Gleixner
2011-02-22 14:39 ` Thomas Gleixner
2011-02-22 16:10   ` Schaefer Dr, Frank-Rene ()
2011-02-22 17:17     ` Thomas Gleixner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox