/Linux-v4.19/drivers/virtio/ |
D | virtio_pci_common.c | 206 vp_dev->vqs[index] = info; in vp_setup_vq() 217 struct virtio_pci_vq_info *info = vp_dev->vqs[vq->index]; in vp_del_vq() 235 list_for_each_entry_safe(vq, n, &vdev->vqs, list) { in vp_del_vqs() 237 int v = vp_dev->vqs[vq->index]->msix_vector; in vp_del_vqs() 276 kfree(vp_dev->vqs); in vp_del_vqs() 277 vp_dev->vqs = NULL; in vp_del_vqs() 281 struct virtqueue *vqs[], vq_callback_t *callbacks[], in vp_find_vqs_msix() argument 290 vp_dev->vqs = kcalloc(nvqs, sizeof(*vp_dev->vqs), GFP_KERNEL); in vp_find_vqs_msix() 291 if (!vp_dev->vqs) in vp_find_vqs_msix() 314 vqs[i] = NULL; in vp_find_vqs_msix() [all …]
|
D | virtio_pci_common.h | 83 struct virtio_pci_vq_info **vqs; member 134 struct virtqueue *vqs[], vq_callback_t *callbacks[],
|
D | virtio_input.c | 170 struct virtqueue *vqs[2]; in virtinput_init_vqs() local 176 err = virtio_find_vqs(vi->vdev, 2, vqs, cbs, names, NULL); in virtinput_init_vqs() 179 vi->evt = vqs[0]; in virtinput_init_vqs() 180 vi->sts = vqs[1]; in virtinput_init_vqs()
|
D | virtio_balloon.c | 392 struct virtqueue *vqs[3]; in init_vqs() local 402 err = virtio_find_vqs(vb->vdev, nvqs, vqs, callbacks, names, NULL); in init_vqs() 406 vb->inflate_vq = vqs[0]; in init_vqs() 407 vb->deflate_vq = vqs[1]; in init_vqs() 411 vb->stats_vq = vqs[2]; in init_vqs()
|
D | virtio_mmio.c | 346 list_for_each_entry_safe(vq, n, &vdev->vqs, list) in vm_del_vqs() 463 struct virtqueue *vqs[], in vm_find_vqs() argument 479 vqs[i] = vm_setup_vq(vdev, i, callbacks[i], names[i], in vm_find_vqs() 481 if (IS_ERR(vqs[i])) { in vm_find_vqs() 483 return PTR_ERR(vqs[i]); in vm_find_vqs()
|
/Linux-v4.19/drivers/vhost/ |
D | net.c | 130 struct vhost_net_virtqueue vqs[VHOST_NET_VQ_MAX]; member 267 kfree(n->vqs[i].ubuf_info); in vhost_net_clear_ubuf_info() 268 n->vqs[i].ubuf_info = NULL; in vhost_net_clear_ubuf_info() 281 n->vqs[i].ubuf_info = in vhost_net_set_ubuf_info() 283 sizeof(*n->vqs[i].ubuf_info), in vhost_net_set_ubuf_info() 285 if (!n->vqs[i].ubuf_info) in vhost_net_set_ubuf_info() 302 n->vqs[i].done_idx = 0; in vhost_net_vq_reset() 303 n->vqs[i].upend_idx = 0; in vhost_net_vq_reset() 304 n->vqs[i].ubufs = NULL; in vhost_net_vq_reset() 305 n->vqs[i].vhost_hlen = 0; in vhost_net_vq_reset() [all …]
|
D | test.c | 33 struct vhost_virtqueue vqs[VHOST_TEST_VQ_MAX]; member 40 struct vhost_virtqueue *vq = &n->vqs[VHOST_TEST_VQ]; in handle_vq() 106 struct vhost_virtqueue **vqs; in vhost_test_open() local 110 vqs = kmalloc_array(VHOST_TEST_VQ_MAX, sizeof(*vqs), GFP_KERNEL); in vhost_test_open() 111 if (!vqs) { in vhost_test_open() 117 vqs[VHOST_TEST_VQ] = &n->vqs[VHOST_TEST_VQ]; in vhost_test_open() 118 n->vqs[VHOST_TEST_VQ].handle_kick = handle_vq_kick; in vhost_test_open() 119 vhost_dev_init(dev, vqs, VHOST_TEST_VQ_MAX); in vhost_test_open() 140 *privatep = vhost_test_stop_vq(n, n->vqs + VHOST_TEST_VQ); in vhost_test_stop() 145 vhost_poll_flush(&n->vqs[index].poll); in vhost_test_flush_vq() [all …]
|
D | vsock.c | 34 struct vhost_virtqueue vqs[2]; member 87 struct vhost_virtqueue *tx_vq = &vsock->vqs[VSOCK_VQ_TX]; in vhost_transport_do_send_pkt() 202 vq = &vsock->vqs[VSOCK_VQ_RX]; in vhost_transport_send_pkt_work() 260 struct vhost_virtqueue *tx_vq = &vsock->vqs[VSOCK_VQ_TX]; in vhost_transport_cancel_pkt() 333 struct vhost_virtqueue *vq = &vsock->vqs[VSOCK_VQ_TX]; in vhost_vsock_more_replies() 434 for (i = 0; i < ARRAY_SIZE(vsock->vqs); i++) { in vhost_vsock_start() 435 vq = &vsock->vqs[i]; in vhost_vsock_start() 461 for (i = 0; i < ARRAY_SIZE(vsock->vqs); i++) { in vhost_vsock_start() 462 vq = &vsock->vqs[i]; in vhost_vsock_start() 484 for (i = 0; i < ARRAY_SIZE(vsock->vqs); i++) { in vhost_vsock_stop() [all …]
|
D | scsi.c | 194 struct vhost_scsi_virtqueue vqs[VHOST_SCSI_MAX_VQ]; member 228 vq = &vs->vqs[i].vq; in vhost_scsi_init_inflight() 233 idx = vs->vqs[i].inflight_idx; in vhost_scsi_init_inflight() 235 old_inflight[i] = &vs->vqs[i].inflights[idx]; in vhost_scsi_init_inflight() 238 vs->vqs[i].inflight_idx = idx ^ 1; in vhost_scsi_init_inflight() 239 new_inflight = &vs->vqs[i].inflights[idx ^ 1]; in vhost_scsi_init_inflight() 401 struct vhost_virtqueue *vq = &vs->vqs[VHOST_SCSI_VQ_EVT].vq; in vhost_scsi_allocate_evt() 440 struct vhost_virtqueue *vq = &vs->vqs[VHOST_SCSI_VQ_EVT].vq; in vhost_scsi_do_evt_work() 491 struct vhost_virtqueue *vq = &vs->vqs[VHOST_SCSI_VQ_EVT].vq; in vhost_scsi_evt_work() 545 vq = q - vs->vqs; in vhost_scsi_complete_cmd_work() [all …]
|
D | vhost.c | 298 __vhost_vq_meta_reset(d->vqs[i]); in vhost_vq_meta_reset() 388 vq = dev->vqs[i]; in vhost_dev_alloc_iovecs() 403 vhost_vq_free_iovecs(dev->vqs[i]); in vhost_dev_alloc_iovecs() 412 vhost_vq_free_iovecs(dev->vqs[i]); in vhost_dev_free_iovecs() 416 struct vhost_virtqueue **vqs, int nvqs) in vhost_dev_init() argument 421 dev->vqs = vqs; in vhost_dev_init() 437 vq = dev->vqs[i]; in vhost_dev_init() 555 dev->vqs[i]->umem = umem; in vhost_dev_reset_owner() 564 if (dev->vqs[i]->kick && dev->vqs[i]->handle_kick) { in vhost_dev_stop() 565 vhost_poll_stop(&dev->vqs[i]->poll); in vhost_dev_stop() [all …]
|
D | vhost.h | 162 struct vhost_virtqueue **vqs; member 175 void vhost_dev_init(struct vhost_dev *, struct vhost_virtqueue **vqs, int nvqs);
|
/Linux-v4.19/drivers/block/ |
D | virtio_blk.c | 53 struct virtio_blk_vq *vqs; member 198 spin_lock_irqsave(&vblk->vqs[qid].lock, flags); in virtblk_done() 201 while ((vbr = virtqueue_get_buf(vblk->vqs[qid].vq, &len)) != NULL) { in virtblk_done() 214 spin_unlock_irqrestore(&vblk->vqs[qid].lock, flags); in virtblk_done() 267 spin_lock_irqsave(&vblk->vqs[qid].lock, flags); in virtio_queue_rq() 269 err = virtblk_add_req_scsi(vblk->vqs[qid].vq, vbr, vbr->sg, num); in virtio_queue_rq() 271 err = virtblk_add_req(vblk->vqs[qid].vq, vbr, vbr->sg, num); in virtio_queue_rq() 273 virtqueue_kick(vblk->vqs[qid].vq); in virtio_queue_rq() 275 spin_unlock_irqrestore(&vblk->vqs[qid].lock, flags); in virtio_queue_rq() 283 if (bd->last && virtqueue_kick_prepare(vblk->vqs[qid].vq)) in virtio_queue_rq() [all …]
|
/Linux-v4.19/net/vmw_vsock/ |
D | virtio_transport.c | 31 struct virtqueue *vqs[VSOCK_VQ_MAX]; member 128 vq = vsock->vqs[VSOCK_VQ_TX]; in virtio_transport_send_pkt_work() 170 struct virtqueue *rx_vq = vsock->vqs[VSOCK_VQ_RX]; in virtio_transport_send_pkt_work() 247 struct virtqueue *rx_vq = vsock->vqs[VSOCK_VQ_RX]; in virtio_transport_cancel_pkt() 267 vq = vsock->vqs[VSOCK_VQ_RX]; in virtio_vsock_rx_fill() 306 vq = vsock->vqs[VSOCK_VQ_TX]; in virtio_transport_tx_work() 327 struct virtqueue *vq = vsock->vqs[VSOCK_VQ_RX]; in virtio_transport_more_replies() 342 vq = vsock->vqs[VSOCK_VQ_RX]; in virtio_transport_rx_work() 393 vq = vsock->vqs[VSOCK_VQ_EVENT]; in virtio_vsock_event_fill_one() 411 virtqueue_kick(vsock->vqs[VSOCK_VQ_EVENT]); in virtio_vsock_event_fill() [all …]
|
/Linux-v4.19/drivers/crypto/virtio/ |
D | virtio_crypto_core.c | 63 struct virtqueue **vqs; in virtcrypto_find_vqs() local 77 vqs = kcalloc(total_vqs, sizeof(*vqs), GFP_KERNEL); in virtcrypto_find_vqs() 78 if (!vqs) in virtcrypto_find_vqs() 99 ret = virtio_find_vqs(vi->vdev, total_vqs, vqs, callbacks, names, NULL); in virtcrypto_find_vqs() 103 vi->ctrl_vq = vqs[total_vqs - 1]; in virtcrypto_find_vqs() 107 vi->data_vq[i].vq = vqs[i]; in virtcrypto_find_vqs() 118 kfree(vqs); in virtcrypto_find_vqs() 128 kfree(vqs); in virtcrypto_find_vqs()
|
/Linux-v4.19/drivers/net/ethernet/intel/i40evf/ |
D | i40evf_virtchnl.c | 272 struct virtchnl_queue_select vqs; in i40evf_enable_queues() local 281 vqs.vsi_id = adapter->vsi_res->vsi_id; in i40evf_enable_queues() 282 vqs.tx_queues = BIT(adapter->num_active_queues) - 1; in i40evf_enable_queues() 283 vqs.rx_queues = vqs.tx_queues; in i40evf_enable_queues() 286 (u8 *)&vqs, sizeof(vqs)); in i40evf_enable_queues() 297 struct virtchnl_queue_select vqs; in i40evf_disable_queues() local 306 vqs.vsi_id = adapter->vsi_res->vsi_id; in i40evf_disable_queues() 307 vqs.tx_queues = BIT(adapter->num_active_queues) - 1; in i40evf_disable_queues() 308 vqs.rx_queues = vqs.tx_queues; in i40evf_disable_queues() 311 (u8 *)&vqs, sizeof(vqs)); in i40evf_disable_queues() [all …]
|
/Linux-v4.19/drivers/remoteproc/ |
D | remoteproc_virtio.c | 125 list_for_each_entry_safe(vq, n, &vdev->vqs, list) { in __rproc_virtio_del_vqs() 138 struct virtqueue *vqs[], in rproc_virtio_find_vqs() argument 147 vqs[i] = rp_find_vq(vdev, i, callbacks[i], names[i], in rproc_virtio_find_vqs() 149 if (IS_ERR(vqs[i])) { in rproc_virtio_find_vqs() 150 ret = PTR_ERR(vqs[i]); in rproc_virtio_find_vqs()
|
/Linux-v4.19/include/linux/ |
D | virtio_config.h | 75 struct virtqueue *vqs[], vq_callback_t *callbacks[], 188 struct virtqueue *vqs[], vq_callback_t *callbacks[], in virtio_find_vqs() argument 192 return vdev->config->find_vqs(vdev, nvqs, vqs, callbacks, names, NULL, desc); in virtio_find_vqs() 197 struct virtqueue *vqs[], vq_callback_t *callbacks[], in virtio_find_vqs_ctx() argument 201 return vdev->config->find_vqs(vdev, nvqs, vqs, callbacks, names, ctx, in virtio_find_vqs_ctx()
|
D | virtio.h | 135 struct list_head vqs; member 161 list_for_each_entry(vq, &vdev->vqs, list)
|
/Linux-v4.19/drivers/gpu/drm/virtio/ |
D | virtgpu_kms.c | 137 struct virtqueue *vqs[2]; in virtio_gpu_driver_load() local 178 ret = virtio_find_vqs(vgdev->vdev, 2, vqs, callbacks, names, NULL); in virtio_gpu_driver_load() 183 vgdev->ctrlq.vq = vqs[0]; in virtio_gpu_driver_load() 184 vgdev->cursorq.vq = vqs[1]; in virtio_gpu_driver_load()
|
/Linux-v4.19/drivers/scsi/ |
D | virtio_scsi.c | 793 struct virtqueue **vqs; in virtscsi_init() local 797 vqs = kmalloc_array(num_vqs, sizeof(struct virtqueue *), GFP_KERNEL); in virtscsi_init() 802 if (!callbacks || !vqs || !names) { in virtscsi_init() 817 err = virtio_find_vqs(vdev, num_vqs, vqs, callbacks, names, &desc); in virtscsi_init() 821 virtscsi_init_vq(&vscsi->ctrl_vq, vqs[0]); in virtscsi_init() 822 virtscsi_init_vq(&vscsi->event_vq, vqs[1]); in virtscsi_init() 825 vqs[i]); in virtscsi_init() 835 kfree(vqs); in virtscsi_init()
|
/Linux-v4.19/drivers/s390/virtio/ |
D | virtio_ccw.c | 237 static unsigned long get_airq_indicator(struct virtqueue *vqs[], int nvqs, in get_airq_indicator() argument 263 (unsigned long)vqs[j]); in get_airq_indicator() 476 list_for_each_entry_safe(vq, n, &vdev->vqs, list) in virtio_ccw_del_vqs() 578 struct virtqueue *vqs[], int nvqs, in virtio_ccw_register_adapter_ind() argument 591 thinint_area->indicator = get_airq_indicator(vqs, nvqs, in virtio_ccw_register_adapter_ind() 626 struct virtqueue *vqs[], in virtio_ccw_find_vqs() argument 642 vqs[i] = virtio_ccw_setup_vq(vdev, i, callbacks[i], names[i], in virtio_ccw_find_vqs() 644 if (IS_ERR(vqs[i])) { in virtio_ccw_find_vqs() 645 ret = PTR_ERR(vqs[i]); in virtio_ccw_find_vqs() 646 vqs[i] = NULL; in virtio_ccw_find_vqs() [all …]
|
/Linux-v4.19/tools/virtio/ |
D | virtio_test.c | 39 struct vq_info vqs[1]; member 93 struct vq_info *info = &dev->vqs[dev->nvqs]; in vq_info_add() 301 run_test(&dev, &dev.vqs[0], delayed, 0x100000); in main()
|
/Linux-v4.19/drivers/misc/mic/vop/ |
D | vop_main.c | 269 list_for_each_entry_safe(vq, n, &dev->vqs, list) in vop_del_vqs() 376 struct virtqueue *vqs[], in vop_find_vqs() argument 393 vqs[i] = vop_find_vq(dev, i, callbacks[i], names[i], in vop_find_vqs() 395 if (IS_ERR(vqs[i])) { in vop_find_vqs() 396 err = PTR_ERR(vqs[i]); in vop_find_vqs() 447 list_for_each_entry(vq, &vdev->vdev.vqs, list) in vop_virtio_intr_handler()
|
/Linux-v4.19/drivers/char/ |
D | virtio_console.c | 1871 struct virtqueue **vqs; in init_vqs() local 1878 vqs = kmalloc_array(nr_queues, sizeof(struct virtqueue *), GFP_KERNEL); in init_vqs() 1886 if (!vqs || !io_callbacks || !io_names || !portdev->in_vqs || in init_vqs() 1919 err = virtio_find_vqs(portdev->vdev, nr_queues, vqs, in init_vqs() 1926 portdev->in_vqs[0] = vqs[0]; in init_vqs() 1927 portdev->out_vqs[0] = vqs[1]; in init_vqs() 1930 portdev->c_ivq = vqs[j]; in init_vqs() 1931 portdev->c_ovq = vqs[j + 1]; in init_vqs() 1935 portdev->in_vqs[i] = vqs[j]; in init_vqs() 1936 portdev->out_vqs[i] = vqs[j + 1]; in init_vqs() [all …]
|
/Linux-v4.19/drivers/rpmsg/ |
D | virtio_rpmsg_bus.c | 874 struct virtqueue *vqs[2]; in rpmsg_probe() local 893 err = virtio_find_vqs(vdev, 2, vqs, vq_cbs, names, NULL); in rpmsg_probe() 897 vrp->rvq = vqs[0]; in rpmsg_probe() 898 vrp->svq = vqs[1]; in rpmsg_probe()
|