[Xenomai] RTDM driver init: interrupts and context objects

Philippe Gerum rpm at xenomai.org
Sun Mar 19 19:22:04 CET 2017

On 03/19/2017 07:08 PM, andrija at stupar.com wrote:
> Hi Phillipe,
> I was under the impression that I cannot, since Cobalt is a feature of
> Xenomai 3.x, and I am using Xenomai 2.6.5, where chasing the mode
> switches is a bit more complicated, as explained on the page
> https://xenomai.org//2014/06/finding-spurious-relaxes/
> In any case, the causes of the mode switches that were troubling me were
> obvious, just buried in the code that I have been porting to Xenomai,

It does not seem a mode switch problem, but merely a calling context
issue. There is no mode switch from kernel space, however Xenomai
switches mode automatically at the syscall boundary, as required to keep
the core system sane regardless of how well/bad an application behaves.
Whether such switch is acceptable latency-wise for such application is a
totally different matter.

> and therefore took a while to find (doubtlessly using the debug flag
> would've been easier, but it did not take me weeks - this is not a
> project I work on full time).

The almost equivalent flag for Xenomai 2.6 is CONFIG_XENO_OPT_DEBUG_NUCLEUS.


More information about the Xenomai mailing list