/Linux-v5.15/drivers/virtio/ |
D | virtio_pci_common.c | 203 vp_dev->vqs[index] = info; in vp_setup_vq() 214 struct virtio_pci_vq_info *info = vp_dev->vqs[vq->index]; in vp_del_vq() 232 list_for_each_entry_safe(vq, n, &vdev->vqs, list) { in vp_del_vqs() 234 int v = vp_dev->vqs[vq->index]->msix_vector; in vp_del_vqs() 275 kfree(vp_dev->vqs); in vp_del_vqs() 276 vp_dev->vqs = NULL; in vp_del_vqs() 280 struct virtqueue *vqs[], vq_callback_t *callbacks[], in vp_find_vqs_msix() argument 289 vp_dev->vqs = kcalloc(nvqs, sizeof(*vp_dev->vqs), GFP_KERNEL); in vp_find_vqs_msix() 290 if (!vp_dev->vqs) in vp_find_vqs_msix() 313 vqs[i] = NULL; in vp_find_vqs_msix() [all …]
|
D | virtio_vdpa.c | 258 list_for_each_entry_safe(vq, n, &vdev->vqs, list) in virtio_vdpa_del_vqs() 263 struct virtqueue *vqs[], in virtio_vdpa_find_vqs() argument 277 vqs[i] = NULL; in virtio_vdpa_find_vqs() 281 vqs[i] = virtio_vdpa_setup_vq(vdev, queue_idx++, in virtio_vdpa_find_vqs() 284 if (IS_ERR(vqs[i])) { in virtio_vdpa_find_vqs() 285 err = PTR_ERR(vqs[i]); in virtio_vdpa_find_vqs()
|
D | virtio_pci_common.h | 62 struct virtio_pci_vq_info **vqs; member 113 struct virtqueue *vqs[], vq_callback_t *callbacks[],
|
/Linux-v5.15/drivers/vhost/ |
D | test.c | 38 struct vhost_virtqueue vqs[VHOST_TEST_VQ_MAX]; member 45 struct vhost_virtqueue *vq = &n->vqs[VHOST_TEST_VQ]; in handle_vq() 109 struct vhost_virtqueue **vqs; in vhost_test_open() local 113 vqs = kmalloc_array(VHOST_TEST_VQ_MAX, sizeof(*vqs), GFP_KERNEL); in vhost_test_open() 114 if (!vqs) { in vhost_test_open() 120 vqs[VHOST_TEST_VQ] = &n->vqs[VHOST_TEST_VQ]; in vhost_test_open() 121 n->vqs[VHOST_TEST_VQ].handle_kick = handle_vq_kick; in vhost_test_open() 122 vhost_dev_init(dev, vqs, VHOST_TEST_VQ_MAX, UIO_MAXIOV, in vhost_test_open() 144 *privatep = vhost_test_stop_vq(n, n->vqs + VHOST_TEST_VQ); in vhost_test_stop() 149 vhost_poll_flush(&n->vqs[index].poll); in vhost_test_flush_vq() [all …]
|
D | net.c | 133 struct vhost_net_virtqueue vqs[VHOST_NET_VQ_MAX]; member 274 kfree(n->vqs[i].ubuf_info); in vhost_net_clear_ubuf_info() 275 n->vqs[i].ubuf_info = NULL; in vhost_net_clear_ubuf_info() 288 n->vqs[i].ubuf_info = in vhost_net_set_ubuf_info() 290 sizeof(*n->vqs[i].ubuf_info), in vhost_net_set_ubuf_info() 292 if (!n->vqs[i].ubuf_info) in vhost_net_set_ubuf_info() 309 n->vqs[i].done_idx = 0; in vhost_net_vq_reset() 310 n->vqs[i].upend_idx = 0; in vhost_net_vq_reset() 311 n->vqs[i].ubufs = NULL; in vhost_net_vq_reset() 312 n->vqs[i].vhost_hlen = 0; in vhost_net_vq_reset() [all …]
|
D | vsock.c | 48 struct vhost_virtqueue vqs[2]; member 94 struct vhost_virtqueue *tx_vq = &vsock->vqs[VSOCK_VQ_TX]; in vhost_transport_do_send_pkt() 275 vq = &vsock->vqs[VSOCK_VQ_RX]; in vhost_transport_send_pkt_work() 341 struct vhost_virtqueue *tx_vq = &vsock->vqs[VSOCK_VQ_TX]; in vhost_transport_cancel_pkt() 418 struct vhost_virtqueue *vq = &vsock->vqs[VSOCK_VQ_TX]; in vhost_vsock_more_replies() 592 for (i = 0; i < ARRAY_SIZE(vsock->vqs); i++) { in vhost_vsock_start() 593 vq = &vsock->vqs[i]; in vhost_vsock_start() 624 for (i = 0; i < ARRAY_SIZE(vsock->vqs); i++) { in vhost_vsock_start() 625 vq = &vsock->vqs[i]; in vhost_vsock_start() 647 for (i = 0; i < ARRAY_SIZE(vsock->vqs); i++) { in vhost_vsock_stop() [all …]
|
D | scsi.c | 189 struct vhost_scsi_virtqueue vqs[VHOST_SCSI_MAX_VQ]; member 249 vq = &vs->vqs[i].vq; in vhost_scsi_init_inflight() 254 idx = vs->vqs[i].inflight_idx; in vhost_scsi_init_inflight() 256 old_inflight[i] = &vs->vqs[i].inflights[idx]; in vhost_scsi_init_inflight() 259 vs->vqs[i].inflight_idx = idx ^ 1; in vhost_scsi_init_inflight() 260 new_inflight = &vs->vqs[i].inflights[idx ^ 1]; in vhost_scsi_init_inflight() 433 struct vhost_virtqueue *vq = &vs->vqs[VHOST_SCSI_VQ_EVT].vq; in vhost_scsi_allocate_evt() 463 struct vhost_virtqueue *vq = &vs->vqs[VHOST_SCSI_VQ_EVT].vq; in vhost_scsi_do_evt_work() 514 struct vhost_virtqueue *vq = &vs->vqs[VHOST_SCSI_VQ_EVT].vq; in vhost_scsi_evt_work() 568 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() 399 vq = dev->vqs[i]; in vhost_dev_alloc_iovecs() 414 vhost_vq_free_iovecs(dev->vqs[i]); in vhost_dev_alloc_iovecs() 423 vhost_vq_free_iovecs(dev->vqs[i]); in vhost_dev_free_iovecs() 468 struct vhost_virtqueue **vqs, int nvqs, in vhost_dev_init() argument 477 dev->vqs = vqs; in vhost_dev_init() 498 vq = dev->vqs[i]; in vhost_dev_init() 655 dev->vqs[i]->umem = umem; in vhost_dev_reset_owner() 664 if (dev->vqs[i]->kick && dev->vqs[i]->handle_kick) { in vhost_dev_stop() 665 vhost_poll_stop(&dev->vqs[i]->poll); in vhost_dev_stop() [all …]
|
D | vdpa.c | 39 struct vhost_virtqueue *vqs; member 64 ops->kick_vq(v->vdpa, vq - v->vqs); in handle_vq_kick() 91 struct vhost_virtqueue *vq = &v->vqs[qid]; in vhost_vdpa_setup_vq_irq() 114 struct vhost_virtqueue *vq = &v->vqs[qid]; in vhost_vdpa_unsetup_vq_irq() 379 vq = &v->vqs[idx]; in vhost_vdpa_vring_ioctl() 951 struct vhost_virtqueue **vqs; in vhost_vdpa_open() local 965 vqs = kmalloc_array(nvqs, sizeof(*vqs), GFP_KERNEL); in vhost_vdpa_open() 966 if (!vqs) { in vhost_vdpa_open() 973 vqs[i] = &v->vqs[i]; in vhost_vdpa_open() 974 vqs[i]->handle_kick = handle_vq_kick; in vhost_vdpa_open() [all …]
|
/Linux-v5.15/drivers/block/ |
D | virtio_blk.c | 74 struct virtio_blk_vq *vqs; member 183 spin_lock_irqsave(&vblk->vqs[qid].lock, flags); in virtblk_done() 186 while ((vbr = virtqueue_get_buf(vblk->vqs[qid].vq, &len)) != NULL) { in virtblk_done() 200 spin_unlock_irqrestore(&vblk->vqs[qid].lock, flags); in virtblk_done() 206 struct virtio_blk_vq *vq = &vblk->vqs[hctx->queue_num]; in virtio_commit_rqs() 277 spin_lock_irqsave(&vblk->vqs[qid].lock, flags); in virtio_queue_rq() 278 err = virtblk_add_req(vblk->vqs[qid].vq, vbr, vbr->sg, num); in virtio_queue_rq() 280 virtqueue_kick(vblk->vqs[qid].vq); in virtio_queue_rq() 286 spin_unlock_irqrestore(&vblk->vqs[qid].lock, flags); in virtio_queue_rq() 297 if (bd->last && virtqueue_kick_prepare(vblk->vqs[qid].vq)) in virtio_queue_rq() [all …]
|
/Linux-v5.15/drivers/bluetooth/ |
D | virtio_bt.c | 24 struct virtqueue *vqs[VIRTBT_NUM_VQS]; member 31 struct virtqueue *vq = vbt->vqs[VIRTBT_VQ_RX]; in virtbt_add_inbuf() 58 virtqueue_kick(vbt->vqs[VIRTBT_VQ_RX]); in virtbt_open() 69 for (i = 0; i < ARRAY_SIZE(vbt->vqs); i++) { in virtbt_close() 70 struct virtqueue *vq = vbt->vqs[i]; in virtbt_close() 94 err = virtqueue_add_outbuf(vbt->vqs[VIRTBT_VQ_TX], sg, 1, skb, in virtbt_send_frame() 101 virtqueue_kick(vbt->vqs[VIRTBT_VQ_TX]); in virtbt_send_frame() 215 skb = virtqueue_get_buf(vbt->vqs[VIRTBT_VQ_RX], &len); in virtbt_rx_work() 225 virtqueue_kick(vbt->vqs[VIRTBT_VQ_RX]); in virtbt_rx_work() 281 err = virtio_find_vqs(vdev, VIRTBT_NUM_VQS, vbt->vqs, callbacks, in virtbt_probe()
|
/Linux-v5.15/net/vmw_vsock/ |
D | virtio_transport.c | 30 struct virtqueue *vqs[VSOCK_VQ_MAX]; member 100 vq = vsock->vqs[VSOCK_VQ_TX]; in virtio_transport_send_pkt_work() 142 struct virtqueue *rx_vq = vsock->vqs[VSOCK_VQ_RX]; in virtio_transport_send_pkt_work() 230 struct virtqueue *rx_vq = vsock->vqs[VSOCK_VQ_RX]; in virtio_transport_cancel_pkt() 254 vq = vsock->vqs[VSOCK_VQ_RX]; in virtio_vsock_rx_fill() 294 vq = vsock->vqs[VSOCK_VQ_TX]; in virtio_transport_tx_work() 321 struct virtqueue *vq = vsock->vqs[VSOCK_VQ_RX]; in virtio_transport_more_replies() 337 vq = vsock->vqs[VSOCK_VQ_EVENT]; in virtio_vsock_event_fill_one() 355 virtqueue_kick(vsock->vqs[VSOCK_VQ_EVENT]); in virtio_vsock_event_fill() 398 vq = vsock->vqs[VSOCK_VQ_EVENT]; in virtio_transport_event_work() [all …]
|
/Linux-v5.15/fs/fuse/ |
D | virtio_fs.c | 60 struct virtio_fs_vq *vqs; member 133 return &fs->vqs[vq->index]; in vq_to_fsvq() 155 kfree(vfs->vqs); in release_virtio_fs_obj() 201 fsvq = &fs->vqs[i]; in virtio_fs_drain_all_queues_locked() 225 fsvq = &fs->vqs[i]; in virtio_fs_start_all_queues() 282 struct virtio_fs_vq *fsvq = &fs->vqs[i]; in virtio_fs_free_devs() 673 struct virtqueue **vqs; in virtio_fs_setup_vqs() local 685 fs->vqs = kcalloc(fs->nvqs, sizeof(fs->vqs[VQ_HIPRIO]), GFP_KERNEL); in virtio_fs_setup_vqs() 686 if (!fs->vqs) in virtio_fs_setup_vqs() 689 vqs = kmalloc_array(fs->nvqs, sizeof(vqs[VQ_HIPRIO]), GFP_KERNEL); in virtio_fs_setup_vqs() [all …]
|
/Linux-v5.15/drivers/vdpa/vdpa_sim/ |
D | vdpa_sim.c | 67 struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx]; in vdpasim_queue_ready() 100 vdpasim_vq_reset(vdpasim, &vdpasim->vqs[i]); in vdpasim_do_reset() 276 vdpasim->vqs = kcalloc(dev_attr->nvqs, sizeof(struct vdpasim_virtqueue), in vdpasim_create() 278 if (!vdpasim->vqs) in vdpasim_create() 290 vringh_set_iotlb(&vdpasim->vqs[i].vring, vdpasim->iommu, in vdpasim_create() 316 struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx]; in vdpasim_set_vq_address() 328 struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx]; in vdpasim_set_vq_num() 336 struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx]; in vdpasim_kick_vq() 346 struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx]; in vdpasim_set_vq_cb() 355 struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx]; in vdpasim_set_vq_ready() [all …]
|
/Linux-v5.15/tools/testing/selftests/arm64/fp/ |
D | sve-probe-vls.c | 22 static unsigned int vqs[SVE_VQ_MAX]; in main() local 53 vqs[nvqs++] = vq; in main() 60 ksft_print_msg("%u\n", 16 * vqs[nvqs]); in main()
|
/Linux-v5.15/drivers/vdpa/vdpa_user/ |
D | vduse_dev.c | 70 struct vduse_virtqueue *vqs; member 426 struct vduse_virtqueue *vq = &dev->vqs[i]; in vduse_dev_reset() 458 struct vduse_virtqueue *vq = &dev->vqs[idx]; in vduse_vdpa_set_vq_address() 492 struct vduse_virtqueue *vq = &dev->vqs[idx]; in vduse_vdpa_kick_vq() 505 struct vduse_virtqueue *vq = &dev->vqs[idx]; in vduse_vdpa_set_vq_cb() 516 struct vduse_virtqueue *vq = &dev->vqs[idx]; in vduse_vdpa_set_vq_num() 525 struct vduse_virtqueue *vq = &dev->vqs[idx]; in vduse_vdpa_set_vq_ready() 533 struct vduse_virtqueue *vq = &dev->vqs[idx]; in vduse_vdpa_get_vq_ready() 542 struct vduse_virtqueue *vq = &dev->vqs[idx]; in vduse_vdpa_set_vq_state() 561 struct vduse_virtqueue *vq = &dev->vqs[idx]; in vduse_vdpa_get_vq_state() [all …]
|
/Linux-v5.15/drivers/crypto/virtio/ |
D | virtio_crypto_core.c | 51 struct virtqueue **vqs; in virtcrypto_find_vqs() local 65 vqs = kcalloc(total_vqs, sizeof(*vqs), GFP_KERNEL); in virtcrypto_find_vqs() 66 if (!vqs) in virtcrypto_find_vqs() 87 ret = virtio_find_vqs(vi->vdev, total_vqs, vqs, callbacks, names, NULL); in virtcrypto_find_vqs() 91 vi->ctrl_vq = vqs[total_vqs - 1]; in virtcrypto_find_vqs() 95 vi->data_vq[i].vq = vqs[i]; in virtcrypto_find_vqs() 106 kfree(vqs); in virtcrypto_find_vqs() 116 kfree(vqs); in virtcrypto_find_vqs()
|
/Linux-v5.15/sound/virtio/ |
D | virtio_card.c | 124 struct virtqueue *vqs[VIRTIO_SND_VQ_MAX] = { 0 }; in virtsnd_find_vqs() local 129 rc = virtio_find_vqs(vdev, VIRTIO_SND_VQ_MAX, vqs, callbacks, names, in virtsnd_find_vqs() 137 snd->queues[i].vqueue = vqs[i]; in virtsnd_find_vqs() 140 virtqueue_disable_cb(vqs[VIRTIO_SND_VQ_EVENT]); in virtsnd_find_vqs() 142 n = virtqueue_get_vring_size(vqs[VIRTIO_SND_VQ_EVENT]); in virtsnd_find_vqs() 150 virtsnd_event_send(vqs[VIRTIO_SND_VQ_EVENT], in virtsnd_find_vqs()
|
/Linux-v5.15/arch/arm64/kvm/ |
D | guest.c | 304 #define vq_present(vqs, vq) (!!((vqs)[vq_word(vq)] & vq_mask(vq))) argument 309 u64 vqs[KVM_ARM64_SVE_VLS_WORDS]; in get_sve_vls() local 317 memset(vqs, 0, sizeof(vqs)); in get_sve_vls() 322 vqs[vq_word(vq)] |= vq_mask(vq); in get_sve_vls() 324 if (copy_to_user((void __user *)reg->addr, vqs, sizeof(vqs))) in get_sve_vls() 333 u64 vqs[KVM_ARM64_SVE_VLS_WORDS]; in set_sve_vls() local 344 if (copy_from_user(vqs, (const void __user *)reg->addr, sizeof(vqs))) in set_sve_vls() 349 if (vq_present(vqs, vq)) in set_sve_vls() 363 if (vq_present(vqs, vq) != sve_vq_available(vq)) in set_sve_vls()
|
/Linux-v5.15/drivers/remoteproc/ |
D | remoteproc_virtio.c | 131 list_for_each_entry_safe(vq, n, &vdev->vqs, list) { in __rproc_virtio_del_vqs() 144 struct virtqueue *vqs[], in rproc_virtio_find_vqs() argument 154 vqs[i] = NULL; in rproc_virtio_find_vqs() 158 vqs[i] = rp_find_vq(vdev, queue_idx++, callbacks[i], names[i], in rproc_virtio_find_vqs() 160 if (IS_ERR(vqs[i])) { in rproc_virtio_find_vqs() 161 ret = PTR_ERR(vqs[i]); in rproc_virtio_find_vqs()
|
/Linux-v5.15/drivers/net/ethernet/intel/iavf/ |
D | iavf_virtchnl.c | 305 struct virtchnl_queue_select vqs; in iavf_enable_queues() local 314 vqs.vsi_id = adapter->vsi_res->vsi_id; in iavf_enable_queues() 315 vqs.tx_queues = BIT(adapter->num_active_queues) - 1; in iavf_enable_queues() 316 vqs.rx_queues = vqs.tx_queues; in iavf_enable_queues() 319 (u8 *)&vqs, sizeof(vqs)); in iavf_enable_queues() 330 struct virtchnl_queue_select vqs; in iavf_disable_queues() local 339 vqs.vsi_id = adapter->vsi_res->vsi_id; in iavf_disable_queues() 340 vqs.tx_queues = BIT(adapter->num_active_queues) - 1; in iavf_disable_queues() 341 vqs.rx_queues = vqs.tx_queues; in iavf_disable_queues() 344 (u8 *)&vqs, sizeof(vqs)); in iavf_disable_queues() [all …]
|
/Linux-v5.15/drivers/vdpa/mlx5/net/ |
D | mlx5_vnet.c | 150 struct mlx5_vdpa_virtqueue vqs[MLX5_MAX_SUPPORTED_VQS]; member 570 struct mlx5_vdpa_virtqueue *mvq = &ndev->vqs[idx]; in cq_create() 647 struct mlx5_vdpa_virtqueue *mvq = &ndev->vqs[idx]; in cq_destroy() 1219 suspend_vq(ndev, &ndev->vqs[i]); in suspend_vqs() 1262 if (!ndev->vqs[j].initialized) in create_rqt() 1265 if (!vq_is_tx(ndev->vqs[j].index)) { in create_rqt() 1266 list[i] = cpu_to_be32(ndev->vqs[j].virtq_id); in create_rqt() 1309 if (!ndev->vqs[j].initialized) in modify_rqt() 1312 if (!vq_is_tx(ndev->vqs[j].index)) { in modify_rqt() 1313 list[i] = cpu_to_be32(ndev->vqs[j].virtq_id); in modify_rqt() [all …]
|
/Linux-v5.15/drivers/gpu/drm/virtio/ |
D | virtgpu_kms.c | 106 struct virtqueue *vqs[2]; in virtio_gpu_init() local 185 ret = virtio_find_vqs(vgdev->vdev, 2, vqs, callbacks, names, NULL); in virtio_gpu_init() 190 vgdev->ctrlq.vq = vqs[0]; in virtio_gpu_init() 191 vgdev->cursorq.vq = vqs[1]; in virtio_gpu_init()
|
/Linux-v5.15/include/linux/ |
D | virtio_config.h | 87 struct virtqueue *vqs[], vq_callback_t *callbacks[], 202 struct virtqueue *vqs[], vq_callback_t *callbacks[], in virtio_find_vqs() argument 206 return vdev->config->find_vqs(vdev, nvqs, vqs, callbacks, names, NULL, desc); in virtio_find_vqs() 211 struct virtqueue *vqs[], vq_callback_t *callbacks[], in virtio_find_vqs_ctx() argument 215 return vdev->config->find_vqs(vdev, nvqs, vqs, callbacks, names, ctx, in virtio_find_vqs_ctx()
|
/Linux-v5.15/drivers/gpio/ |
D | gpio-virtio.c | 217 struct virtqueue *vqs[1] = { NULL }; in virtio_gpio_alloc_vqs() local 220 ret = virtio_find_vqs(vdev, 1, vqs, cbs, names, NULL); in virtio_gpio_alloc_vqs() 226 if (!vqs[0]) { in virtio_gpio_alloc_vqs() 230 vgpio->request_vq = vqs[0]; in virtio_gpio_alloc_vqs()
|