On 10/24/07, ROSSIER Daniel <[EMAIL PROTECTED]> wrote: > > Hi all, > > I've found a bug in arch/arm/xenomai/switch.S which solved the problem below. > It actually comes from the iWMMXT (Intel Wireless MMX) coprocessor which is > an extension of the ARM core in Xscale processor (and of course which is not > available in the AT91 series ;-). > > When a thread switch occurs, rthal_thread_switch(in > arch/arm/xenomai/switch.S) is called to perform switching of registers and > stacks between threads. The PXA version must also perform a switch of MMX > registers by invoking iwmmxt_task_switch(in arch/arm/kernel/iwmmxt.S). This > is done in rthal_task_switch() as well. > > However, between Linux 2.6.15 and Linux 2.6.20, the general scheme of > low-level task switching procedure changed a little bit: it is now relying on > a call chain notifier-based mechanism. Therefore, the iwmmxt_task_switch() > function has been updated since the function is called now from the notifier, > and not directly from __switch_to() as in 2.6.15. And the ipipe (ARM) patch > did not take into account that.. and it fails.
Shame to me, I somehow managed to miss this issue completely. -- Gilles Chanteperdrix _______________________________________________ Xenomai-core mailing list Xenomaiemail@example.com https://mail.gna.org/listinfo/xenomai-core