On 01/20/2014 09:31 AM, Henri Roosen wrote:
> Hi all,
>
> We have the problem that (hot-)rebooting our Xenomai system fails every 1
> out of 10 times.
>
> The system is an ARM iMX6Solo (Cortex-A9) running Xenomai 2.6.2.1 and
> kernel 3.0 (freescale branch).
>
> When the system hangs at reboot, it is in an infinite loop in the Xenomai
> atomic exchange implementation, with STREX always returning 1:
>
> __xnarch_xchg
> S:0xC0094B2C : ADD r3,r6,#0x890
> S:0xC0094B30 : LDREX r2,[r3]
> S:0xC0094B34 : STREX r1,r9,[r3]
> S:0xC0094B38 : TEQ r1,#0
> S:0xC0094B3C : BNE {pc}-0xc ; 0xc0094b30
>
> Does anyone know what is causing the STREX to always return 0 and why it
> might get into this state?
Normally, strex fails if "something else" stores data in between ldrex
and strex. Do you have the full stack trace?
--
Gilles.
_______________________________________________
Xenomai mailing list
[email protected]
http://www.xenomai.org/mailman/listinfo/xenomai