Netdev List
 help / color / mirror / Atom feed
From: Bernardo Soares <bsoares.it@gmail.com>
To: Mark Bloch <mbloch@nvidia.com>
Cc: Daniel Borkmann <daniel@iogearbox.net>,
	netdev@vger.kernel.org, saeedm@nvidia.com,
	Vlad Buslov <vladbu@nvidia.com>,
	Bernardo Soares <bersoare@isovalent.com>
Subject: [PATCH net v2 0/3] net/mlx5: Bridge, fix remaining switchdev ownership gaps on merged eswitch
Date: Mon, 14 Sep 2026 09:54:27 +0100	[thread overview]
Message-ID: <20260914085430.18694-1-bersoare@isovalent.com> (raw)
In-Reply-To: <dd3247a9-14d5-4866-a20e-b31d414ec1a1@nvidia.com>

v2 of "net/mlx5: Bridge, don't fail switchdev events of sibling
eswitch ports" (5f324c5d1b12), addressing the two follow-up issues
raised in review plus one additional issue found while auditing the
same code for the same bug class:

 - Patch 1 is the original fix, unchanged.
 - Patch 2 addresses the reviewer's comment that
   mlx5_esw_bridge_lower_rep_vport_num_vhca_id_get() picks the first
   structurally-eligible rep found while walking a LAG bond's lower
   devices, without verifying that rep is actually tracked by the
   calling instance's br_offloads. On a merged-eswitch HCA with a
   bond spanning reps of more than one eswitch instance, this could
   cause a bridge attribute change (ageing time, vlan filtering/
   protocol, mcast) to silently no-op on the correct instance.
 - Patch 3 addresses the reviewer's comment asking whether the peer
   unlink path also needed changes, plus a related idempotency gap
   found in follow-up: mlx5_esw_bridge_vport_peer_unlink() lacked the
   merged_eswitch capability guard that peer_link() already has, and
   mlx5_esw_bridge_vport_unlink() itself returned -EINVAL rather than
   treating an already-absent/untracked port as a no-op, which is
   reachable on a replayed or duplicate NETDEV_CHANGEUPPER unlink.

Tested Patch 1 on a ConnectX-7 NIC (MT2910) on my single NIC system.
Patches 2 and 3 require a multiple eswitch instance setup, so I wasn't
able to exercise their code paths.

Bernardo Soares (3):
  net/mlx5: Bridge, don't fail switchdev events of sibling eswitch ports
  net/mlx5: LAG, check if vport exists on br_offloads
  net/mlx5: Bridge, don't fail unlink of untracked/unsupported peer
    ports

 .../mellanox/mlx5/core/en/rep/bridge.c        | 45 +++++++++++++++----
 .../ethernet/mellanox/mlx5/core/esw/bridge.c  | 15 +++++--
 .../ethernet/mellanox/mlx5/core/esw/bridge.h  |  2 +
 3 files changed, 49 insertions(+), 13 deletions(-)

-- 
2.50.1


  reply	other threads:[~2026-09-14  8:54 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-08 16:19 [PATCH net] net/mlx5: Bridge, don't fail switchdev events of sibling eswitch ports Daniel Borkmann
2026-09-10 12:47 ` Mark Bloch
2026-09-14  8:54   ` Bernardo Soares [this message]
2026-09-14  8:54     ` [PATCH net v2 1/3] " Bernardo Soares
2026-09-17  2:56       ` netdev-bot+sashiko
2026-09-14  8:54     ` [PATCH net v2 2/3] net/mlx5: LAG, check if vport exists on br_offloads Bernardo Soares
2026-09-15 19:52       ` Mark Bloch
2026-09-17  2:56       ` netdev-bot+sashiko
2026-09-14  8:54     ` [PATCH net v2 3/3] net/mlx5: Bridge, don't fail unlink of untracked/unsupported peer ports Bernardo Soares
2026-09-15 19:51       ` Mark Bloch
2026-09-17  2:56       ` netdev-bot+sashiko

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=20260914085430.18694-1-bersoare@isovalent.com \
    --to=bsoares.it@gmail.com \
    --cc=bersoare@isovalent.com \
    --cc=daniel@iogearbox.net \
    --cc=mbloch@nvidia.com \
    --cc=netdev@vger.kernel.org \
    --cc=saeedm@nvidia.com \
    --cc=vladbu@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