From patchwork Tue Oct 26 05:14:30 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kalesh A P X-Patchwork-Id: 102835 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 F40B9A0C47; Tue, 26 Oct 2021 06:54:36 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 77DFD40A4B; Tue, 26 Oct 2021 06:54:36 +0200 (CEST) Received: from relay.smtp-ext.broadcom.com (relay.smtp-ext.broadcom.com [192.19.166.231]) by mails.dpdk.org (Postfix) with ESMTP id 7CDEA4003E for ; Tue, 26 Oct 2021 06:54:34 +0200 (CEST) Received: from dhcp-10-123-153-22.dhcp.broadcom.net (bgccx-dev-host-lnx2.bec.broadcom.net [10.123.153.22]) by relay.smtp-ext.broadcom.com (Postfix) with ESMTP id A0A437DBA; Mon, 25 Oct 2021 21:54:32 -0700 (PDT) DKIM-Filter: OpenDKIM Filter v2.11.0 relay.smtp-ext.broadcom.com A0A437DBA DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=broadcom.com; s=dkimrelay; t=1635224073; bh=S6AZbptaSpgdXrfhhwyPjH4GfvFnOvaBdf5DQQm1sSI=; h=From:To:Cc:Subject:Date:From; b=paQV9FoGXZH7OHMNBgUHqwhue/sDghxnZqt+TixSz9eBohZX6eZZpqN9ZtgFkM5Qc OhLGe/oYAXKBQ+WCzI2iLSvIzTe1DY2z5qadKAWmM4mlWNhnDySWds4yHcqfDZ3v9w KH3HUnjSC2of5gBL6689zyiurfW15hQqLr41Hgk4= From: Kalesh A P To: dev@dpdk.org Cc: ferruh.yigit@intel.com, ajit.khaparde@broadcom.com Date: Tue, 26 Oct 2021 10:44:30 +0530 Message-Id: <20211026051430.1389-1-kalesh-anakkur.purayil@broadcom.com> X-Mailer: git-send-email 2.10.1 Subject: [dpdk-dev] [PATCH] net/bnxt: fix RSS behavior 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" From: Kalesh AP Move the Rx queue state update before bnxt_setup_one_vnic() is called. For Thor, rxq->rx_started and eth_dev->data->rx_queue_state[] needs to be set for all queues before bnxt_hwrm_vnic_cfg() or bnxt_vnic_rss_configure() are called. Fixes: 0105ea1296c9 ("net/bnxt: support runtime queue setup") Cc: stable@dpdk.org Signed-off-by: Lance Richardson Signed-off-by: Kalesh AP Acked-by: Ajit Khaparde Acked-by: Somnath Kotur --- drivers/net/bnxt/bnxt_ethdev.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c index 5a34bb9..668e3aa 100644 --- a/drivers/net/bnxt/bnxt_ethdev.c +++ b/drivers/net/bnxt/bnxt_ethdev.c @@ -790,6 +790,16 @@ static int bnxt_start_nic(struct bnxt *bp) goto err_out; } + for (j = 0; j < bp->rx_nr_rings; j++) { + struct bnxt_rx_queue *rxq = bp->rx_queues[j]; + + if (!rxq->rx_deferred_start) { + bp->eth_dev->data->rx_queue_state[j] = + RTE_ETH_QUEUE_STATE_STARTED; + rxq->rx_started = true; + } + } + /* default vnic 0 */ rc = bnxt_setup_one_vnic(bp, 0); if (rc) @@ -813,16 +823,6 @@ static int bnxt_start_nic(struct bnxt *bp) } } - for (j = 0; j < bp->rx_nr_rings; j++) { - struct bnxt_rx_queue *rxq = bp->rx_queues[j]; - - if (!rxq->rx_deferred_start) { - bp->eth_dev->data->rx_queue_state[j] = - RTE_ETH_QUEUE_STATE_STARTED; - rxq->rx_started = true; - } - } - rc = bnxt_hwrm_cfa_l2_set_rx_mask(bp, &bp->vnic_info[0], 0, NULL); if (rc) { PMD_DRV_LOG(ERR,