[dpdk-dev] [PATCH v2 0/8] use GCC's C11 atomic builtins for test

Tyler Retzlaff roretzla at linux.microsoft.com
Thu Jun 17 17:21:55 CEST 2021


On Tue, Jun 15, 2021 at 09:54:51PM -0500, Joyce Kong wrote:
> Since C11 memory model is adopted in DPDK now[1], use GCC's 
> atomic builtins in test cases.

as previously discussed these atomics are not "C11" they are
direct use of gcc builtins. please don't incorporate C11 into the title
of the patches or commit messages since it isn't.

please do not integrate a patch that directly uses gcc builtins and
extensions please maintain abstractions under the rte_ namespace.
specifically this patch substantially increases coupling to a single
compiler implementation reducing portability.

as previously requested, please establish at a minimum macros in the
rte_ namespace for this.

thanks.

> 
> [1] https://www.dpdk.org/blog/2021/03/26/dpdk-adopts-the-c11-memory-model/
> 
> v2:
>  Use rte_wait_until_equal() instead of original sync loops.
>  <David Marchand>
> 
> v1:
>  The initial version.
> 
> Joyce Kong (8):
>   test/ticketlock: use GCC atomic builtins for lcores sync
>   test/spinlock: use GCC atomic builtins for lcores sync
>   test/rwlock: use GCC atomic builtins for lcores sync
>   test/mcslock: use GCC atomic builtins for lcores sync
>   test/mempool: remove unused variable for lcores sync
>   test/mempool_perf: use GCC atomic builtins for lcores sync
>   test/service_cores: use GCC atomic builtins for lock sync
>   test/rcu: use GCC atomic builtins for data sync
> 
>  app/test/test_mcslock.c       | 14 +++--
>  app/test/test_mempool.c       |  5 --
>  app/test/test_mempool_perf.c  | 11 ++--
>  app/test/test_rcu_qsbr_perf.c | 98 +++++++++++++++++------------------
>  app/test/test_rwlock.c        | 10 ++--
>  app/test/test_service_cores.c | 36 +++++++------
>  app/test/test_spinlock.c      |  9 ++--
>  app/test/test_ticketlock.c    | 10 ++--
>  8 files changed, 91 insertions(+), 102 deletions(-)
> 
> -- 
> 2.17.1


More information about the dev mailing list