patch 'event/cnxk: fix static analysis issues' has been queued to stable release 24.11.7
luca.boccassi at gmail.com
luca.boccassi at gmail.com
Mon Jul 6 12:20:19 CEST 2026
Hi,
FYI, your patch has been queued to stable release 24.11.7
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 07/05/26. 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/f99a95a6e3c8d9c0a652b5d996d333190f2af3fe
Thanks.
Luca Boccassi
---
>From f99a95a6e3c8d9c0a652b5d996d333190f2af3fe Mon Sep 17 00:00:00 2001
From: Aarnav JP <ajp at marvell.com>
Date: Mon, 15 Jun 2026 21:54:44 +0530
Subject: [PATCH] event/cnxk: fix static analysis issues
[ upstream commit 8ae2104936d9bc9212ead3be4797d2cffe539e8a ]
Cast uint16_t operands to uint64_t before bitwise OR with
uint64_t rx_offloads to fix operand size mismatches. Add NULL
check for bracket parser end pointer to prevent undefined
behavior from pointer comparison with NULL.
Fixes: 697883bcb0a8 ("event/cnxk: fix Rx timestamp handling")
Fixes: fe7ed2ebbf37 ("event/cnxk: set Rx offload flags")
Fixes: 38c2e3240ba8 ("event/cnxk: add option to control SSO HWGRP QoS")
Fixes: 8a3d58c189fd ("event/cnxk: add option to control timer adapters")
Signed-off-by: Aarnav JP <ajp at marvell.com>
---
drivers/event/cnxk/cn10k_eventdev.c | 2 +-
drivers/event/cnxk/cnxk_eventdev.c | 2 +-
drivers/event/cnxk/cnxk_eventdev_adptr.c | 4 ++--
drivers/event/cnxk/cnxk_tim_evdev.c | 2 +-
4 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/drivers/event/cnxk/cn10k_eventdev.c b/drivers/event/cnxk/cn10k_eventdev.c
index 9501fea3ab..74746a5078 100644
--- a/drivers/event/cnxk/cn10k_eventdev.c
+++ b/drivers/event/cnxk/cn10k_eventdev.c
@@ -663,7 +663,7 @@ cn10k_sso_tstamp_hdl_update(uint16_t port_id, uint16_t flags, bool ptp_en)
struct rte_eventdev *event_dev = cnxk_eth_dev->evdev_priv;
struct cnxk_sso_evdev *evdev = cnxk_sso_pmd_priv(event_dev);
- evdev->rx_offloads |= flags;
+ evdev->rx_offloads |= (uint64_t)flags;
if (ptp_en)
evdev->tstamp[port_id] = &cnxk_eth_dev->tstamp;
else
diff --git a/drivers/event/cnxk/cnxk_eventdev.c b/drivers/event/cnxk/cnxk_eventdev.c
index be6a487b59..4aa16f9026 100644
--- a/drivers/event/cnxk/cnxk_eventdev.c
+++ b/drivers/event/cnxk/cnxk_eventdev.c
@@ -566,7 +566,7 @@ parse_list(const char *value, void *opaque, param_parse_t fn)
else if (*s == ']')
end = s;
- if (start && start < end) {
+ if (start && end && start < end) {
*end = 0;
fn(start + 1, opaque);
s = end;
diff --git a/drivers/event/cnxk/cnxk_eventdev_adptr.c b/drivers/event/cnxk/cnxk_eventdev_adptr.c
index 4cf48db74c..2f915a6fc1 100644
--- a/drivers/event/cnxk/cnxk_eventdev_adptr.c
+++ b/drivers/event/cnxk/cnxk_eventdev_adptr.c
@@ -275,7 +275,7 @@ cnxk_sso_rx_adapter_queue_add(
return rc;
}
- dev->rx_offloads |= cnxk_eth_dev->rx_offload_flags;
+ dev->rx_offloads |= (uint64_t)cnxk_eth_dev->rx_offload_flags;
return 0;
}
@@ -312,7 +312,7 @@ cnxk_sso_rx_adapter_start(const struct rte_eventdev *event_dev,
{
struct cnxk_eth_dev *cnxk_eth_dev = eth_dev->data->dev_private;
struct cnxk_sso_evdev *dev = cnxk_sso_pmd_priv(event_dev);
- dev->rx_offloads |= cnxk_eth_dev->rx_offload_flags;
+ dev->rx_offloads |= (uint64_t)cnxk_eth_dev->rx_offload_flags;
return 0;
}
diff --git a/drivers/event/cnxk/cnxk_tim_evdev.c b/drivers/event/cnxk/cnxk_tim_evdev.c
index 994d1d1090..8cdb8a72dd 100644
--- a/drivers/event/cnxk/cnxk_tim_evdev.c
+++ b/drivers/event/cnxk/cnxk_tim_evdev.c
@@ -508,7 +508,7 @@ cnxk_tim_parse_ring_ctl_list(const char *value, void *opaque)
else
continue;
- if (start && start < end) {
+ if (start && end && start < end) {
*end = 0;
cnxk_tim_parse_ring_param(start + 1, opaque);
start = end;
--
2.47.3
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2026-07-03 12:55:47.733563918 +0100
+++ 0027-event-cnxk-fix-static-analysis-issues.patch 2026-07-03 12:55:46.634573039 +0100
@@ -1 +1 @@
-From 8ae2104936d9bc9212ead3be4797d2cffe539e8a Mon Sep 17 00:00:00 2001
+From f99a95a6e3c8d9c0a652b5d996d333190f2af3fe Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 8ae2104936d9bc9212ead3be4797d2cffe539e8a ]
+
@@ -15 +16,0 @@
-Cc: stable at dpdk.org
@@ -26 +27 @@
-index 8289fc44d6..47d1ec6823 100644
+index 9501fea3ab..74746a5078 100644
@@ -29 +30 @@
-@@ -660,7 +660,7 @@ cn10k_sso_tstamp_hdl_update(uint16_t port_id, uint16_t flags, bool ptp_en)
+@@ -663,7 +663,7 @@ cn10k_sso_tstamp_hdl_update(uint16_t port_id, uint16_t flags, bool ptp_en)
@@ -39 +40 @@
-index 272ba235a4..41079af2a9 100644
+index be6a487b59..4aa16f9026 100644
@@ -52 +53 @@
-index 8536dee5bf..5678e5d264 100644
+index 4cf48db74c..2f915a6fc1 100644
@@ -55,4 +56,4 @@
-@@ -285,7 +285,7 @@ cnxk_sso_rx_adapter_queues_add(const struct rte_eventdev *event_dev,
- /* Propagate force bp devarg */
- cnxk_eth_dev->nix.force_rx_aura_bp = dev->force_ena_bp;
- cnxk_sso_tstamp_cfg(eth_dev->data->port_id, eth_dev, dev);
+@@ -275,7 +275,7 @@ cnxk_sso_rx_adapter_queue_add(
+ return rc;
+ }
+
@@ -61,0 +63 @@
+ }
@@ -63,2 +65 @@
- fail:
-@@ -330,7 +330,7 @@ cnxk_sso_rx_adapter_start(const struct rte_eventdev *event_dev,
+@@ -312,7 +312,7 @@ cnxk_sso_rx_adapter_start(const struct rte_eventdev *event_dev,
More information about the stable
mailing list