]> git.droids-corp.org - dpdk.git/blobdiff - drivers/net/virtio/virtio_user/virtio_user_dev.c
net/virtio: improve perf via one-way barriers on used flag
[dpdk.git] / drivers / net / virtio / virtio_user / virtio_user_dev.c
index 7911c398be8eccd567242f8d2f43144c68f908f7..1c575d0cdd521119eb99423cb92a6df228f03ba7 100644 (file)
@@ -698,8 +698,8 @@ virtio_user_handle_cq_packed(struct virtio_user_dev *dev, uint16_t queue_idx)
                if (vq->used_wrap_counter)
                        flags |= VRING_PACKED_DESC_F_AVAIL_USED;
 
-               rte_smp_wmb();
-               vring->desc[vq->used_idx].flags = flags;
+               __atomic_store_n(&vring->desc[vq->used_idx].flags, flags,
+                                __ATOMIC_RELEASE);
 
                vq->used_idx += n_descs;
                if (vq->used_idx >= dev->queue_size) {