From patchwork Wed Nov 3 16:04:32 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Somnath Kotur X-Patchwork-Id: 103673 X-Patchwork-Delegate: ajit.khaparde@broadcom.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 125FCA0C47; Wed, 3 Nov 2021 17:10:41 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id EB2E24111F; Wed, 3 Nov 2021 17:10:40 +0100 (CET) Received: from relay.smtp-ext.broadcom.com (relay.smtp-ext.broadcom.com [192.19.166.228]) by mails.dpdk.org (Postfix) with ESMTP id 094FC40E5A for ; Wed, 3 Nov 2021 17:10:40 +0100 (CET) Received: from dhcp-10-123-153-55.dhcp.broadcom.net (dhcp-10-123-153-55.dhcp.broadcom.net [10.123.153.55]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by relay.smtp-ext.broadcom.com (Postfix) with ESMTPS id 27C51EA; Wed, 3 Nov 2021 09:10:37 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 relay.smtp-ext.broadcom.com 27C51EA DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=broadcom.com; s=dkimrelay; t=1635955839; bh=kRNdXC53DNNCqAdqRms8WBxyXW0FI2YyLr5HRpjurUI=; h=From:To:Cc:Subject:Date:From; b=v9eGNKiLrA41Qcb57g7OnvTcTeYUUEfN4s3SY+zlt/WKrhyDJJpFSEDyhXTKTWQzn vBqM6MADnrppUGyJF2bbynEaD9v4+6jaJiYlDYm81IH8+VicvLY/TXD6D1dKihh8H0 /NX1TbEubo6NEnhndxQitU+nQSZ3nL3EGSfEhJJM= From: Somnath Kotur To: dev@dpdk.org Cc: ferruh.yigit@intel.com, Somnath Kotur Date: Wed, 3 Nov 2021 21:34:32 +0530 Message-Id: <20211103160432.8052-1-somnath.kotur@broadcom.com> X-Mailer: git-send-email 2.28.0.450.g3a238e5 MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH] net/bnxt: fix regression in non-vector mode Rx data path on Thor X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The patch introduced by commit 657c2a7f1dd4 ("net/bnxt: create aggregation rings when needed") ended up shortening the return code path from the function thereby resulting in not executing the line of code at the end of the function that was resetting the next consumer index to 0. This would result in an application crash when error recovery or other port stop/start scenarios were invoked on Thor which is what this commit 61cd4384fabf ("net/bnxt: fix crash after port stop/start") was addressing. Fix it by moving the resetting line of code before the return path in the case when aggregration rings are not used (default case). Fixes: 657c2a7f1dd4 ("net/bnxt: create aggregation rings when needed") Signed-off-by: Somnath Kotur --- drivers/net/bnxt/bnxt_rxr.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/net/bnxt/bnxt_rxr.c b/drivers/net/bnxt/bnxt_rxr.c index 992f97388c..8bc8ddc353 100644 --- a/drivers/net/bnxt/bnxt_rxr.c +++ b/drivers/net/bnxt/bnxt_rxr.c @@ -1369,6 +1369,9 @@ int bnxt_init_one_rx_ring(struct bnxt_rx_queue *rxq) rxr->rx_buf_ring[i] = &rxq->fake_mbuf; } + /* Explicitly reset this driver internal tracker on a ring init */ + rxr->rx_next_cons = 0; + if (!bnxt_need_agg_ring(rxq->bp->eth_dev)) return 0; @@ -1407,9 +1410,6 @@ int bnxt_init_one_rx_ring(struct bnxt_rx_queue *rxq) } PMD_DRV_LOG(DEBUG, "TPA alloc Done!\n"); - /* Explicitly reset this driver internal tracker on a ring init */ - rxr->rx_next_cons = 0; - return 0; }