[Xenomai] Assertion current-magic 0 failed
rpm at xenomai.org
Wed Jul 4 11:29:54 CEST 2018
On 07/04/2018 09:54 AM, Stéphane Reichert wrote:
> Hi Philippe:
> Thanks for your answer. In fact, the assertion occurs when I call these two
> statements at the end of sigdebug_handler:
> signal (sig, SIG_DFL);
> kill (getpid(), sig);
> You can find below the answers you asked for:
> Backtrace reported by the debugger:
> Mode switch (reason: triggered fault), aborting. Backtrace:
The mode switch is due to a memory access fault, and looking at the
implementation of rt_heap_bind(), the only reason for this to happen in
such situation would be that alchemy_init() did not run prior to calling
In other words, I suspect that auto-init was disabled via xeno-config,
but xenomai_init() was not yet called when rt_heap_bind() is issued.
Would that be a plausible scenario?
> tests_integration_lib_ipc: threadobj.c:1344: threadobj_prologue: Assertion
> `current->magic == 0' failed.
> This log is displayed in the sigdebug_handler when I call rt_heap_bind
> (switch into secondary mode).
> Kernel Panic:
> . We have adapted the ipipe-core-patch-4.1.18 -arm-10.patch to our kernel
> . The kernel is compiled with these options for xenomai : full-debug,
> registry on, relax traces on.
> . The problem occurs when we call the kill at the end of the
> sigdebug_handler (same function as in the "Finding
> spurious relaxes" example).
> . The result of the addr2line gives me :
> This line code is (line 75 - function cobalt_signal_deliver):
> if (sigismember(swc->set, sig))
That kernel panic has to be fixed, however I have not been able to
reproduce it yet. If you could either send me a basic test code
triggering the issue, or the executable causing the fault (no source
needed), that would help.
More information about the Xenomai