[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PULL v3 06/62] vhost: Expose vhost_svq_available_slots()
|
From: |
Michael S. Tsirkin |
|
Subject: |
[PULL v3 06/62] vhost: Expose vhost_svq_available_slots() |
|
Date: |
Sun, 22 Oct 2023 05:22:15 -0400 |
From: Hawkins Jiawei <yin31149@gmail.com>
Next patches in this series will delay the polling
and checking of buffers until either the SVQ is
full or control commands shadow buffers are full,
no longer perform an immediate poll and check of
the device's used buffers for each CVQ state load command.
To achieve this, this patch exposes
vhost_svq_available_slots(), allowing QEMU to know
whether the SVQ is full.
Signed-off-by: Hawkins Jiawei <yin31149@gmail.com>
Acked-by: Eugenio Pérez <eperezma@redhat.com>
Message-Id:
<25938079f0bd8185fd664c64e205e629f7a966be.1697165821.git.yin31149@gmail.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
---
hw/virtio/vhost-shadow-virtqueue.h | 1 +
hw/virtio/vhost-shadow-virtqueue.c | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/hw/virtio/vhost-shadow-virtqueue.h
b/hw/virtio/vhost-shadow-virtqueue.h
index 5bce67837b..19c842a15b 100644
--- a/hw/virtio/vhost-shadow-virtqueue.h
+++ b/hw/virtio/vhost-shadow-virtqueue.h
@@ -114,6 +114,7 @@ typedef struct VhostShadowVirtqueue {
bool vhost_svq_valid_features(uint64_t features, Error **errp);
+uint16_t vhost_svq_available_slots(const VhostShadowVirtqueue *svq);
void vhost_svq_push_elem(VhostShadowVirtqueue *svq,
const VirtQueueElement *elem, uint32_t len);
int vhost_svq_add(VhostShadowVirtqueue *svq, const struct iovec *out_sg,
diff --git a/hw/virtio/vhost-shadow-virtqueue.c
b/hw/virtio/vhost-shadow-virtqueue.c
index e731b1d2ea..fc5f408f77 100644
--- a/hw/virtio/vhost-shadow-virtqueue.c
+++ b/hw/virtio/vhost-shadow-virtqueue.c
@@ -66,7 +66,7 @@ bool vhost_svq_valid_features(uint64_t features, Error **errp)
*
* @svq: The svq
*/
-static uint16_t vhost_svq_available_slots(const VhostShadowVirtqueue *svq)
+uint16_t vhost_svq_available_slots(const VhostShadowVirtqueue *svq)
{
return svq->num_free;
}
--
MST
- [PULL v3 00/62] virtio,pc,pci: features, cleanups, Michael S. Tsirkin, 2023/10/22
- [PULL v3 01/62] vdpa: Use iovec for vhost_vdpa_net_cvq_add(), Michael S. Tsirkin, 2023/10/22
- [PULL v3 03/62] vdpa: Check device ack in vhost_vdpa_net_load_rx_mode(), Michael S. Tsirkin, 2023/10/22
- [PULL v3 02/62] vdpa: Avoid using vhost_vdpa_net_load_*() outside vhost_vdpa_net_load(), Michael S. Tsirkin, 2023/10/22
- [PULL v3 05/62] vdpa: Introduce cursors to vhost_vdpa_net_loadx(), Michael S. Tsirkin, 2023/10/22
- [PULL v3 07/62] vdpa: Send cvq state load commands in parallel, Michael S. Tsirkin, 2023/10/22
- [PULL v3 04/62] vdpa: Move vhost_svq_poll() to the caller of vhost_vdpa_net_cvq_add(), Michael S. Tsirkin, 2023/10/22
- [PULL v3 09/62] vhost-user: tighten "reply_supported" scope in "set_vring_addr", Michael S. Tsirkin, 2023/10/22
- [PULL v3 08/62] vhost-user: strip superfluous whitespace, Michael S. Tsirkin, 2023/10/22
- [PULL v3 06/62] vhost: Expose vhost_svq_available_slots(),
Michael S. Tsirkin <=
- [PULL v3 10/62] vhost-user: factor out "vhost_user_write_sync", Michael S. Tsirkin, 2023/10/22
- [PULL v3 11/62] vhost-user: flatten "enforce_reply" into "vhost_user_write_sync", Michael S. Tsirkin, 2023/10/22
- [PULL v3 13/62] vhost-user: allow "vhost_set_vring" to wait for a reply, Michael S. Tsirkin, 2023/10/22
- [PULL v3 14/62] vhost-user: call VHOST_USER_SET_VRING_ENABLE synchronously, Michael S. Tsirkin, 2023/10/22
- [PULL v3 15/62] memory: initialize 'fv' in MemoryRegionCache to make Coverity happy, Michael S. Tsirkin, 2023/10/22
- [PULL v3 12/62] vhost-user: hoist "write_sync", "get_features", "get_u64", Michael S. Tsirkin, 2023/10/22
- [PULL v3 17/62] vhost-backend: remove vhost_kernel_reset_device(), Michael S. Tsirkin, 2023/10/22
- [PULL v3 16/62] vhost-user: do not send RESET_OWNER on device reset, Michael S. Tsirkin, 2023/10/22
- [PULL v3 19/62] hw/i386/acpi-build: Remove build-time assertion on PIIX/ICH9 reset registers being identical, Michael S. Tsirkin, 2023/10/22
- [PULL v3 21/62] hw/display: fix memleak from virtio_add_resource, Michael S. Tsirkin, 2023/10/22