Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp3133831pxj; Mon, 17 May 2021 18:40:36 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwDDa8byHytEk0xz/dw0hR40iX+/CEd/INJXIDnL8UgLJ6WyppiSyNRq3n5X04bux2l2/X6 X-Received: by 2002:a05:6638:3827:: with SMTP id i39mr2888394jav.96.1621302036302; Mon, 17 May 2021 18:40:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1621302036; cv=none; d=google.com; s=arc-20160816; b=oMvDGiJqr3MxfpcwzQ3ROC9AZqbDgNeThIUkxI9czM2CvBp2S6RnLys6o8c3tMet93 h173TkIngvlBLAWx929MJ+dNvbralAY4vqOj3Z83o69UlYWsAD3f14iGUBHyspgHRCNo EQ5MqeSrrr7cZG0c/ViEnB67uYL70VqNwi6L+0k9mQvs6yYo7UTqY08H98sLq28hfPah Fy+5qESOcZcyHWDbC6eV89hf3bLlWZu+WRUkTKaSShTGt6r+R6ysqwPAwLOZOq3xqQJ3 KUvrkryuend7lB/86bcWUojOK47WdNffWJRJoY8Fe+DFyawSlX6sHDKGIzmOhLOMIMhs /Syg== 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 :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=krzyZvOuU6e/5T6T+VhnSs0BQX09e7KLdU2O7gNryp0=; b=JqaROWWBg9wmoZ9374YfP4ARsZCML1N2PZ9ef++MnaflmNuhMFSjrA3HtSyqQYLLHG grTSp/+zzro8NcVsOU/Y0PBlbawv8mVvHhLcz0LkcBMWLVT9R+Hbyrfu3gKazMsNljxZ xtV8NIddR2yfTIhUpXAeqaMz3qy2EgwBIbgi/zkP+g+O9ookt4MNkFUmdBziAMTAPa7N Ie+dP14SeJubQ/Rn4Swg1aOQHBgcT5gLVPu7KEA4AdSdeerl6odqzDLiNctKRGuj6f4/ JNMoZ2g9S2bkP0ShM0zUTsIme5GxPkNtifUnop7/XqPDvq7SvV4jo0i+RYbmEuej4aYO Eefw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=LVscWRMc; 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=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id s19si19146868iow.52.2021.05.17.18.40.23; Mon, 17 May 2021 18:40:36 -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=@linuxfoundation.org header.s=korg header.b=LVscWRMc; 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=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238624AbhEQOfv (ORCPT + 99 others); Mon, 17 May 2021 10:35:51 -0400 Received: from mail.kernel.org ([198.145.29.99]:43164 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240155AbhEQObk (ORCPT ); Mon, 17 May 2021 10:31:40 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 2254E61879; Mon, 17 May 2021 14:15:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1621260926; bh=bx9BBY/AfT4RyPg1holEfsAsmhFrOH7twyygm48EmYU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=LVscWRMcOTLyRJHFlcA3JMW13uAbdp0gvOl2vPtaqjwxnYK5OqyWpa63slW6IjzhI /nSvGsvCBKtQV1oVhgwiNduZGlSrF9Zk7TrthWexQEz4MyvL1Fm7XJFKbtEt6eXAP+ 5BwBdUs8Jpd9nvp3FNXqLPYO5X82mAUp6wetrmYw= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Amer Abdalamer , Nikolay Aleksandrov , "David S. Miller" , Sasha Levin Subject: [PATCH 5.11 036/329] net: bridge: when suppression is enabled exclude RARP packets Date: Mon, 17 May 2021 15:59:07 +0200 Message-Id: <20210517140303.266200239@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210517140302.043055203@linuxfoundation.org> References: <20210517140302.043055203@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Nikolay Aleksandrov [ Upstream commit 0353b4a96b7a9f60fe20d1b3ebd4931a4085f91c ] Recently we had an interop issue where RARP packets got suppressed with bridge neigh suppression enabled, but the check in the code was meant to suppress GARP. Exclude RARP packets from it which would allow some VMWare setups to work, to quote the report: "Those RARP packets usually get generated by vMware to notify physical switches when vMotion occurs. vMware may use random sip/tip or just use sip=tip=0. So the RARP packet sometimes get properly flooded by the vtep and other times get dropped by the logic" Reported-by: Amer Abdalamer Signed-off-by: Nikolay Aleksandrov Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- net/bridge/br_arp_nd_proxy.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/net/bridge/br_arp_nd_proxy.c b/net/bridge/br_arp_nd_proxy.c index dfec65eca8a6..3db1def4437b 100644 --- a/net/bridge/br_arp_nd_proxy.c +++ b/net/bridge/br_arp_nd_proxy.c @@ -160,7 +160,9 @@ void br_do_proxy_suppress_arp(struct sk_buff *skb, struct net_bridge *br, if (br_opt_get(br, BROPT_NEIGH_SUPPRESS_ENABLED)) { if (p && (p->flags & BR_NEIGH_SUPPRESS)) return; - if (ipv4_is_zeronet(sip) || sip == tip) { + if (parp->ar_op != htons(ARPOP_RREQUEST) && + parp->ar_op != htons(ARPOP_RREPLY) && + (ipv4_is_zeronet(sip) || sip == tip)) { /* prevent flooding to neigh suppress ports */ BR_INPUT_SKB_CB(skb)->proxyarp_replied = 1; return; -- 2.30.2