Re: [PATCH Dovetail v2 1/2] dovetail: genirq: Add request_percpu_irq_affinity_flags()
Philippe Gerum <[email protected]>
| Newsgroups | dev.linux.lists.xenomai |
|---|---|
| Message-ID | <[email protected]> |
Florian Bezdeka <[email protected]> writes: > On Thu, 2026-02-19 at 18:10 +0100, Philippe Gerum wrote: >> Florian Bezdeka <[email protected]> writes: >> >> > On Wed, 2026-02-18 at 08:30 +0100, Jan Kiszka wrote: >> > > On 18.02.26 00:05, Florian Bezdeka wrote: >> > > > On Tue, 2026-02-17 at 23:54 +0100, Florian Bezdeka wrote: >> > > > > cobalt / evl are currently using __request_percpu_irq() for setting up >> > > > > OOB IRQs. In 6.19 the signature of __request_percpu_irq() has been >> > > > > updated and 7.0 will remove the function entirely, so we need a >> > > > > replacement. >> > > > > >> > > > > All other variants (like the upcoming request_percpu_irq_affinity()) >> > > > > are missing the flags parameter which we require. >> > > > > >> > > > > This could be backported to all supported dovetail versions. That >> > > > > would allow co-kernels to switch to the new API unconditionally. >> > > > > >> > > > > Signed-off-by: Florian Bezdeka <[email protected]> >> > > > > --- >> > > > > include/linux/interrupt.h | 5 +++++ >> > > > > kernel/irq/manage.c | 10 ++++++++++ >> > > > > 2 files changed, 15 insertions(+) >> > > > > >> > > > > diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h >> > > > > index bf0511b438c65e119af917763ce92a8f3bfb4c4c..6cd8ad02ffbd87f71869d6737fbc8c1ae477c1ee 100644 >> > > > > --- a/include/linux/interrupt.h >> > > > > +++ b/include/linux/interrupt.h >> > > > > @@ -213,6 +213,11 @@ request_percpu_irq_affinity(unsigned int irq, irq_handler_t handler, >> > > > > devname, affinity, percpu_dev_id); >> > > > > } >> > > > > >> > > > > +int request_percpu_irq_affinity_flags(unsigned int irq, irq_handler_t handler, >> > > > > + unsigned long flags, const char *devname, >> > > > > + const cpumask_t *affinity, >> > > > > + void __percpu *dev_id); >> > > > > + >> > > > > >> > > > >> > > > Would be nice to get some feedback here. The affinity parameter is >> > > > currently not in use, but would allow us to provide it in the future. >> > > > Not sure if that will be necessary... >> > > > >> > > >> > > This is what I was wondering as well... When would one need that? Maybe >> > > in the context of confining Xenomai to a subset of physical CPUs? Would >> > > be good to check that again. >> > >> > @Philippe: Any thoughts? >> > >> > I would like to complete the 6.19 port on Xenomai side. This is a >> > blocker right now. >> > >> >> To me this is a no-brainer, given that __request_percpu_irq() requires >> an affinity mask, having request_percpu_irq_affinity_flags() is the only >> sane way to set all the properties of a per-cpu interrupt, including >> flags and affinity, in one go. In any case, callers who don't care about >> such affinity can pass NULL. >> > > Thanks for the confirmation. > > I will add the series now to the wip/flo/v6.19-dovetail-rebase branch > and continue with the Xeno 3 adaptions. evl will need the same changes. > Philippe, can you look into that or should I try to reserve some cycles? > > The Xeno 3 testsuite is already passing on that branch. Ok. I'll handle the x4 updates. -- Philippe.