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 <[email protected]> On Behalf Of Anoob Joseph
> Sent: Sunday, October 13, 2019 8:40 PM
> To: [email protected]; Pablo de Lara <[email protected]>
> Cc: Anoob Joseph <[email protected]>; Fiona Trahe
> <[email protected]>; [email protected]; Narayana Prasad
> <[email protected]>; Shally Verma <[email protected]>; Ankur
> Dwivedi <[email protected]>; Kanaka Durga Kotamarthy
> <[email protected]>; Sunila Sahu <[email protected]>; Tejasree
> Kondoj <[email protected]>; [email protected]
> 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