[dpdk-dev] [PATCH v1] eal/arm: fix gcc build for 128-bit atomic compare exchange

David Marchand david.marchand at redhat.com
Fri Jan 15 16:55:54 CET 2021


On Fri, Jan 15, 2021 at 10:58 AM Joyce Kong <joyce.kong at arm.com> wrote:
>
> Compiling with "meson build -Dbuildtype=debug --cross-file
> config/arm/arm64_thunderx2_linux_gcc" shows the warnings
> "function returns an aggregate [-Waggregate-return]":
> ../../dpdk/lib/librte_eal/arm/include/rte_atomic_64.h: In
> function ‘__cas_128_relaxed’:
> ../../dpdk/lib/librte_eal/arm/include/rte_atomic_64.h:81:20:
> error: function returns an aggregate [-Werror=aggregate-return]
>  __ATOMIC128_CAS_OP(__cas_128_relaxed, "casp")
>                     ^~~~~~~~~~~~~~~~~
>
> Fix the compiling issue by defining __ATOMIC128_CAS_OP as a void
> function and passing the address pointer into it.
>
> Fixes: 7e2c3e17fe2c ("eal/arm64: add 128-bit atomic compare exchange")
> Cc: stable at dpdk.org
>
> Signed-off-by: Joyce Kong <joyce.kong at arm.com>

>From my tests, the trigger is when switching to debug.
The thunderx2 target builds fine for me with debugoptimized.
I can reproduce the issue too with octeontx2.

What is the common point?


-- 
David Marchand



More information about the dev mailing list