From: Shahaji Bhosle <shahaji.bho...@broadcom.com>

Need to support --no-huge mode which allows application
to run as unprivileged user and does not have access to
hugepage mount point and files within it.

rte_mem_virt2phy() does not have access to physical
addresses(PA) without hugepages, so use rte_mem_virt2iova()
with vfio-pci kernel driver.

Signed-off-by: Shahaji Bhosle <shahaji.bho...@broadcom.com>
Reviewed-by: Ajit Khaparde <ajit.khapa...@broadcom.com>
---
 drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c 
b/drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c
index 4be2703740..c765e123fe 100644
--- a/drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c
+++ b/drivers/net/bnxt/tf_ulp/ulp_fc_mgr.c
@@ -62,9 +62,9 @@ ulp_fc_mgr_shadow_mem_alloc(struct hw_fc_mem_info *parms, int 
size)
 
        rte_mem_lock_page(parms->mem_va);
 
-       parms->mem_pa = (void *)(uintptr_t)rte_mem_virt2phy(parms->mem_va);
+       parms->mem_pa = (void *)(uintptr_t)rte_mem_virt2iova(parms->mem_va);
        if (parms->mem_pa == (void *)RTE_BAD_IOVA) {
-               BNXT_DRV_DBG(ERR, "Allocate failed mem_pa\n");
+               BNXT_DRV_DBG(ERR, "virt2iova failed for mem_va 0x%p", 
parms->mem_va);
                return -ENOMEM;
        }
 
-- 
2.39.5 (Apple Git-154)

Reply via email to