Re: [PATCH 0/2] NTB: epf: Fix ntb_hw_epf ISR issues

Koichiro Den <[email protected]> Tue, 17 Mar 2026 12:01:34 +0900
Newsgroups dev.linux.lists.ntb,org.kernel.vger.linux-kernel
Message-ID <wzv676qh2bahuptnzhhyywt2ihuz7xn2j7mcm6heqoweqz564v@mx66vyni2vyd>
On Wed, Mar 04, 2026 at 05:30:26PM +0900, Koichiro Den wrote:
> ntb_hw_epf handles doorbell interrupts using multiple MSI/MSI-X vectors.
> This small patch series is to address two issues in the interrupt
> setup/handler path:
> 
>  1) ntb_epf_init_isr() does not unwind already requested IRQs when
>     request_irq() fails part-way through the vector loop.
> 
>  2) ntb_epf_vec_isr() calls pci_irq_vector() in hardirq context to
>     derive the vector number. pci_irq_vector() performs an MSI domain
>     lookup (msi_get_virq()) that takes a mutex, which can trigger
>     "scheduling while atomic" splats.
> 
> Patch 1 fixes the request_irq() unwind path.
> Patch 2 caches the Linux IRQ number for vector 0 and uses it as a base in
> the ISR, avoiding pci_irq_vector() from hardirq context.
> 
> Both patches are Cc'd to stable (v5.12+).
> 
> Best regards,
> Koichiro
> 
> Koichiro Den (2):
>   NTB: epf: Fix request_irq() unwind in ntb_epf_init_isr()
>   NTB: epf: Avoid pci_irq_vector() from hardirq context

Jon or Dave,

Gentle ping on this series.
I would appreciate it if you could take a look when you have a chance.

Best regards,
Koichiro

> 
>  drivers/ntb/hw/epf/ntb_hw_epf.c | 14 +++++++-------
>  1 file changed, 7 insertions(+), 7 deletions(-)
> 
> -- 
> 2.51.0
> 
>