patch 'examples/qos_sched: fix core mask overflow' has been queued to stable release 20.11.5

luca.boccassi at gmail.com luca.boccassi at gmail.com
Mon Feb 28 22:20:09 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 03/02/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/a7aa7d8812abe4034027363036a0ec297574f49d

Thanks.

Luca Boccassi

---
>From a7aa7d8812abe4034027363036a0ec297574f49d Mon Sep 17 00:00:00 2001
From: Megha Ajmera <megha.ajmera at intel.com>
Date: Wed, 23 Feb 2022 17:36:30 +0000
Subject: [PATCH] examples/qos_sched: fix core mask overflow
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

[ upstream commit 9c9fad3dfa042ae4b7a045cb1731f8701f8210e6 ]

Masking of core mask was incorrect. Instead of using 1U for shifting, it
should be using 1LU as the result is assigned to uint64.

CID 375859: Potentially overflowing expression "1U << app_main_core" with
type "unsigned int" (32 bits, unsigned) is evaluated using 32-bit
arithmetic, and then used in a context that expects an expression of
type "uint64_t" (64 bits, unsigned).

Coverity issue: 375859
Fixes: de3cfa2c9823 ("sched: initial import")

Signed-off-by: Megha Ajmera <megha.ajmera at intel.com>
Acked-by: Morten Brørup <mb at smartsharesystems.com>
---
 examples/qos_sched/args.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/examples/qos_sched/args.c b/examples/qos_sched/args.c
index c369ba9b4d..891cfb2809 100644
--- a/examples/qos_sched/args.c
+++ b/examples/qos_sched/args.c
@@ -410,13 +410,13 @@ app_parse_args(int argc, char **argv)
 
 	/* check main core index validity */
 	for (i = 0; i <= app_main_core; i++) {
-		if (app_used_core_mask & (1u << app_main_core)) {
+		if (app_used_core_mask & RTE_BIT64(app_main_core)) {
 			RTE_LOG(ERR, APP, "Main core index is not configured properly\n");
 			app_usage(prgname);
 			return -1;
 		}
 	}
-	app_used_core_mask |= 1u << app_main_core;
+	app_used_core_mask |= RTE_BIT64(app_main_core);
 
 	if ((app_used_core_mask != app_eal_core_mask()) ||
 			(app_main_core != rte_get_main_lcore())) {
-- 
2.30.2

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-02-28 21:17:55.022866035 +0000
+++ 0013-examples-qos_sched-fix-core-mask-overflow.patch	2022-02-28 21:17:53.820928793 +0000
@@ -1 +1 @@
-From 9c9fad3dfa042ae4b7a045cb1731f8701f8210e6 Mon Sep 17 00:00:00 2001
+From a7aa7d8812abe4034027363036a0ec297574f49d Mon Sep 17 00:00:00 2001
@@ -8,0 +9,2 @@
+[ upstream commit 9c9fad3dfa042ae4b7a045cb1731f8701f8210e6 ]
+
@@ -19 +20,0 @@
-Cc: stable at dpdk.org
@@ -28 +29 @@
-index 10ca7bea61..b2959499ae 100644
+index c369ba9b4d..891cfb2809 100644
@@ -31 +32 @@
-@@ -427,13 +427,13 @@ app_parse_args(int argc, char **argv)
+@@ -410,13 +410,13 @@ app_parse_args(int argc, char **argv)


More information about the stable mailing list