[dpdk-dev] [PATCH] enicpmd: compilation error during inclusion of vfio.h
Sujith Sankar
ssujith at cisco.com
Thu Nov 27 18:14:40 CET 2014
Inclusion of vfio.h was giving compilation errors if kernel version is less
than 3.6.0 and if RTE_EAL_VFIO was on in config.
Replaced inclusion of vfio.h with eal_vfio.h and replaced RTE_EAL_VFIO with
VFIO_PRESENT in enicpmd code.
Signed-off-by: Sujith Sankar <ssujith at cisco.com>
---
lib/librte_pmd_enic/Makefile | 1 +
lib/librte_pmd_enic/enic_main.c | 13 +++++--------
2 files changed, 6 insertions(+), 8 deletions(-)
diff --git a/lib/librte_pmd_enic/Makefile b/lib/librte_pmd_enic/Makefile
index d4c2f66..befc552 100644
--- a/lib/librte_pmd_enic/Makefile
+++ b/lib/librte_pmd_enic/Makefile
@@ -39,6 +39,7 @@ LIB = librte_pmd_enic.a
CFLAGS += -I$(RTE_SDK)/lib/librte_hash/ -I$(RTE_SDK)/lib/librte_pmd_enic/vnic/
CFLAGS += -I$(RTE_SDK)/lib/librte_pmd_enic/
+CFLAGS += -I$(RTE_SDK)/lib/librte_eal/linuxapp/eal/
CFLAGS += -O3 -Wno-deprecated
VPATH += $(RTE_SDK)/lib/librte_pmd_enic/src
diff --git a/lib/librte_pmd_enic/enic_main.c b/lib/librte_pmd_enic/enic_main.c
index 4b857bb..f6f00d3 100644
--- a/lib/librte_pmd_enic/enic_main.c
+++ b/lib/librte_pmd_enic/enic_main.c
@@ -39,9 +39,6 @@
#include <sys/mman.h>
#include <fcntl.h>
#include <libgen.h>
-#ifdef RTE_EAL_VFIO
-#include <linux/vfio.h>
-#endif
#include <rte_pci.h>
#include <rte_memzone.h>
@@ -631,7 +628,7 @@ int enic_enable(struct enic *enic)
vnic_dev_enable_wait(enic->vdev);
-#ifndef RTE_EAL_VFIO
+#ifndef VFIO_PRESENT
/* Register and enable error interrupt */
rte_intr_callback_register(&(enic->pdev->intr_handle),
enic_intr_handler, (void *)enic->rte_dev);
@@ -995,7 +992,7 @@ int enic_setup_finish(struct enic *enic)
return 0;
}
-#ifdef RTE_EAL_VFIO
+#ifdef VFIO_PRESENT
static void enic_eventfd_init(struct enic *enic)
{
enic->eventfd = enic->pdev->intr_handle.fd;
@@ -1033,7 +1030,7 @@ int enic_get_link_status(struct enic *enic)
}
-#ifdef RTE_EAL_VFIO
+#ifdef VFIO_PRESENT
static int enic_create_err_intr_thread(struct enic *enic)
{
pthread_attr_t intr_attr;
@@ -1111,7 +1108,7 @@ static void enic_dev_deinit(struct enic *enic)
if (eth_dev->data->mac_addrs)
rte_free(eth_dev->data->mac_addrs);
-#ifdef RTE_EAL_VFIO
+#ifdef VFIO_PRESENT
enic_clear_intr_mode(enic);
#endif
}
@@ -1167,7 +1164,7 @@ static int enic_dev_init(struct enic *enic)
*/
enic_get_res_counts(enic);
-#ifdef RTE_EAL_VFIO
+#ifdef VFIO_PRESENT
/* Set interrupt mode based on resource counts and system
* capabilities
*/
--
1.9.1
More information about the dev
mailing list