mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-09-22 09:34:56 +02:00
net/mlx5: Fix L3 tunnel entropy refcount leak
[ Upstream commitc914307e1d] mlx5_tun_entropy_refcount_inc() counts both VXLAN and L2-to-L3 tunnel reformat entries as entropy-enabling users. The matching decrement path only handled VXLAN, leaving L2-to-L3 tunnel entries counted after release. Handle MLX5_REFORMAT_TYPE_L2_TO_L3_TUNNEL in mlx5_tun_entropy_refcount_dec() as well so the enabling entry refcount remains balanced. Fixes:f828ca6a2f("net/mlx5e: Add support for hw encapsulation of MPLS over UDP") Signed-off-by: Li RongQing <lirongqing@baidu.com> Reviewed-by: Simon Horman <horms@kernel.org> Reviewed-by: Tariq Toukan <tariqt@nvidia.com> Link: https://patch.msgid.link/20260703141423.1723-1-lirongqing@baidu.com Signed-off-by: Paolo Abeni <pabeni@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
75a5969888
commit
6c97f394bb
@@ -176,7 +176,8 @@ void mlx5_tun_entropy_refcount_dec(struct mlx5_tun_entropy *tun_entropy,
|
||||
int reformat_type)
|
||||
{
|
||||
mutex_lock(&tun_entropy->lock);
|
||||
if (reformat_type == MLX5_REFORMAT_TYPE_L2_TO_VXLAN)
|
||||
if (reformat_type == MLX5_REFORMAT_TYPE_L2_TO_VXLAN ||
|
||||
reformat_type == MLX5_REFORMAT_TYPE_L2_TO_L3_TUNNEL)
|
||||
tun_entropy->num_enabling_entries--;
|
||||
else if (reformat_type == MLX5_REFORMAT_TYPE_L2_TO_NVGRE &&
|
||||
--tun_entropy->num_disabling_entries == 0)
|
||||
|
||||
Reference in New Issue
Block a user