Hi, > -----Original Message----- > From: Jiawei Wang <[email protected]> > Sent: Monday, November 2, 2020 4:22 AM > To: Slava Ovsiienko <[email protected]>; Matan Azrad > <[email protected]>; Shahaf Shuler <[email protected]>; Ori Kam > <[email protected]> > Cc: [email protected]; Raslan Darawsheh <[email protected]>; > [email protected] > Subject: [PATCH v2] common/mlx5: free MR resource while device DMA > unmap > > mlx5 PMD created the MR (Memory Region) resource on the > mlx5_dma_map call to make the memory available for DMA > operations. On the mlx5_dma_unmap call the MR resource > was not freed but inserted to MR Free list for further > garbage collection. > Actual MR resource destroying happened on device stop > call. That caused the runtime out of memory in case of > application performed multiple DMA map/unmap calls. > > The fix immediately frees the MR resource on mlx5_dma_unmap > call not engaging the list. The export for mlx5_mr_free > function from common PMD part is added as well. > > Fixes: 989e999d9305 ("net/mlx5: support PCI device DMA map and unmap") > Cc: [email protected] > > Signed-off-by: Jiawei Wang <[email protected]> > Acked-by: Viacheslav Ovsiienko <[email protected]> > --- > drivers/common/mlx5/mlx5_common_mr.c | 12 ++++++------ > drivers/common/mlx5/mlx5_common_mr.h | 4 ++++ > drivers/common/mlx5/version.map | 1 + > drivers/net/mlx5/mlx5_mr.c | 2 +- > 4 files changed, 12 insertions(+), 7 deletions(-) >
Patch applied to next-net-mlx, Kindest regards, Raslan Darawsheh

