Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp2447268yba; Mon, 15 Apr 2019 11:50:00 -0700 (PDT) X-Google-Smtp-Source: APXvYqx0g/Dp2PMG9WNIM35320dJhrY/ZqVV9S/JUtzDidlqQMZuhReKKpYDHAVtcZkTxX+Ydzix X-Received: by 2002:a63:4b21:: with SMTP id y33mr72751346pga.37.1555354200139; Mon, 15 Apr 2019 11:50:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1555354200; cv=none; d=google.com; s=arc-20160816; b=cvLQ6jLh8jJ3Of/suRAvbTuMM1DMFl5KGBjPKxtlSu7WfzJ3mpPfdvgkihOXDRiogE vKsTuViZfFmfRROSFDdh1OmdajyiSEqpeY1i8hzzabrzYtIhuFDC9pYWwi1lOLBCaNOJ 043ZIG4sUQcatKaRS8YsnxBFSNqmqISWZ56HNH6/u3EOMUqLIbruaLEVSl0r1D3wCfgV /5W4N99ialpg0WLD5nq3VLH9Z1E0jL+P0MwCsahho6m0F20NjfSQmo8xLbtAUZzNkyNj a1UXVeWGIrV8rUeCDIpNK36dLWbtG+3g3esfAnu3rkbJfLXk8rdhczfbV6J6jVzCjZed ktgA== 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=QeanEKeOS8x8JlDZDicz2CFpoASOVAKKFCVtpqE3AHo=; b=UKSIVdx4x6vkambSnVfi/xbUQ1oedOEjouXxO26kC1xWXelq3m7XnC0nCDBQjzfBA6 nJHFtamjND+xeiEnAYZR4hdbZ1GCGN8QAMOFzRiu5Liz79XWnA1/Da1XXbYeGqkKTb6E pwTF6OQ67Z+Xcv/t1BCQSfTvB6T26IWM0Hz1U8EqQ+3q+1t9bkL1/tXRX6UR2m1yyUJT 635a7By3iZHdhbBowfVsned6HJLOmg2uk7zV/h5oZTpeEGMy9myqYI/q1Fqrfctes0cG U14f/VHwQopbHKTorFHJuXZrdiyE+QHTPud8aAUfDhqprQTo1lTNBXIzAYtYq8p9g966 pc3g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=OJnFlBZh; 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 v145si45719935pgb.16.2019.04.15.11.49.44; Mon, 15 Apr 2019 11:50:00 -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=OJnFlBZh; 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 S1729068AbfDOSsI (ORCPT + 99 others); Mon, 15 Apr 2019 14:48:08 -0400 Received: from mail.kernel.org ([198.145.29.99]:51796 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728203AbfDOSsF (ORCPT ); Mon, 15 Apr 2019 14:48:05 -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 7E6F8218A1; Mon, 15 Apr 2019 18:48:04 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1555354085; bh=3+FY9wMSBEvrKrC+sfq+YzZClW67V6oytCGhxj4+xVA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=OJnFlBZhx13iX43CX6xsW7Q76kC5RvCS7T56l778J50Cw5L9yaiHLqxBtknrDg4AB rD4DVHo64zwO/tVBBytNyAHKPoBXzXDb281Iv8nYWt13QgNKxyeAHKCQ7n5TWQf/Mm 6iRDv8CMl+HGHpqHeO+0otjPWyUGOfj+Vb7ha7GE= 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.9 57/76] bnxt_en: Reset device on RX buffer errors. Date: Mon, 15 Apr 2019 20:44:21 +0200 Message-Id: <20190415183724.396279792@linuxfoundation.org> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190415183707.712011689@linuxfoundation.org> References: <20190415183707.712011689@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 8e44e96c6c8e8fb80b84a2ca11798a8554f710f2 ] If the RX completion indicates RX buffers errors, the RX ring will be disabled by firmware and no packets will be received on that ring from that point on. Recover by resetting the device. 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 | 6 ++++++ 1 file changed, 6 insertions(+) --- a/drivers/net/ethernet/broadcom/bnxt/bnxt.c +++ b/drivers/net/ethernet/broadcom/bnxt/bnxt.c @@ -1400,11 +1400,17 @@ static int bnxt_rx_pkt(struct bnxt *bp, rx_buf->data = NULL; if (rxcmp1->rx_cmp_cfa_code_errors_v2 & RX_CMP_L2_ERRORS) { + u32 rx_err = le32_to_cpu(rxcmp1->rx_cmp_cfa_code_errors_v2); + bnxt_reuse_rx_data(rxr, cons, data); if (agg_bufs) bnxt_reuse_rx_agg_bufs(bnapi, cp_cons, agg_bufs); rc = -EIO; + if (rx_err & RX_CMPL_ERRORS_BUFFER_ERROR_MASK) { + netdev_warn(bp->dev, "RX buffer error %x\n", rx_err); + bnxt_sched_reset(bp, rxr); + } goto next_rx; }