[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFC PATCH v4 04/20] vhost: Make vhost_virtqueue_{start,stop} public
From: |
Eugenio Pérez |
Subject: |
[RFC PATCH v4 04/20] vhost: Make vhost_virtqueue_{start,stop} public |
Date: |
Fri, 1 Oct 2021 09:05:47 +0200 |
The easier way to reset vhost behavior after enabling shadow virtqueue
is to call vhost_virtqueue_start. Also, vhost_virtqueue_stop provides
the simmetrical call to it, and it will be used.
Signed-off-by: Eugenio Pérez <eperezma@redhat.com>
---
include/hw/virtio/vhost.h | 4 ++++
hw/virtio/vhost.c | 12 ++++--------
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/include/hw/virtio/vhost.h b/include/hw/virtio/vhost.h
index 045d0fd9f2..1cdcded4c5 100644
--- a/include/hw/virtio/vhost.h
+++ b/include/hw/virtio/vhost.h
@@ -130,6 +130,10 @@ int vhost_net_set_backend(struct vhost_dev *hdev,
struct vhost_vring_file *file);
int vhost_device_iotlb_miss(struct vhost_dev *dev, uint64_t iova, int write);
+int vhost_virtqueue_start(struct vhost_dev *dev, struct VirtIODevice *vdev,
+ struct vhost_virtqueue *vq, unsigned idx);
+void vhost_virtqueue_stop(struct vhost_dev *dev, struct VirtIODevice *vdev,
+ struct vhost_virtqueue *vq, unsigned idx);
int vhost_dev_get_config(struct vhost_dev *hdev, uint8_t *config,
uint32_t config_len, Error **errp);
int vhost_dev_set_config(struct vhost_dev *dev, const uint8_t *data,
diff --git a/hw/virtio/vhost.c b/hw/virtio/vhost.c
index e040f631c6..5d2aa6d72d 100644
--- a/hw/virtio/vhost.c
+++ b/hw/virtio/vhost.c
@@ -1049,10 +1049,8 @@ out:
return ret;
}
-static int vhost_virtqueue_start(struct vhost_dev *dev,
- struct VirtIODevice *vdev,
- struct vhost_virtqueue *vq,
- unsigned idx)
+int vhost_virtqueue_start(struct vhost_dev *dev, struct VirtIODevice *vdev,
+ struct vhost_virtqueue *vq, unsigned idx)
{
BusState *qbus = BUS(qdev_get_parent_bus(DEVICE(vdev)));
VirtioBusState *vbus = VIRTIO_BUS(qbus);
@@ -1171,10 +1169,8 @@ fail_alloc_desc:
return r;
}
-static void vhost_virtqueue_stop(struct vhost_dev *dev,
- struct VirtIODevice *vdev,
- struct vhost_virtqueue *vq,
- unsigned idx)
+void vhost_virtqueue_stop(struct vhost_dev *dev, struct VirtIODevice *vdev,
+ struct vhost_virtqueue *vq, unsigned idx)
{
int vhost_vq_index = dev->vhost_ops->vhost_get_vq_index(dev, idx);
struct vhost_vring_state state = {
--
2.27.0
- [RFC PATCH v4 00/20] vDPA shadow virtqueue, Eugenio Pérez, 2021/10/01
- [RFC PATCH v4 02/20] virtio-net: Honor VIRTIO_CONFIG_S_DEVICE_STOPPED, Eugenio Pérez, 2021/10/01
- [RFC PATCH v4 03/20] virtio: Add virtio_queue_is_host_notifier_enabled, Eugenio Pérez, 2021/10/01
- [RFC PATCH v4 04/20] vhost: Make vhost_virtqueue_{start,stop} public,
Eugenio Pérez <=
- [RFC PATCH v4 01/20] virtio: Add VIRTIO_F_QUEUE_STATE, Eugenio Pérez, 2021/10/01
- [RFC PATCH v4 05/20] vhost: Add x-vhost-enable-shadow-vq qmp, Eugenio Pérez, 2021/10/01
[RFC PATCH v4 06/20] vhost: Add VhostShadowVirtqueue, Eugenio Pérez, 2021/10/01
[RFC PATCH v4 07/20] vdpa: Register vdpa devices in a list, Eugenio Pérez, 2021/10/01
[RFC PATCH v4 08/20] vhost: Route guest->host notification through shadow virtqueue, Eugenio Pérez, 2021/10/01