Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp847261pxj; Thu, 27 May 2021 13:03:45 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyqMxoLI96d6XoFIJbCEW8Gqk3Mz5kJoKh2rjYvTy2fjkGycH62zwFBqibhVwZrJCFrYkdR X-Received: by 2002:a50:9b06:: with SMTP id o6mr6139045edi.284.1622145825154; Thu, 27 May 2021 13:03:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1622145825; cv=none; d=google.com; s=arc-20160816; b=UWodwNRq/npXJsrmUcKeST3VC7J/osGxoiOEdiFIuJPk7lwx/NsFo3xZNQxReNcDSt JDdcWbUTnrdmzpts7A91Iq1uJTz7TdUJiNN9sVAJJnQuY7yVsbkGQYsVdo6lTlkKPW/t ZkabCyfwFe08/NVfQbpmnUYDay6i3K0Z6T4/1LbW9SeOt7WdsyMMHG+1bYWRZxX7c8Wj kpr4a3FdQZw9Jv08gndfQXkkql6EyXt9FYXYPaEWyE1qetc4O0Dyy/wijPqDG27KI1+o hoqClhYe5vkwtQF+V3txyGyj6PJEkQ4wni1e94jlZwgRPMeU10Bk0+NYfWZl9xSnGCMh jc9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=Dz20AfCWgeLAO4NbvOpubSMj2g/ofA/Cn2n4K5BjF+s=; b=TY4ku/QwFKYefunuCz1/9ZeRKnfDaEziCnmcGC15YmaHIEBuK8c67AnckxQxG/rQX8 wR6A0dgG3xSOqdYC4OrlAWjPqREYkPsB3+uPCrcA7oj43+pAlaAl+BObtGMgJ+zd3743 ZVQzZTfFduZBpYNOgWtjMmfj3u8X9m7yn5bZwQioG1uWBBwbHb0+4KHBKa5amHKPBDBM inT2Tnng3lJREK9DiHJiRefgx9kzPZt12Hwu7xHGX/3zDEFoI+l+YuB5He7s0WadrA2o RrVs+m6LUSS8oQPi+tXs3ebLYEH8CKYydHI8Yx7DzvNJCuDYT1gkj8urWAPO7GIRVXCO MNLg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=HWOMAKsQ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id i11si2880913edr.399.2021.05.27.13.03.22; Thu, 27 May 2021 13:03:45 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=HWOMAKsQ; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235683AbhE0UCz (ORCPT + 99 others); Thu, 27 May 2021 16:02:55 -0400 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]:31357 "EHLO us-smtp-delivery-124.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235263AbhE0UCr (ORCPT ); Thu, 27 May 2021 16:02:47 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1622145673; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Dz20AfCWgeLAO4NbvOpubSMj2g/ofA/Cn2n4K5BjF+s=; b=HWOMAKsQErtu3pf+PtXsJ+FiBrv9EMuIAsKiuWt6ND92nFC/2KeS57fOffoPvXmnITha17 nRKQxiy+Coe8xWPdVjLviwCar01/qLrw9M5CJCVAddeF57e+N64HkoN46exgOvrjGTkJ9I w/b5NAGIYI+g6M2pEbSEq3pWbcEUIIw= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-254-koOhf0XPOSGMnINW40eZyQ-1; Thu, 27 May 2021 16:01:12 -0400 X-MC-Unique: koOhf0XPOSGMnINW40eZyQ-1 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 3EC98A92A3; Thu, 27 May 2021 20:01:11 +0000 (UTC) Received: from f33vm.wilsonet.com (dhcp-17-185.bos.redhat.com [10.18.17.185]) by smtp.corp.redhat.com (Postfix) with ESMTP id 063D75C5B5; Thu, 27 May 2021 20:01:09 +0000 (UTC) From: Jarod Wilson To: linux-kernel@vger.kernel.org Cc: Jarod Wilson , Jay Vosburgh , Veaceslav Falico , Andy Gospodarek , "David S. Miller" , Jakub Kicinski , Thomas Davis , netdev@vger.kernel.org Subject: [PATCH net-next v3 2/2] bonding/balance-alb: put all slaves into promisc Date: Thu, 27 May 2021 16:00:51 -0400 Message-Id: <20210527200051.1871092-3-jarod@redhat.com> In-Reply-To: <20210527200051.1871092-1-jarod@redhat.com> References: <20210527200051.1871092-1-jarod@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Unlike most other modes with a primary interface, ALB mode bonding can receive on all slaves. That includes traffic destined for a non-local MAC behind a bridge on top of the bond. In such setups, the bridge driver puts all ports (including the bond) into promiscuous mode, but we're not propagating that change down to the non-primary slaves in ALB mode. As a result, incoming traffic to those interfaces gets dropped. Since ALB can receive on all slaves, all slaves should get promiscuity changes propagated to them. Cc: Jay Vosburgh Cc: Veaceslav Falico Cc: Andy Gospodarek Cc: "David S. Miller" Cc: Jakub Kicinski Cc: Thomas Davis Cc: netdev@vger.kernel.org Signed-off-by: Jarod Wilson --- drivers/net/bonding/bond_main.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/net/bonding/bond_main.c b/drivers/net/bonding/bond_main.c index 666051f91d70..3933219ae773 100644 --- a/drivers/net/bonding/bond_main.c +++ b/drivers/net/bonding/bond_main.c @@ -647,9 +647,10 @@ static int bond_check_dev_link(struct bonding *bond, static int bond_set_promiscuity(struct bonding *bond, int inc) { struct list_head *iter; - int err = 0; + int mode, err = 0; - if (bond_uses_primary(bond)) { + mode = BOND_MODE(bond); + if (mode == BOND_MODE_ACTIVEBACKUP || mode == BOND_MODE_TLB) { struct slave *curr_active = rtnl_dereference(bond->curr_active_slave); if (curr_active) -- 2.30.2