netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/9] mlx5 devlink mutex removal part 1
@ 2022-07-11  8:13 Saeed Mahameed
  2022-07-11  8:14 ` [PATCH net-next 1/9] net/mlx5: Remove devl_unlock from mlx5_eswtich_mode_callback_enter Saeed Mahameed
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: Saeed Mahameed @ 2022-07-11  8:13 UTC (permalink / raw)
  To: David S. Miller, Jakub Kicinski, Paolo Abeni, Eric Dumazet
  Cc: Saeed Mahameed, netdev

From: Saeed Mahameed <saeedm@nvidia.com>

Moshe Shemesh Says:
===================
1) Fix devlink lock in mlx5 devlink eswitch callbacks

Following the commit 14e426bf1a4d "devlink: hold the instance lock
during eswitch_mode callbacks" which takes devlink instance lock for all
devlink eswitch callbacks and adds a temporary workaround, this patchset
removes the workaround, replaces devlink API functions by devl_ API
where called from mlx5 driver eswitch callbacks flows and adds devlink
instance lock in other driver's path that leads to these functions.
While moving to devl_ API the patchset removes part of the devlink API
functions which mlx5 was the last one to use and so not used by any
driver now.

The patchset also remove DEVLINK_NL_FLAG_NO_LOCK flag from the callbacks
of port_new/port which are called only from mlx5 driver and the already
locked by the patchset as parallel paths to the eswitch callbacks using
devl_ API functions.

This patchset will be followed by another patchset that will remove
DEVLINK_NL_FLAG_NO_LOCK flag from devlink reload and devlink health
callbacks. Thus we will have all devlink callbacks locked and it will
pave the way to remove devlink mutex.
=================== 

Moshe Shemesh (9):
  net/mlx5: Remove devl_unlock from mlx5_eswtich_mode_callback_enter
  net/mlx5: Use devl_ API for rate nodes destroy
  devlink: Remove unused function devlink_rate_nodes_destroy
  net/mlx5: Use devl_ API in mlx5_esw_offloads_devlink_port_register
  net/mlx5: Use devl_ API in mlx5_esw_devlink_sf_port_register
  devlink: Remove unused functions devlink_rate_leaf_create/destroy
  net/mlx5: Use devl_ API in mlx5e_devlink_port_register
  net/mlx5: Remove devl_unlock from mlx5_devlink_eswitch_mode_set
  devlink: Hold the instance lock in port_new / port_del callbacks

 drivers/net/ethernet/mellanox/mlx5/core/dev.c | 29 +++++++-
 .../ethernet/mellanox/mlx5/core/en/devlink.c  | 16 ++++-
 .../mellanox/mlx5/core/esw/devlink_port.c     | 20 +++---
 .../net/ethernet/mellanox/mlx5/core/eswitch.c | 18 ++++-
 .../mellanox/mlx5/core/eswitch_offloads.c     | 57 +++++-----------
 include/linux/mlx5/driver.h                   |  4 ++
 include/net/devlink.h                         |  3 -
 net/core/devlink.c                            | 66 +++----------------
 8 files changed, 94 insertions(+), 119 deletions(-)

-- 
2.36.1


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2022-07-12  8:50 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-11  8:13 [PATCH net-next 0/9] mlx5 devlink mutex removal part 1 Saeed Mahameed
2022-07-11  8:14 ` [PATCH net-next 1/9] net/mlx5: Remove devl_unlock from mlx5_eswtich_mode_callback_enter Saeed Mahameed
2022-07-11  8:14 ` [PATCH net-next 2/9] net/mlx5: Use devl_ API for rate nodes destroy Saeed Mahameed
2022-07-11  8:14 ` [PATCH net-next 3/9] devlink: Remove unused function devlink_rate_nodes_destroy Saeed Mahameed
2022-07-11  8:14 ` [PATCH net-next 4/9] net/mlx5: Use devl_ API in mlx5_esw_offloads_devlink_port_register Saeed Mahameed
2022-07-11  8:14 ` [PATCH net-next 5/9] net/mlx5: Use devl_ API in mlx5_esw_devlink_sf_port_register Saeed Mahameed
2022-07-11  8:14 ` [PATCH net-next 6/9] devlink: Remove unused functions devlink_rate_leaf_create/destroy Saeed Mahameed
2022-07-11  8:14 ` [PATCH net-next 7/9] net/mlx5: Use devl_ API in mlx5e_devlink_port_register Saeed Mahameed
2022-07-11  8:14 ` [PATCH net-next 8/9] net/mlx5: Remove devl_unlock from mlx5_devlink_eswitch_mode_set Saeed Mahameed
2022-07-11  8:14 ` [PATCH net-next 9/9] devlink: Hold the instance lock in port_new / port_del callbacks Saeed Mahameed
2022-07-12  3:03 ` [PATCH net-next 0/9] mlx5 devlink mutex removal part 1 Jakub Kicinski
2022-07-12  8:50 ` patchwork-bot+netdevbpf

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).