Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp338027yba; Sat, 4 May 2019 03:31:44 -0700 (PDT) X-Google-Smtp-Source: APXvYqxEktxWH450ozXZH1Yld5HVfKRisavcpLRF5JaznK/3Ftpb3IP0htwsk2OW/wZMpbip4ML4 X-Received: by 2002:a17:902:8306:: with SMTP id bd6mr17753635plb.134.1556965904839; Sat, 04 May 2019 03:31:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1556965904; cv=none; d=google.com; s=arc-20160816; b=fTOe8u6OjX2v5Wli6cJLFSOqYI26QjCf1Ll7GTtRXTujNjyh4ceacMiYEhOtjalQD+ HiVyFctUtaTR6oQO0GY0owuLBfqPTSLAJz6DoHQ6+EIKTO0/WXIUmUj41e/6M3D/hgfh 77F2scFEwwz3uB+WtlNbGE0HrTev5EQW6y63mS74rroT82Pw/w2sdyGlqbOBUBB5cpSX I7KJeieY+NhjS82Ak0mHrv3+2M7YuX/d2cZZg7D9NXsmwpNyRKkawop4eDagQE/v/jCw 8Z8Ld/oLWFkaohPEMo2wnSwKvPktpn4UizDKo/dFZ96oYMeHmIEtHPlfmqLTmJWYe4Ey SQWg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=+LHdy5Lbn60yLDR3nzbQESufUtj253BD621/YVOECvU=; b=QQC9pehQ2Tpovl13FoUuFFbQU2XNmXBMD6M3sqjBH7CroBndnN9BGM4Dl1sNTO8zn0 Wg9IqkhDSldvhBNu3kjX+LUdfKqw2Bet8JwMLTHiFDr6srNrGgVys8Efyej0/QIbWylh U8khRe6dH4xShb8nU4FG0FNdXVlMzbi6zlT/5x/CROOJWjuUf0MSzWqE95VKG3oBMDJ4 An4Nmp4bynlbeUoOGxwe+Ypx5KEPrJ3VXKek2bkCtC+io/HvdZiGI6YRe1ljyQ0Mij6q bkE/w5Kzx3tGyPbH7AjaNmyuXKw1XGaqwEEzGlmHAOui2kP0kHhMen+kivghpb0cGONU DnVw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=koVDlpSl; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id n13si6286755pgq.400.2019.05.04.03.31.30; Sat, 04 May 2019 03:31:44 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=koVDlpSl; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727398AbfEDK1V (ORCPT + 99 others); Sat, 4 May 2019 06:27:21 -0400 Received: from mail.kernel.org ([198.145.29.99]:37352 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728101AbfEDK1S (ORCPT ); Sat, 4 May 2019 06:27:18 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 2785C206BB; Sat, 4 May 2019 10:27:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1556965637; bh=5lUeQBG0ZmEvdz4I8R0kP1lrUXmYLTdnfiS59FfdrtY=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=koVDlpSlXE1lfOoxz5X7OXlCgya1AVJNuDBk6MDQzRDUR3HN+pjnCu4h1KA6syc94 1DN7T/wlDCrXhz3GXWxnRaXPTtinbI4hqHY0t3M4Wj9jZkoP6Ll70fSItbZBJSlCcq ZIT+uIFaaMuQ/O+HSKoPjA2oswgsY2/t4i80gBqE= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Michael Chan , "David S. Miller" Subject: [PATCH 4.19 15/23] bnxt_en: Improve multicast address setup logic. Date: Sat, 4 May 2019 12:25:17 +0200 Message-Id: <20190504102452.031344554@linuxfoundation.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190504102451.512405835@linuxfoundation.org> References: <20190504102451.512405835@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Michael Chan [ Upstream commit b4e30e8e7ea1d1e35ffd64ca46f7d9a7f227b4bf ] The driver builds a list of multicast addresses and sends it to the firmware when the driver's ndo_set_rx_mode() is called. In rare cases, the firmware can fail this call if internal resources to add multicast addresses are exhausted. In that case, we should try the call again by setting the ALL_MCAST flag which is more guaranteed to succeed. Fixes: c0c050c58d84 ("bnxt_en: New Broadcom ethernet driver.") Signed-off-by: Michael Chan Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- drivers/net/ethernet/broadcom/bnxt/bnxt.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) --- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c @@ -7441,8 +7441,15 @@ static int bnxt_cfg_rx_mode(struct bnxt skip_uc: rc = bnxt_hwrm_cfa_l2_set_rx_mask(bp, 0); + if (rc && vnic->mc_list_count) { + netdev_info(bp->dev, "Failed setting MC filters rc: %d, turning on ALL_MCAST mode\n", + rc); + vnic->rx_mask |= CFA_L2_SET_RX_MASK_REQ_MASK_ALL_MCAST; + vnic->mc_list_count = 0; + rc = bnxt_hwrm_cfa_l2_set_rx_mask(bp, 0); + } if (rc) - netdev_err(bp->dev, "HWRM cfa l2 rx mask failure rc: %x\n", + netdev_err(bp->dev, "HWRM cfa l2 rx mask failure rc: %d\n", rc); return rc;