[PATCH] trace: fix build with clang 21
David Marchand
david.marchand at redhat.com
Tue Nov 4 14:15:23 CET 2025
On Tue, 28 Oct 2025 at 15:40, David Marchand <david.marchand at redhat.com> wrote:
>
> This was caught with recent clang.
> The RTE_TRACE_POINT_ARGS() macro expects at least one parameter.
> As a (void) function does not require any special tweaking with
> __rte_unused, we can simply replace with a direct (void) token.
>
> Build dir: /export/dpdk-next-net-mrvl/build-clang-static
> Project version: 25.11.0-rc1
> C compiler for the host machine: ccache clang (clang 21.1.4
> "clang version 21.1.4")
>
> In file included from ../lib/eal/common/eal_common_trace_points.c:7:
> ../lib/eal/include/rte_eal_trace.h:23:2: error: attribute 'unused'
> cannot be applied to a 'void' parameter
> [-Werror,-Wignored-attributes]
> 23 | RTE_TRACE_POINT_ARGS(void),
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ../lib/eal/include/rte_trace_point_register.h:46:3: note: expanded
> from macro 'RTE_TRACE_POINT_ARGS'
> 46 | (RTE_TRACE_POINT_ARGS_(RTE_TRACE_POINT_ARGS_COUNT(0,
> __VA_ARGS__), __VA_ARGS__))
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ../lib/eal/include/rte_trace_point_register.h:44:30: note: expanded
> from macro 'RTE_TRACE_POINT_ARGS_'
> 44 | RTE_TRACE_POINT_ARGS_EXPAND(RTE_TRACE_POINT_ARGS_FUNC
> (N))(__VA_ARGS__)
> | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
> ~~~~~~~~~~~~~~~~~
> ../lib/eal/include/rte_trace_point_register.h:41:38: note: expanded
> from macro 'RTE_TRACE_POINT_ARGS_FUNC'
> 41 | #define RTE_TRACE_POINT_ARGS_FUNC(a) RTE_TRACE_POINT_ARGS_ ## a
> | ^
> note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0
> to see all)
> ../lib/eal/include/rte_trace_point_register.h:42:42: note: expanded
> from macro 'RTE_TRACE_POINT_ARGS_EXPAND'
> 42 | #define RTE_TRACE_POINT_ARGS_EXPAND(...) __VA_ARGS__
> | ^
> ../lib/eal/include/rte_trace_point_register.h:26:35: note: expanded
> from macro 'RTE_TRACE_POINT_ARGS_1'
> 26 | #define RTE_TRACE_POINT_ARGS_1(a) __rte_unused a
> | ^~~~~~~~~~~~
> ../lib/eal/include/rte_common.h:248:37: note: expanded
> from macro '__rte_unused'
> 248 | #define __rte_unused __attribute__((__unused__))
> | ^~~~~~~~~~
> 1 error generated.
>
Fixes: 856aef55de95 ("trace: fix undefined behavior in register")
> Cc: stable at dpdk.org
>
> Reported-by: Jerin Jacob <jerinj at marvell.com>
> Signed-off-by: David Marchand <david.marchand at redhat.com>
Applied, thanks.
--
David Marchand
More information about the stable
mailing list