[dpdk-dev] [PATCH v3 0/2] ring library with c11 memory model bug fix and optimization

Thomas Monjalon thomas at monjalon.net
Wed Oct 31 17:58:15 CET 2018


Last call for review.

Qian, it probably makes to have a validation test of this patchset.


31/10/2018 11:26, Gavin Hu:
> v2->v3
> 1) reword the change and relocate it in the release note.
> 
> v1->v2
> 1) Add the changes to the 18.11 release note.
> 
> V1:
> Updated the ring library with C11 memory model including the following changes
> 1) Synchronize the load and store of the tail to ensure the enqueue/dequeue
>    operations are really completed before seen by the observers on the other
>    sides.
> 2) Move the atomic load of head above the loop for the first iteration,it is
>    not unnecessary and degrade performance for the other iteration as the head
>    was loaded in the failure case of CAS.
> 
> Gavin Hu (2):
>   ring: synchronize the load and store of the tail
>   ring: move the atomic load of head above the loop
> 
>  doc/guides/rel_notes/release_18_11.rst |  7 +++++++
>  lib/librte_ring/rte_ring_c11_mem.h     | 24 +++++++++++++++++-------
>  2 files changed, 24 insertions(+), 7 deletions(-)





More information about the dev mailing list