From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id A89E2A04A3 for ; Fri, 5 Jun 2020 20:27:35 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 968461D51A; Fri, 5 Jun 2020 20:27:35 +0200 (CEST) Received: from us-smtp-delivery-1.mimecast.com (us-smtp-1.mimecast.com [205.139.110.61]) by dpdk.org (Postfix) with ESMTP id 2AE9F1D510 for ; Fri, 5 Jun 2020 20:27:32 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1591381651; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=aOi+joUBC+PMskCmHkYWry0fXi2bMc3lIhyYsXeijZA=; b=MyQX1eKSDrS3ZzyYXzkjjPUzoSDDChTSJ5xBBC5/shYap9ZuLOF/UVFporATWZjuKAdOgh kL/bMphkOWgJEcksATsI0vvJTEYlORzVLsoK0ROYowXp8xzaAxF7PHl8bCo9C0QJzrTqY5 8NqhC4/gPvDIbZu16IAqM4tk882SnIQ= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-270-tmNs7oMuN0OYvMlCPbRaMA-1; Fri, 05 Jun 2020 14:27:28 -0400 X-MC-Unique: tmNs7oMuN0OYvMlCPbRaMA-1 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id AFD8D1005510; Fri, 5 Jun 2020 18:27:27 +0000 (UTC) Received: from rh.redhat.com (unknown [10.33.36.130]) by smtp.corp.redhat.com (Postfix) with ESMTP id CD69A60C47; Fri, 5 Jun 2020 18:27:26 +0000 (UTC) From: Kevin Traynor To: Rasesh Mody Cc: Igor Russkikh , dpdk stable Date: Fri, 5 Jun 2020 19:24:57 +0100 Message-Id: <20200605182525.22483-60-ktraynor@redhat.com> In-Reply-To: <20200605182525.22483-1-ktraynor@redhat.com> References: <20200605182525.22483-1-ktraynor@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 8bit Subject: [dpdk-stable] patch 'net/qede: fix port reconfiguration' has been queued to LTS release 18.11.9 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" Hi, FYI, your patch has been queued to LTS release 18.11.9 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 06/10/20. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasing (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/kevintraynor/dpdk-stable-queue This queued commit can be viewed at: https://github.com/kevintraynor/dpdk-stable-queue/commit/8cd93f836bec14d0df67c59ede1dd4639a7ad833 Thanks. Kevin. --- >From 8cd93f836bec14d0df67c59ede1dd4639a7ad833 Mon Sep 17 00:00:00 2001 From: Rasesh Mody Date: Thu, 14 May 2020 23:34:19 -0700 Subject: [PATCH] net/qede: fix port reconfiguration [ upstream commit 05ccc9d8a9f9338b1cb4ae515c60c60f8b7f518d ] This patch fixes deallocation of all fastpath resources unconditionally, when re-configuring the device. When re-allocating resources PMD depends on application to explicitly setup the Rx/Tx queue. Deallocation of all the resources is only required if the Rx/Tx queue configuration changes. For other scenarios like KNI MTU change we'd keep existing configuration. Fixes: 8de0c4201926 ("net/qede: fix odd number of queues usage in 100G mode") Fixes: dd28bc8c6ef4 ("net/qede: fix VF port creation sequence") Signed-off-by: Rasesh Mody Signed-off-by: Igor Russkikh --- drivers/net/qede/qede_ethdev.c | 19 +++++++++++++------ drivers/net/qede/qede_rxtx.c | 4 +++- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/drivers/net/qede/qede_ethdev.c b/drivers/net/qede/qede_ethdev.c index 340c35a1be..b4a266444b 100644 --- a/drivers/net/qede/qede_ethdev.c +++ b/drivers/net/qede/qede_ethdev.c @@ -1174,4 +1174,6 @@ static int qede_dev_configure(struct rte_eth_dev *eth_dev) struct ecore_dev *edev = QEDE_INIT_EDEV(qdev); struct rte_eth_rxmode *rxmode = ð_dev->data->dev_conf.rxmode; + uint8_t num_rxqs; + uint8_t num_txqs; int ret; @@ -1203,10 +1205,15 @@ static int qede_dev_configure(struct rte_eth_dev *eth_dev) return -ENOTSUP; - qede_dealloc_fp_resc(eth_dev); - qdev->num_tx_queues = eth_dev->data->nb_tx_queues * edev->num_hwfns; - qdev->num_rx_queues = eth_dev->data->nb_rx_queues * edev->num_hwfns; - - if (qede_alloc_fp_resc(qdev)) - return -ENOMEM; + /* Allocate/reallocate fastpath resources only for new queue config */ + num_txqs = eth_dev->data->nb_tx_queues * edev->num_hwfns; + num_rxqs = eth_dev->data->nb_rx_queues * edev->num_hwfns; + if (qdev->num_tx_queues != num_txqs || + qdev->num_rx_queues != num_rxqs) { + qede_dealloc_fp_resc(eth_dev); + qdev->num_tx_queues = num_txqs; + qdev->num_rx_queues = num_rxqs; + if (qede_alloc_fp_resc(qdev)) + return -ENOMEM; + } /* If jumbo enabled adjust MTU */ diff --git a/drivers/net/qede/qede_rxtx.c b/drivers/net/qede/qede_rxtx.c index 52ebc8b8b3..a72c9aa333 100644 --- a/drivers/net/qede/qede_rxtx.c +++ b/drivers/net/qede/qede_rxtx.c @@ -594,5 +594,5 @@ qede_alloc_mem_sb(struct qede_dev *qdev, struct ecore_sb_info *sb_info, int qede_alloc_fp_resc(struct qede_dev *qdev) { - struct ecore_dev *edev = &qdev->edev; + struct ecore_dev *edev = QEDE_INIT_EDEV(qdev); struct qede_fastpath *fp; uint32_t num_sbs; @@ -600,4 +600,6 @@ int qede_alloc_fp_resc(struct qede_dev *qdev) int i; + PMD_INIT_FUNC_TRACE(edev); + if (IS_VF(edev)) ecore_vf_get_num_sbs(ECORE_LEADING_HWFN(edev), &num_sbs); -- 2.21.3 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2020-06-05 19:20:54.096647251 +0100 +++ 0060-net-qede-fix-port-reconfiguration.patch 2020-06-05 19:20:50.885039109 +0100 @@ -1 +1 @@ -From 05ccc9d8a9f9338b1cb4ae515c60c60f8b7f518d Mon Sep 17 00:00:00 2001 +From 8cd93f836bec14d0df67c59ede1dd4639a7ad833 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 05ccc9d8a9f9338b1cb4ae515c60c60f8b7f518d ] + @@ -16 +17,0 @@ -Cc: stable@dpdk.org @@ -26 +27 @@ -index d3d916e81a..c4f8f12589 100644 +index 340c35a1be..b4a266444b 100644 @@ -29 +30 @@ -@@ -1274,4 +1274,6 @@ static int qede_dev_configure(struct rte_eth_dev *eth_dev) +@@ -1174,4 +1174,6 @@ static int qede_dev_configure(struct rte_eth_dev *eth_dev) @@ -36 +37 @@ -@@ -1306,10 +1308,15 @@ static int qede_dev_configure(struct rte_eth_dev *eth_dev) +@@ -1203,10 +1205,15 @@ static int qede_dev_configure(struct rte_eth_dev *eth_dev) @@ -59 +60 @@ -index b81788ca47..9878ba50ea 100644 +index 52ebc8b8b3..a72c9aa333 100644