From: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
To: Michael Bernhard <michael.bernhard@domain.hid>
Cc: "xenomai@xenomai.org" <xenomai@xenomai.org>
Subject: Re: [Xenomai-help] SIGILL when calling pthread_cleanup_push()
Date: Wed, 05 Oct 2011 19:35:20 +0200 [thread overview]
Message-ID: <4E8C9558.8060606@domain.hid> (raw)
In-Reply-To: <4E8C8EDE.6040303@domain.hid>
On 10/05/2011 07:07 PM, Michael Bernhard wrote:
> On 10/04/2011 05:29 PM, Gilles Chanteperdrix wrote:
>> On 10/04/2011 05:14 PM, Michael Bernhard wrote:
>>> Gilles Chanteperdrix<gilles.chanteperdrix<at> xenomai.org> writes:
>>>>
>>>> On 10/03/2011 05:33 PM, Gilles Chanteperdrix wrote:
>>>>> On 10/03/2011 02:26 PM, Gilles Chanteperdrix wrote:
>>>>>> Ok. Thanks for testing xenomai 2.6 by the way. I will try the test
>>>>>> program on an ARMv5 I have tonight. However, could you tell us a bit
>>>>>> more about your setup? What toolchain do you use? What threading library?
>>> We use codesourcery toolchain arm-2010.09. The rootfs was built using PTXdist.
>>> I think, but have to verify, that NPTL is used as threading library.
>>>
>>>>> And also: is your libc built with iwmmxt support?
>>> I don't know, but will find out.
>>>
>>>> I can not reproduce this issue on another armv5 I have, but it does not
>>>> support iwmmxt. So, in order to see if the problem you have comes from
>>>> iwmmxt, you should try and build a root filesystem with a soft-float
>>>> toolchain, such as, for instance, the codesourcery toolchain.
>>>>
>>>> Currently, iwmmxt floats are not supported with Xenomai, so, if you want
>>>> to get them working, something will have to be done.
>>> In the example I gave, no floats were used. Does Xenomai needs to support iwmmxt
>>> floats also in this case? And would compiling the application with -msoft-float
>>> do the trick?
>>>
>>> ATM, I'm busy with other things but have time to investigate tomorrow evening.
>>
>> The bug happens inside sigsetjmp, which is a routine saving the current
>> context. So, if the libc is compiled with iwmmmxt support, and more
>> importantly, if the kernel is compiled with iwmmxt support, sigsetjmp
>> probably saves the floating point registers.
>>
>> So another simple thing to try is to disable iwmmxt support in kernel
>> configuration.
> I disabled iwmmxt support in the kernel my test is now working.
>
> However what happens to applications/libraries that are compiled with
> iwmmxt support when this feature is disabled in the kernel?
They will get... a SIGILL when trying to use the iwmmxt instructions.
>
> What has to be changed in Xenomai to have iwmmxt support?
Support for switching iwmmxt context, and this is painful. Philippe and
I worked on x86 floating points and ARM/VFP, and it took several
iterations to get it working correctly. The initial port of Xenomai on
PXA was done without access to real hardware, but support for a new
floating point instruction set can not be done that way.
--
Gilles.
prev parent reply other threads:[~2011-10-05 17:35 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-03 9:35 [Xenomai-help] SIGILL when calling pthread_cleanup_push() Michael Bernhard
2011-10-03 12:26 ` Gilles Chanteperdrix
2011-10-03 15:33 ` Gilles Chanteperdrix
2011-10-04 11:25 ` Gilles Chanteperdrix
2011-10-04 15:14 ` Michael Bernhard
2011-10-04 15:29 ` Gilles Chanteperdrix
2011-10-05 17:07 ` Michael Bernhard
2011-10-05 17:35 ` Gilles Chanteperdrix [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E8C9558.8060606@domain.hid \
--to=gilles.chanteperdrix@xenomai.org \
--cc=michael.bernhard@domain.hid \
--cc=xenomai@xenomai.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.