Tomas Kalibera wrote:
 > 
 > Hi,
 > 
 > I've measured interrupt latencies using irqbench and extended it a bit 
 > to measure also latencies of a user space task that uses "rt_intr_wait", 
 > as opposed to the specialized ioctl call used presently by the benchmark.
 > 
 > I found out that when the call to rt_intr_wait does not block (there is 
 > already an interrupt pending), the latency is nice, i.e. 20us. However, 
 > when rt_intr_wait blocks, the latency is 10ms (the whole quantum).
 > 
 > I thought that once the interrupt arrives and the kernel space header 
 > signals the interrupt, the Xenomai scheduler should be invoked and 
 > should preempt any presently running thread and immediately wake up the 
 > thread blocked in rt_intr_wait. Is this correct ?
 > 
 > The thread blocked in rt_intr_wait had maximum priority (99) and was in 
 > primary mode.
 > 
 > Interestingly, when I run the original version of the irqbench 
 > benchmark, even the user space version (-t 0, default) that waits for 
 > the interrupt using the specialized ioctl call, had nice latencies about 
 > 20us. Any ideas why the rt_intr_wait does not behave equally well ?

Did you check the interrupts count returned by rt_intr_wait ? What else
do you do in the loop calling rt_intr_wait ? Do not you use special
features such as I_NO_AUTOENA ?

-- 


                                            Gilles.

_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to