mbox series

[net-next,v2,0/9] Take devlink lock on mlx4 and mlx5 callbacks

Message ID 1659023630-32006-1-git-send-email-moshe@nvidia.com (mailing list archive)
Headers show
Series Take devlink lock on mlx4 and mlx5 callbacks | expand

Message

Moshe Shemesh July 28, 2022, 3:53 p.m. UTC
Prepare mlx4 and mlx5 drivers to have all devlink callbacks called with
devlink instance locked. Change mlx4 driver to use devl_ API where
needed to have devlink reload callbacks locked. Change mlx5 driver to
use devl_ API where needed to have devlink reload and devlink health
callbacks locked.

As mlx5 is the only driver which needed changes to enable calling health
callbacks with devlink instance locked, this patchset also removes
DEVLINK_NL_FLAG_NO_LOCK flag from devlink health callbacks.

This patchset will be followed by a patchset that will remove
DEVLINK_NL_FLAG_NO_LOCK flag from devlink and will remove devlink_mutex.

Jiri Pirko (2):
  net: devlink: remove region snapshot ID tracking dependency on
    devlink->lock
  net: devlink: remove region snapshots list dependency on devlink->lock

Moshe Shemesh (7):
  net/mlx5: Move fw reset unload to mlx5_fw_reset_complete_reload
  net/mlx5: Lock mlx5 devlink reload callbacks
  net/mlx4: Use devl_ API for devlink region create / destroy
  net/mlx4: Use devl_ API for devlink port register / unregister
  net/mlx4: Lock mlx4 devlink reload callback
  net/mlx5: Lock mlx5 devlink health recovery callback
  devlink: Hold the instance lock in health callbacks

 drivers/net/ethernet/mellanox/mlx4/catas.c    |   5 +
 drivers/net/ethernet/mellanox/mlx4/crdump.c   |  20 +--
 drivers/net/ethernet/mellanox/mlx4/main.c     |  44 +++++-
 drivers/net/ethernet/mellanox/mlx5/core/dev.c |  19 +--
 .../net/ethernet/mellanox/mlx5/core/devlink.c |  59 +++++---
 .../net/ethernet/mellanox/mlx5/core/eswitch.c |  18 +--
 .../ethernet/mellanox/mlx5/core/fw_reset.c    |  10 +-
 .../net/ethernet/mellanox/mlx5/core/health.c  |   4 +
 .../net/ethernet/mellanox/mlx5/core/main.c    |  38 ++++-
 .../ethernet/mellanox/mlx5/core/mlx5_core.h   |   2 +
 .../net/ethernet/mellanox/mlx5/core/sriov.c   |   6 +
 net/core/devlink.c                            | 135 ++++++++++--------
 12 files changed, 227 insertions(+), 133 deletions(-)

Comments

patchwork-bot+netdevbpf@kernel.org July 29, 2022, 5:30 a.m. UTC | #1
Hello:

This series was applied to netdev/net-next.git (master)
by Jakub Kicinski <kuba@kernel.org>:

On Thu, 28 Jul 2022 18:53:41 +0300 you wrote:
> Prepare mlx4 and mlx5 drivers to have all devlink callbacks called with
> devlink instance locked. Change mlx4 driver to use devl_ API where
> needed to have devlink reload callbacks locked. Change mlx5 driver to
> use devl_ API where needed to have devlink reload and devlink health
> callbacks locked.
> 
> As mlx5 is the only driver which needed changes to enable calling health
> callbacks with devlink instance locked, this patchset also removes
> DEVLINK_NL_FLAG_NO_LOCK flag from devlink health callbacks.
> 
> [...]

Here is the summary with links:
  - [net-next,v2,1/9] net: devlink: remove region snapshot ID tracking dependency on devlink->lock
    https://git.kernel.org/netdev/net-next/c/5502e8712c9b
  - [net-next,v2,2/9] net: devlink: remove region snapshots list dependency on devlink->lock
    https://git.kernel.org/netdev/net-next/c/2dec18ad826f
  - [net-next,v2,3/9] net/mlx5: Move fw reset unload to mlx5_fw_reset_complete_reload
    https://git.kernel.org/netdev/net-next/c/c12f4c6ac3b4
  - [net-next,v2,4/9] net/mlx5: Lock mlx5 devlink reload callbacks
    https://git.kernel.org/netdev/net-next/c/84a433a40d0e
  - [net-next,v2,5/9] net/mlx4: Use devl_ API for devlink region create / destroy
    https://git.kernel.org/netdev/net-next/c/9cb7e94a78b5
  - [net-next,v2,6/9] net/mlx4: Use devl_ API for devlink port register / unregister
    https://git.kernel.org/netdev/net-next/c/a8c05514b2f8
  - [net-next,v2,7/9] net/mlx4: Lock mlx4 devlink reload callback
    https://git.kernel.org/netdev/net-next/c/60d7ceea4b2a
  - [net-next,v2,8/9] net/mlx5: Lock mlx5 devlink health recovery callback
    https://git.kernel.org/netdev/net-next/c/d3dbdc9f8ddc
  - [net-next,v2,9/9] devlink: Hold the instance lock in health callbacks
    https://git.kernel.org/netdev/net-next/c/c90005b5f75c

You are awesome, thank you!