Hello, I found following additionaly out: One of the Xenomai tasks writes cyclically to a shared linux memory (its not a Xenomai shared memory). Write and read access is controlled by Linux semaphores. If shared memory writing is out-commented is there never a delay problem.
I found following explanation about Xenomai in internet. Could it reason for problem? "If an interrupt arrives while a Xenomai thread executes in secondary mode, it is not forwarded to Linux! The mechanism works as follows: When a Xenomai thread is executed in secondary mode, the interrupt shield domain is activated All Linux interrupts are stalled, until the Xenomai thread completes execution. The interrupts will be served again when Linux goes back to execute in background mode." Best regards, Jens 2012/11/19, Gilles Chanteperdrix <gilles.chanteperd...@xenomai.org>: > On 11/19/2012 02:29 PM, Jens Köhler wrote: >> Hello, >> >> Now is Xenomai 2.6 installed. But I have sometimes still delays in >> user space applications. >> >> Delay: 0.003064 >> Delay: 0.003066 >> Delay: 0.003504 >> Delay: 0.003066 >> Delay: 0.003066 >> Delay: 0.003066 >> Delay: 0.003090 >> Delay: 0.003064 >> Delay: 0.003066 >> Delay: 0.003067 >> Delay: 0.053807 <- 53 ms instead 3ms >> Delay: 0.003067 >> Delay: 0.003067 >> >> I found out that problem depends from a real time queue between two >> Xenomai tasks. >> >> retval = rt_queue_create(&RtMeasureData, "RtMeasureData", 1000 * 256, >> Q_UNLIMITED, Q_FIFO | Q_SHARED); >> >> A real time task writes measurement data every 2 ms to a rt_queue. >> retval = rt_queue_write(&RtMeasureData, &FifoMeasureData, 256, Q_NORMAL); >> >> Another Xenomai task reads all measured data from queue and makes them >> available for user land applications. (Task is not real time, context >> switches) >> >> retval = rt_queue_read(&RtMeasureData, &FifoMeasureData, 256, >> TM_NONBLOCK); >> >> When nothing is written to queue is there also never an unexpected delay. >> >> Any ideas or recommendations to find reason for problem? > > Without seeing any code, there is strictly nothing we can do. > If you are able to reduce the code to a simple, self-contained test case > we can run anywhere, then we can have a look at it. > If not, then use the I-pipe tracer. > > -- > Gilles. > _______________________________________________ Xenomai mailing list Xenomai@xenomai.org http://www.xenomai.org/mailman/listinfo/xenomai