[dpdk-dev] [PATCH] igb_uio: fix unknown symbols

Patrick MacArthur patrick at patrickmacarthur.net
Fri Oct 13 05:21:08 CEST 2017


On 10/12/2017 10:46 PM, Ferruh Yigit wrote:
> This patch partially reverts the commit d196343a258e and adds some
> functions from Markus' previous version of the patch [1].
> 
> igb_uio uses pci_msi_unmask_irq() and pci_msi_mask_irq() kernel APIs
> when kernel version is >= 3.19 because these APIs are implemented in
> this Linux kernel version.
> 
> But these APIs only exported beginning from Linux kernel 4.5, so before
> this Linux kernel version igb_uio kernel module is not usable,
> and giving following warnings:
> "igb_uio: Unknown symbol pci_msi_unmask_irq"
> "igb_uio: Unknown symbol pci_msi_mask_irq"
> 
> The support for these APIs increased to Linux kernel >= 4.5
> 
> For older version of Linux kernel unmask_msi_irq() and mask_msi_irq()
> are used but these functions are not exported at all.
> Instead of these functions switched back to previous implementation in
> igb_uio for MSI-X, and for MSI used igbuio_msi_mask_irq() from [1].
> 
> Fixes: d196343a258e ("igb_uio: use kernel functions for masking MSI-X")
> Cc: markus.theil at tu-ilmenau.de
> 
> [1]
> http://dpdk.org/dev/patchwork/patch/28144/
> 
> Signed-off-by: Ferruh Yigit <ferruh.yigit at intel.com>

I can confirm that with this patch applied I am able to build and load 
the igb_uio module on CentOS 7.4. I have not tested the actual MSI-X 
interrupt mask/unmask functionality.


More information about the dev mailing list