patch 'sched: remove useless malloc in PIE data init' has been queued to stable release 21.11.1

Kevin Traynor ktraynor at redhat.com
Tue Mar 8 15:14:50 CET 2022


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/14/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/bcfadafe4a98b00dc6877caf034403724bbb90ba

Thanks.

Kevin

---
>From bcfadafe4a98b00dc6877caf034403724bbb90ba Mon Sep 17 00:00:00 2001
From: Weiguo Li <liwg06 at foxmail.com>
Date: Wed, 2 Mar 2022 04:32:57 +0800
Subject: [PATCH] sched: remove useless malloc in PIE data init

[ upstream commit 79aab97c94024c4f969308ec806efb168cccc83d ]

'rte_pie_rt_data_init(NULL)' is not expected, and it's ought to
fail when this happen. The malloc inside the function didn't work.
So remove the malloc otherwise will lead to a memory leak.

Fixes: 44c730b0e37971 ("sched: add PIE based congestion management")

Signed-off-by: Weiguo Li <liwg06 at foxmail.com>
Acked-by: Stephen Hemminger <stephen at networkplumber.org>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu at intel.com>
---
 lib/sched/rte_pie.c | 22 ++++------------------
 1 file changed, 4 insertions(+), 18 deletions(-)

diff --git a/lib/sched/rte_pie.c b/lib/sched/rte_pie.c
index 934e9aee50..79db6e96b1 100644
--- a/lib/sched/rte_pie.c
+++ b/lib/sched/rte_pie.c
@@ -4,4 +4,5 @@
 
 #include <stdlib.h>
+#include <string.h>
 
 #include "rte_pie.h"
@@ -18,24 +19,9 @@ rte_pie_rt_data_init(struct rte_pie *pie)
 {
 	if (pie == NULL) {
-		/* Allocate memory to use the PIE data structure */
-		pie = rte_malloc(NULL, sizeof(struct rte_pie), 0);
-
-		if (pie == NULL)
-			RTE_LOG(ERR, SCHED, "%s: Memory allocation fails\n", __func__);
-
-		return -1;
+		RTE_LOG(ERR, SCHED, "%s: Invalid addr for pie\n", __func__);
+		return -EINVAL;
 	}
 
-	pie->active = 0;
-	pie->in_measurement = 0;
-	pie->departed_bytes_count = 0;
-	pie->start_measurement = 0;
-	pie->last_measurement = 0;
-	pie->qlen = 0;
-	pie->avg_dq_time = 0;
-	pie->burst_allowance = 0;
-	pie->qdelay_old = 0;
-	pie->drop_prob = 0;
-	pie->accu_prob = 0;
+	memset(pie, 0, sizeof(*pie));
 
 	return 0;
-- 
2.34.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-03-08 13:55:29.269952515 +0000
+++ 0035-sched-remove-useless-malloc-in-PIE-data-init.patch	2022-03-08 13:55:28.506315191 +0000
@@ -1 +1 @@
-From 79aab97c94024c4f969308ec806efb168cccc83d Mon Sep 17 00:00:00 2001
+From bcfadafe4a98b00dc6877caf034403724bbb90ba Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 79aab97c94024c4f969308ec806efb168cccc83d ]
+
@@ -11 +12,0 @@
-Cc: stable at dpdk.org
@@ -21 +22 @@
-index cdb7bab697..d37b79e6dd 100644
+index 934e9aee50..79db6e96b1 100644
@@ -30 +31 @@
-@@ -16,24 +17,9 @@ rte_pie_rt_data_init(struct rte_pie *pie)
+@@ -18,24 +19,9 @@ rte_pie_rt_data_init(struct rte_pie *pie)



More information about the stable mailing list