[PATCH] trace: fix build with clang 21

Jerin Jacob jerinjacobk at gmail.com
Tue Oct 28 17:21:16 CET 2025


On Tue, Oct 28, 2025 at 8:26 PM 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

This can be removed.

Add Fixes: if possible.
Acked-by: Jerin Jacob <jerinj at marvell.com>




> 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.
>
> Cc: stable at dpdk.org
>
> Reported-by: Jerin Jacob <jerinj at marvell.com>
> Signed-off-by: David Marchand <david.marchand at redhat.com>
> ---
>  app/test/test_trace.h           | 2 +-
>  lib/eal/include/rte_eal_trace.h | 2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/app/test/test_trace.h b/app/test/test_trace.h
> index 4ad44e2bea..123ec8290a 100644
> --- a/app/test/test_trace.h
> +++ b/app/test/test_trace.h
> @@ -13,5 +13,5 @@ RTE_TRACE_POINT(
>
>  RTE_TRACE_POINT_FP(
>         app_dpdk_test_fp,
> -       RTE_TRACE_POINT_ARGS(void),
> +       (void),
>  )
> diff --git a/lib/eal/include/rte_eal_trace.h b/lib/eal/include/rte_eal_trace.h
> index 9ad2112801..152474bf84 100644
> --- a/lib/eal/include/rte_eal_trace.h
> +++ b/lib/eal/include/rte_eal_trace.h
> @@ -20,7 +20,7 @@ extern "C" {
>  /* Generic */
>  RTE_TRACE_POINT(
>         rte_eal_trace_generic_void,
> -       RTE_TRACE_POINT_ARGS(void),
> +       (void),
>  )
>
>  RTE_TRACE_POINT(
> --
> 2.51.0
>


More information about the stable mailing list