From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id DC280A034F for ; Tue, 1 Mar 2022 11:45:56 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id D6FEC407FF; Tue, 1 Mar 2022 11:45:56 +0100 (CET) Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by mails.dpdk.org (Postfix) with ESMTP id 2647A426DD for ; Tue, 1 Mar 2022 11:45:55 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1646131554; 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=AMBuww++/P1AqAzTpU0KdGMfoZ7vKzQxaGWBxOS1MLs=; b=f3Ssr4lzdxYNQNG6WW6ao5S2cEEqDCm5C2y+7kqwjMO0Nv5Z09cZdxUO2OtPkATv5lPPVA M0cHi0zLXunv+XyTcabnfNZeNjOFZ8DOCnsixI/4hpXAeyxLjGau14vlIAnM01JhqqJgdc JcSqxUv9a2OO32ZEE+S0t+3MT5SfWLg= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-438-VqzbeINkMTOJeFOMciV6ww-1; Tue, 01 Mar 2022 05:45:51 -0500 X-MC-Unique: VqzbeINkMTOJeFOMciV6ww-1 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 89B08100C610; Tue, 1 Mar 2022 10:45:50 +0000 (UTC) Received: from rh.Home (unknown [10.39.194.142]) by smtp.corp.redhat.com (Postfix) with ESMTP id 8103E6FB02; Tue, 1 Mar 2022 10:45:49 +0000 (UTC) From: Kevin Traynor To: Michael Baum Cc: Viacheslav Ovsiienko , dpdk stable Subject: patch 'net/mlx5: fix entry in shared Rx queues list' has been queued to stable release 21.11.1 Date: Tue, 1 Mar 2022 10:42:39 +0000 Message-Id: <20220301104300.334382-83-ktraynor@redhat.com> In-Reply-To: <20220301104300.334382-1-ktraynor@redhat.com> References: <20220301104300.334382-1-ktraynor@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.14 Authentication-Results: relay.mimecast.com; auth=pass smtp.auth=CUSA124A263 smtp.mailfrom=ktraynor@redhat.com X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="US-ASCII" X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.29 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 Hi, FYI, your patch has been queued to stable release 21.11.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 03/06/22. 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 This queued commit can be viewed at: https://github.com/kevintraynor/dpdk-stable/commit/cd74ed097520c4b534390b96decabdf3f7772059 Thanks. Kevin --- >From cd74ed097520c4b534390b96decabdf3f7772059 Mon Sep 17 00:00:00 2001 From: Michael Baum Date: Mon, 14 Feb 2022 11:00:09 +0200 Subject: [PATCH] net/mlx5: fix entry in shared Rx queues list [ upstream commit 0ad12a8090d4f34b0308cdbb4cd34750f841d7f9 ] The mlx5_rxq_new function creates control structure and if it from shared group, it is inserted into the shared RXQs list. After that, there are some validations which in case they fail, RxQ control object is released. In these cases, invalid pointer to the object still in the list, and access it may cause a crash. Move the list insertion to the end of the function where the RxQ control object is surely valid. Fixes: 09c2555303be ("net/mlx5: support shared Rx queue") Signed-off-by: Michael Baum Acked-by: Viacheslav Ovsiienko --- drivers/net/mlx5/mlx5_rxq.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/net/mlx5/mlx5_rxq.c b/drivers/net/mlx5/mlx5_rxq.c index 580d7ae868..fe72cf49d3 100644 --- a/drivers/net/mlx5/mlx5_rxq.c +++ b/drivers/net/mlx5/mlx5_rxq.c @@ -1720,10 +1720,4 @@ mlx5_rxq_new(struct rte_eth_dev *dev, struct mlx5_rxq_priv *rxq, } LIST_INIT(&tmpl->owners); - if (conf->share_group > 0) { - tmpl->rxq.shared = 1; - tmpl->share_group = conf->share_group; - tmpl->share_qid = conf->share_qid; - LIST_INSERT_HEAD(&priv->sh->shared_rxqs, tmpl, share_entry); - } rxq->ctrl = tmpl; LIST_INSERT_HEAD(&tmpl->owners, rxq, owner_entry); @@ -1934,4 +1928,10 @@ mlx5_rxq_new(struct rte_eth_dev *dev, struct mlx5_rxq_priv *rxq, (struct mlx5_mprq_buf *(*)[desc])(*tmpl->rxq.elts + desc_n); tmpl->rxq.idx = idx; + if (conf->share_group > 0) { + tmpl->rxq.shared = 1; + tmpl->share_group = conf->share_group; + tmpl->share_qid = conf->share_qid; + LIST_INSERT_HEAD(&priv->sh->shared_rxqs, tmpl, share_entry); + } LIST_INSERT_HEAD(&priv->rxqsctrl, tmpl, next); return tmpl; -- 2.34.1 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2022-03-01 10:41:03.716922727 +0000 +++ 0083-net-mlx5-fix-entry-in-shared-Rx-queues-list.patch 2022-03-01 10:41:01.428244123 +0000 @@ -1 +1 @@ -From 0ad12a8090d4f34b0308cdbb4cd34750f841d7f9 Mon Sep 17 00:00:00 2001 +From cd74ed097520c4b534390b96decabdf3f7772059 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 0ad12a8090d4f34b0308cdbb4cd34750f841d7f9 ] + @@ -18 +19,0 @@ -Cc: stable@dpdk.org @@ -27 +28 @@ -index 2625fa3308..d1476b4115 100644 +index 580d7ae868..fe72cf49d3 100644 @@ -30 +31 @@ -@@ -1721,10 +1721,4 @@ mlx5_rxq_new(struct rte_eth_dev *dev, struct mlx5_rxq_priv *rxq, +@@ -1720,10 +1720,4 @@ mlx5_rxq_new(struct rte_eth_dev *dev, struct mlx5_rxq_priv *rxq, @@ -41 +42 @@ -@@ -1935,4 +1929,10 @@ mlx5_rxq_new(struct rte_eth_dev *dev, struct mlx5_rxq_priv *rxq, +@@ -1934,4 +1928,10 @@ mlx5_rxq_new(struct rte_eth_dev *dev, struct mlx5_rxq_priv *rxq,