[PATCH 1/5] cobalt/intr: vfile: do not assume all irqs are cobalt-managed

Philippe Gerum rpm at xenomai.org
Tue Jan 15 19:05:32 CET 2019


On 1/15/19 6:12 PM, Jan Kiszka wrote:
> On 14.01.19 18:35, Philippe Gerum wrote:
>> Non-cobalt kernel code may hook interrupts using ipipe_request_irq()
>> directly, which means that xnintr_vec_first() cannot assume that
>> __ipipe_irq_cookie() always returns a valid xnintr struct for all
>> irqs.
> 
> Is there an out-of-tree use case for that already, or is this rather
> defensive?
> 

I stumbled upon this issue when hooking a device IRQ inside a regular
driver using the pipeline interface, as using xnintr* and friends at
such interface level would be a bad idea. Sometimes we may want to have
pipeline-aware drivers which are not and should not be RTDM-based. We
can't assume what 3rd party drivers are doing or not in this respect.

Once such driver is enabled, reading /proc/xenomai/irq for instance
would start the fireworks.

-- 
Philippe.



More information about the Xenomai mailing list