On 09/09/2016 05:39 AM, Zhihong Wang wrote:
>
> +static inline void __attribute__((always_inline))
> +notify_guest(struct virtio_net *dev, struct vhost_virtqueue *vq)
> +{
> rte_smp_wmb();
> -
> - *(volatile uint16_t *)&vq->used->idx += count;
> - vq->last_used_idx += count;
> - vhost_log_used_vring(dev, vq,
> - offsetof(struct vring_used, idx),
> - sizeof(vq->used->idx));
> -
> - /* flush used->idx update before we read avail->flags. */
Please don't remove comments if not justified.
Here the comment is important, as it explains why the barrier is needed.
> + *(volatile uint16_t *)&vq->used->idx = vq->last_used_idx;
> + vhost_log_used_vring(dev, vq, offsetof(struct vring_used, idx),
> + sizeof(vq->used->idx));
> rte_mb();
> -
> - /* Kick the guest if necessary. */
> if (!(vq->avail->flags & VRING_AVAIL_F_NO_INTERRUPT)
> && (vq->callfd >= 0))
> eventfd_write(vq->callfd, (eventfd_t)1);
> - return count;
> }
- [dpdk-dev] [PATCH v4 3/6] vhost: remove useless volat... Zhihong Wang
- [dpdk-dev] [PATCH v4 4/6] vhost: add desc prefetch Zhihong Wang
- [dpdk-dev] [PATCH v4 5/6] vhost: batch update used ri... Zhihong Wang
- [dpdk-dev] [PATCH v4 6/6] vhost: optimize cache acces... Zhihong Wang
- [dpdk-dev] [PATCH v5 0/6] vhost: optimize enqueue Zhihong Wang
- [dpdk-dev] [PATCH v5 1/6] vhost: fix windows vm hang Zhihong Wang
- [dpdk-dev] [PATCH v5 2/6] vhost: rewrite enqueue Zhihong Wang
- [dpdk-dev] [PATCH v5 2/6] vhost: rewrite enqueue Maxime Coquelin
- [dpdk-dev] [PATCH v5 2/6] vhost: rewrite enqu... Wang, Zhihong
- [dpdk-dev] [PATCH v5 2/6] vhost: rewrite ... Maxime Coquelin
- [dpdk-dev] [PATCH v5 2/6] vhost: rewrite enqueue Maxime Coquelin
- [dpdk-dev] [PATCH v5 2/6] vhost: rewrite enqu... Wang, Zhihong
- [dpdk-dev] [PATCH v5 2/6] vhost: rewrite enqueue Yuanhan Liu
- [dpdk-dev] [PATCH v5 2/6] vhost: rewrite enqu... Wang, Zhihong
- [dpdk-dev] [PATCH v5 3/6] vhost: remove useless volat... Zhihong Wang
- [dpdk-dev] [PATCH v5 4/6] vhost: add desc prefetch Zhihong Wang
- [dpdk-dev] [PATCH v5 5/6] vhost: batch update used ri... Zhihong Wang
- [dpdk-dev] [PATCH v5 5/6] vhost: batch update use... Maxime Coquelin
- [dpdk-dev] [PATCH v5 5/6] vhost: batch update... Wang, Zhihong
- [dpdk-dev] [PATCH v5 5/6] vhost: batch up... Maxime Coquelin
- [dpdk-dev] [PATCH v5 5/6] vhost: bat... Yuanhan Liu

