From: Tariq Toukan <tariqt@nvidia.com>
To: Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
Andrew Lunn <andrew+netdev@lunn.ch>,
"David S. Miller" <davem@davemloft.net>
Cc: Saeed Mahameed <saeedm@nvidia.com>,
Leon Romanovsky <leon@kernel.org>,
Tariq Toukan <tariqt@nvidia.com>, Mark Bloch <mbloch@nvidia.com>,
"Alexei Starovoitov" <ast@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
"Jesper Dangaard Brouer" <hawk@kernel.org>,
John Fastabend <john.fastabend@gmail.com>,
<netdev@vger.kernel.org>, <linux-rdma@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, <bpf@vger.kernel.org>,
Gal Pressman <gal@nvidia.com>,
Leon Romanovsky <leonro@nvidia.com>,
Moshe Shemesh <moshe@nvidia.com>, William Tu <witu@nvidia.com>,
Dragos Tatulea <dtatulea@nvidia.com>,
Nimrod Oren <noren@nvidia.com>, Alex Lazar <alazar@nvidia.com>
Subject: [PATCH net-next 0/6] net/mlx5e: Speedup channel configuration operations
Date: Wed, 12 Nov 2025 11:29:03 +0200 [thread overview]
Message-ID: <1762939749-1165658-1-git-send-email-tariqt@nvidia.com> (raw)
Hi,
This series significantly improves the latency of channel configuration
operations, like interface up (create channels), interface down (destroy
channels), and channels reconfiguration (create new set, destroy old
one).
This is achieved by dropping reducing the default number of SQs in a
channel from 4 down to 2.
The first four patches by William do the needed refactoring to avoid
using the async ICOSQ in default.
The following two patches by me remove the egress xdp-redirect SQ by
default. It can still be created by loading a dummy XDP program.
The two remaining default SQs per channel:
1 TXQ SQ (for traffic), and 1 ICOSQ (for internal communication
operations with the device).
Perf numbers:
NIC: Connect-X7.
Setup: 248 channels.
Interface up + down:
Before: 2.605 secs
Patch 4: 2.246 secs (1.16x faster)
Patch 6: 1.798 secs (1.25x faster)
Overall: 1.45x faster in our example.
Regards,
Tariq
Tariq Toukan (2):
net/mlx5e: Update XDP features in switch channels
net/mlx5e: Support XDP target xmit with dummy program
William Tu (4):
net/mlx5e: Move async ICOSQ lock into ICOSQ struct
net/mlx5e: Use regular ICOSQ for triggering NAPI
net/mlx5e: Move async ICOSQ to dynamic allocation
net/mlx5e: Conditionally create async ICOSQ
drivers/net/ethernet/mellanox/mlx5/core/en.h | 49 ++++++-
.../mellanox/mlx5/core/en/reporter_tx.c | 1 +
.../ethernet/mellanox/mlx5/core/en/xsk/rx.c | 3 +
.../ethernet/mellanox/mlx5/core/en/xsk/tx.c | 6 +-
.../mellanox/mlx5/core/en_accel/ktls.c | 10 +-
.../mellanox/mlx5/core/en_accel/ktls_rx.c | 26 ++--
.../mellanox/mlx5/core/en_accel/ktls_txrx.h | 4 +-
.../ethernet/mellanox/mlx5/core/en_ethtool.c | 10 +-
.../net/ethernet/mellanox/mlx5/core/en_main.c | 137 ++++++++++++------
.../net/ethernet/mellanox/mlx5/core/en_rep.c | 2 +-
.../net/ethernet/mellanox/mlx5/core/en_rx.c | 3 +
.../net/ethernet/mellanox/mlx5/core/en_txrx.c | 8 +-
12 files changed, 179 insertions(+), 80 deletions(-)
base-commit: 8da7bea7db692e786165b71729fb68b7ff65ee56
--
2.31.1
next reply other threads:[~2025-11-12 9:31 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-11-12 9:29 Tariq Toukan [this message]
2025-11-12 9:29 ` [PATCH net-next 1/6] net/mlx5e: Move async ICOSQ lock into ICOSQ struct Tariq Toukan
2025-11-12 9:29 ` [PATCH net-next 2/6] net/mlx5e: Use regular ICOSQ for triggering NAPI Tariq Toukan
2025-11-15 2:53 ` Jakub Kicinski
2025-11-12 9:29 ` [PATCH net-next 3/6] net/mlx5e: Move async ICOSQ to dynamic allocation Tariq Toukan
2025-11-12 9:29 ` [PATCH net-next 4/6] net/mlx5e: Conditionally create async ICOSQ Tariq Toukan
2025-11-12 9:29 ` [PATCH net-next 5/6] net/mlx5e: Update XDP features in switch channels Tariq Toukan
2025-11-12 9:29 ` [PATCH net-next 6/6] net/mlx5e: Support XDP target xmit with dummy program Tariq Toukan
2025-11-12 10:29 ` Toke Høiland-Jørgensen
2025-11-12 11:28 ` Tariq Toukan
2025-11-12 10:54 ` [PATCH net-next 0/6] net/mlx5e: Speedup channel configuration operations Toke Høiland-Jørgensen
2025-11-12 11:30 ` Tariq Toukan
2025-11-12 16:33 ` Toke Høiland-Jørgensen
2025-11-13 10:59 ` Tariq Toukan
2025-11-13 13:16 ` Toke Høiland-Jørgensen
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=1762939749-1165658-1-git-send-email-tariqt@nvidia.com \
--to=tariqt@nvidia.com \
--cc=alazar@nvidia.com \
--cc=andrew+netdev@lunn.ch \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=dtatulea@nvidia.com \
--cc=edumazet@google.com \
--cc=gal@nvidia.com \
--cc=hawk@kernel.org \
--cc=john.fastabend@gmail.com \
--cc=kuba@kernel.org \
--cc=leon@kernel.org \
--cc=leonro@nvidia.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=mbloch@nvidia.com \
--cc=moshe@nvidia.com \
--cc=netdev@vger.kernel.org \
--cc=noren@nvidia.com \
--cc=pabeni@redhat.com \
--cc=saeedm@nvidia.com \
--cc=witu@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
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