[PATCH] pipeline: fix build with sanitizers or debug options
David Marchand
david.marchand at redhat.com
Fri Mar 20 14:33:09 CET 2026
Similar to commit 84f5ac9418ea ("pipeline: fix build with ASan").
Here we are again. Depending on options (like debug, or ASan, or UBSan),
compilation can fail because of dumb construct like CHECK(0, XXX).
Dumb, because such an expression macro expands as: if (0) return -XXX;
../lib/pipeline/rte_swx_pipeline.c: In function ‘instr_movh_translate’:
../lib/pipeline/rte_swx_pipeline.c:3461:1: error: control reaches end of
non-void function [-Werror=return-type]
3461 | }
| ^
Remove any such call when at the end of functions, using a regexp:
%s/CHECK(0, \(.*\))\(;\n}\)/return -\1\2/
Cc: stable at dpdk.org
Signed-off-by: David Marchand <david.marchand at redhat.com>
---
lib/pipeline/rte_swx_pipeline.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/lib/pipeline/rte_swx_pipeline.c b/lib/pipeline/rte_swx_pipeline.c
index a9157815e4..8ceb1fe88d 100644
--- a/lib/pipeline/rte_swx_pipeline.c
+++ b/lib/pipeline/rte_swx_pipeline.c
@@ -2524,7 +2524,7 @@ instr_table_translate(struct rte_swx_pipeline *p,
return 0;
}
- CHECK(0, EINVAL);
+ return -EINVAL;
}
static inline void
@@ -3049,7 +3049,7 @@ instr_extern_translate(struct rte_swx_pipeline *p,
return 0;
}
- CHECK(0, EINVAL);
+ return -EINVAL;
}
static inline void
@@ -3457,7 +3457,7 @@ instr_movh_translate(struct rte_swx_pipeline *p,
return 0;
}
- CHECK(0, EINVAL);
+ return -EINVAL;
}
static inline void
--
2.53.0
More information about the dev
mailing list