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 E11D6A0093 for ; Tue, 19 May 2020 15:11:22 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id D8EDB1D703; Tue, 19 May 2020 15:11:22 +0200 (CEST) Received: from mail-wm1-f66.google.com (mail-wm1-f66.google.com [209.85.128.66]) by dpdk.org (Postfix) with ESMTP id 35A0C1D706 for ; Tue, 19 May 2020 15:11:21 +0200 (CEST) Received: by mail-wm1-f66.google.com with SMTP id f13so2994314wmc.5 for ; Tue, 19 May 2020 06:11:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=LOT/uP7gWbQZlFyK8uxlM+zqXWgeapeuI29ElTFM2sI=; b=iwGzqdk1hRTY0w5UDR9qP9hBrA80cRA+CS2AFnqoNiBEYgCNgc8C3c8wmdJwCmhKGk x4ZZi5cJ5vKntawSTgAguskiUk8ncN00irhmv66f5G3/RWGw1EDNASysMCH2RYTDbZHr bB0J6yE/vnyzMKZ22n7a5yYPjS+0j0O5IiOCdXscvto95yHhZejaRp6muhCktvAcXbZA gK3La+NJHqhZCXr3epAiyO5iKnWSIXLmtqGVwc4YOxYadsvgJcAWJ5MZCB5DwxCZsuA/ SnXQuj2G18aiG37m7IjdEdP4JMhUOCV1SkB7gTyerSS335V3y8Yv1vz9VWI4PeNP8iiU y3Kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=LOT/uP7gWbQZlFyK8uxlM+zqXWgeapeuI29ElTFM2sI=; b=LEOMPsbTg+61eH9ORm4Y2tBvCBnfqww6RwmM9j8iXEClD79qfVsSarhJQo43cyqCBZ dalbw8mYHByOzi/ntdox3l0njpyilCAvQDgzQ+HtXbuVoqfxn8+srnXc+4JMY2EXQvXf f3OtoM01YwyvsU7uM8MzeElprHNKk053lipU0bEmhaDdJc0ZMCMXjY/w5H7Vyxv7RyQz MUsEukD0p0Y55IWYnmHFY1H9GefjMUXi9RlBHJEWaQTV+UaYZzGjMfUtSdJEE4kzJZuq 2zqNzcObSVAxfNAcBdeuN7cEpiJ/iGDRLUgq+oOo/+6CARONeT87MgLGaAETuBQoWYaU tOAA== X-Gm-Message-State: AOAM530CKXUKjeNVU2QHEDXT+/q5qkf51Jg3/dk1x6MYrXcHZljNMUVZ 0JpEQu3GKS7u30355fT/2eRzV0ozxH39Eh6M X-Google-Smtp-Source: ABdhPJwUKyicNuJT0vNv/9LqPiLN51f6vPwlH/TBcm6vwe/G5s6g9/qcgRIj2PGsk+TyzXbndNY9dw== X-Received: by 2002:a1c:4e0a:: with SMTP id g10mr5389356wmh.75.1589893880899; Tue, 19 May 2020 06:11:20 -0700 (PDT) Received: from localhost ([88.98.246.218]) by smtp.gmail.com with ESMTPSA id h20sm3798393wma.6.2020.05.19.06.11.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 19 May 2020 06:11:20 -0700 (PDT) From: luca.boccassi@gmail.com To: Tonghao Zhang Cc: Viacheslav Ovsiienko , dpdk stable Date: Tue, 19 May 2020 14:04:00 +0100 Message-Id: <20200519130549.112823-105-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200519130549.112823-1-luca.boccassi@gmail.com> References: <20200519125804.104349-1-luca.boccassi@gmail.com> <20200519130549.112823-1-luca.boccassi@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-stable] patch 'net/mlx5: fix crash when releasing meter table' has been queued to stable release 19.11.3 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 stable release 19.11.3 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 05/21/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. Thanks. Luca Boccassi --- >From da5c4ff51b3bd72c44096d4d1f24db301a966237 Mon Sep 17 00:00:00 2001 From: Tonghao Zhang Date: Wed, 15 Apr 2020 16:52:29 +0800 Subject: [PATCH] net/mlx5: fix crash when releasing meter table [ upstream commit 0d7d180a0dda4b97021fc1f580d6bfe3b42a332d ] The meters of ports share the same meter table on the port. When releasing meters, don't check value returned using assert. Because other meters may reference to it. Fixes: 46a5e6bc6a85 ("net/mlx5: prepare meter flow tables") Fixes: 9dbaf7eef6e1 ("net/mlx5: fix meter suffix table leak") Signed-off-by: Tonghao Zhang Acked-by: Viacheslav Ovsiienko --- drivers/net/mlx5/mlx5_flow_dv.c | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/drivers/net/mlx5/mlx5_flow_dv.c b/drivers/net/mlx5/mlx5_flow_dv.c index 3574b94f4a..acc0fd3271 100644 --- a/drivers/net/mlx5/mlx5_flow_dv.c +++ b/drivers/net/mlx5/mlx5_flow_dv.c @@ -8144,11 +8144,9 @@ flow_dv_destroy_mtr_tbl(struct rte_eth_dev *dev, claim_zero(mlx5_glue->dv_destroy_flow_matcher (mtd->egress.any_matcher)); if (mtd->egress.tbl) - claim_zero(flow_dv_tbl_resource_release(dev, - mtd->egress.tbl)); + flow_dv_tbl_resource_release(dev, mtd->egress.tbl); if (mtd->egress.sfx_tbl) - claim_zero(flow_dv_tbl_resource_release(dev, - mtd->egress.sfx_tbl)); + flow_dv_tbl_resource_release(dev, mtd->egress.sfx_tbl); if (mtd->ingress.color_matcher) claim_zero(mlx5_glue->dv_destroy_flow_matcher (mtd->ingress.color_matcher)); @@ -8156,11 +8154,9 @@ flow_dv_destroy_mtr_tbl(struct rte_eth_dev *dev, claim_zero(mlx5_glue->dv_destroy_flow_matcher (mtd->ingress.any_matcher)); if (mtd->ingress.tbl) - claim_zero(flow_dv_tbl_resource_release(dev, - mtd->ingress.tbl)); + flow_dv_tbl_resource_release(dev, mtd->ingress.tbl); if (mtd->ingress.sfx_tbl) - claim_zero(flow_dv_tbl_resource_release(dev, - mtd->ingress.sfx_tbl)); + flow_dv_tbl_resource_release(dev, mtd->ingress.sfx_tbl); if (mtd->transfer.color_matcher) claim_zero(mlx5_glue->dv_destroy_flow_matcher (mtd->transfer.color_matcher)); @@ -8168,11 +8164,9 @@ flow_dv_destroy_mtr_tbl(struct rte_eth_dev *dev, claim_zero(mlx5_glue->dv_destroy_flow_matcher (mtd->transfer.any_matcher)); if (mtd->transfer.tbl) - claim_zero(flow_dv_tbl_resource_release(dev, - mtd->transfer.tbl)); + flow_dv_tbl_resource_release(dev, mtd->transfer.tbl); if (mtd->transfer.sfx_tbl) - claim_zero(flow_dv_tbl_resource_release(dev, - mtd->transfer.sfx_tbl)); + flow_dv_tbl_resource_release(dev, mtd->transfer.sfx_tbl); if (mtd->drop_actn) claim_zero(mlx5_glue->destroy_flow_action(mtd->drop_actn)); rte_free(mtd); -- 2.20.1 --- Diff of the applied patch vs upstream commit (please double-check if non-empty: --- --- - 2020-05-19 14:04:48.727023141 +0100 +++ 0105-net-mlx5-fix-crash-when-releasing-meter-table.patch 2020-05-19 14:04:44.328650403 +0100 @@ -1,15 +1,16 @@ -From 0d7d180a0dda4b97021fc1f580d6bfe3b42a332d Mon Sep 17 00:00:00 2001 +From da5c4ff51b3bd72c44096d4d1f24db301a966237 Mon Sep 17 00:00:00 2001 From: Tonghao Zhang Date: Wed, 15 Apr 2020 16:52:29 +0800 Subject: [PATCH] net/mlx5: fix crash when releasing meter table +[ upstream commit 0d7d180a0dda4b97021fc1f580d6bfe3b42a332d ] + The meters of ports share the same meter table on the port. When releasing meters, don't check value returned using assert. Because other meters may reference to it. Fixes: 46a5e6bc6a85 ("net/mlx5: prepare meter flow tables") Fixes: 9dbaf7eef6e1 ("net/mlx5: fix meter suffix table leak") -Cc: stable@dpdk.org Signed-off-by: Tonghao Zhang Acked-by: Viacheslav Ovsiienko @@ -18,10 +19,10 @@ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/drivers/net/mlx5/mlx5_flow_dv.c b/drivers/net/mlx5/mlx5_flow_dv.c -index e156c79e01..c6d132c6b7 100644 +index 3574b94f4a..acc0fd3271 100644 --- a/drivers/net/mlx5/mlx5_flow_dv.c +++ b/drivers/net/mlx5/mlx5_flow_dv.c -@@ -8699,11 +8699,9 @@ flow_dv_destroy_mtr_tbl(struct rte_eth_dev *dev, +@@ -8144,11 +8144,9 @@ flow_dv_destroy_mtr_tbl(struct rte_eth_dev *dev, claim_zero(mlx5_glue->dv_destroy_flow_matcher (mtd->egress.any_matcher)); if (mtd->egress.tbl) @@ -35,7 +36,7 @@ if (mtd->ingress.color_matcher) claim_zero(mlx5_glue->dv_destroy_flow_matcher (mtd->ingress.color_matcher)); -@@ -8711,11 +8709,9 @@ flow_dv_destroy_mtr_tbl(struct rte_eth_dev *dev, +@@ -8156,11 +8154,9 @@ flow_dv_destroy_mtr_tbl(struct rte_eth_dev *dev, claim_zero(mlx5_glue->dv_destroy_flow_matcher (mtd->ingress.any_matcher)); if (mtd->ingress.tbl) @@ -49,7 +50,7 @@ if (mtd->transfer.color_matcher) claim_zero(mlx5_glue->dv_destroy_flow_matcher (mtd->transfer.color_matcher)); -@@ -8723,11 +8719,9 @@ flow_dv_destroy_mtr_tbl(struct rte_eth_dev *dev, +@@ -8168,11 +8164,9 @@ flow_dv_destroy_mtr_tbl(struct rte_eth_dev *dev, claim_zero(mlx5_glue->dv_destroy_flow_matcher (mtd->transfer.any_matcher)); if (mtd->transfer.tbl)