mem: honor IOVA mode in virt2phy
authorSantosh Shukla <santosh.shukla@caviumnetworks.com>
Fri, 6 Oct 2017 11:03:45 +0000 (16:33 +0530)
committerThomas Monjalon <thomas@monjalon.net>
Fri, 6 Oct 2017 18:39:07 +0000 (20:39 +0200)
Check iova mode and accordingly return phy addr.

Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>
Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com>
Tested-by: Hemant Agrawal <hemant.agrawal@nxp.com>
lib/librte_eal/linuxapp/eal/eal_memory.c

index 5279128..2d9d7c2 100644 (file)
@@ -139,6 +139,9 @@ rte_mem_virt2phy(const void *virtaddr)
        int page_size;
        off_t offset;
 
+       if (rte_eal_iova_mode() == RTE_IOVA_VA)
+               return (uintptr_t)virtaddr;
+
        /* when using dom0, /proc/self/pagemap always returns 0, check in
         * dpdk memory by browsing the memsegs */
        if (rte_xen_dom0_supported()) {