[dpdk-dev] [PATCH v9 2/3] devtools: prevent use of rte atomic APIs in future patches

Phil Yang Phil.Yang at arm.com
Fri Jul 17 11:41:13 CEST 2020


Thomas Monjalon <thomas at monjalon.net> wrties:


> > In order to deprecate the rte_atomic and rte_smp barrier APIs, prevent
> > the patches from using these APIs and __sync builtins in new code.
> >
> > On x86 the __atomic_thread_fence(__ATOMIC_SEQ_CST) is quite
> expensive
> > for SMP case. Flag the new code which use __atomic_thread_fence API.
> 
> When receiving such message error, I would look at the explanations
> in the git history. Unfortunately this commit log does not reference
> the documentation. Please add a link and give the 4 direct replacements
> in this commit log.

I will update it in v10. Thanks.
How about putting it like this? (Truncated the long link to pass the long line check)

"
In order to deprecate the rte_atomic and rte_smp barrier APIs[1], prevent
the patches from using these APIs and __sync builtins in new code. Please
use __atomic builtins instead of __sync builtins, rte_atomicNN_xxx and
rte_smp_[r/w]mb APIs.

On x86 the __atomic_thread_fence(__ATOMIC_SEQ_CST) is quite expensive for
SMP case. Flag the new code which use __atomic_thread_fence API. Please
use rte_thread_fence API instead of __atomic_thread_fence.

[1] Refer to the locks-and-atomic-operations section in
https://doc.dpdk.org/guides/prog_guide/writing_efficient_code.html.
"


More information about the dev mailing list