Re: [PATCH v6 3/5] igb_uio: fix MSI-X IRQ assignment with new IRQ function
From: Ferruh Yigit <hidden>
Date: 2017-09-04 21:34:40
On 9/4/2017 7:17 PM, Markus Theil wrote:
quoted hunk ↗ jump to hunk
The patch which introduced the usage of pci_alloc_irq_vectors came after the patch which switched to non-threaded ISR (f0d1896fa1), but did not use non-threaded ISR, if pci_alloc_irq_vectors is used. Fixes: 99bb58f3adc7 ("igb_uio: switch to new irq function for MSI-X") Cc: nicolas.dichtel@6wind.com Signed-off-by: Markus Theil <redacted> --- lib/librte_eal/linuxapp/igb_uio/igb_uio.c | 1 + 1 file changed, 1 insertion(+)diff --git a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c index 9bb74b2..6885e72 100644 --- a/lib/librte_eal/linuxapp/igb_uio/igb_uio.c +++ b/lib/librte_eal/linuxapp/igb_uio/igb_uio.c@@ -323,6 +323,7 @@ igbuio_pci_enable_interrupts(struct rte_uio_pci_dev *udev) msix_entry.entry = 0; if (pci_enable_msix(udev->pdev, &msix_entry, 1) == 0) { dev_dbg(&udev->pdev->dev, "using MSI-X"); + udev->info.irq_flags = IRQF_NO_THREAD;
This should be in #else part (pci_alloc_irq_vectors() call one), I guess when issue in patch 2/5 fixed, this patch also will be correct.
udev->info.irq = msix_entry.vector; udev->mode = RTE_INTR_MODE_MSIX; break;