Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp397610yba; Sat, 4 May 2019 04:50:38 -0700 (PDT) X-Google-Smtp-Source: APXvYqwxwuTazRVSqh+5miaenAnYLxVtaxW90wKDsvtAGZhP8EYicc9TK9QGbXSnHeyYGslytEuE X-Received: by 2002:a63:3dc8:: with SMTP id k191mr18029489pga.286.1556970638078; Sat, 04 May 2019 04:50:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1556970638; cv=none; d=google.com; s=arc-20160816; b=zYypTZzWKzUzmxJnNO9g191ezO1L68rLCQ6XC/Y4AFw0+OtKOFxqr/Jaw3uAS9UQLH o6ilOPVi7EgpMqYW+f/MbSsWsDdCnjccFmQaN4B7qiXXYUWoxeMsuX0ZexbSHu3AgqCv 56oOoTpPmpUsh64XbPgDCIMjTBhsb07TOQno3aoAYk6/HrW+FgnlGrhurOhkAeFRM6i9 CoQHk3bUDifJ5uGreVvxfZnS5rLFtm2aZuWxv40juoQ2gTDT2wqj5f/PrlBeF8wk6lxz +r0u1eLUm9LMUrstrFFXSJlJyxWmrat9nunSMUwW4Rsm1pHBKSG8nTwm56HyH7ObDbYs fIxA== 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=MvkNoEJ6NrOcM9I+JlKKchcFd5bgE5yGcB1gbZdPN+M=; b=yeOOTWWOFQYgXkaNQKx0lISqQjxtyENe7xIfoA+MBsbdF+XhTuUJK+53oM8nHVOiOE RIBZPje5guuuonBrg7mrhZZPIEEvNzVTGUy+6Dk0wqVGltbxNPU7qR7rayJn+bAfblbk y+Rwl9w3Na9XzMXHc3C45CeoRpYDpUhsd1uRBSPLRD3u9OvZ7O3Ww4NK0yt7ZchOD/HF 94Ib78dE3RO2kLTT+KxQg02S5ocmlpDJkXv+J3x0YGqkfTets77JPSRMoys72zfvXaKK 9PJ5JXC81MygPBXShNpYBMdDAoXDa763trJU0Wa9Km/v8gGQnTn/YRCsUb4hT/SUmqzV orJg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=Di2M8paw; 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 e14si6938705pgm.340.2019.05.04.04.50.22; Sat, 04 May 2019 04:50:38 -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=Di2M8paw; 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 S1728026AbfEDKaO (ORCPT + 99 others); Sat, 4 May 2019 06:30:14 -0400 Received: from mail.kernel.org ([198.145.29.99]:35546 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727572AbfEDK0H (ORCPT ); Sat, 4 May 2019 06:26:07 -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 3D7942084A; Sat, 4 May 2019 10:26:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1556965566; bh=Z8xqNLh9/WZy3aAFCXOTpI42dY2niIdX7u0VUpMRU6A=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Di2M8pawH2LkpQURK3r/CZ268I/4/1xBLA9OXphn/U5yMmn25yjRH51pxmaYdYoUz rE484dPgTEKy+HQTGJo+FrHP9orL1aBRG4GYkCMVKXPT5I+1DORzDv+4yy7ptkymNQ GH6yvgHvH/RaXVIjr7C+LcvEX3at9rY5fOP5+WHY= 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 5.0 20/32] bnxt_en: Improve multicast address setup logic. Date: Sat, 4 May 2019 12:25:05 +0200 Message-Id: <20190504102453.129887277@linuxfoundation.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190504102452.523724210@linuxfoundation.org> References: <20190504102452.523724210@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 @@ -8889,8 +8889,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;