Lines Matching refs:virtqueue

56 struct virtqueue {  struct
121 static int virtqueue_init_indirect(struct virtqueue *vq, int);
122 static void virtqueue_free_indirect(struct virtqueue *vq);
123 static void virtqueue_init_indirect_list(struct virtqueue *,
126 static void vq_ring_init(struct virtqueue *);
127 static void vq_ring_update_avail(struct virtqueue *, uint16_t);
128 static uint16_t vq_ring_enqueue_segments(struct virtqueue *,
130 static bool vq_ring_use_indirect(struct virtqueue *, int);
131 static void vq_ring_enqueue_indirect(struct virtqueue *, void *,
133 static int vq_ring_enable_interrupt(struct virtqueue *, uint16_t);
134 static int vq_ring_must_notify_host(struct virtqueue *);
135 static void vq_ring_notify_host(struct virtqueue *);
136 static void vq_ring_free_chain(struct virtqueue *, uint16_t);
138 SDT_PROVIDER_DEFINE(virtqueue);
139 SDT_PROBE_DEFINE6(virtqueue, , enqueue_segments, entry, "struct virtqueue *",
141 SDT_PROBE_DEFINE1(virtqueue, , enqueue_segments, return, "uint16_t");
154 struct vq_alloc_info *info, struct virtqueue **vqp) in virtqueue_alloc()
156 struct virtqueue *vq; in virtqueue_alloc()
180 vq = malloc(sizeof(struct virtqueue) + in virtqueue_alloc()
231 virtqueue_init_indirect(struct virtqueue *vq, int indirect_size) in virtqueue_init_indirect()
274 virtqueue_free_indirect(struct virtqueue *vq) in virtqueue_free_indirect()
295 virtqueue_init_indirect_list(struct virtqueue *vq, in virtqueue_init_indirect_list()
308 virtqueue_reinit(struct virtqueue *vq, uint16_t size) in virtqueue_reinit()
350 virtqueue_free(struct virtqueue *vq) in virtqueue_free()
372 virtqueue_paddr(struct virtqueue *vq) in virtqueue_paddr()
379 virtqueue_desc_paddr(struct virtqueue *vq) in virtqueue_desc_paddr()
386 virtqueue_avail_paddr(struct virtqueue *vq) in virtqueue_avail_paddr()
393 virtqueue_used_paddr(struct virtqueue *vq) in virtqueue_used_paddr()
400 virtqueue_index(struct virtqueue *vq) in virtqueue_index()
407 virtqueue_size(struct virtqueue *vq) in virtqueue_size()
414 virtqueue_nfree(struct virtqueue *vq) in virtqueue_nfree()
421 virtqueue_empty(struct virtqueue *vq) in virtqueue_empty()
428 virtqueue_full(struct virtqueue *vq) in virtqueue_full()
435 virtqueue_notify(struct virtqueue *vq) in virtqueue_notify()
447 virtqueue_nused(struct virtqueue *vq) in virtqueue_nused()
460 virtqueue_intr_filter(struct virtqueue *vq) in virtqueue_intr_filter()
472 virtqueue_intr(struct virtqueue *vq) in virtqueue_intr()
479 virtqueue_enable_intr(struct virtqueue *vq) in virtqueue_enable_intr()
486 virtqueue_postpone_intr(struct virtqueue *vq, vq_postpone_t hint) in virtqueue_postpone_intr()
511 virtqueue_disable_intr(struct virtqueue *vq) in virtqueue_disable_intr()
524 virtqueue_enqueue(struct virtqueue *vq, void *cookie, struct sglist *sg, in virtqueue_enqueue()
577 virtqueue_dequeue(struct virtqueue *vq, uint32_t *len) in virtqueue_dequeue()
605 virtqueue_poll(struct virtqueue *vq, uint32_t *len) in virtqueue_poll()
617 virtqueue_drain(struct virtqueue *vq, int *last) in virtqueue_drain()
640 virtqueue_dump(struct virtqueue *vq) in virtqueue_dump()
659 vq_ring_init(struct virtqueue *vq) in vq_ring_init()
677 vq_ring_update_avail(struct virtqueue *vq, uint16_t desc_idx) in vq_ring_update_avail()
700 vq_ring_enqueue_segments(struct virtqueue *vq, struct vring_desc *desc, in vq_ring_enqueue_segments()
708 SDT_PROBE6(virtqueue, , enqueue_segments, entry, vq, desc, head_idx, in vq_ring_enqueue_segments()
730 SDT_PROBE1(virtqueue, , enqueue_segments, return, idx); in vq_ring_enqueue_segments()
735 vq_ring_use_indirect(struct virtqueue *vq, int needed) in vq_ring_use_indirect()
751 vq_ring_enqueue_indirect(struct virtqueue *vq, void *cookie, in vq_ring_enqueue_indirect()
791 vq_ring_enable_interrupt(struct virtqueue *vq, uint16_t ndesc) in vq_ring_enable_interrupt()
820 vq_ring_must_notify_host(struct virtqueue *vq) in vq_ring_must_notify_host()
837 vq_ring_notify_host(struct virtqueue *vq) in vq_ring_notify_host()
845 vq_ring_free_chain(struct virtqueue *vq, uint16_t desc_idx) in vq_ring_free_chain()