From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ej1-f48.google.com (mail-ej1-f48.google.com [209.85.218.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 56BD2330D4D for ; Thu, 16 Oct 2025 12:55:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.218.48 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1760619304; cv=none; b=BHNtt4OSpy/+caSO8PPg6Wf2iLmy5gmlRqW1OLBnsKYCBm5bXq7emhUYwnKP9EJMsR8czm2AH5gpi7oY3cQ91J0Nz0wiuyg1HK1RROrn+XFNcLKqwbeGHLSBsPHyCU/FvLgK++xDwFoqgze0FIl1vp/U6KDfAXu9hs0RtmKzRJM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1760619304; c=relaxed/simple; bh=ZUUjOUmPi99YByQi2GU9o7fH4nLtDooMLe4/nsf+y+o=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=pwGNZUdhpyaJjJi/YoXKzaPpNKoZRBbrT5V2YA1/FFP0IK3QhIN3FhttUaf3XQ2zznjhCUvdMu4VgtCY1+rLJoErSv2mU1LPxIfrdrxxQ56f5fVNPxmHYPXXQEMPIFEQOt/8eiJcmZZnr3B4CcSjtmdDtfUMyQiGS+0FDZabA/Y= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=blackwall.org; spf=none smtp.mailfrom=blackwall.org; dkim=pass (2048-bit key) header.d=blackwall.org header.i=@blackwall.org header.b=W1l0wR4T; arc=none smtp.client-ip=209.85.218.48 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=blackwall.org Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=blackwall.org Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=blackwall.org header.i=@blackwall.org header.b="W1l0wR4T" Received: by mail-ej1-f48.google.com with SMTP id a640c23a62f3a-b3d5088259eso99551766b.1 for ; Thu, 16 Oct 2025 05:54:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=blackwall.org; s=google; t=1760619298; x=1761224098; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=lwkOC946NVK5Ay5tT6TcDur2LlBPpaKMS7PptjXrqlg=; b=W1l0wR4TaWGwBUbq/ab/6ckr2AdByPJ71vqOIKY5WaIGOkZ7dJLMrgWUE0eteg2YDd xPKM2NoOTyX7xQSk8k3tCcamfreRMtHLKSrNdQQOMcyXkwIroCVWB9irJAGp6jnHKIbC OXO123h3ayv05YZtJRW/Xf4ssw/1CikxVumz8ci4Mw4xTkRzbrZFi0yXRYtm53VHhiIC CsLH+OrAbcDyhJkkMS335Bnu9YfdpGXu112WhauXmPoEjay5juvpp0xGNUgReHWqJLzs yrnJlsqrzUYtzcM1yU1vA66x0YNGmtWNUDw6CbGIscErnjkdiCouil3CdEJOzlljLP/v YFsg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760619298; x=1761224098; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=lwkOC946NVK5Ay5tT6TcDur2LlBPpaKMS7PptjXrqlg=; b=nTk2joMve51JTtJC0hGbuioVw4vO8flXeeSUZc0OimOe+iYpqwz0scHXx55jg1ZrF1 ltaLpjWk4/A7fRNlZMMl7xDChLp2O1210vMOARh3U1BduQXGkDBLON/Uh7ad7wnv2Y9Q 2BKDkQn/WuWWHqlAjOKCl2tyID1NfXAvJWVdLfXnwZFuQqgGUhin/z4O7zjPzQLvqQzb kVmfkzT83CNDlygSHIPg868l9zg51LNYnmishECPb/lAoxKNf9nRosg3lWJY508+Y11C AsZRhG5BVB7h8NDCLtusK3Awcrcmh5xz/dt30HSMmTlcZwndl/feTBKoacvBCf+5VM97 yeLQ== X-Forwarded-Encrypted: i=1; AJvYcCXhDqz1M7GPQ5V/5vZvGoRyfOx7bT1rR/ARuzWihpCcQLCnrwxREhXcKTiEteDiatkQfSOIRos=@vger.kernel.org X-Gm-Message-State: AOJu0YynXwBfLVxEU0J9lKOXic98MQ+U3vrG7/3qQw5Ev7AyYieQtugH PI9ZEXNRucBb9OfTQKJ4K8BKiTNjNpyTw7W6qRnTWDGwuKGB4nN9QdV1XImQC9EDI2w= X-Gm-Gg: ASbGncuKUlDQiH8rUycTGHZfQhqsYrZcq9MfiA3Vb3r85QyNUdTMpByHmRoLFNuSwfk eNC9ez58Hb3HrVxSNdexsYuCvRTtPw8eraCBKu8MoxGdUcehMjPmW3wJbStN+y4ahUiLyBwmyBL zIoSNuNQTh3O24q9oyc15eac+e1AIbSvELtOvVr5nmEM0r+z5lD05ZmqmWAIlYP8k2VzrvCwWdj PEpw94t+fs8l07qt7kzHlO65NuoDJFW3PLjIlategtyV1U+0dB5mwuW4ScLA46adSVRu7Dp7ds8 M7agwT5C1g1sbCG9en4PbbQpgosKoHGnd5n/AUZiXhv6hRoi0MyttqIqQiTPNViPWW6D/sdRswx OVBn2M91jpIOW3KlXEnyEOcNIHnoOqwY4hgzwYkEfSRvgr6AFzAWsrfBh5dELgmcPEC5/nLTztj tWE/u8AAGUNgN5pnOfn9d4nrE3TQSM8GnDaRyWDadhIZw= X-Google-Smtp-Source: AGHT+IFVF436vNsuSyK1BdMzDZ4sJZPhS32XY4Fq1N1PXqLrCDq/cqw04QJpxvzdr76ooTNaiQ5xzg== X-Received: by 2002:a17:907:3f13:b0:b40:5752:169a with SMTP id a640c23a62f3a-b50acc1a94amr3374920566b.58.1760619298216; Thu, 16 Oct 2025 05:54:58 -0700 (PDT) Received: from [192.168.0.205] (78-154-15-142.ip.btc-net.bg. [78.154.15.142]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b5ccd1af87bsm511915766b.63.2025.10.16.05.54.57 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 16 Oct 2025 05:54:57 -0700 (PDT) Message-ID: Date: Thu, 16 Oct 2025 15:54:56 +0300 Precedence: bulk X-Mailing-List: netdev@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH net v2] net: bonding: update the slave array for broadcast mode To: Tonghao Zhang , netdev@vger.kernel.org Cc: Jay Vosburgh , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman , Jonathan Corbet , Andrew Lunn , Hangbin Liu , Jiri Slaby , stable@vger.kernel.org References: <20251016125136.16568-1-tonghao@bamaicloud.com> Content-Language: en-US From: Nikolay Aleksandrov In-Reply-To: <20251016125136.16568-1-tonghao@bamaicloud.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit On 10/16/25 15:51, Tonghao Zhang wrote: > This patch fixes ce7a381697cb ("net: bonding: add broadcast_neighbor option for 802.3ad"). > Before this commit, on the broadcast mode, all devices were traversed using the > bond_for_each_slave_rcu. This patch supports traversing devices by using all_slaves. > Therefore, we need to update the slave array when enslave or release slave. > > Fixes: ce7a381697cb ("net: bonding: add broadcast_neighbor option for 802.3ad") > Cc: Jay Vosburgh > Cc: "David S. Miller" > Cc: Eric Dumazet > Cc: Jakub Kicinski > Cc: Paolo Abeni > Cc: Simon Horman > Cc: Jonathan Corbet > Cc: Andrew Lunn > Cc: Nikolay Aleksandrov > Cc: Hangbin Liu > Cc: Jiri Slaby > Cc: > Reported-by: Jiri Slaby > Tested-by: Jiri Slaby > Link: https://lore.kernel.org/all/a97e6e1e-81bc-4a79-8352-9e4794b0d2ca@kernel.org/ > Signed-off-by: Tonghao Zhang > Reviewed-by: Hangbin Liu > --- > v2: > - fix the typo in the comments, salve -> slave > - add the target repo in the subject > --- > drivers/net/bonding/bond_main.c | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c > index 17c7542be6a5..2d6883296e32 100644 > --- a/drivers/net/bonding/bond_main.c > +++ b/drivers/net/bonding/bond_main.c > @@ -2384,7 +2384,9 @@ int bond_enslave(struct net_device *bond_dev, struct net_device *slave_dev, > unblock_netpoll_tx(); > } > > - if (bond_mode_can_use_xmit_hash(bond)) > + /* broadcast mode uses the all_slaves to loop through slaves. */ > + if (bond_mode_can_use_xmit_hash(bond) || > + BOND_MODE(bond) == BOND_MODE_BROADCAST) > bond_update_slave_arr(bond, NULL); > > if (!slave_dev->netdev_ops->ndo_bpf || > @@ -2560,7 +2562,8 @@ static int __bond_release_one(struct net_device *bond_dev, > > bond_upper_dev_unlink(bond, slave); > > - if (bond_mode_can_use_xmit_hash(bond)) > + if (bond_mode_can_use_xmit_hash(bond) || > + BOND_MODE(bond) == BOND_MODE_BROADCAST) > bond_update_slave_arr(bond, slave); > > slave_info(bond_dev, slave_dev, "Releasing %s interface\n", Reviewed-by: Nikolay Aleksandrov