> -----Original Message----- > From: Jerin Jacob <[email protected]> > Sent: Tuesday, July 7, 2020 10:30 PM > To: Phil Yang <[email protected]> > Cc: [email protected]; Erik Gabriel Carrillo <[email protected]>; > dpdk-dev <[email protected]>; [email protected]; Honnappa Nagarahalli > <[email protected]>; David Christensen > <[email protected]>; Ruifeng Wang <[email protected]>; > Dharmik Thakkar <[email protected]>; nd <[email protected]>; David > Marchand <[email protected]>; Ray Kinsella <[email protected]>; > Neil Horman <[email protected]>; [email protected] > Subject: Re: [dpdk-dev] [PATCH v3 4/4] eventdev: relax smp barriers with > C11 atomics > > On Tue, Jul 7, 2020 at 4:45 PM Phil Yang <[email protected]> wrote: > > > > The impl_opaque field is shared between the timer arm and cancel > > operations. Meanwhile, the state flag acts as a guard variable to > > make sure the update of impl_opaque is synchronized. The original > > code uses rte_smp barriers to achieve that. This patch uses C11 > > atomics with an explicit one-way memory barrier instead of full > > barriers rte_smp_w/rmb() to avoid the unnecessary barrier on aarch64. > > > > Since compilers can generate the same instructions for volatile and > > non-volatile variable in C11 __atomics built-ins, so remain the volatile > > keyword in front of state enum to avoid the ABI break issue. > > > > Signed-off-by: Phil Yang <[email protected]> > > Reviewed-by: Dharmik Thakkar <[email protected]> > > Reviewed-by: Ruifeng Wang <[email protected]> > > Acked-by: Erik Gabriel Carrillo <[email protected]> > > > Could you fix the following: > > WARNING:TYPO_SPELLING: 'opague' may be misspelled - perhaps 'opaque'? > #184: FILE: lib/librte_eventdev/rte_event_timer_adapter.c:1161: > + * specific opague data under the correct state. Done.
Thanks, Phil

