* [PATCH] trace: fix build with clang 21
@ 2025-10-28 14:39 David Marchand
2025-10-28 16:21 ` Jerin Jacob
0 siblings, 1 reply; 3+ messages in thread
From: David Marchand @ 2025-10-28 14:39 UTC (permalink / raw)
To: dev; +Cc: jerinj, stable, Sunil Kumar Kori, Tyler Retzlaff
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.
Cc: stable@dpdk.org
Reported-by: Jerin Jacob <jerinj@marvell.com>
Signed-off-by: David Marchand <david.marchand@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
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] trace: fix build with clang 21
2025-10-28 14:39 [PATCH] trace: fix build with clang 21 David Marchand
@ 2025-10-28 16:21 ` Jerin Jacob
2025-10-28 16:25 ` David Marchand
0 siblings, 1 reply; 3+ messages in thread
From: Jerin Jacob @ 2025-10-28 16:21 UTC (permalink / raw)
To: David Marchand; +Cc: dev, jerinj, stable, Sunil Kumar Kori, Tyler Retzlaff
On Tue, Oct 28, 2025 at 8:26 PM David Marchand
<david.marchand@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@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@dpdk.org
>
> Reported-by: Jerin Jacob <jerinj@marvell.com>
> Signed-off-by: David Marchand <david.marchand@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
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] trace: fix build with clang 21
2025-10-28 16:21 ` Jerin Jacob
@ 2025-10-28 16:25 ` David Marchand
0 siblings, 0 replies; 3+ messages in thread
From: David Marchand @ 2025-10-28 16:25 UTC (permalink / raw)
To: Jerin Jacob; +Cc: dev, jerinj, stable, Sunil Kumar Kori, Tyler Retzlaff
On Tue, 28 Oct 2025 at 17:21, Jerin Jacob <jerinjacobk@gmail.com> wrote:
> On Tue, Oct 28, 2025 at 8:26 PM David Marchand
> <david.marchand@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.
Indeed,
Fixes: 856aef55de95 ("trace: fix undefined behavior in register")
> Acked-by: Jerin Jacob <jerinj@marvell.com>
Thanks for testing.
--
David Marchand
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-10-28 16:25 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-10-28 14:39 [PATCH] trace: fix build with clang 21 David Marchand
2025-10-28 16:21 ` Jerin Jacob
2025-10-28 16:25 ` David Marchand
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).