patch 'ring: fix error code when creating ring' has been queued to stable release 20.11.5

luca.boccassi at gmail.com luca.boccassi at gmail.com
Fri Feb 18 13:38:43 CET 2022


Hi,

FYI, your patch has been queued to stable release 20.11.5

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 02/20/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/bluca/dpdk-stable

This queued commit can be viewed at:
https://github.com/bluca/dpdk-stable/commit/6e47aebf24d3bc6a8e69c8bc03250def488a5b6f

Thanks.

Luca Boccassi

---
>From 6e47aebf24d3bc6a8e69c8bc03250def488a5b6f Mon Sep 17 00:00:00 2001
From: Yunjian Wang <wangyunjian at huawei.com>
Date: Mon, 10 Jan 2022 17:23:03 +0800
Subject: [PATCH] ring: fix error code when creating ring

[ upstream commit 074717be3ef9e7a8868b5af078b0ca7b61bcc44b ]

The error value returned by rte_ring_create_elem() should be positive
integers. However, if the rte_ring_get_memsize_elem() function fails,
a negative number is returned and is directly used as the return value.
As a result, this will cause the external call to check the return
value to fail(like called by rte_mempool_create()).

Fixes: a182620042aa ("ring: get size in memory")

Reported-by: Nan Zhou <zhounan14 at huawei.com>
Signed-off-by: Yunjian Wang <wangyunjian at huawei.com>
Acked-by: Konstantin Ananyev <konstantin.ananyev at intel.com>
---
 lib/librte_ring/rte_ring.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/lib/librte_ring/rte_ring.c b/lib/librte_ring/rte_ring.c
index f17bd966be..185f9be798 100644
--- a/lib/librte_ring/rte_ring.c
+++ b/lib/librte_ring/rte_ring.c
@@ -267,7 +267,7 @@ rte_ring_create_elem(const char *name, unsigned int esize, unsigned int count,
 
 	ring_size = rte_ring_get_memsize_elem(esize, count);
 	if (ring_size < 0) {
-		rte_errno = ring_size;
+		rte_errno = -ring_size;
 		return NULL;
 	}
 
-- 
2.30.2

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-02-18 12:37:40.797306321 +0000
+++ 0074-ring-fix-error-code-when-creating-ring.patch	2022-02-18 12:37:37.750793260 +0000
@@ -1 +1 @@
-From 074717be3ef9e7a8868b5af078b0ca7b61bcc44b Mon Sep 17 00:00:00 2001
+From 6e47aebf24d3bc6a8e69c8bc03250def488a5b6f Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 074717be3ef9e7a8868b5af078b0ca7b61bcc44b ]
+
@@ -13 +14,0 @@
-Cc: stable at dpdk.org
@@ -19 +20 @@
- lib/ring/rte_ring.c | 2 +-
+ lib/librte_ring/rte_ring.c | 2 +-
@@ -22 +23 @@
-diff --git a/lib/ring/rte_ring.c b/lib/ring/rte_ring.c
+diff --git a/lib/librte_ring/rte_ring.c b/lib/librte_ring/rte_ring.c
@@ -24,2 +25,2 @@
---- a/lib/ring/rte_ring.c
-+++ b/lib/ring/rte_ring.c
+--- a/lib/librte_ring/rte_ring.c
++++ b/lib/librte_ring/rte_ring.c


More information about the stable mailing list