[dpdk-dev] [PATCH v2 1/4] vfio: drop fallback Linux implementation

Anatoly Burakov anatoly.burakov at intel.com
Thu Oct 28 15:49:27 CEST 2021


Currently, VFIO support for Linux is compiled unconditionally, and
supported kernel versions start with 4.4, so VFIO is assumed to always
be enabled. There is no way of disabling VFIO support at compile time
anyway, so just drop the "VFIO not available" fallback code altogether.

Signed-off-by: Anatoly Burakov <anatoly.burakov at intel.com>
---

Notes:
    Current minimum support Linux kernel is 4.4, and Meson build file sets the
    RTE_EAL_VFIO config option to `true` simply because we are compiling for Linux.
    So, it looks like VFIO support is pretty much assumed on Linux, so i think we
    can safely drop the fallback dummy implementation from Linux altogether?

 lib/eal/linux/eal_vfio.c | 110 ---------------------------------------
 1 file changed, 110 deletions(-)

diff --git a/lib/eal/linux/eal_vfio.c b/lib/eal/linux/eal_vfio.c
index aa2087a2da..549b86ae1d 100644
--- a/lib/eal/linux/eal_vfio.c
+++ b/lib/eal/linux/eal_vfio.c
@@ -20,8 +20,6 @@
 #include "eal_private.h"
 #include "eal_internal_cfg.h"
 
-#ifdef VFIO_PRESENT
-
 #define VFIO_MEM_EVENT_CLB_NAME "vfio_mem_event_clb"
 
 /* hot plug/unplug of VFIO groups may cause all DMA maps to be dropped. we can
@@ -2201,111 +2199,3 @@ rte_vfio_container_dma_unmap(int container_fd, uint64_t vaddr, uint64_t iova,
 
 	return container_dma_unmap(vfio_cfg, vaddr, iova, len);
 }
-
-#else
-
-int
-rte_vfio_setup_device(__rte_unused const char *sysfs_base,
-		__rte_unused const char *dev_addr,
-		__rte_unused int *vfio_dev_fd,
-		__rte_unused struct vfio_device_info *device_info)
-{
-	return -1;
-}
-
-int
-rte_vfio_release_device(__rte_unused const char *sysfs_base,
-		__rte_unused const char *dev_addr, __rte_unused int fd)
-{
-	return -1;
-}
-
-int
-rte_vfio_enable(__rte_unused const char *modname)
-{
-	return -1;
-}
-
-int
-rte_vfio_is_enabled(__rte_unused const char *modname)
-{
-	return -1;
-}
-
-int
-rte_vfio_noiommu_is_enabled(void)
-{
-	return -1;
-}
-
-int
-rte_vfio_clear_group(__rte_unused int vfio_group_fd)
-{
-	return -1;
-}
-
-int
-rte_vfio_get_group_num(__rte_unused const char *sysfs_base,
-		__rte_unused const char *dev_addr,
-		__rte_unused int *iommu_group_num)
-{
-	return -1;
-}
-
-int
-rte_vfio_get_container_fd(void)
-{
-	return -1;
-}
-
-int
-rte_vfio_get_group_fd(__rte_unused int iommu_group_num)
-{
-	return -1;
-}
-
-int
-rte_vfio_container_create(void)
-{
-	return -1;
-}
-
-int
-rte_vfio_container_destroy(__rte_unused int container_fd)
-{
-	return -1;
-}
-
-int
-rte_vfio_container_group_bind(__rte_unused int container_fd,
-		__rte_unused int iommu_group_num)
-{
-	return -1;
-}
-
-int
-rte_vfio_container_group_unbind(__rte_unused int container_fd,
-		__rte_unused int iommu_group_num)
-{
-	return -1;
-}
-
-int
-rte_vfio_container_dma_map(__rte_unused int container_fd,
-		__rte_unused uint64_t vaddr,
-		__rte_unused uint64_t iova,
-		__rte_unused uint64_t len)
-{
-	return -1;
-}
-
-int
-rte_vfio_container_dma_unmap(__rte_unused int container_fd,
-		__rte_unused uint64_t vaddr,
-		__rte_unused uint64_t iova,
-		__rte_unused uint64_t len)
-{
-	return -1;
-}
-
-#endif /* VFIO_PRESENT */
-- 
2.25.1



More information about the dev mailing list