summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Mi <cmi@nvidia.com>2023-04-04 03:45:04 +0300
committerSaeed Mahameed <saeedm@nvidia.com>2023-04-21 04:47:32 +0300
commit4fbef0f8ea6350eaea89b1e3175f9325252913ac (patch)
tree930ba05894d1163169eb862e52be804f4d1ab395
parent4c8189302567f75099a336b0efcff8291ec86ff4 (diff)
downloadlinux-4fbef0f8ea6350eaea89b1e3175f9325252913ac.tar.xz
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>
-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);
}