From: sashiko-bot@kernel.org
To: "Tariq Toukan" <tariqt@nvidia.com>
Cc: linux-rdma@vger.kernel.org
Subject: Re: [PATCH net-next 15/15] net/mlx5: LAG, enable LAG over functions that do not represent a physical port
Date: Wed, 04 Nov 2026 17:13:52 +0000 [thread overview]
Message-ID: <sashiko-outbox-197742@kernel.org> (raw)
In-Reply-To: <20261103171009.563034-16-tariqt@nvidia.com>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Medium] net/mlx5: LAG, empty debugfs member list in members_show() for virt_lag
--
commit a1292895cfa07137f4fbbaafed6d7e85d7e486bc
Author: Shay Drory <shayd@nvidia.com>
net/mlx5: LAG, enable LAG over functions that do not represent a physical port
This commit enables LAG over virtual functions (VFs/SFs) sitting behind a
multi_uplink_eswitch that do not represent a physical port. It skips setting
MLX5_LAG_XA_MARK_PORT on these functions, avoids registering the netdev
notifier or adding netdevs, and reports at least one port in
mlx5_lag_get_num_ports().
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c b/drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c
> index 4e15e16ae6e84..5532b2505161c 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c
[ ... ]
> @@ -2399,7 +2402,7 @@ int mlx5_ldev_add_mdev(struct mlx5_lag *ldev,
> fn->group_id = group_id;
> dev->priv.lag = ldev;
>
> - if (group_id)
> + if (group_id || ldev->virt_lag)
> return 0;
>
> xa_set_mark(&ldev->fns, idx, MLX5_LAG_XA_MARK_PORT);
[Severity: Medium]
When a virt_lag device is added in mlx5_lag_add_mdev(), it registers the lag
debugfs entries via mlx5_ldev_add_debugfs(), including the members file backed
by members_show().
Since mlx5_ldev_add_mdev() returns early when ldev->virt_lag is set before
marking the xarray entry with MLX5_LAG_XA_MARK_PORT, no member in ldev->fns
has the port mark. However, members_show() iterates with mlx5_ldev_for_each(),
which uses MLX5_LAG_FILTER_PORTS:
drivers/net/ethernet/mellanox/mlx5/core/lag/debugfs.c:members_show() {
ldev = mlx5_lag_dev(dev);
mutex_lock(&ldev->lock);
mlx5_ldev_for_each(i, 0, ldev)
seq_printf(file, "%s\n",
dev_name(mlx5_lag_fn(ldev, i)->dev->device));
mutex_unlock(&ldev->lock);
}
Won't reading the lag/members debugfs file on a virt_lag device always
produce empty output?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261103171009.563034-1-tariqt@nvidia.com?part=15
prev parent reply other threads:[~2026-11-04 17:13 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-03 17:09 [PATCH net-next 00/15] net/mlx5: LAG over VFs/SFs (virtual LAG) Tariq Toukan
2026-11-03 17:09 ` [PATCH net-next 01/15] net/mlx5: Distinguish VFs/SFs in the SW system image GUID for LAG grouping Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-09 17:22 ` Shay Drori
2026-11-03 17:09 ` [PATCH net-next 02/15] net/mlx5: LAG, select the MPESW master from the live member snapshot Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-03 17:09 ` [PATCH net-next 03/15] net/mlx5: LAG, skip phys LAG prerequisites for a virt LAG Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-03 17:09 ` [PATCH net-next 04/15] net/mlx5: LAG, treat virt LAG as a software managed LAG Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-03 17:09 ` [PATCH net-next 05/15] net/mlx5: LAG, decouple iteration end-of-walk from MLX5_MAX_PORTS Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-09 18:21 ` Shay Drori
2026-11-10 11:00 ` Paolo Abeni
2026-11-10 14:10 ` Shay Drory
2026-11-03 17:10 ` [PATCH net-next 06/15] net/mlx5: LAG, rename PF naming to fn Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-03 17:10 ` [PATCH net-next 07/15] net/mlx5: LAG, resolve affinity indices only in queue-affinity mode Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-03 17:10 ` [PATCH net-next 08/15] net/mlx5: LAG: replace fixed MLX5_MAX_PORTS arrays with dynamic allocation Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-09 18:26 ` Shay Drori
2026-11-03 17:10 ` [PATCH net-next 09/15] net/mlx5: LAG, drop MLX5_MAX_PORTS scratch array from device rescan Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-03 17:10 ` [PATCH net-next 10/15] net/mlx5: LAG, do not add a device to an already-active LAG Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-09 18:31 ` Shay Drori
2026-11-03 17:10 ` [PATCH net-next 11/15] net/mlx5: E-switch, add match-metadata allocator for nested VF/SF eswitches Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-10 9:31 ` Shay Drory
2026-11-03 17:10 ` [PATCH net-next 12/15] net/mlx5: E-switch, match master egress rule by vport metadata Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-10 9:36 ` Shay Drory
2026-11-03 17:10 ` [PATCH net-next 13/15] net/mlx5: E-switch, drop master egress rule under a SW vport LAG Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-03 17:10 ` [PATCH net-next 14/15] net/mlx5e: Register eswitch-manager VF/SF self-port with switch-id Tariq Toukan
2026-11-04 17:13 ` sashiko-bot
2026-11-10 9:54 ` Shay Drory
2026-11-03 17:10 ` [PATCH net-next 15/15] net/mlx5: LAG, enable LAG over functions that do not represent a physical port Tariq Toukan
2026-11-04 17:13 ` sashiko-bot [this message]
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=sashiko-outbox-197742@kernel.org \
--to=sashiko-bot@kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
--cc=tariqt@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.