aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/net/ethernet/mellanox/mlx5/core/en/fs.h
diff options
context:
space:
mode:
authorVlad Buslov <vladbu@mellanox.com>2018-09-17 14:01:58 +0300
committerSaeed Mahameed <saeedm@mellanox.com>2019-07-29 16:40:26 -0700
commitb6fac0b46a1a76024698d240f0f9aac552f897b7 (patch)
tree9d3d08fcf8c7dc08fca15fabd7e1e098d500ecda /drivers/net/ethernet/mellanox/mlx5/core/en/fs.h
parentnet/mlx5e: Rely on rcu instead of rtnl lock when getting upper dev (diff)
downloadwireguard-linux-b6fac0b46a1a76024698d240f0f9aac552f897b7.tar.xz
wireguard-linux-b6fac0b46a1a76024698d240f0f9aac552f897b7.zip
net/mlx5e: Protect tc flow table with mutex
TC flow table is created when first flow is added, and destroyed when last flow is removed. This assumes that all accesses to the table are externally synchronized with rtnl lock. To remove dependency on rtnl lock, add new mutex mlx5e_tc_table->t_lock and use it to protect the flow table. Signed-off-by: Vlad Buslov <vladbu@mellanox.com> Reviewed-by: Jianbo Liu <jianbol@mellanox.com> Reviewed-by: Roi Dayan <roid@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx5/core/en/fs.h')
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/en/fs.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en/fs.h b/drivers/net/ethernet/mellanox/mlx5/core/en/fs.h
index eb70ada89b09..4518ce19112e 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en/fs.h
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en/fs.h
@@ -10,6 +10,8 @@ enum {
};
struct mlx5e_tc_table {
+ /* protects flow table */
+ struct mutex t_lock;
struct mlx5_flow_table *t;
struct rhashtable ht;