igb_uio: fix build on CentOS 6.8
authorFerruh Yigit <ferruh.yigit@intel.com>
Wed, 15 Jun 2016 15:57:42 +0000 (16:57 +0100)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Tue, 21 Jun 2016 14:09:32 +0000 (16:09 +0200)
Following compile error observed with CentOS 6.8, which uses kernel
kernel-devel-2.6.32-642.el6.x86_64:

In function 'igbuio_msix_mask_irq':
error: 'PCI_MSIX_ENTRY_CTRL_MASKBIT' undeclared

Reported-by: Thiago Martins <thiagocmartinsc@gmail.com>
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
lib/librte_eal/linuxapp/igb_uio/compat.h

index c1d45a6..0d781e4 100644 (file)
 #define   PCI_MSIX_ENTRY_CTRL_MASKBIT   1
 #endif
 
+/*
+ * for kernels < 2.6.38 and backported patch that moves MSI-X entry definition
+ * to pci_regs.h Those kernels has PCI_MSIX_ENTRY_SIZE defined but not
+ * PCI_MSIX_ENTRY_CTRL_MASKBIT
+ */
+#ifndef PCI_MSIX_ENTRY_CTRL_MASKBIT
+#define PCI_MSIX_ENTRY_CTRL_MASKBIT    1
+#endif
+
 #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 34) && \
        (!(defined(RHEL_RELEASE_CODE) && \
         RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(5, 9)))