All of lore.kernel.org
 help / color / mirror / Atom feed
From: Shay Drori <shayd@nvidia.com>
To: Anirudh Virdi <avirdi@redhat.com>, <netdev@vger.kernel.org>
Cc: <saeedm@nvidia.com>, <leon@kernel.org>, <tariqt@nvidia.com>,
	<mbloch@nvidia.com>, <andrew+netdev@lunn.ch>,
	<davem@davemloft.net>, <edumazet@google.com>, <kuba@kernel.org>,
	<pabeni@redhat.com>, <ohartoov@nvidia.com>, <maorg@nvidia.com>,
	<linux-rdma@vger.kernel.org>
Subject: Re: [PATCH net] net/mlx5: Fix slab-out-of-bounds when handling team device events
Date: Tue, 22 Sep 2026 20:50:24 +0300	[thread overview]
Message-ID: <eb64923a-afc1-422f-a0f1-e2dd034d322c@nvidia.com> (raw)
In-Reply-To: <20260922135123.46205-1-avirdi@redhat.com>



On 22/09/2026 16:51, Anirudh Virdi wrote:
> External email: Use caution opening links or attachments
> 
> 
> The mlx5_handle_changeupper_event() and mlx5_handle_changeinfodata_event()
> functions assume the upper device is a bonding device and call bonding-
> specific
> APIs like bond_slave_get_rcu() and bond_is_slave_inactive().
> 
> When a device is enslaved to a team master instead of bonding, the code
> attempts to access the team_port structure as if it were a bond slave
> structure. Since team_port is smaller than slave, this causes KASAN to
> detect an out-of-bounds memory access.
> 
> Fix this by checking explicitly for bonding devices using
> netif_is_bond_master() instead of the generic netif_is_lag_master() which
> includes both bonding and team devices. This ensures mlx5 only processes
> bonding events, not team events, preventing the invalid memory access.
> 
> Tested with Mellanox ConnectX-5 on Linux 7.2.0-rc6:
> - Bonding: PASS (no regressions)
> - Team device: PASS (no KASAN errors)
> 
> Fixes: 54493a08e21f ("net/mlx5: Lag, record inactive state of bond device")
> Signed-off-by: Anirudh Virdi <avirdi@redhat.com>

Reviewed-by: Shay Drory <shayd@nvidia.com>

> ---
>   drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c b/drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c
> index 28d16fdc3f06..022a69cdebaf 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/lag/lag.c
> @@ -1897,7 +1897,7 @@ static int mlx5_handle_changeupper_event(struct mlx5_lag *ldev,
>          int changed = 0;
>          int i, idx = -1;
> 
> -       if (!netif_is_lag_master(upper))
> +       if (!netif_is_bond_master(upper))
>                  return 0;
> 
>          if (info->linking)
> @@ -2004,7 +2004,7 @@ static int mlx5_handle_changeinfodata_event(struct mlx5_lag *ldev,
>          bool has_inactive = 0;
>          int idx;
> 
> -       if (!netif_is_lag_master(ndev))
> +       if (!netif_is_bond_master(ndev))
>                  return 0;
> 
>          rcu_read_lock();
> --
> 2.55.0
> 


  parent reply	other threads:[~2026-09-22 17:51 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-22 13:51 [PATCH net] net/mlx5: Fix slab-out-of-bounds when handling team device events Anirudh Virdi
2026-09-22 13:58 ` sashiko-bot
2026-09-22 17:50 ` Shay Drori [this message]
2026-09-22 18:37 ` Mark Bloch
2026-09-24 13:54 ` netdev-bot+sashiko
     [not found]   ` <CAJHXLyHH-RG_y04yT-SV+r3+_scac15iKrMtVfNG9Ti3wQFmrw@mail.gmail.com>
2026-09-25  6:45     ` Anirudh Virdi

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=eb64923a-afc1-422f-a0f1-e2dd034d322c@nvidia.com \
    --to=shayd@nvidia.com \
    --cc=andrew+netdev@lunn.ch \
    --cc=avirdi@redhat.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=kuba@kernel.org \
    --cc=leon@kernel.org \
    --cc=linux-rdma@vger.kernel.org \
    --cc=maorg@nvidia.com \
    --cc=mbloch@nvidia.com \
    --cc=netdev@vger.kernel.org \
    --cc=ohartoov@nvidia.com \
    --cc=pabeni@redhat.com \
    --cc=saeedm@nvidia.com \
    --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.