summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/mellanox
diff options
context:
space:
mode:
authorChris Mi <cmi@nvidia.com>2023-04-04 02:45:04 +0200
committerSaeed Mahameed <saeedm@nvidia.com>2023-04-21 03:47:32 +0200
commit4fbef0f8ea6350eaea89b1e3175f9325252913ac (patch)
tree930ba05894d1163169eb862e52be804f4d1ab395 /drivers/net/ethernet/mellanox
parentnet/mlx5: E-switch, Don't destroy indirect table in split rule (diff)
downloadlinux-4fbef0f8ea6350eaea89b1e3175f9325252913ac.tar.xz
linux-4fbef0f8ea6350eaea89b1e3175f9325252913ac.zip
net/mlx5: Release tunnel device after tc update skb
The cited commit causes a regression. Tunnel device is not released after tc update skb if skb needs to be freed. The following error message will be printed: unregister_netdevice: waiting for vxlan1 to become free. Usage count = 11 Fix it by releasing tunnel device if skb needs to be freed. Fixes: 93a1ab2c545b ("net/mlx5: Refactor tc miss handling to a single function") Signed-off-by: Chris Mi <cmi@nvidia.com> Reviewed-by: Maor Dickman <maord@nvidia.com> Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Diffstat (limited to 'drivers/net/ethernet/mellanox')
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/en/rep/tc.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en/rep/tc.c b/drivers/net/ethernet/mellanox/mlx5/core/en/rep/tc.c
index 8f7452dc00ee..668fdee9cf05 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en/rep/tc.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en/rep/tc.c
@@ -715,5 +715,6 @@ forward:
return;
free_skb:
+ dev_put(tc_priv.fwd_dev);
dev_kfree_skb_any(skb);
}