| /linux-6.15/drivers/vdpa/solidrun/ |
| H A D | snet_main.c | 77 if (snet->vqs[i] && snet->vqs[i]->irq != -1) { in snet_free_irqs() 78 devm_free_irq(&pdev->dev, snet->vqs[i]->irq, snet->vqs[i]); in snet_free_irqs() 79 snet->vqs[i]->irq = -1; in snet_free_irqs() 221 if (!snet->vqs[i]) in snet_reset_dev() 418 snet->vqs[i]->irq_name, snet->vqs[i]); in snet_request_irqs() 808 if (!snet->vqs) in snet_free_vqs() 812 if (!snet->vqs[i]) in snet_free_vqs() 815 kfree(snet->vqs[i]); in snet_free_vqs() 817 kfree(snet->vqs); in snet_free_vqs() 825 if (!snet->vqs) in snet_build_vqs() [all …]
|
| /linux-6.15/drivers/vdpa/pds/ |
| H A D | vdpa_dev.c | 88 pdsv->vqs[qid].q_len = num; in pds_vdpa_set_vq_num() 122 free_irq(pdsv->vqs[qid].irq, &pdsv->vqs[qid]); in pds_vdpa_release_irq() 181 if (pdsv->vqs[qid].ready) { in pds_vdpa_set_vq_state() 231 if (pdsv->vqs[qid].ready) { in pds_vdpa_get_vq_state() 278 return pdsv->vqs[qid].irq; in pds_vdpa_get_vq_irq() 399 snprintf(pdsv->vqs[qid].irq_name, sizeof(pdsv->vqs[qid].irq_name), in pds_vdpa_request_irqs() 404 &pdsv->vqs[qid]); in pds_vdpa_request_irqs() 411 pdsv->vqs[qid].irq = irq; in pds_vdpa_request_irqs() 485 pdsv->vqs[i].notify = in pds_vdpa_set_status() 498 memset(&pdsv->vqs[qid], 0, sizeof(pdsv->vqs[0])); in pds_vdpa_init_vqs_entry() [all …]
|
| /linux-6.15/drivers/vhost/ |
| H A D | test.c | 38 struct vhost_virtqueue vqs[VHOST_TEST_VQ_MAX]; member 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() 161 kfree(n->dev.vqs); in vhost_test_release() 182 if (!vhost_vq_access_ok(&n->vqs[index])) { in vhost_test_run() 189 vq = n->vqs + index; in vhost_test_run() 197 r = vhost_vq_init_access(&n->vqs[index]); in vhost_test_run() 251 vq = &n->vqs[VHOST_TEST_VQ]; in vhost_test_set_features() [all …]
|
| H A D | net.c | 287 n->vqs[i].ubuf_info = in vhost_net_set_ubuf_info() 308 n->vqs[i].done_idx = 0; in vhost_net_vq_reset() 310 n->vqs[i].ubufs = NULL; in vhost_net_vq_reset() 1280 vqs = kmalloc_array(VHOST_NET_VQ_MAX, sizeof(*vqs), GFP_KERNEL); in vhost_net_open() 1281 if (!vqs) { in vhost_net_open() 1289 kfree(vqs); in vhost_net_open() 1297 kfree(vqs); in vhost_net_open() 1305 vqs[VHOST_NET_VQ_TX] = &n->vqs[VHOST_NET_VQ_TX].vq; in vhost_net_open() 1306 vqs[VHOST_NET_VQ_RX] = &n->vqs[VHOST_NET_VQ_RX].vq; in vhost_net_open() 1398 kfree(n->dev.vqs); in vhost_net_release() [all …]
|
| H A D | vsock.c | 48 struct vhost_virtqueue vqs[2]; member 266 vq = &vsock->vqs[VSOCK_VQ_RX]; in vhost_transport_send_pkt_work() 578 vq = &vsock->vqs[i]; in vhost_vsock_start() 610 vq = &vsock->vqs[i]; in vhost_vsock_start() 665 vqs = kmalloc_array(ARRAY_SIZE(vsock->vqs), sizeof(*vqs), GFP_KERNEL); in vhost_vsock_dev_open() 666 if (!vqs) { in vhost_vsock_dev_open() 676 vqs[VSOCK_VQ_TX] = &vsock->vqs[VSOCK_VQ_TX]; in vhost_vsock_dev_open() 677 vqs[VSOCK_VQ_RX] = &vsock->vqs[VSOCK_VQ_RX]; in vhost_vsock_dev_open() 681 vhost_dev_init(&vsock->dev, vqs, ARRAY_SIZE(vsock->vqs), in vhost_vsock_dev_open() 755 kfree(vsock->dev.vqs); in vhost_vsock_dev_release() [all …]
|
| H A D | scsi.c | 299 vq = &vs->vqs[i].vq; in vhost_scsi_init_inflight() 2136 vs->vqs = kmalloc_array(nvqs, sizeof(*vs->vqs), in vhost_scsi_open() 2138 if (!vs->vqs) in vhost_scsi_open() 2141 vqs = kmalloc_array(nvqs, sizeof(*vqs), GFP_KERNEL); in vhost_scsi_open() 2142 if (!vqs) in vhost_scsi_open() 2150 vqs[VHOST_SCSI_VQ_CTL] = &vs->vqs[VHOST_SCSI_VQ_CTL].vq; in vhost_scsi_open() 2151 vqs[VHOST_SCSI_VQ_EVT] = &vs->vqs[VHOST_SCSI_VQ_EVT].vq; in vhost_scsi_open() 2155 svq = &vs->vqs[i]; in vhost_scsi_open() 2157 vqs[i] = &svq->vq; in vhost_scsi_open() 2173 kfree(vs->vqs); in vhost_scsi_open() [all …]
|
| H A D | vhost.c | 427 vq = dev->vqs[i]; in vhost_worker_killed() 467 vq = dev->vqs[i]; in vhost_dev_alloc_iovecs() 543 dev->vqs = vqs; in vhost_dev_init() 562 vq = dev->vqs[i]; in vhost_dev_init() 839 *vq = dev->vqs[idx]; in vhost_get_vq_from_user() 990 dev->vqs[i]->umem = umem; in vhost_dev_reset_owner() 999 if (dev->vqs[i]->kick && dev->vqs[i]->handle_kick) in vhost_dev_stop() 1034 if (dev->vqs[i]->kick) in vhost_dev_cleanup() 1035 fput(dev->vqs[i]->kick); in vhost_dev_cleanup() 2159 vq = d->vqs[i]; in vhost_dev_ioctl() [all …]
|
| H A D | vdpa.c | 48 struct vhost_virtqueue *vqs; member 236 if (v->vdev.vqs) { in _compat_vdpa_reset() 652 vq = &v->vqs[idx]; in vhost_vdpa_vring_ioctl() 1398 kfree(v->vdev.vqs); in vhost_vdpa_cleanup() 1399 v->vdev.vqs = NULL; in vhost_vdpa_cleanup() 1406 struct vhost_virtqueue **vqs; in vhost_vdpa_open() local 1421 vqs = kmalloc_array(nvqs, sizeof(*vqs), GFP_KERNEL); in vhost_vdpa_open() 1422 if (!vqs) { in vhost_vdpa_open() 1429 vqs[i] = &v->vqs[i]; in vhost_vdpa_open() 1554 kfree(v->vqs); in vhost_vdpa_release_dev() [all …]
|
| /linux-6.15/drivers/virtio/ |
| H A D | virtio_pci_common.c | 319 kfree(vp_dev->vqs); in vp_del_vqs() 320 vp_dev->vqs = NULL; in vp_del_vqs() 390 vp_dev->vqs = kcalloc(nvqs, sizeof(*vp_dev->vqs), GFP_KERNEL); in vp_find_vqs_msix() 391 if (!vp_dev->vqs) in vp_find_vqs_msix() 426 vqs[i] = NULL; in vp_find_vqs_msix() 433 if (IS_ERR(vqs[i])) { in vp_find_vqs_msix() 434 err = PTR_ERR(vqs[i]); in vp_find_vqs_msix() 467 vp_dev->vqs = kcalloc(nvqs, sizeof(*vp_dev->vqs), GFP_KERNEL); in vp_find_vqs_intx() 468 if (!vp_dev->vqs) in vp_find_vqs_intx() 488 vqs[i] = NULL; in vp_find_vqs_intx() [all …]
|
| H A D | virtio_vdpa.c | 295 list_for_each_entry_safe(vq, n, &vdev->vqs, list) in virtio_vdpa_del_vqs() 360 struct virtqueue *vqs[], in virtio_vdpa_find_vqs() argument 382 vqs[i] = NULL; in virtio_vdpa_find_vqs() 386 vqs[i] = virtio_vdpa_setup_vq(vdev, queue_idx++, vqi->callback, in virtio_vdpa_find_vqs() 388 if (IS_ERR(vqs[i])) { in virtio_vdpa_find_vqs() 389 err = PTR_ERR(vqs[i]); in virtio_vdpa_find_vqs()
|
| /linux-6.15/drivers/bluetooth/ |
| H A 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() 61 virtqueue_kick(vbt->vqs[VIRTBT_VQ_RX]); in virtbt_open_vdev() 76 for (i = 0; i < ARRAY_SIZE(vbt->vqs); i++) { in virtbt_close_vdev() 77 struct virtqueue *vq = vbt->vqs[i]; in virtbt_close_vdev() 102 err = virtqueue_add_outbuf(vbt->vqs[VIRTBT_VQ_TX], sg, 1, skb, in virtbt_send_frame() 109 virtqueue_kick(vbt->vqs[VIRTBT_VQ_TX]); in virtbt_send_frame() 226 skb = virtqueue_get_buf(vbt->vqs[VIRTBT_VQ_RX], &len); in virtbt_rx_work() 236 virtqueue_kick(vbt->vqs[VIRTBT_VQ_RX]); in virtbt_rx_work() 287 err = virtio_find_vqs(vdev, VIRTBT_NUM_VQS, vbt->vqs, vqs_info, NULL); in virtbt_probe()
|
| /linux-6.15/net/vmw_vsock/ |
| H A D | virtio_transport.c | 31 struct virtqueue *vqs[VSOCK_VQ_MAX]; member 168 vq = vsock->vqs[VSOCK_VQ_TX]; in virtio_transport_send_pkt_work() 216 struct virtqueue *vq = vsock->vqs[VSOCK_VQ_TX]; in virtio_transport_send_skb_fast_path() 316 vq = vsock->vqs[VSOCK_VQ_RX]; in virtio_vsock_rx_fill() 346 vq = vsock->vqs[VSOCK_VQ_TX]; in virtio_transport_tx_work() 373 struct virtqueue *vq = vsock->vqs[VSOCK_VQ_RX]; in virtio_transport_more_replies() 389 vq = vsock->vqs[VSOCK_VQ_EVENT]; in virtio_vsock_event_fill_one() 407 virtqueue_kick(vsock->vqs[VSOCK_VQ_EVENT]); in virtio_vsock_event_fill() 451 vq = vsock->vqs[VSOCK_VQ_EVENT]; in virtio_transport_event_work() 471 virtqueue_kick(vsock->vqs[VSOCK_VQ_EVENT]); in virtio_transport_event_work() [all …]
|
| /linux-6.15/drivers/block/ |
| H A D | virtio_blk.c | 82 struct virtio_blk_vq *vqs; member 962 struct virtqueue **vqs; in init_vq() local 994 vblk->vqs = kmalloc_array(num_vqs, sizeof(*vblk->vqs), GFP_KERNEL); in init_vq() 995 if (!vblk->vqs) in init_vq() 999 vqs = kmalloc_array(num_vqs, sizeof(*vqs), GFP_KERNEL); in init_vq() 1023 vblk->vqs[i].vq = vqs[i]; in init_vq() 1028 kfree(vqs); in init_vq() 1031 kfree(vblk->vqs); in init_vq() 1548 kfree(vblk->vqs); in virtblk_probe() 1576 kfree(vblk->vqs); in virtblk_remove() [all …]
|
| /linux-6.15/drivers/vdpa/vdpa_user/ |
| H A D | vduse_dev.c | 939 vq = dev->vqs[index]; in vduse_kickfd_setup() 1270 vq = dev->vqs[index]; in vduse_dev_ioctl() 1582 if (!dev->vqs) in vduse_dev_deinit_vqs() 1587 kfree(dev->vqs); in vduse_dev_deinit_vqs() 1596 dev->vqs = kcalloc(dev->vq_num, sizeof(*dev->vqs), GFP_KERNEL); in vduse_dev_init_vqs() 1597 if (!dev->vqs) in vduse_dev_init_vqs() 1601 dev->vqs[i] = kzalloc(sizeof(*dev->vqs[i]), GFP_KERNEL); in vduse_dev_init_vqs() 1602 if (!dev->vqs[i]) { in vduse_dev_init_vqs() 1619 kfree(dev->vqs[i]); in vduse_dev_init_vqs() 1628 kfree(dev->vqs); in vduse_dev_init_vqs() [all …]
|
| /linux-6.15/drivers/vdpa/vdpa_sim/ |
| H A D | vdpa_sim.c | 95 struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx]; in vdpasim_queue_ready() 149 vdpasim_vq_reset(vdpasim, &vdpasim->vqs[i]); in vdpasim_do_reset() 251 if (!vdpasim->vqs) in vdpasim_create() 297 struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx]; in vdpasim_set_vq_address() 309 struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx]; in vdpasim_set_vq_num() 317 struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx]; in vdpasim_get_vq_size() 328 struct vdpasim_virtqueue *vq = &vdpasim->vqs[idx]; in vdpasim_kick_vq() 621 vringh_set_iotlb(&vdpasim->vqs[i].vring, iommu, in vdpasim_set_group_asid() 757 vringh_kiov_cleanup(&vdpasim->vqs[i].out_iov); in vdpasim_free() 758 vringh_kiov_cleanup(&vdpasim->vqs[i].in_iov); in vdpasim_free() [all …]
|
| /linux-6.15/fs/fuse/ |
| H A D | virtio_fs.c | 196 kfree(vfs->vqs); in virtio_fs_ktype_release() 323 fsvq = &fs->vqs[i]; in virtio_fs_drain_all_queues_locked() 347 fsvq = &fs->vqs[i]; in virtio_fs_start_all_queues() 360 fsvq = &fs->vqs[i]; in virtio_fs_delete_queues_sysfs() 372 fsvq = &fs->vqs[i]; in virtio_fs_add_queues_sysfs() 953 fs->vqs = kcalloc(fs->nvqs, sizeof(fs->vqs[VQ_HIPRIO]), GFP_KERNEL); in virtio_fs_setup_vqs() 954 if (!fs->vqs) in virtio_fs_setup_vqs() 957 vqs = kmalloc_array(fs->nvqs, sizeof(vqs[VQ_HIPRIO]), GFP_KERNEL); in virtio_fs_setup_vqs() 986 fs->vqs[i].vq = vqs[i]; in virtio_fs_setup_vqs() 991 kfree(vqs); in virtio_fs_setup_vqs() [all …]
|
| /linux-6.15/tools/testing/selftests/arm64/fp/ |
| H A 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-6.15/drivers/crypto/virtio/ |
| H A D | virtio_crypto_core.c | 100 struct virtqueue **vqs; in virtcrypto_find_vqs() local 113 vqs = kcalloc(total_vqs, sizeof(*vqs), GFP_KERNEL); in virtcrypto_find_vqs() 114 if (!vqs) in virtcrypto_find_vqs() 132 ret = virtio_find_vqs(vi->vdev, total_vqs, vqs, vqs_info, NULL); in virtcrypto_find_vqs() 136 vi->ctrl_vq = vqs[total_vqs - 1]; in virtcrypto_find_vqs() 140 vi->data_vq[i].vq = vqs[i]; in virtcrypto_find_vqs() 143 virtqueue_get_vring_size(vqs[i])); in virtcrypto_find_vqs() 153 kfree(vqs); in virtcrypto_find_vqs() 161 kfree(vqs); in virtcrypto_find_vqs()
|
| /linux-6.15/sound/virtio/ |
| H A D | virtio_card.c | 123 struct virtqueue *vqs[VIRTIO_SND_VQ_MAX] = { 0 }; in virtsnd_find_vqs() local 128 rc = virtio_find_vqs(vdev, VIRTIO_SND_VQ_MAX, vqs, vqs_info, NULL); in virtsnd_find_vqs() 135 snd->queues[i].vqueue = vqs[i]; in virtsnd_find_vqs() 138 virtqueue_disable_cb(vqs[VIRTIO_SND_VQ_EVENT]); in virtsnd_find_vqs() 140 n = virtqueue_get_vring_size(vqs[VIRTIO_SND_VQ_EVENT]); in virtsnd_find_vqs() 148 virtsnd_event_send(vqs[VIRTIO_SND_VQ_EVENT], in virtsnd_find_vqs()
|
| /linux-6.15/arch/arm64/kvm/ |
| H A D | guest.c | 311 #define vq_present(vqs, vq) (!!((vqs)[vq_word(vq)] & vq_mask(vq))) argument 316 u64 vqs[KVM_ARM64_SVE_VLS_WORDS]; in get_sve_vls() local 324 memset(vqs, 0, sizeof(vqs)); in get_sve_vls() 329 vqs[vq_word(vq)] |= vq_mask(vq); in get_sve_vls() 331 if (copy_to_user((void __user *)reg->addr, vqs, sizeof(vqs))) in get_sve_vls() 340 u64 vqs[KVM_ARM64_SVE_VLS_WORDS]; in set_sve_vls() local 351 if (copy_from_user(vqs, (const void __user *)reg->addr, sizeof(vqs))) in set_sve_vls() 356 if (vq_present(vqs, vq)) in set_sve_vls() 370 if (vq_present(vqs, vq) != sve_vq_available(vq)) in set_sve_vls()
|
| /linux-6.15/drivers/vdpa/octeon_ep/ |
| H A D | octep_vdpa_hw.c | 278 iowrite16(qid, oct_hw->vqs[qid].notify_addr); in octep_notify_queue() 528 oct_hw->vqs = devm_kcalloc(&pdev->dev, oct_hw->nr_vring, sizeof(*oct_hw->vqs), GFP_KERNEL); in octep_hw_caps_read() 529 if (!oct_hw->vqs) in octep_hw_caps_read() 538 oct_hw->vqs[i].notify_addr = oct_hw->notify_base + in octep_hw_caps_read() 540 oct_hw->vqs[i].cb_notify_addr = (u32 __iomem *)oct_hw->vqs[i].notify_addr + 1; in octep_hw_caps_read() 541 oct_hw->vqs[i].notify_pa = oct_hw->notify_base_pa + in octep_hw_caps_read()
|
| H A D | octep_vdpa_main.c | 64 if (ioread8(oct_hw->vqs[i].cb_notify_addr)) { in octep_vdpa_intr_handler() 66 iowrite8(0, oct_hw->vqs[i].cb_notify_addr); in octep_vdpa_intr_handler() 68 if (likely(oct_hw->vqs[i].cb.callback)) in octep_vdpa_intr_handler() 69 oct_hw->vqs[i].cb.callback(oct_hw->vqs[i].cb.private); in octep_vdpa_intr_handler() 207 oct_hw->vqs[qid].cb.callback = NULL; in octep_vdpa_reset() 208 oct_hw->vqs[qid].cb.private = NULL; in octep_vdpa_reset() 247 oct_hw->vqs[qid].cb = *cb; in octep_vdpa_set_vq_cb() 293 vp_iowrite32(data, oct_hw->vqs[idx].notify_addr); in octep_vdpa_kick_vq_with_data() 355 area.addr = oct_hw->vqs[idx].notify_pa; in octep_get_vq_notification()
|
| /linux-6.15/drivers/gpio/ |
| H A D | gpio-virtio.c | 451 struct virtqueue *vqs[2] = { NULL, NULL }; in virtio_gpio_alloc_vqs() local 454 ret = virtio_find_vqs(vdev, vgpio->irq_lines ? 2 : 1, vqs, in virtio_gpio_alloc_vqs() 461 if (!vqs[0]) { in virtio_gpio_alloc_vqs() 465 vgpio->request_vq = vqs[0]; in virtio_gpio_alloc_vqs() 467 if (vgpio->irq_lines && !vqs[1]) { in virtio_gpio_alloc_vqs() 471 vgpio->event_vq = vqs[1]; in virtio_gpio_alloc_vqs() 476 if (vqs[0] || vqs[1]) in virtio_gpio_alloc_vqs()
|
| /linux-6.15/drivers/remoteproc/ |
| H A D | remoteproc_virtio.c | 171 list_for_each_entry_safe(vq, n, &vdev->vqs, list) { in __rproc_virtio_del_vqs() 184 struct virtqueue *vqs[], in rproc_virtio_find_vqs() argument 194 vqs[i] = NULL; in rproc_virtio_find_vqs() 198 vqs[i] = rp_find_vq(vdev, queue_idx++, vqi->callback, in rproc_virtio_find_vqs() 200 if (IS_ERR(vqs[i])) { in rproc_virtio_find_vqs() 201 ret = PTR_ERR(vqs[i]); in rproc_virtio_find_vqs()
|
| /linux-6.15/drivers/gpu/drm/virtio/ |
| H A D | virtgpu_kms.c | 125 struct virtqueue *vqs[2]; in virtio_gpu_init() local 209 ret = virtio_find_vqs(vgdev->vdev, 2, vqs, vqs_info, NULL); in virtio_gpu_init() 214 vgdev->ctrlq.vq = vqs[0]; in virtio_gpu_init() 215 vgdev->cursorq.vq = vqs[1]; in virtio_gpu_init()
|