/linux-6.12.1/Documentation/driver-api/virtio/ |
D | virtio.rst | 24 Device - Driver communication: virtqueues 37 virtqueues, which are actually ring buffers [#f1]_ of buffer descriptors 46 Refer to Chapter 2.5 ("Virtqueues") of the virtio spec (`[1]`_) for the 47 reference definitions of virtqueues and "Virtqueues and virtio ring: How 126 At this point, the virtqueues will be allocated and configured by 140 _`[2]` Virtqueues and virtio ring: How the data travels 141 https://www.redhat.com/en/blog/virtqueues-and-virtio-ring-how-data-travels
|
D | writing_virtio_drivers.rst | 22 and configure the virtqueues for the device according to its spec, the 23 configuration of the virtqueues in the driver side must match the 87 /* remove virtqueues */ 123 ("DRIVER_OK"). The virtqueues are anyway enabled automatically by the 129 In any case, the virtqueues need to be enabled before adding buffers to
|
/linux-6.12.1/drivers/virtio/ |
D | virtio_pci_common.h | 38 /* the list node for the virtqueues or slow_virtqueues list */ 73 struct list_head virtqueues; member 76 /* Array of all virtqueues reported in the 113 * virtqueues Thus, we need at least 2 vectors for MSI. */
|
D | virtio_pci_common.c | 59 /* Notify all slow path virtqueues on an interrupt. */ 82 /* Notify all virtqueues on an interrupt. */ 91 list_for_each_entry(info, &vp_dev->virtqueues, node) { in vp_vring_interrupt() 188 "%s-virtqueues", name); in vp_request_msix_vectors() 231 list_add(&info->node, &vp_dev->virtqueues); in vp_setup_vq() 697 INIT_LIST_HEAD(&vp_dev->virtqueues); in virtio_pci_probe()
|
D | virtio_vdpa.c | 35 struct list_head virtqueues; member 42 /* the list node for the virtqueues list */ 255 list_add(&info->node, &vd_dev->virtqueues); in virtio_vdpa_setup_vq() 505 INIT_LIST_HEAD(&vd_dev->virtqueues); in virtio_vdpa_probe()
|
D | virtio_mmio.c | 94 struct list_head virtqueues; member 101 /* the list node for the virtqueues list */ 299 /* Notify all virtqueues on an interrupt. */ 319 list_for_each_entry(info, &vm_dev->virtqueues, node) in vm_interrupt() 470 list_add(&info->node, &vm_dev->virtqueues); in vm_setup_vq() 630 INIT_LIST_HEAD(&vm_dev->virtqueues); in virtio_mmio_probe()
|
D | virtio_pci_modern_dev.c | 662 * vp_modern_get_num_queues - get the number of virtqueues 665 * Returns the number of virtqueues
|
/linux-6.12.1/Documentation/filesystems/ |
D | virtiofs.rst | 68 Mapping /dev/fuse to virtqueues requires solving differences in semantics 69 between /dev/fuse and virtqueues. Each time the /dev/fuse device is read, the 71 prioritize certain requests over others. Virtqueues have queue semantics and
|
/linux-6.12.1/tools/perf/trace/beauty/include/uapi/linux/ |
D | vhost.h | 48 /* By default, a device gets one vhost_worker that its virtqueues share. This 50 * for the device. It can later be bound to 1 or more of its virtqueues using 93 * virtqueues. 96 * is no longer attached to any virtqueues, it can be freed with 226 /* Get the count of all virtqueues */
|
/linux-6.12.1/include/uapi/linux/ |
D | vhost.h | 48 /* By default, a device gets one vhost_worker that its virtqueues share. This 50 * for the device. It can later be bound to 1 or more of its virtqueues using 93 * virtqueues. 96 * is no longer attached to any virtqueues, it can be freed with 226 /* Get the count of all virtqueues */
|
D | virtio_scmi.h | 18 /* Virtqueues */
|
D | virtio_net.h | 300 * the device, the device will not steer new packets on receive virtqueues 301 * other than specified nor read from transmit virtqueues other than specified. 302 * Accordingly, driver should not transmit new packets on virtqueues other than
|
D | vduse.h | 28 * @vq_num: the number of virtqueues 132 * Setup the specified virtqueue. Make sure all virtqueues have been
|
D | virtio_config.h | 119 * This feature indicates that the device support administration virtqueues.
|
D | vhost_types.h | 184 /* Device supports the driver enabling virtqueues both before and after
|
/linux-6.12.1/Documentation/userspace-api/ |
D | vduse.rst | 101 configuration space, the number of virtqueues and so on for this emulated device. 221 3. Setup the kick eventfd for the specified virtqueues with the VDUSE_VQ_SETUP_KICKFD
|
/linux-6.12.1/include/linux/ |
D | virtio_config.h | 66 * @find_vqs: find virtqueues and instantiate them. 68 * nvqs: the number of virtqueues to find 69 * vqs: on success, includes new virtqueues 72 * @del_vqs: free virtqueues found by find_vqs().
|
D | virtio.h | 17 * @list: the chain of virtqueues for this device 131 * @vqs: the list of virtqueues for this device.
|
/linux-6.12.1/sound/virtio/ |
D | virtio_card.c | 102 * virtsnd_find_vqs() - Enumerate and initialize all virtqueues. 130 dev_err(&vdev->dev, "failed to initialize virtqueues\n"); in virtsnd_find_vqs()
|
/linux-6.12.1/drivers/crypto/virtio/ |
D | virtio_crypto_common.h | 80 /* Does the affinity hint is set for virtqueues? */
|
/linux-6.12.1/drivers/scsi/ |
D | virtio_scsi.c | 43 "The number of dedicated virtqueues for polling I/O"); 633 * virtqueues once. in virtscsi_tmf() 833 /* Stop all the virtqueues. */ in virtscsi_remove_vqs() 881 /* Discover virtqueues and write information to configuration. */ in virtscsi_init()
|
/linux-6.12.1/drivers/block/ |
D | virtio_blk.c | 43 MODULE_PARM_DESC(poll_queues, "The number of dedicated virtqueues for polling I/O"); 1022 /* Discover virtqueues and write information to configuration. */ in init_vq() 1576 /* Stop all the virtqueues. */ in virtblk_remove() 1579 /* Virtqueues are stopped, nothing can use vblk->vdev anymore. */ in virtblk_remove() 1595 /* Ensure no requests in virtqueues before deleting vqs. */ in virtblk_freeze()
|
/linux-6.12.1/drivers/s390/virtio/ |
D | virtio_ccw.c | 68 struct list_head virtqueues; member 341 list_for_each_entry(info, &vcdev->virtqueues, node) in virtio_ccw_drop_indicators() 624 list_add(&info->node, &vcdev->virtqueues); in virtio_ccw_setup_vq() 1122 list_for_each_entry(info, &vcdev->virtqueues, node) { in virtio_ccw_vq_by_ind() 1382 INIT_LIST_HEAD(&vcdev->virtqueues); in virtio_ccw_online()
|
/linux-6.12.1/Documentation/devicetree/bindings/remoteproc/ |
D | st,stm32-rproc.yaml | 68 A channel (a) used to communicate through virtqueues with the
|
/linux-6.12.1/drivers/firmware/arm_scmi/transports/ |
D | virtio.c | 587 * dequeued from the virtqueues (VIO_MSG_POLL_DONE): this is needed since such 636 * this means that it is possible to poll the virtqueues waiting for something 650 * in virtqueues handling mechanisms), we similarly kick the deferred worker
|