/freebsd/sys/dev/virtio/ |
H A D | virtqueue.c | 248 vq->vq_queue_index, vq->vq_name); in virtqueue_init_indirect() 321 if (vq->vq_free_cnt != vq->vq_nentries) { in virtqueue_reinit() 325 vq->vq_nentries - vq->vq_free_cnt); in virtqueue_reinit() 331 vq->vq_free_cnt = vq->vq_nentries; in virtqueue_reinit() 334 bzero(vq->vq_ring_mem, vq->vq_ring_size); in virtqueue_reinit() 356 vq->vq_nentries - vq->vq_free_cnt); in virtqueue_free() 463 if (vq->vq_used_cons_idx == vq_htog16(vq, vq->vq_ring.used->idx)) in virtqueue_intr_filter() 475 vq->vq_intrhand(vq->vq_intrhand_arg); in virtqueue_intr() 583 if (vq->vq_used_cons_idx == vq_htog16(vq, vq->vq_ring.used->idx)) in virtqueue_dequeue() 650 vq->vq_name, vq->vq_nentries, vq->vq_free_cnt, virtqueue_nused(vq), in virtqueue_dump() [all …]
|
H A D | virtqueue.h | 72 void virtqueue_free(struct virtqueue *vq); 75 int virtqueue_intr_filter(struct virtqueue *vq); 76 void virtqueue_intr(struct virtqueue *vq); 87 uint16_t virtqueue_index(struct virtqueue *vq); 88 bool virtqueue_full(struct virtqueue *vq); 89 bool virtqueue_empty(struct virtqueue *vq); 90 int virtqueue_size(struct virtqueue *vq); 91 int virtqueue_nfree(struct virtqueue *vq); 92 int virtqueue_nused(struct virtqueue *vq); 93 void virtqueue_notify(struct virtqueue *vq); [all …]
|
/freebsd/contrib/llvm-project/lldb/source/Plugins/Process/Utility/ |
H A D | LinuxPTraceDefines_arm64sve.h | 42 inline uint16_t vl_from_vq(uint16_t vq) { return vq * vq_bytes; } in vl_from_vq() argument 104 inline uint16_t SigZRegSize(uint16_t vq) { return vq * vq_bytes; } in SigZRegSize() argument 105 inline uint16_t SigPRegSize(uint16_t vq) { return vq * vq_bytes / 8; } in SigPRegSize() argument 106 inline uint16_t SigFFRSize(uint16_t vq) { return SigPRegSize(vq); } in SigFFRSize() argument 127 return SigPRegsOffset(vq) + SigPRegSize(vq) * n; in SigPRegOffset() 131 return SigPRegOffset(vq, num_of_pregs) - SigPRegsOffset(vq); in SigpRegsSize() 135 return SigPRegsOffset(vq) + SigpRegsSize(vq); in SigFFROffset() 139 return SigFFROffset(vq) + SigFFRSize(vq) - SigRegsOffset(); in SigRegsSize() 222 inline uint32_t PTraceZRegSize(uint16_t vq) { return SigZRegSize(vq); } in PTraceZRegSize() argument 226 inline uint32_t PTraceFFRSize(uint16_t vq) { return SigFFRSize(vq); } in PTraceFFRSize() argument [all …]
|
/freebsd/contrib/unbound/validator/ |
H A D | validator.c | 294 memset(vq, 0, sizeof(*vq)); in val_new() 309 memset(vq, 0, sizeof(*vq)); in val_restart() 1761 vq->orig_msg->rep, vq->rrset_skip); in processInit() 1809 vq->rrset_skip, &vq->signer_name, &vq->signer_len); in processInit() 2180 &vq->qchase, vq->orig_msg->rep, vq->rrset_skip); in processValidate() 2222 &vq->qchase, vq->chase_reply, vq->key_entry, in processValidate() 2238 &vq->qchase, vq->chase_reply, vq->key_entry, in processValidate() 2255 &vq->qchase, vq->chase_reply, vq->key_entry, &rcode, in processValidate() 2273 &vq->qchase, vq->chase_reply, vq->key_entry, in processValidate() 2290 &vq->qchase, vq->chase_reply, vq->key_entry, in processValidate() [all …]
|
/freebsd/sys/contrib/openzfs/module/zfs/ |
H A D | vdev_queue.c | 275 vq->vq_cqueued |= 1U << p; in vdev_queue_class_add() 471 vq->vq_last_prio = p; in vdev_queue_class_to_issue() 481 vq->vq_vdev = vd; in vdev_queue_init() 501 vq->vq_last_offset = 0; in vdev_queue_init() 567 vq->vq_active++; in vdev_queue_pending_add() 570 vq->vq_nia_credit = 1; in vdev_queue_pending_add() 572 vq->vq_nia_credit--; in vdev_queue_pending_add() 584 vq->vq_active--; in vdev_queue_pending_remove() 587 vq->vq_nia_credit = 0; in vdev_queue_pending_remove() 591 vq->vq_nia_credit++; in vdev_queue_pending_remove() [all …]
|
/freebsd/usr.sbin/bhyve/ |
H A D | virtio.c | 106 for (vq = vs->vs_queues, i = 0; i < nvq; vq++, i++) { in vi_reset_dev() 107 vq->vq_flags = 0; in vi_reset_dev() 111 vq->vq_pfn = 0; in vi_reset_dev() 185 vq->vq_pfn = pfn; in vi_vq_init() 277 vs = vq->vq_vs; in vq_getchain() 315 req.idx = next = vq->vq_avail->ring[idx & (vq->vq_qsize - 1)]; in vq_getchain() 421 vuh = vq->vq_used; in vq_relchain_prepare() 437 vq->vq_used->idx = vq->vq_next_used; in vq_relchain_publish() 485 vs = vq->vq_vs; in vq_endchains() 487 vq->vq_save_used = new_idx = vq->vq_used->idx; in vq_endchains() [all …]
|
H A D | virtio.h | 320 #define VQ_AVAIL_EVENT_IDX(vq) \ argument 321 (*(uint16_t *)&(vq)->vq_used->ring[(vq)->vq_qsize]) 322 #define VQ_USED_EVENT_IDX(vq) \ argument 323 ((vq)->vq_avail->ring[(vq)->vq_qsize]) 329 vq_ring_ready(struct vqueue_info *vq) in vq_ring_ready() argument 332 return (vq->vq_flags & VQ_ALLOC); in vq_ring_ready() 340 vq_has_descs(struct vqueue_info *vq) in vq_has_descs() argument 343 return (vq_ring_ready(vq) && vq->vq_last_avail != in vq_has_descs() 344 vq->vq_avail->idx); in vq_has_descs() 378 vq_kick_enable(struct vqueue_info *vq) in vq_kick_enable() argument [all …]
|
H A D | pci_virtio_net.c | 244 struct vqueue_info *vq; in pci_vtnet_rx() local 295 vq_kick_enable(vq); in pci_vtnet_rx() 296 if (!vq_has_descs(vq)) { in pci_vtnet_rx() 311 vq_kick_disable(vq); in pci_vtnet_rx() 384 vq_relchain_publish(vq); in pci_vtnet_rx() 423 vq_kick_disable(vq); in pci_vtnet_ping_rxq() 484 if (!vq_has_descs(vq)) in pci_vtnet_ping_txq() 489 vq_kick_disable(vq); in pci_vtnet_ping_txq() 502 struct vqueue_info *vq; in pci_vtnet_tx_thread() local 518 vq_kick_enable(vq); in pci_vtnet_tx_thread() [all …]
|
H A D | pci_virtio_console.c | 219 uint16_t num = vq->vq_num; in pci_vtcon_vq_to_port() 412 struct vqueue_info *vq; in pci_vtcon_sock_rx() local 429 if (!vq_has_descs(vq)) { in pci_vtcon_sock_rx() 431 vq_endchains(vq, 1); in pci_vtcon_sock_rx() 444 vq_retchains(vq, 1); in pci_vtcon_sock_rx() 445 vq_endchains(vq, 0); in pci_vtcon_sock_rx() 455 vq_endchains(vq, 1); in pci_vtcon_sock_rx() 570 struct vqueue_info *vq; in pci_vtcon_control_send() local 577 if (!vq_has_descs(vq)) in pci_vtcon_control_send() 589 vq_endchains(vq, 1); in pci_vtcon_control_send() [all …]
|
H A D | pci_virtio_rnd.c | 105 pci_vtrnd_notify(void *vsc, struct vqueue_info *vq) in pci_vtrnd_notify() argument 115 vq_endchains(vq, 0); in pci_vtrnd_notify() 119 while (vq_has_descs(vq)) { in pci_vtrnd_notify() 120 n = vq_getchain(vq, &iov, 1, &req); in pci_vtrnd_notify() 133 vq_relchain(vq, req.idx, len); in pci_vtrnd_notify() 135 vq_endchains(vq, 1); /* Generate interrupt if appropriate. */ in pci_vtrnd_notify()
|
H A D | pci_virtio_input.c | 188 while (vq_has_descs(vq)) { in pci_vtinput_notify_statusq() 192 const int n = vq_getchain(vq, &iov, 1, &req); in pci_vtinput_notify_statusq() 214 vq_relchain(vq, req.idx, sizeof(event)); in pci_vtinput_notify_statusq() 230 vq_relchain(vq, req.idx, sizeof(event)); in pci_vtinput_notify_statusq() 232 vq_endchains(vq, 1); in pci_vtinput_notify_statusq() 512 if (!vq_has_descs(vq)) { in vtinput_eventqueue_send_events() 517 vq_retchains(vq, i); in vtinput_eventqueue_send_events() 527 const int n = vq_getchain(vq, &iov, 1, &req); in vtinput_eventqueue_send_events() 537 vq_relchain(vq, req.idx, 0); in vtinput_eventqueue_send_events() 544 vq_relchain(vq, req.idx, 0); in vtinput_eventqueue_send_events() [all …]
|
H A D | pci_virtio_scsi.c | 575 pci_vtscsi_controlq_notify(void *vsc, struct vqueue_info *vq) in pci_vtscsi_controlq_notify() argument 586 while (vq_has_descs(vq)) { in pci_vtscsi_controlq_notify() 587 n = vq_getchain(vq, iov, VTSCSI_MAXSEG, &req); in pci_vtscsi_controlq_notify() 598 vq_relchain(vq, req.idx, iolen); in pci_vtscsi_controlq_notify() 600 vq_endchains(vq, 1); /* Generate interrupt if appropriate. */ in pci_vtscsi_controlq_notify() 605 pci_vtscsi_eventq_notify(void *vsc __unused, struct vqueue_info *vq) in pci_vtscsi_eventq_notify() argument 607 vq_kick_disable(vq); in pci_vtscsi_eventq_notify() 611 pci_vtscsi_requestq_notify(void *vsc, struct vqueue_info *vq) in pci_vtscsi_requestq_notify() argument 621 q = &sc->vss_queues[vq->vq_num - 2]; in pci_vtscsi_requestq_notify() 623 while (vq_has_descs(vq)) { in pci_vtscsi_requestq_notify() [all …]
|
/freebsd/sys/dev/beri/virtio/network/ |
H A D | if_vtbe.c | 144 struct vqueue_info *vq; in vtbe_txstart_locked() local 159 vq = &sc->vs_queues[0]; in vtbe_txstart_locked() 160 if (!vq_has_descs(vq)) { in vtbe_txstart_locked() 171 if (!vq_ring_ready(vq)) in vtbe_txstart_locked() 174 vq->vq_save_used = be16toh(vq->vq_used->idx); in vtbe_txstart_locked() 345 struct vqueue_info *vq; in vq_init() local 356 vq->vq_pfn = pfn; in vq_init() 378 vq->vq_last_avail = 0; in vq_init() 440 struct vqueue_info *vq; in vtbe_rxfinish_locked() local 449 vq->vq_save_used = be16toh(vq->vq_used->idx); in vtbe_rxfinish_locked() [all …]
|
/freebsd/sys/dev/beri/virtio/ |
H A D | virtio.c | 72 vq_ring_ready(struct vqueue_info *vq) in vq_ring_ready() argument 75 return (vq->vq_flags & VQ_ALLOC); in vq_ring_ready() 79 vq_has_descs(struct vqueue_info *vq) in vq_has_descs() argument 82 return (vq_ring_ready(vq) && vq->vq_last_avail != in vq_has_descs() 83 be16toh(vq->vq_avail->idx)); in vq_has_descs() 128 idx = vq->vq_last_avail; in vq_getchain() 133 head = be16toh(vq->vq_avail->ring[idx & (vq->vq_qsize - 1)]); in vq_getchain() 137 vdir = &vq->vq_desc[next]; in vq_getchain() 173 mask = vq->vq_qsize - 1; in vq_relchain() 174 vu = vq->vq_used; in vq_relchain() [all …]
|
H A D | virtio_block.c | 273 struct vqueue_info *vq; in vtblk_notify() local 277 vq = &sc->vs_queues[0]; in vtblk_notify() 278 if (!vq_ring_ready(vq)) in vtblk_notify() 291 vq->vq_save_used = be16toh(vq->vq_used->idx); in vtblk_notify() 292 while (vq_has_descs(vq)) in vtblk_notify() 293 vtblk_proc(sc, vq); in vtblk_notify() 308 struct vqueue_info *vq; in vq_init() local 314 vq = &sc->vs_queues[0]; in vq_init() 319 vq->vq_pfn = pfn; in vq_init() 340 vq->vq_flags = VQ_ALLOC; in vq_init() [all …]
|
H A D | virtio.h | 59 int vq_ring_ready(struct vqueue_info *vq); 60 int vq_has_descs(struct vqueue_info *vq); 63 int vq_getchain(uint32_t beri_mem_offset, struct vqueue_info *vq, 65 void vq_relchain(struct vqueue_info *vq, struct iovec *iov, int n, uint32_t iolen);
|
/freebsd/sys/dev/virtio/console/ |
H A D | virtio_console.c | 570 struct virtqueue *vq; in vtcon_destroy_ports() local 590 if (vq != NULL) in vtcon_destroy_ports() 613 struct virtqueue *vq; in vtcon_ctrl_event_enqueue() local 659 struct virtqueue *vq; in vtcon_ctrl_event_populate() local 683 struct virtqueue *vq; in vtcon_ctrl_event_drain() local 689 if (vq == NULL) in vtcon_ctrl_event_drain() 901 struct virtqueue *vq; in vtcon_ctrl_task_cb() local 962 struct virtqueue *vq; in vtcon_ctrl_poll() local 1011 struct virtqueue *vq; in vtcon_port_enqueue_buf() local 1056 struct virtqueue *vq; in vtcon_port_populate() local [all …]
|
/freebsd/sys/dev/netmap/ |
H A D | if_vtnet_netmap.h | 71 struct virtqueue *vq = txq->vtntx_vq; in vtnet_netmap_txsync() local 103 err = virtqueue_enqueue(vq, /*cookie=*/txq, sg, in vtnet_netmap_txsync() 114 virtqueue_notify(vq); in vtnet_netmap_txsync() 125 void *token = virtqueue_dequeue(vq, NULL); in vtnet_netmap_txsync() 139 if (interrupts && virtqueue_nfree(vq) < 32) in vtnet_netmap_txsync() 140 virtqueue_postpone_intr(vq, VQ_POSTPONE_LONG); in vtnet_netmap_txsync() 165 struct virtqueue *vq = rxq->vtnrx_vq; in vtnet_netmap_kring_refill() local 192 err = virtqueue_enqueue(vq, /*cookie=*/rxq, &sg, in vtnet_netmap_kring_refill() 260 struct virtqueue *vq = rxq->vtnrx_vq; in vtnet_netmap_rxsync() local 280 token = virtqueue_dequeue(vq, &len); in vtnet_netmap_rxsync() [all …]
|
/freebsd/sys/dev/virtio/random/ |
H A D | virtio_random.c | 273 struct virtqueue *vq; in vtrnd_enqueue() local 276 vq = sc->vtrnd_vq; in vtrnd_enqueue() 278 KASSERT(virtqueue_empty(vq), ("%s: non-empty queue", __func__)); in vtrnd_enqueue() 280 error = virtqueue_enqueue(vq, sc, sc->vtrnd_sg, 0, 1); in vtrnd_enqueue() 284 virtqueue_notify(vq); in vtrnd_enqueue() 290 struct virtqueue *vq; in vtrnd_harvest() local 297 vq = sc->vtrnd_vq; in vtrnd_harvest() 299 cookie = virtqueue_dequeue(vq, &rdlen); in vtrnd_harvest()
|
/freebsd/sys/dev/virtio/balloon/ |
H A D | virtio_balloon.c | 334 struct virtqueue *vq; in vtballoon_inflate() local 338 vq = sc->vtballoon_inflate_vq; in vtballoon_inflate() 358 vtballoon_send_page_frames(sc, vq, i); in vtballoon_inflate() 365 struct virtqueue *vq; in vtballoon_deflate() local 369 vq = sc->vtballoon_deflate_vq; in vtballoon_deflate() 388 vtballoon_send_page_frames(sc, vq, i); in vtballoon_deflate() 405 vtballoon_send_page_frames(struct vtballoon_softc *sc, struct virtqueue *vq, in vtballoon_send_page_frames() argument 419 error = virtqueue_enqueue(vq, vq, &sg, 1, 0); in vtballoon_send_page_frames() 421 virtqueue_notify(vq); in vtballoon_send_page_frames() 428 while ((c = virtqueue_dequeue(vq, NULL)) == NULL) in vtballoon_send_page_frames() [all …]
|
/freebsd/sys/dev/virtio/scmi/ |
H A D | virtio_scmi.c | 60 struct virtqueue *vq; member 274 vq_sz = virtqueue_size(q->vq); in vtscmi_alloc_queues() 333 pdu = virtqueue_dequeue(q->vq, &rx_len); in vtscmi_vq_intr() 358 &sc->vtscmi_queues[VIRTIO_SCMI_CHAN_A2P].vq, in vtscmi_alloc_virtqueues() 365 &sc->vtscmi_queues[VIRTIO_SCMI_CHAN_P2A].vq, in vtscmi_alloc_virtqueues() 450 virtqueue_disable_intr(sc->vtscmi_queues[chan].vq); in virtio_scmi_channel_callback_set() 462 virtqueue_enable_intr(sc->vtscmi_queues[chan].vq); in virtio_scmi_channel_callback_set() 489 ret = virtqueue_enqueue(q->vq, pdu, &pdu->sg, in virtio_scmi_message_enqueue() 492 virtqueue_notify(q->vq); in virtio_scmi_message_enqueue() 512 pdu = virtqueue_dequeue(q->vq, rx_len); in virtio_scmi_message_poll()
|
/freebsd/sys/dev/virtio/pci/ |
H A D | virtio_pci.c | 354 struct virtqueue *vq; in vtpci_alloc_virtqueues() local 365 ~(vm_paddr_t)0, info, &vq); in vtpci_alloc_virtqueues() 372 vtpci_set_vq(cn, vq); in vtpci_alloc_virtqueues() 832 struct virtqueue *vq; in vtpci_reinit_virtqueue() local 836 vq = vqx->vtv_vq; in vtpci_reinit_virtqueue() 842 vtpci_set_vq(cn, vq); in vtpci_reinit_virtqueue() 908 struct virtqueue *vq; in vtpci_vq_intr_filter() local 911 vq = xvq; in vtpci_vq_intr_filter() 920 struct virtqueue *vq; in vtpci_vq_intr() local 922 vq = xvq; in vtpci_vq_intr() [all …]
|
/freebsd/sys/dev/virtio/mmio/ |
H A D | virtio_mmio.c | 512 paddr = virtqueue_paddr(vq); in vtmmio_set_virtqueue() 516 paddr = virtqueue_desc_paddr(vq); in vtmmio_set_virtqueue() 522 paddr = virtqueue_avail_paddr(vq); in vtmmio_set_virtqueue() 528 paddr = virtqueue_used_paddr(vq); in vtmmio_set_virtqueue() 545 struct virtqueue *vq; in vtmmio_alloc_virtqueues() local 575 ~(vm_paddr_t)0, info, &vq); in vtmmio_alloc_virtqueues() 914 struct virtqueue *vq; in vtmmio_reinit_virtqueue() local 919 vq = vqx->vtv_vq; in vtmmio_reinit_virtqueue() 1002 struct virtqueue *vq; in vtmmio_vq_intr() local 1021 vq = vqx->vtv_vq; in vtmmio_vq_intr() [all …]
|
/freebsd/sys/dev/virtio/scsi/ |
H A D | virtio_scsi.c | 1100 struct virtqueue *vq; in vtscsi_execute_scsi_cmd() local 1136 virtqueue_notify(vq); in vtscsi_execute_scsi_cmd() 1432 struct virtqueue *vq; in vtscsi_execute_ctrl_req() local 1451 virtqueue_notify(vq); in vtscsi_execute_ctrl_req() 1822 struct virtqueue *vq; in vtscsi_enqueue_event_buf() local 1826 vq = sc->vtscsi_event_vq; in vtscsi_enqueue_event_buf() 1840 virtqueue_notify(vq); in vtscsi_enqueue_event_buf() 1906 struct virtqueue *vq; in vtscsi_drain_event_vq() local 2205 struct virtqueue *vq; in vtscsi_control_vq_intr() local 2228 struct virtqueue *vq; in vtscsi_event_vq_intr() local [all …]
|
/freebsd/sys/dev/virtio/block/ |
H A D | virtio_blk.c | 1026 struct virtqueue *vq; in vtblk_request_execute_cb() local 1033 vq = sc->vtblk_vq; in vtblk_request_execute_cb() 1231 struct virtqueue *vq; in vtblk_drain_vq() local 1235 vq = sc->vtblk_vq; in vtblk_drain_vq() 1282 struct virtqueue *vq; in vtblk_startio() local 1287 vq = sc->vtblk_vq; in vtblk_startio() 1426 struct virtqueue *vq; in vtblk_poll_request() local 1429 vq = sc->vtblk_vq; in vtblk_poll_request() 1438 virtqueue_notify(vq); in vtblk_poll_request() 1473 struct virtqueue *vq; in vtblk_vq_intr() local [all …]
|