[PATCH 1/2] gpudev: fix minsize build
Jack Bond-Preston
jack.bond-preston at foss.arm.com
Thu Oct 15 14:57:39 CEST 2026
"minsize" builds of DPDK with GCC can trigger the following warning
(error with Werror):
../lib/gpudev/gpudev.c: In function 'rte_gpu_attach':
../lib/gpudev/gpudev.c:290:39: warning: 'shared_dev' may be used uninitialized [-Wmaybe-uninitialized]
290 | rte_atomic_fetch_add_explicit(&dev->mpshared->process_refcnt, 1, rte_memory_order_relaxed);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This can't really happen - shared_dev is initialized in the for loop
before this usage. However, the compiler can't see that gpu_max is
guaranteed to be > 0 in that loop (which it is, as we have returned
earlier if gpus == NULL), and thus assumes the loop may not run any
iterations.
Regardless, NULL-initialize shared_dev at declaration to silence the
warning.
Signed-off-by: Jack Bond-Preston <jack.bond-preston at foss.arm.com>
Reviewed-by: Wathsala Vithanage <wathsala.vithanage at arm.com>
---
lib/gpudev/gpudev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/gpudev/gpudev.c b/lib/gpudev/gpudev.c
index 4a2335834c..93a30464f0 100644
--- a/lib/gpudev/gpudev.c
+++ b/lib/gpudev/gpudev.c
@@ -251,7 +251,7 @@ rte_gpu_attach(const char *name)
{
int16_t dev_id;
struct rte_gpu *dev;
- struct rte_gpu_mpshared *shared_dev;
+ struct rte_gpu_mpshared *shared_dev = NULL;
if (rte_eal_process_type() != RTE_PROC_SECONDARY) {
GPU_LOG(ERR, "only secondary process can attach device");
--
2.43.0
More information about the dev
mailing list