10/11/2026 17:20, Harman Kalra: > From: Mohit Kumar Parjapat <[email protected]> > > All MSI-X vectors were registered on pci_dev->intr_handle, rewriting > its fd before each rte_intr_callback_register(). Since EAL references > the caller's handle instead of a copy, all vectors share one interrupt > source whose fd is read live, so only the last vector is polled. > Mailbox replies are lost, probe times out, and the cleanup path leaves > a closed fd in the source, making the interrupt thread panic in > epoll_ctl(). > > Register each vector on its own handle, tracked in a list so that > unregister uses and frees the same handle. Reject duplicate vector > registration, close the vector's own eventfd on unregister, and unwind > all error paths of plt_irq_register(). > > Fixes: c663018eb7f3 ("interrupts: do not duplicate interrupt handles") > > Signed-off-by: Mohit Kumar Parjapat <[email protected]> > Signed-off-by: Harman Kalra <[email protected]>
Applied, thanks.

