On 08/10/2019 10:55, Ruifeng Wang wrote:
Distributor and worker threads rely on data structs in cache line
for synchronization. The shared data structs were not protected.
This caused deadlock issue on weaker memory ordering platforms as
aarch64.
Fix this issue by adding memory barriers to ensure synchronization
among cores.
Bugzilla ID: 342
Fixes: 775003ad2f96 ("distributor: add new burst-capable library")
Cc: sta...@dpdk.org
Signed-off-by: Ruifeng Wang <ruifeng.w...@arm.com>
Reviewed-by: Gavin Hu <gavin...@arm.com>
---
lib/librte_distributor/rte_distributor.c | 28 ++++++++++------
lib/librte_distributor/rte_distributor_v20.c | 34 +++++++++++++-------
2 files changed, 41 insertions(+), 21 deletions(-)
--snip--
I tested this on my system, and saw no performance degradation. Looks
good. Thanks.
Acked-by: David Hunt <david.h...@intel.com>