From: Jan Kiszka <jan.kiszka@siemens.com>
To: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
Cc: Xenomai <xenomai@xenomai.org>
Subject: Re: [Xenomai] issues with debugging enabled
Date: Wed, 13 Nov 2013 14:53:47 +0100 [thread overview]
Message-ID: <5283846B.8070004@siemens.com> (raw)
In-Reply-To: <52838180.7070701@xenomai.org>
On 2013-11-13 14:41, Gilles Chanteperdrix wrote:
> On 11/13/2013 02:25 PM, Jan Kiszka wrote:
>> On 2013-11-12 21:34, Gilles Chanteperdrix wrote:
>>>
>>> Hi,
>>>
>>> for a change, I ran the xeno-regression-test with a lot of debugging and
>>> options known to having caused problems in the past and found two
>>> issues:
>>>
>>> on x86 SMP, with full dynticks and debugging enabled (preemptible kernel
>>> debugging, mutex, spinlocks, and sleep inside spinlocks), I get the
>>> series of warnings at the end of the mail.
>>
>> We are currently facing crashes inside __switch_to, FPU related
>> (non-existing save area).
>
> Probably the issue solved by this patch:
> http://git.xenomai.org/?p=ipipe-gch.git;a=commit;h=9b3320eef67e3f118f96065c8c2584b715710d94
Thought I had everything, but I lost track, and it's missing here. Will
merge and give it a try.
>
>
>> Once that is sorted out, we can have a look at
>> that scenario as well. Do you have the .config online somewhere?
>
> http://sisyphus.hd.free.fr/~gilles/config-nestor
OK, thanks.
>
>>> on ARM, when a fault occurs, the fault ode is entered with hardware irqs
>>> off (this is a recent change in the mainline kernel, this code used to
>>> be executed with hardware irqs on), so I do:
>>>
>>> ipipe_stall_root();
>>> hard_local_irq_enabled();
>>>
>>> But the context checking does not like that.
>>>
>>> Any idea how to fix these?
>>
>> Only ARM's SMP version of ipipe_stall_root() contains
>> ipipe_stall_root(), UP and at least x86 do not have this. I understand
>> that it makes sense to deny this call over non-root, but as it is about
>> fixing up imbalances in the pipeline state, ipipe_stall_root() is likely
>> not the best choice. What about open-coding the relevant check for the
>> domain? Maybe it also works to push the check to the end of
>> ipipe_stall_root, i.e. after fixing up the pipeline state.
>
> I have to run again the test and check what really happens, because like
> Philippe said, it may be that I am using ipipe_stall_root() when
> entering this code over non root context, and that would be incorrect.
> I have to report the trap to the pipeline first so as to give a chance
> to Xenomai to relax the thread, then enable irqs over root.
>
OK.
Jan
--
Siemens AG, Corporate Technology, CT RTC ITP SES-DE
Corporate Competence Center Embedded Linux
next prev parent reply other threads:[~2013-11-13 13:53 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-12 20:34 [Xenomai] issues with debugging enabled Gilles Chanteperdrix
2013-11-13 8:23 ` Philippe Gerum
2013-11-13 8:37 ` Gilles Chanteperdrix
2013-11-13 11:55 ` Philippe Gerum
2013-11-13 13:25 ` Jan Kiszka
2013-11-13 13:41 ` Gilles Chanteperdrix
2013-11-13 13:53 ` Jan Kiszka [this message]
2013-11-14 19:36 ` Jan Kiszka
2013-11-14 20:23 ` Gilles Chanteperdrix
2013-11-18 13:01 ` Jan Kiszka
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=5283846B.8070004@siemens.com \
--to=jan.kiszka@siemens.com \
--cc=gilles.chanteperdrix@xenomai.org \
--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.