]> git.baikalelectronics.ru Git - kernel.git/commit
net/mlx5: DR, Free unused buddy ICM memory
authorYevgeny Kliteynik <kliteyn@nvidia.com>
Mon, 14 Sep 2020 12:07:59 +0000 (15:07 +0300)
committerSaeed Mahameed <saeedm@nvidia.com>
Thu, 5 Nov 2020 20:09:30 +0000 (12:09 -0800)
commit3514a79736072eae21e3fbfbeceba1f856435ca2
tree997541e56f844f4151f858509b55c5aaad87a9e4
parente5175746542ac28bf4f2429c5a3f81746ac158da
net/mlx5: DR, Free unused buddy ICM memory

Track buddy's used ICM memory, and free it if all
of the buddy's memory bacame unused.
Do this only for STEs.
MODIFY_ACTION buddies are much smaller, so in case there
is a large amount of modify_header actions, which result
in large amount of MODIFY_ACTION buddies, doing this
cleanup during sync will result in performance hit while
not freeing significant amount of memory.

Signed-off-by: Yevgeny Kliteynik <kliteyn@nvidia.com>
Reviewed-by: Alex Vesker <valex@nvidia.com>
Reviewed-by: Mark Bloch <mbloch@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
drivers/net/ethernet/mellanox/mlx5/core/steering/dr_icm_pool.c
drivers/net/ethernet/mellanox/mlx5/core/steering/mlx5dr.h