From: Jan Kiszka <jan.kiszka@domain.hid>
To: Robert Gubler <rgubler@domain.hid>
Cc: Xenomai-help@domain.hid
Subject: Re: [Xenomai-help] [RTnet-users] RTNet in non-TDMA mode?
Date: Sun, 28 Oct 2007 11:53:14 +0100 [thread overview]
Message-ID: <47246A1A.7040909@domain.hid> (raw)
In-Reply-To: <e4ef24880710271217y2e0f6712t331bfcaac0e2a691@domain.hid>
[-- Attachment #1: Type: text/plain, Size: 2975 bytes --]
Robert Gubler wrote:
> On 10/27/07, Roland Tollenaar <rwatollenaar@domain.hid> wrote:
>> Hi Rob,
>>
>> Thanks for this response.
>>
>>> But my question remains -purely out of interest- why non-rt devices
>> and
>>> rt devices can _fundamentally_ not share an IRQ?
>>>
>>>
>>>
>>> My understanding is adeos-ipipe/xenomai provide an interrupt abstraction
>>> layer underneath Linux. If there is more than one consumer of an
>>> interrupt it has to be copied/forwarded to all those that need it. If
>>> an IRQ is shared with an RT application, and the Linux kernel I would
>>> imagine this would create some level of indeterministic RT software.
>
>
> IRQs are incoming (to the kernel/CPU) signals IIUC. I imagine that at
>> the end of these incoming IRQ's sit ISRs just waiting for IRQ and ready
>> to respond to it in whatever manner they usually do. If this
>> understanding is correct (which it probably is not) then I would not be
>> able to conceive of a reason why the IRQ could not be passed on to the
>> NON RT interrupt service routine after it has been handled by the
>> RT-ISR. But I reiterate that my understanding of these things is as
>> sketchy as my interest to improve the sketchiness is big. :)
>
>
> I think the problem is once the RT-ISR passes it to the NON-RT ISR there
> are no real guarantees for how long Linux (its device driver, most likely)
> will hold on to the interrupt. This is problematic if it is causing
> scheduling deadlines to be missed. Its probably not an issue with shared
> interrupts between multiple RT applications because (1) the RT apps using it
> are (hopefully) written with understanding it is in a real-time context;
> this is good peace of mind. And (2) there is probably some fancy interrupt
> masking or priority going on between RT-shared interrupts that make it more
> deterministic.
>
> And now for the obligatory I-don't-really-know-what-I'm-talking-about
> disclaimer again:
>
> I am new to these packages, so hopefully I am not providing misinformation
> on its functionality.
>
> :)
You're providing very accurate explanations in fact! And if you or
Roland things have the impression that the related FAQ entry on
xenomai.org is not the clear, please enhance it!
One further note on why it is hard to handle cross-domain-shared IRQs:
For the non-RT user, you always need a minimal (and, of course,
deterministic) IRQ handling stub in the RT domain that shut ups the IRQ
at device level and then forward it for later handling to the non-RT
domain. We a) have no really smart way for forwarding the IRQ at the
moment (*) and we b) would then still have to maintain those
hardware-specific stubs, which we cannot do for each and every Linux
driver out there.
Jan
(*) You currently need an additional virtual IRQ. Reusing the Adeos
pipeline with the same IRQ line is a yet unimplemented idea of mine for
a smarter alternative.
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 252 bytes --]
next prev parent reply other threads:[~2007-10-28 10:53 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <e4ef24880710261838l4d1961a5s8117d116be499cee@domain.hid>
[not found] ` <e4ef24880710262040r718b58f7xa2e5f89156d9024b@domain.hid>
[not found] ` <e4ef24880710262126g658f3f7ci534ca13df32b2e0e@domain.hid>
[not found] ` <4723118D.9060807@domain.hid>
[not found] ` <472326E6.9080103@domain.hid>
[not found] ` <47232A0C.60705@domain.hid>
2007-10-27 13:43 ` [Xenomai-help] [RTnet-users] RTNet in non-TDMA mode? Roland Tollenaar
2007-10-27 18:53 ` Robert Gubler
2007-10-27 19:04 ` Roland Tollenaar
2007-10-27 19:17 ` Robert Gubler
2007-10-27 19:52 ` Roland Tollenaar
2007-10-28 10:53 ` Jan Kiszka [this message]
2007-10-28 10:59 ` 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=47246A1A.7040909@domain.hid \
--to=jan.kiszka@domain.hid \
--cc=Xenomai-help@domain.hid \
--cc=rgubler@domain.hid \
/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.