[dpdk-dev,v2,36/41] net/ena: use contiguous allocation for DMA memory

Message ID 2af6c33009b8008da7028a351efed2932b1a13d0.1520428025.git.anatoly.burakov@intel.com (mailing list archive)
State Superseded, archived
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation fail Compilation issues

Commit Message

Anatoly Burakov March 7, 2018, 4:57 p.m. UTC
  Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
---
 drivers/net/ena/base/ena_plat_dpdk.h | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
  

Comments

Michal Krawczyk March 8, 2018, 9:40 a.m. UTC | #1
2018-03-07 17:57 GMT+01:00 Anatoly Burakov <anatoly.burakov@intel.com>:
> Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
Acked-by: Michal Krawczyk <mk@semihalf.com>
> ---
>  drivers/net/ena/base/ena_plat_dpdk.h | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/net/ena/base/ena_plat_dpdk.h b/drivers/net/ena/base/ena_plat_dpdk.h
> index 8cba319..c1ebf00 100644
> --- a/drivers/net/ena/base/ena_plat_dpdk.h
> +++ b/drivers/net/ena/base/ena_plat_dpdk.h
> @@ -188,7 +188,8 @@ typedef uint64_t dma_addr_t;
>                 ENA_TOUCH(dmadev); ENA_TOUCH(handle);                   \
>                 snprintf(z_name, sizeof(z_name),                        \
>                                 "ena_alloc_%d", ena_alloc_cnt++);       \
> -               mz = rte_memzone_reserve(z_name, size, SOCKET_ID_ANY, 0); \
> +               mz = rte_memzone_reserve_contig(z_name,                 \
> +                               size, SOCKET_ID_ANY, 0);                \
>                 memset(mz->addr, 0, size);                              \
>                 virt = mz->addr;                                        \
>                 phys = mz->iova;                                        \
> @@ -206,7 +207,7 @@ typedef uint64_t dma_addr_t;
>                 ENA_TOUCH(dmadev); ENA_TOUCH(dev_node);                 \
>                 snprintf(z_name, sizeof(z_name),                        \
>                                 "ena_alloc_%d", ena_alloc_cnt++);       \
> -               mz = rte_memzone_reserve(z_name, size, node, 0); \
> +               mz = rte_memzone_reserve_contig(z_name, size, node, 0); \
>                 memset(mz->addr, 0, size);                              \
>                 virt = mz->addr;                                        \
>                 phys = mz->iova;                                        \
> @@ -219,7 +220,7 @@ typedef uint64_t dma_addr_t;
>                 ENA_TOUCH(dmadev); ENA_TOUCH(dev_node);                 \
>                 snprintf(z_name, sizeof(z_name),                        \
>                                 "ena_alloc_%d", ena_alloc_cnt++);       \
> -               mz = rte_memzone_reserve(z_name, size, node, 0); \
> +               mz = rte_memzone_reserve_contig(z_name, size, node, 0); \
>                 memset(mz->addr, 0, size);                              \
>                 virt = mz->addr;                                        \
>         } while (0)
> --
> 2.7.4
  

Patch

diff --git a/drivers/net/ena/base/ena_plat_dpdk.h b/drivers/net/ena/base/ena_plat_dpdk.h
index 8cba319..c1ebf00 100644
--- a/drivers/net/ena/base/ena_plat_dpdk.h
+++ b/drivers/net/ena/base/ena_plat_dpdk.h
@@ -188,7 +188,8 @@  typedef uint64_t dma_addr_t;
 		ENA_TOUCH(dmadev); ENA_TOUCH(handle);			\
 		snprintf(z_name, sizeof(z_name),			\
 				"ena_alloc_%d", ena_alloc_cnt++);	\
-		mz = rte_memzone_reserve(z_name, size, SOCKET_ID_ANY, 0); \
+		mz = rte_memzone_reserve_contig(z_name,			\
+				size, SOCKET_ID_ANY, 0);		\
 		memset(mz->addr, 0, size);				\
 		virt = mz->addr;					\
 		phys = mz->iova;					\
@@ -206,7 +207,7 @@  typedef uint64_t dma_addr_t;
 		ENA_TOUCH(dmadev); ENA_TOUCH(dev_node);			\
 		snprintf(z_name, sizeof(z_name),			\
 				"ena_alloc_%d", ena_alloc_cnt++);	\
-		mz = rte_memzone_reserve(z_name, size, node, 0); \
+		mz = rte_memzone_reserve_contig(z_name, size, node, 0);	\
 		memset(mz->addr, 0, size);				\
 		virt = mz->addr;					\
 		phys = mz->iova;					\
@@ -219,7 +220,7 @@  typedef uint64_t dma_addr_t;
 		ENA_TOUCH(dmadev); ENA_TOUCH(dev_node);			\
 		snprintf(z_name, sizeof(z_name),			\
 				"ena_alloc_%d", ena_alloc_cnt++);	\
-		mz = rte_memzone_reserve(z_name, size, node, 0); \
+		mz = rte_memzone_reserve_contig(z_name, size, node, 0);	\
 		memset(mz->addr, 0, size);				\
 		virt = mz->addr;					\
 	} while (0)