[dpdk-dev,v2,5/6] ena: fix memory management issue
Commit Message
After allocating memzone it's required to zeroize memory in it.
Freeing memzone with function dedicated for memoryzones.
Signed-off-by: Alexander Matushevsky <matua@amazon.com>
Signed-off-by: Jakub Palider <jpa@semihalf.com>
Signed-off-by: Jan Medala <jan@semihalf.com>
---
drivers/net/ena/base/ena_plat_dpdk.h | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
Comments
v2: As requested, big patch splitted into logical pieces for easier review.
Improved style and fixed icc compiler issues.
v3: Added commit messages to clarify patch purpose and minor changes
Jan Medala (6):
ena: update of ENA communication layer
ena: add debug area and host information
ena: disable readless communication regarding to HW revision
ena: allocate coherent memory in node-aware way
ena: fix memory management issue
ena: fix for icc compiler
drivers/net/ena/base/ena_com.c | 254 +++++++-------
drivers/net/ena/base/ena_com.h | 82 +++--
drivers/net/ena/base/ena_defs/ena_admin_defs.h | 107 +-----
drivers/net/ena/base/ena_defs/ena_eth_io_defs.h | 436 ++++++------------------
drivers/net/ena/base/ena_defs/ena_gen_info.h | 4 +-
drivers/net/ena/base/ena_eth_com.c | 32 +-
drivers/net/ena/base/ena_eth_com.h | 14 +
drivers/net/ena/base/ena_plat_dpdk.h | 42 ++-
drivers/net/ena/ena_ethdev.c | 272 ++++++++++++++-
drivers/net/ena/ena_ethdev.h | 39 +++
10 files changed, 671 insertions(+), 611 deletions(-)
On Thu, Jun 30, 2016 at 05:04:53PM +0200, Jan Medala wrote:
> v2: As requested, big patch splitted into logical pieces for easier review.
> Improved style and fixed icc compiler issues.
>
> v3: Added commit messages to clarify patch purpose and minor changes
>
> Jan Medala (6):
> ena: update of ENA communication layer
> ena: add debug area and host information
> ena: disable readless communication regarding to HW revision
> ena: allocate coherent memory in node-aware way
> ena: fix memory management issue
> ena: fix for icc compiler
>
Applied to dpdk-next-net/rel_16_07 with patch 6 squashed into patch 1
/Bruce
@@ -62,7 +62,7 @@ typedef uint64_t dma_addr_t;
#endif
#define ena_atomic32_t rte_atomic32_t
-#define ena_mem_handle_t void *
+#define ena_mem_handle_t const struct rte_memzone *
#define SZ_256 (256U)
#define SZ_4K (4096U)
@@ -188,13 +188,15 @@ typedef uint64_t dma_addr_t;
snprintf(z_name, sizeof(z_name), \
"ena_alloc_%d", ena_alloc_cnt++); \
mz = rte_memzone_reserve(z_name, size, SOCKET_ID_ANY, 0); \
+ memset(mz->addr, 0, size); \
virt = mz->addr; \
phys = mz->phys_addr; \
+ handle = mz; \
} while (0)
#define ENA_MEM_FREE_COHERENT(dmadev, size, virt, phys, handle) \
({ ENA_TOUCH(size); ENA_TOUCH(phys); \
ENA_TOUCH(dmadev); \
- rte_free(virt); })
+ rte_memzone_free(handle); })
#define ENA_MEM_ALLOC_COHERENT_NODE(dmadev, size, virt, phys, node, dev_node) \
do { \