Hi Anoob,

This is a typical producer-consumer case, enqueue and dequeue operations must 
be conducted in a synchronized way, otherwise stale or earlier-than-arrival 
data will be got. 
Out-of-synchronization issues are more prone to happen on weak memory ordered 
platforms, like arm and PPC, if execution in the program order is assumed. 
I see in this patch MOD_INC() and other reads/writes of the indexes might get 
reordered with regard to real enqueue and deque operations, this may cause 
synchronization errors.
I have a fix for rte ring using C11 to keep synchronized operations, please 
refer to: http://patches.dpdk.org/patch/47733/ 
/Gavin

> -----Original Message-----
> From: dev <dev-boun...@dpdk.org> On Behalf Of Anoob Joseph
> Sent: Sunday, October 13, 2019 8:40 PM
> To: akhil.go...@nxp.com; Pablo de Lara <pablo.de.lara.gua...@intel.com>
> Cc: Anoob Joseph <ano...@marvell.com>; Fiona Trahe
> <fiona.tr...@intel.com>; jer...@marvell.com; Narayana Prasad
> <pathr...@marvell.com>; Shally Verma <shal...@marvell.com>; Ankur
> Dwivedi <adwiv...@marvell.com>; Kanaka Durga Kotamarthy
> <kkotamar...@marvell.com>; Sunila Sahu <ss...@marvell.com>; Tejasree
> Kondoj <ktejas...@marvell.com>; dev@dpdk.org
> Subject: [dpdk-dev] [PATCH v2 07/12] crypto/octeontx2: add
> enqueue/dequeue ops
> 
> This patch adds the enqueue burst and dequeue burst callbacks for the
> OCTEON TX2 crypto driver.

<snip>

Reply via email to