Home
last modified time | relevance | path

Searched refs:svq (Results 1 – 8 of 8) sorted by relevance

/qemu/hw/virtio/
H A Dvhost-shadow-virtqueue.c69 uint16_t vhost_svq_available_slots(const VhostShadowVirtqueue *svq) in vhost_svq_available_slots() argument
71 return svq->num_free; in vhost_svq_available_slots()
83 static bool vhost_svq_translate_addr(const VhostShadowVirtqueue *svq, in vhost_svq_translate_addr() argument
104 map = vhost_iova_tree_find_gpa(svq->iova_tree, &needle); in vhost_svq_translate_addr()
111 map = vhost_iova_tree_find_iova(svq->iova_tree, &needle); in vhost_svq_translate_addr()
154 static bool vhost_svq_vring_write_descs(VhostShadowVirtqueue *svq, hwaddr *sg, in vhost_svq_vring_write_descs() argument
159 uint16_t i = svq->free_head, last = svq->free_head; in vhost_svq_vring_write_descs()
162 vring_desc_t *descs = svq->vring.desc; in vhost_svq_vring_write_descs()
169 ok = vhost_svq_translate_addr(svq, sg, iovec, num, addr); in vhost_svq_vring_write_descs()
177 descs[i].next = cpu_to_le16(svq->desc_next[i]); in vhost_svq_vring_write_descs()
[all …]
H A Dvhost-shadow-virtqueue.h41 typedef int (*VirtQueueAvailCallback)(VhostShadowVirtqueue *svq,
117 uint16_t vhost_svq_available_slots(const VhostShadowVirtqueue *svq);
118 void vhost_svq_push_elem(VhostShadowVirtqueue *svq,
120 int vhost_svq_add(VhostShadowVirtqueue *svq, const struct iovec *out_sg,
124 size_t vhost_svq_poll(VhostShadowVirtqueue *svq, size_t num);
126 void vhost_svq_set_svq_kick_fd(VhostShadowVirtqueue *svq, int svq_kick_fd);
127 void vhost_svq_set_svq_call_fd(VhostShadowVirtqueue *svq, int call_fd);
128 void vhost_svq_get_vring_addr(const VhostShadowVirtqueue *svq,
130 size_t vhost_svq_driver_area_size(const VhostShadowVirtqueue *svq);
131 size_t vhost_svq_device_area_size(const VhostShadowVirtqueue *svq);
[all …]
H A Dvhost-vdpa.c593 VhostShadowVirtqueue *svq; in vhost_vdpa_init_svq() local
595 svq = vhost_svq_new(v->shadow_vq_ops, v->shadow_vq_ops_opaque); in vhost_vdpa_init_svq()
596 g_ptr_array_add(shadow_vqs, svq); in vhost_vdpa_init_svq()
1068 VhostShadowVirtqueue *svq, unsigned idx, in vhost_vdpa_svq_set_fds() argument
1074 const EventNotifier *event_notifier = &svq->hdev_kick; in vhost_vdpa_svq_set_fds()
1077 r = event_notifier_init(&svq->hdev_kick, 0); in vhost_vdpa_svq_set_fds()
1083 r = event_notifier_init(&svq->hdev_call, 0); in vhost_vdpa_svq_set_fds()
1096 event_notifier = &svq->hdev_call; in vhost_vdpa_svq_set_fds()
1107 event_notifier_set_handler(&svq->hdev_call, NULL); in vhost_vdpa_svq_set_fds()
1110 event_notifier_cleanup(&svq->hdev_kick); in vhost_vdpa_svq_set_fds()
[all …]
H A Dvirtio-balloon.c248 virtqueue_push(s->svq, s->stats_vq_elem, 0); in balloon_stats_poll_cb()
249 virtio_notify(vdev, s->svq); in balloon_stats_poll_cb()
894 s->svq = virtio_add_queue(vdev, 128, virtio_balloon_receive_stats); in virtio_balloon_device_realize()
934 virtio_delete_queue(s->svq); in virtio_balloon_device_unrealize()
953 virtqueue_unpop(s->svq, s->stats_vq_elem, 0); in virtio_balloon_device_reset()
966 (status & VIRTIO_CONFIG_S_DRIVER_OK) && virtqueue_rewind(s->svq, 1)) { in virtio_balloon_set_status()
969 virtio_balloon_receive_stats(vdev, s->svq); in virtio_balloon_set_status()
H A Dtrace-events61 …base(void *dev, unsigned int index, unsigned int num, bool svq) "dev: %p index: %u num: %u svq: %d"
62 …base(void *dev, unsigned int index, unsigned int num, bool svq) "dev: %p index: %u num: %u svq: %d"
/qemu/net/
H A Dvhost-vdpa.c624 VhostShadowVirtqueue *svq = g_ptr_array_index(s->vhost_vdpa.shadow_vqs, 0); in vhost_vdpa_net_cvq_add() local
627 r = vhost_svq_add(svq, out_sg, out_num, NULL, in_sg, in_num, NULL, NULL); in vhost_vdpa_net_cvq_add()
646 VhostShadowVirtqueue *svq = g_ptr_array_index(s->vhost_vdpa.shadow_vqs, 0); in vhost_vdpa_net_svq_poll() local
647 return vhost_svq_poll(svq, cmds_in_flight); in vhost_vdpa_net_svq_poll()
702 VhostShadowVirtqueue *svq = g_ptr_array_index(s->vhost_vdpa.shadow_vqs, 0); in vhost_vdpa_net_load_cmd() local
707 if (vhost_svq_available_slots(svq) < 2 || in vhost_vdpa_net_load_cmd()
1457 static int vhost_vdpa_net_handle_ctrl_avail(VhostShadowVirtqueue *svq, in vhost_vdpa_net_handle_ctrl_avail() argument
1536 virtio_net_handle_ctrl_iov(svq->vdev, &model_in, 1, &out, 1); in vhost_vdpa_net_handle_ctrl_avail()
1547 vhost_svq_push_elem(svq, elem, MIN(in_len, sizeof(status))); in vhost_vdpa_net_handle_ctrl_avail()
1659 bool svq, in net_vhost_vdpa_init() argument
[all …]
/qemu/include/hw/virtio/
H A Dvirtio-balloon.h46 VirtQueue *ivq, *dvq, *svq, *free_page_vq, *reporting_vq; member
/qemu/qapi/
H A Dnet.json513 # @x-svq: Start device with (experimental) shadow virtqueue.
518 # @unstable: Member @x-svq is experimental.
527 '*x-svq': {'type': 'bool', 'features' : [ 'unstable'] } } }