On 21/08/06, Jan Kiszka <[EMAIL PROTECTED]> wrote:
> I' am having some problems with using the rtdm_irq_request() function. I
> disabled my local APIC support in the kernel (2.6.17, xenomai 2.2.0). My
> device (USB-HOST controller) shares his IRQ with the Ethernet
> card(e1000). After calling rtdm_irq_request() my system hangs. I tried
> to unload the e1000 module first and it seems to work fine. Can I share
> non-realtime interrupts whit real-time interrupts. If yes, what went
> wrong.

Nope you can't share. The e1000 driver could otherwise cause priority
inversions when an Ethernet-related IRQ is pending, the IRQ line will
get disabled therefore, and thus succeeding RT-USB-originated IRQs will
be shadowed until Linux gets a chance to run again.

That the system hangs is due to the ungraceful way we currently handle
such exceptions. [EMAIL PROTECTED]: This is one example of the frequent problems
I was referring to...]

confirm. ok, I thought that the inter-domain irq sharing is not that frequently required (any % of potential users out there? :) and it is not worth adding a general support wrt some additional complexity it will likely add.

Are all these cases really caused by the lack of free interrupt lines, meaning that the conflicting devices can't even be re-configured so to provide a separate line for the "real-time" - handled device?

Anyway, this system hang is definitely something unacceptable. So should be fixed
[@ Jan : your second mail is still pending as well as some related code reading as, honestly, I don't have a clue at the moment. should be handled asap :]


Best regards,
Dmitry Adamushko
Xenomai-core mailing list

Reply via email to