vhost: fix file descriptors naming
Previous vhost implementation wrongly name kickfd as callfd and callfd as kickfd. It is functional correct, but causes confusion. Exchange kickfd and callfd to avoid confusion. Signed-off-by: Huawei Xie <huawei.xie@intel.com> Acked-by: Changchun Ouyang <changchun.ouyang@intel.com> Acked-by: Tetsuya Mukawa <mukawa@igel.co.jp>
This commit is contained in:
parent
aee87dd706
commit
64ab971791
@ -1434,7 +1434,7 @@ put_desc_to_used_list_zcp(struct vhost_virtqueue *vq, uint16_t desc_idx)
|
||||
|
||||
/* Kick the guest if necessary. */
|
||||
if (!(vq->avail->flags & VRING_AVAIL_F_NO_INTERRUPT))
|
||||
eventfd_write((int)vq->kickfd, 1);
|
||||
eventfd_write((int)vq->callfd, 1);
|
||||
}
|
||||
|
||||
/*
|
||||
@ -1627,7 +1627,7 @@ txmbuf_clean_zcp(struct virtio_net *dev, struct vpool *vpool)
|
||||
|
||||
/* Kick guest if required. */
|
||||
if (!(vq->avail->flags & VRING_AVAIL_F_NO_INTERRUPT))
|
||||
eventfd_write((int)vq->kickfd, 1);
|
||||
eventfd_write((int)vq->callfd, 1);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -1775,7 +1775,7 @@ virtio_dev_rx_zcp(struct virtio_net *dev, struct rte_mbuf **pkts,
|
||||
|
||||
/* Kick the guest if necessary. */
|
||||
if (!(vq->avail->flags & VRING_AVAIL_F_NO_INTERRUPT))
|
||||
eventfd_write((int)vq->kickfd, 1);
|
||||
eventfd_write((int)vq->callfd, 1);
|
||||
|
||||
return count;
|
||||
}
|
||||
|
@ -86,8 +86,8 @@ struct vhost_virtqueue {
|
||||
uint16_t vhost_hlen; /**< Vhost header length (varies depending on RX merge buffers. */
|
||||
volatile uint16_t last_used_idx; /**< Last index used on the available ring */
|
||||
volatile uint16_t last_used_idx_res; /**< Used for multiple devices reserving buffers. */
|
||||
eventfd_t callfd; /**< Currently unused as polling mode is enabled. */
|
||||
eventfd_t kickfd; /**< Used to notify the guest (trigger interrupt). */
|
||||
eventfd_t callfd; /**< Used to notify the guest (trigger interrupt). */
|
||||
eventfd_t kickfd; /**< Currently unused as polling mode is enabled. */
|
||||
struct buf_vector buf_vec[BUF_VECTOR_MAX]; /**< for scatter RX. */
|
||||
} __rte_cache_aligned;
|
||||
|
||||
|
@ -180,7 +180,7 @@ virtio_dev_rx(struct virtio_net *dev, uint16_t queue_id,
|
||||
|
||||
/* Kick the guest if necessary. */
|
||||
if (!(vq->avail->flags & VRING_AVAIL_F_NO_INTERRUPT))
|
||||
eventfd_write((int)vq->kickfd, 1);
|
||||
eventfd_write((int)vq->callfd, 1);
|
||||
return count;
|
||||
}
|
||||
|
||||
@ -507,7 +507,7 @@ virtio_dev_merge_rx(struct virtio_net *dev, uint16_t queue_id,
|
||||
|
||||
/* Kick the guest if necessary. */
|
||||
if (!(vq->avail->flags & VRING_AVAIL_F_NO_INTERRUPT))
|
||||
eventfd_write((int)vq->kickfd, 1);
|
||||
eventfd_write((int)vq->callfd, 1);
|
||||
}
|
||||
|
||||
return count;
|
||||
@ -725,6 +725,6 @@ rte_vhost_dequeue_burst(struct virtio_net *dev, uint16_t queue_id,
|
||||
vq->used->idx += entry_success;
|
||||
/* Kick guest if required. */
|
||||
if (!(vq->avail->flags & VRING_AVAIL_F_NO_INTERRUPT))
|
||||
eventfd_write((int)vq->kickfd, 1);
|
||||
eventfd_write((int)vq->callfd, 1);
|
||||
return entry_success;
|
||||
}
|
||||
|
@ -290,13 +290,13 @@ user_get_vring_base(struct vhost_device_ctx ctx,
|
||||
* sent and only sent in vhost_vring_stop.
|
||||
* TODO: cleanup the vring, it isn't usable since here.
|
||||
*/
|
||||
if (((int)dev->virtqueue[VIRTIO_RXQ]->callfd) >= 0) {
|
||||
close(dev->virtqueue[VIRTIO_RXQ]->callfd);
|
||||
dev->virtqueue[VIRTIO_RXQ]->callfd = (eventfd_t)-1;
|
||||
if (((int)dev->virtqueue[VIRTIO_RXQ]->kickfd) >= 0) {
|
||||
close(dev->virtqueue[VIRTIO_RXQ]->kickfd);
|
||||
dev->virtqueue[VIRTIO_RXQ]->kickfd = (eventfd_t)-1;
|
||||
}
|
||||
if (((int)dev->virtqueue[VIRTIO_TXQ]->callfd) >= 0) {
|
||||
close(dev->virtqueue[VIRTIO_TXQ]->callfd);
|
||||
dev->virtqueue[VIRTIO_TXQ]->callfd = (eventfd_t)-1;
|
||||
if (((int)dev->virtqueue[VIRTIO_TXQ]->kickfd) >= 0) {
|
||||
close(dev->virtqueue[VIRTIO_TXQ]->kickfd);
|
||||
dev->virtqueue[VIRTIO_TXQ]->kickfd = (eventfd_t)-1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
@ -595,10 +595,10 @@ set_vring_call(struct vhost_device_ctx ctx, struct vhost_vring_file *file)
|
||||
/* file->index refers to the queue index. The txq is 1, rxq is 0. */
|
||||
vq = dev->virtqueue[file->index];
|
||||
|
||||
if ((int)vq->kickfd >= 0)
|
||||
close((int)vq->kickfd);
|
||||
if ((int)vq->callfd >= 0)
|
||||
close((int)vq->callfd);
|
||||
|
||||
vq->kickfd = file->fd;
|
||||
vq->callfd = file->fd;
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -621,10 +621,10 @@ set_vring_kick(struct vhost_device_ctx ctx, struct vhost_vring_file *file)
|
||||
/* file->index refers to the queue index. The txq is 1, rxq is 0. */
|
||||
vq = dev->virtqueue[file->index];
|
||||
|
||||
if ((int)vq->callfd >= 0)
|
||||
close((int)vq->callfd);
|
||||
if ((int)vq->kickfd >= 0)
|
||||
close((int)vq->kickfd);
|
||||
|
||||
vq->callfd = file->fd;
|
||||
vq->kickfd = file->fd;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user