From: Saeed Mahameed <saeed@kernel•org>
To: "David S. Miller" <davem@davemloft•net>,
Jakub Kicinski <kuba@kernel•org>, Paolo Abeni <pabeni@redhat•com>,
Eric Dumazet <edumazet@google•com>
Cc: Saeed Mahameed <saeedm@nvidia•com>, netdev@vger•kernel.org
Subject: [PATCH net-next 0/9] mlx5 devlink mutex removal part 1
Date: Mon, 11 Jul 2022 01:13:59 -0700 [thread overview]
Message-ID: <20220711081408.69452-1-saeed@kernel.org> (raw)
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
next reply other threads:[~2022-07-11 8:14 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-07-11 8:13 Saeed Mahameed [this message]
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
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220711081408.69452-1-saeed@kernel.org \
--to=saeed@kernel$(echo .)org \
--cc=davem@davemloft$(echo .)net \
--cc=edumazet@google$(echo .)com \
--cc=kuba@kernel$(echo .)org \
--cc=netdev@vger$(echo .)kernel.org \
--cc=pabeni@redhat$(echo .)com \
--cc=saeedm@nvidia$(echo .)com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox