From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id 733185F2F for ; Fri, 14 Dec 2018 18:52:56 +0100 (CET) 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 mx1.redhat.com (Postfix) with ESMTPS id B3AAA89AF3; Fri, 14 Dec 2018 17:52:55 +0000 (UTC) Received: from ktraynor.remote.csb (ovpn-116-106.ams2.redhat.com [10.36.116.106]) by smtp.corp.redhat.com (Postfix) with ESMTP id C1FEE60BF7; Fri, 14 Dec 2018 17:52:54 +0000 (UTC) From: Kevin Traynor To: Rahul Lakkireddy Cc: dpdk stable Date: Fri, 14 Dec 2018 17:51:58 +0000 Message-Id: <20181214175203.24908-14-ktraynor@redhat.com> In-Reply-To: <20181214175203.24908-1-ktraynor@redhat.com> References: <20181214175203.24908-1-ktraynor@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.26]); Fri, 14 Dec 2018 17:52:55 +0000 (UTC) Subject: [dpdk-stable] patch 'net/cxgbe: fix control queue mbuf pool naming convention' has been queued to stable release 18.08.1 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: , X-List-Received-Date: Fri, 14 Dec 2018 17:52:56 -0000 Hi, FYI, your patch has been queued to stable release 18.08.1 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 12/18/18. 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. If the code is different (ie: not only metadata diffs), due for example to a change in context or macro names, please double check it. Thanks. Kevin Traynor --- >>From c81824fb2b357743d53a7ea63c1e6c3ffa97cdfa Mon Sep 17 00:00:00 2001 From: Rahul Lakkireddy Date: Thu, 6 Dec 2018 15:43:20 +0530 Subject: [PATCH] net/cxgbe: fix control queue mbuf pool naming convention [ upstream commit 46df488b270a81a9353cac9374b8c338fcf7dfeb ] When multiple Chelsio adapters are present, the current naming convention of using underlying physical port number of the adapter creates conflicts when allocating control queue mbuf pool for multiple adapters and hence results in allocation failure. Fix by using port_id from rte_eth_dev_data, instead of physical port number. Fixes: 3a3aaabc7c77 ("net/cxgbe: add control queue to communicate filter requests") Signed-off-by: Rahul Lakkireddy --- drivers/net/cxgbe/cxgbe_main.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/drivers/net/cxgbe/cxgbe_main.c b/drivers/net/cxgbe/cxgbe_main.c index d8705163c..4cef8d04a 100644 --- a/drivers/net/cxgbe/cxgbe_main.c +++ b/drivers/net/cxgbe/cxgbe_main.c @@ -117,4 +117,5 @@ int setup_sge_ctrl_txq(struct adapter *adapter) for_each_port(adapter, i) { + struct port_info *pi = adap2pinfo(adapter, i); char name[RTE_ETH_NAME_MAX_LEN]; struct sge_ctrl_txq *q = &s->ctrlq[i]; @@ -130,5 +131,7 @@ int setup_sge_ctrl_txq(struct adapter *adapter) goto out; } - snprintf(name, sizeof(name), "cxgbe_ctrl_pool_%d", i); + snprintf(name, sizeof(name), "%s_ctrl_pool_%d", + pi->eth_dev->device->driver->name, + pi->eth_dev->data->port_id); q->mb_pool = rte_pktmbuf_pool_create(name, s->ctrlq[i].q.size, RTE_CACHE_LINE_SIZE, @@ -137,7 +140,8 @@ int setup_sge_ctrl_txq(struct adapter *adapter) SOCKET_ID_ANY); if (!q->mb_pool) { - dev_err(adapter, "Can't create ctrl pool for port: %d", - i); - err = -ENOMEM; + err = -rte_errno; + dev_err(adapter, + "Can't create ctrl pool for port %d. Err: %d\n", + pi->eth_dev->data->port_id, err); goto out; } -- 2.19.0 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2018-12-14 17:49:48.116843116 +0000 +++ 0014-net-cxgbe-fix-control-queue-mbuf-pool-naming-convent.patch 2018-12-14 17:49:47.000000000 +0000 @@ -1,8 +1,10 @@ -From 46df488b270a81a9353cac9374b8c338fcf7dfeb Mon Sep 17 00:00:00 2001 +From c81824fb2b357743d53a7ea63c1e6c3ffa97cdfa Mon Sep 17 00:00:00 2001 From: Rahul Lakkireddy Date: Thu, 6 Dec 2018 15:43:20 +0530 Subject: [PATCH] net/cxgbe: fix control queue mbuf pool naming convention +[ upstream commit 46df488b270a81a9353cac9374b8c338fcf7dfeb ] + When multiple Chelsio adapters are present, the current naming convention of using underlying physical port number of the adapter creates conflicts when allocating control queue mbuf pool for @@ -10,7 +12,6 @@ using port_id from rte_eth_dev_data, instead of physical port number. Fixes: 3a3aaabc7c77 ("net/cxgbe: add control queue to communicate filter requests") -Cc: stable@dpdk.org Signed-off-by: Rahul Lakkireddy --- @@ -18,16 +19,16 @@ 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/drivers/net/cxgbe/cxgbe_main.c b/drivers/net/cxgbe/cxgbe_main.c -index ec080e5d3..0368db509 100644 +index d8705163c..4cef8d04a 100644 --- a/drivers/net/cxgbe/cxgbe_main.c +++ b/drivers/net/cxgbe/cxgbe_main.c -@@ -123,4 +123,5 @@ int setup_sge_ctrl_txq(struct adapter *adapter) +@@ -117,4 +117,5 @@ int setup_sge_ctrl_txq(struct adapter *adapter) for_each_port(adapter, i) { + struct port_info *pi = adap2pinfo(adapter, i); char name[RTE_ETH_NAME_MAX_LEN]; struct sge_ctrl_txq *q = &s->ctrlq[i]; -@@ -136,5 +137,7 @@ int setup_sge_ctrl_txq(struct adapter *adapter) +@@ -130,5 +131,7 @@ int setup_sge_ctrl_txq(struct adapter *adapter) goto out; } - snprintf(name, sizeof(name), "cxgbe_ctrl_pool_%d", i); @@ -36,7 +37,7 @@ + pi->eth_dev->data->port_id); q->mb_pool = rte_pktmbuf_pool_create(name, s->ctrlq[i].q.size, RTE_CACHE_LINE_SIZE, -@@ -143,7 +146,8 @@ int setup_sge_ctrl_txq(struct adapter *adapter) +@@ -137,7 +140,8 @@ int setup_sge_ctrl_txq(struct adapter *adapter) SOCKET_ID_ANY); if (!q->mb_pool) { - dev_err(adapter, "Can't create ctrl pool for port: %d",