[dpdk-stable] patch 'net/softnic: fix resource leak for pipeline' has been queued to LTS release 18.11.9

Kevin Traynor ktraynor at redhat.com
Fri Jun 5 20:24:11 CEST 2020


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/cb85463b7e8a0bd120b43cd9f48ff9981b337f5b

Thanks.

Kevin.

---
>From cb85463b7e8a0bd120b43cd9f48ff9981b337f5b Mon Sep 17 00:00:00 2001
From: Jasvinder Singh <jasvinder.singh at intel.com>
Date: Mon, 27 Apr 2020 18:15:51 +0100
Subject: [PATCH] net/softnic: fix resource leak for pipeline

[ upstream commit c1ea7a5f99ce476631281184b109eb5248ce4a32 ]

For sending request messages to data plane threads, the
caller invokes pipeline_msg_send_recv() function which never
returns null response. Thus, removed redundant check on
the returned response.

Coverity issue: 357676, 357680, 357681, 357682, 357690, 357693, 357711
Coverity issue: 357722, 357725, 357734, 357739, 357743, 357747, 357762
Coverity issue: 357766, 357787

Fixes: 6d4d05402501 ("net/softnic: add command to read stats")
Fixes: 202905f3ee4d ("net/softnic: add command to create objects")
Fixes: ee19326a4b1e ("net/softnic: add command for pipeline table entries")
Fixes: 9bc0ce0ad17c ("net/softnic: add command for meter action")
Fixes: 2505030a8383 ("net/softnic: add command for TTL action")

Signed-off-by: Jasvinder Singh <jasvinder.singh at intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu at intel.com>
---
 drivers/net/softnic/rte_eth_softnic_thread.c | 34 --------------------
 1 file changed, 34 deletions(-)

