The similar changes for the packed ring were measured 10% performance lift and were merged. [1] In principle, less restrictive barriers generate better performance. However, no real performance lift was measured with the split ring on the limited number of existing HW implementations, the reason may be they are not in the critical path. To keep consistent with the barrier usage in the packed ring implementation and be future-proof, we still believe the patches make sense, we are looking forward to verify the performance when new HWs are available.
[1] https://patchwork.dpdk.org/cover/59283/ Joyce Kong (2): virtio: one way barrier for split vring used idx virtio: one way barrier for split vring avail idx drivers/net/virtio/virtio_ethdev.c | 9 ++-- drivers/net/virtio/virtio_ring.h | 2 +- drivers/net/virtio/virtio_rxtx.c | 46 ++++++++-------- drivers/net/virtio/virtio_rxtx_simple_neon.c | 5 +- drivers/net/virtio/virtio_rxtx_simple_sse.c | 5 +- .../net/virtio/virtio_user/virtio_user_dev.c | 8 +-- drivers/net/virtio/virtqueue.c | 2 +- drivers/net/virtio/virtqueue.h | 53 ++++++++++++++++--- lib/librte_vhost/virtio_net.c | 19 +++---- 9 files changed, 90 insertions(+), 59 deletions(-) -- 2.17.1