netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next V2 0/7] net/mlx5e: Reduce interface downtime on configuration change
@ 2025-10-30 13:32 Tariq Toukan
  2025-10-30 13:32 ` [PATCH net-next V2 1/7] net/mlx5e: Enhance function structures for self loopback prevention application Tariq Toukan
                   ` (7 more replies)
  0 siblings, 8 replies; 16+ messages in thread
From: Tariq Toukan @ 2025-10-30 13:32 UTC (permalink / raw)
  To: Eric Dumazet, Jakub Kicinski, Paolo Abeni, Andrew Lunn,
	David S. Miller
  Cc: Saeed Mahameed, Leon Romanovsky, Tariq Toukan, Mark Bloch, netdev,
	linux-rdma, linux-kernel, Gal Pressman, Carolina Jubran,
	Simon Horman

Hi,

This series significantly reduces the interface downtime while swapping
channels during a configuration change, on capable devices.

Here we remove an old requirement on operations ordering that became
obsolete on recent capable devices. This helps cutting the downtime by a
factor of magnitude, ~80% in our example.

Perf numbers:
Measured the number of dropped packets in a simple ping flood test,
during a configuration change operation, that switches the number of
channels from 247 to 248.

Before: 71 packets lost
After:  15 packets lost, ~80% saving.

Regards,
Tariq

V2:
- Fix coccinelle false-positive in patch 2.


Tariq Toukan (7):
  net/mlx5e: Enhance function structures for self loopback prevention
    application
  net/mlx5e: Use TIR API in mlx5e_modify_tirs_lb()
  net/mlx5e: Allow setting self loopback prevention bits on TIR init
  net/mlx5: IPoIB, set self loopback prevention in TIR init
  net/mlx5e: Do not re-apply TIR loopback configuration if not necessary
  net/mlx5e: Pass old channels as argument to mlx5e_switch_priv_channels
  net/mlx5e: Defer channels closure to reduce interface down time

 drivers/net/ethernet/mellanox/mlx5/core/en.h  |  4 +-
 .../net/ethernet/mellanox/mlx5/core/en/rss.c  |  2 +
 .../net/ethernet/mellanox/mlx5/core/en/rss.h  |  1 +
 .../ethernet/mellanox/mlx5/core/en/rx_res.c   |  7 +++
 .../ethernet/mellanox/mlx5/core/en/rx_res.h   |  1 +
 .../net/ethernet/mellanox/mlx5/core/en/tir.c  | 29 +++++++++--
 .../net/ethernet/mellanox/mlx5/core/en/tir.h  |  3 ++
 .../ethernet/mellanox/mlx5/core/en_common.c   | 52 +++++++++----------
 .../net/ethernet/mellanox/mlx5/core/en_main.c | 31 +++++++----
 .../ethernet/mellanox/mlx5/core/en_selftest.c |  4 +-
 .../ethernet/mellanox/mlx5/core/ipoib/ipoib.c |  7 ++-
 11 files changed, 97 insertions(+), 44 deletions(-)


base-commit: 1bae0fd90077875b6c9c853245189032cbf019f7
-- 
2.31.1


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

end of thread, other threads:[~2025-11-05  1:20 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-30 13:32 [PATCH net-next V2 0/7] net/mlx5e: Reduce interface downtime on configuration change Tariq Toukan
2025-10-30 13:32 ` [PATCH net-next V2 1/7] net/mlx5e: Enhance function structures for self loopback prevention application Tariq Toukan
2025-11-03 13:57   ` Simon Horman
2025-10-30 13:32 ` [PATCH net-next V2 2/7] net/mlx5e: Use TIR API in mlx5e_modify_tirs_lb() Tariq Toukan
2025-11-03 13:57   ` Simon Horman
2025-10-30 13:32 ` [PATCH net-next V2 3/7] net/mlx5e: Allow setting self loopback prevention bits on TIR init Tariq Toukan
2025-11-03 13:57   ` Simon Horman
2025-10-30 13:32 ` [PATCH net-next V2 4/7] net/mlx5: IPoIB, set self loopback prevention in " Tariq Toukan
2025-11-03 13:58   ` Simon Horman
2025-10-30 13:32 ` [PATCH net-next V2 5/7] net/mlx5e: Do not re-apply TIR loopback configuration if not necessary Tariq Toukan
2025-11-03 13:58   ` Simon Horman
2025-10-30 13:32 ` [PATCH net-next V2 6/7] net/mlx5e: Pass old channels as argument to mlx5e_switch_priv_channels Tariq Toukan
2025-11-03 13:59   ` Simon Horman
2025-10-30 13:32 ` [PATCH net-next V2 7/7] net/mlx5e: Defer channels closure to reduce interface down time Tariq Toukan
2025-11-03 13:59   ` Simon Horman
2025-11-05  1:20 ` [PATCH net-next V2 0/7] net/mlx5e: Reduce interface downtime on configuration change 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).