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.
