summaryrefslogtreecommitdiffstats
path: root/include/linux/mlx5
diff options
context:
space:
mode:
authorWei Zhang <weizhang@nvidia.com>2023-10-12 12:27:36 -0700
committerSaeed Mahameed <saeedm@nvidia.com>2023-10-14 10:16:29 -0700
commit3f7f31fff2510272334f3d0374c432bdaa4f1536 (patch)
tree7a1dd34061dacfe7e8527704d99bcf3d32ae7ae1 /include/linux/mlx5
parent85605fb694f084ba017c93c150e668882445ce73 (diff)
downloadlinux-stable-3f7f31fff2510272334f3d0374c432bdaa4f1536.tar.gz
linux-stable-3f7f31fff2510272334f3d0374c432bdaa4f1536.tar.bz2
linux-stable-3f7f31fff2510272334f3d0374c432bdaa4f1536.zip
net/mlx5: Parallelize vhca event handling
At present, mlx5 driver have a general purpose event handler which not only handles vhca event but also many other events. This incurs a huge bottleneck because the event handler is implemented by single threaded workqueue and all events are forced to be handled in serial manner even though application tries to create multiple SFs simultaneously. Introduce a dedicated vhca event handler which manages SFs parallel creation. Signed-off-by: Wei Zhang <weizhang@nvidia.com> Reviewed-by: Moshe Shemesh <moshe@nvidia.com> Reviewed-by: Shay Drory <shayd@nvidia.com> Reviewed-by: Jacob Keller <jacob.e.keller@intel.com> Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Diffstat (limited to 'include/linux/mlx5')
-rw-r--r--include/linux/mlx5/driver.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/mlx5/driver.h b/include/linux/mlx5/driver.h
index 52e982bc0f50..7968c5ee85c4 100644
--- a/include/linux/mlx5/driver.h
+++ b/include/linux/mlx5/driver.h
@@ -615,6 +615,7 @@ struct mlx5_priv {
int adev_idx;
int sw_vhca_id;
struct mlx5_events *events;
+ struct mlx5_vhca_events *vhca_events;
struct mlx5_flow_steering *steering;
struct mlx5_mpfs *mpfs;