Sebastian Smolorz wrote: > Jan Kiszka wrote: >> Sebastian Smolorz wrote: >>> Jan Kiszka wrote: >>>> Sebastian Smolorz wrote: >>>>> Jan Kiszka wrote: >>>>>> Sebastian Smolorz wrote: >>>>>>> Hi, >>>>>>> >>>>>>> we all know that the latency test should not be run with a period of >>>>>>> 100 us because it easily gets locked up. The attached trace >>>>>>> illustrates this problem in detail. It shows that a timer interrupt >>>>>>> needs about 50 us to be processed. Furthermore, there is not enough >>>>>>> time between two timer interrupts for the latency task to get all its >>>>>>> work done. >>>>>>> >>>>>>> The current I-pipe tracer patch for ARM is available at >>>>>>> http://opensource.emlix.com/ipipe-s3c24xx/download/ipipe-tracer-arm.p >>>>>>> at ch _v4 >>>>>>> >>>>>>> Comments welcome. >>>>>> Something is still broken, given all those "N"s in Delay column. Is >>>>>> there something like NMI at all on your board? >>>>> There isn't AFAIK. What could be the reason for all this noise? >>>>> Recursive spin-locking? >>>> Yes. If those Ns aren't false positive in the sense that >>>> IPIPE_TFLG_NMI_HIT is set accidentally, __ipipe_trace is re-entered >>>> while IPIPE_TFLG_NMI_LOCK is still set. >>> Interesting: If I disable CONFIG_IPIPE_TRACE_MCOUNT the "Noise" doesn't >>> appear at all. >> Sounds like some function that __ipipe_trace calls is instrumented, thus >> the recursion. Could be something trivial like memcpy (if that happens >> to be uninlined here). > > Ok, your hint was very useful! The problem was __ipipe_mach_get_tsc() which > is > no inline function (and can't be). I solved it by adding 'notrace' to the > function. Now the 'N's don't appear at all!
And I guess the overhead should drop a bit as well. Perfect. If you have anything more pending, please post soon, Gilles is collecting the ARM stuff for Xenomai 2.3. Jan
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Adeos-main mailing list [email protected] https://mail.gna.org/listinfo/adeos-main