diff --git a/drivers/net/softnic/rte_eth_softnic_thread.c b/drivers/net/softnic/rte_eth_softnic_thread.c
index e42784e4ca..6a888d20ec 100644
--- a/drivers/net/softnic/rte_eth_softnic_thread.c
+++ b/drivers/net/softnic/rte_eth_softnic_thread.c
@@ -748,6 +748,4 @@ softnic_pipeline_port_in_stats_read(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -797,6 +795,4 @@ softnic_pipeline_port_in_enable(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -844,6 +840,4 @@ softnic_pipeline_port_in_disable(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -899,6 +893,4 @@ softnic_pipeline_port_out_stats_read(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -956,6 +948,4 @@ softnic_pipeline_table_stats_read(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -1236,6 +1226,4 @@ softnic_pipeline_table_rule_add(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -1320,6 +1308,4 @@ softnic_pipeline_table_rule_add_default(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -1478,6 +1464,4 @@ fail:
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -1543,6 +1527,4 @@ softnic_pipeline_table_rule_delete(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -1593,6 +1575,4 @@ softnic_pipeline_table_rule_delete_default(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -1653,6 +1633,4 @@ softnic_pipeline_table_rule_stats_read(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -1734,8 +1712,4 @@ softnic_pipeline_table_mtr_profile_add(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL) {
-		free(mp);
-		return -1;
-	}
 
 	/* Read response */
@@ -1793,6 +1767,4 @@ softnic_pipeline_table_mtr_profile_delete(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -1856,6 +1828,4 @@ softnic_pipeline_table_rule_mtr_read(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -1921,6 +1891,4 @@ softnic_pipeline_table_dscp_table_update(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
@@ -1986,6 +1954,4 @@ softnic_pipeline_table_rule_ttl_read(struct pmd_internals *softnic,
 	/* Send request and wait for response */
 	rsp = pipeline_msg_send_recv(p, req);
-	if (rsp == NULL)
-		return -1;
 
 	/* Read response */
-- 
2.21.3

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2020-06-05 19:20:51.705048772 +0100
+++ 0014-net-softnic-fix-resource-leak-for-pipeline.patch	2020-06-05 19:20:50.730042631 +0100
@@ -1 +1 @@
-From c1ea7a5f99ce476631281184b109eb5248ce4a32 Mon Sep 17 00:00:00 2001
+From cb85463b7e8a0bd120b43cd9f48ff9981b337f5b Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit c1ea7a5f99ce476631281184b109eb5248ce4a32 ]
+
@@ -20 +21,0 @@
-Cc: stable at dpdk.org
@@ -29 +30 @@
-index d61846e030..dcfb5eb82c 100644
+index e42784e4ca..6a888d20ec 100644
@@ -32 +33 @@
-@@ -836,6 +836,4 @@ softnic_pipeline_port_in_stats_read(struct pmd_internals *softnic,
+@@ -748,6 +748,4 @@ softnic_pipeline_port_in_stats_read(struct pmd_internals *softnic,
@@ -39 +40 @@
-@@ -885,6 +883,4 @@ softnic_pipeline_port_in_enable(struct pmd_internals *softnic,
+@@ -797,6 +795,4 @@ softnic_pipeline_port_in_enable(struct pmd_internals *softnic,
@@ -46 +47 @@
-@@ -932,6 +928,4 @@ softnic_pipeline_port_in_disable(struct pmd_internals *softnic,
+@@ -844,6 +840,4 @@ softnic_pipeline_port_in_disable(struct pmd_internals *softnic,
@@ -53 +54 @@
-@@ -987,6 +981,4 @@ softnic_pipeline_port_out_stats_read(struct pmd_internals *softnic,
+@@ -899,6 +893,4 @@ softnic_pipeline_port_out_stats_read(struct pmd_internals *softnic,
@@ -60 +61 @@
-@@ -1044,6 +1036,4 @@ softnic_pipeline_table_stats_read(struct pmd_internals *softnic,
+@@ -956,6 +948,4 @@ softnic_pipeline_table_stats_read(struct pmd_internals *softnic,
@@ -67 +68 @@
-@@ -1324,6 +1314,4 @@ softnic_pipeline_table_rule_add(struct pmd_internals *softnic,
+@@ -1236,6 +1226,4 @@ softnic_pipeline_table_rule_add(struct pmd_internals *softnic,
@@ -74 +75 @@
-@@ -1408,6 +1396,4 @@ softnic_pipeline_table_rule_add_default(struct pmd_internals *softnic,
+@@ -1320,6 +1308,4 @@ softnic_pipeline_table_rule_add_default(struct pmd_internals *softnic,
@@ -81 +82 @@
-@@ -1566,6 +1552,4 @@ fail:
+@@ -1478,6 +1464,4 @@ fail:
@@ -88 +89 @@
-@@ -1631,6 +1615,4 @@ softnic_pipeline_table_rule_delete(struct pmd_internals *softnic,
+@@ -1543,6 +1527,4 @@ softnic_pipeline_table_rule_delete(struct pmd_internals *softnic,
@@ -95 +96 @@
-@@ -1681,6 +1663,4 @@ softnic_pipeline_table_rule_delete_default(struct pmd_internals *softnic,
+@@ -1593,6 +1575,4 @@ softnic_pipeline_table_rule_delete_default(struct pmd_internals *softnic,
@@ -102 +103 @@
-@@ -1741,6 +1721,4 @@ softnic_pipeline_table_rule_stats_read(struct pmd_internals *softnic,
+@@ -1653,6 +1633,4 @@ softnic_pipeline_table_rule_stats_read(struct pmd_internals *softnic,
@@ -109 +110 @@
-@@ -1822,8 +1800,4 @@ softnic_pipeline_table_mtr_profile_add(struct pmd_internals *softnic,
+@@ -1734,8 +1712,4 @@ softnic_pipeline_table_mtr_profile_add(struct pmd_internals *softnic,
@@ -118 +119 @@
-@@ -1881,6 +1855,4 @@ softnic_pipeline_table_mtr_profile_delete(struct pmd_internals *softnic,
+@@ -1793,6 +1767,4 @@ softnic_pipeline_table_mtr_profile_delete(struct pmd_internals *softnic,
@@ -125 +126 @@
-@@ -1944,6 +1916,4 @@ softnic_pipeline_table_rule_mtr_read(struct pmd_internals *softnic,
+@@ -1856,6 +1828,4 @@ softnic_pipeline_table_rule_mtr_read(struct pmd_internals *softnic,
@@ -132 +133 @@
-@@ -2009,6 +1979,4 @@ softnic_pipeline_table_dscp_table_update(struct pmd_internals *softnic,
+@@ -1921,6 +1891,4 @@ softnic_pipeline_table_dscp_table_update(struct pmd_internals *softnic,
@@ -139 +140 @@
-@@ -2074,6 +2042,4 @@ softnic_pipeline_table_rule_ttl_read(struct pmd_internals *softnic,
+@@ -1986,6 +1954,4 @@ softnic_pipeline_table_rule_ttl_read(struct pmd_internals *softnic,



More information about the stable mailing list