/linux/drivers/virtio/ |
A D | virtio_ring.c | 537 vq->notify(&vq->vq); in virtqueue_add_split() 707 vq->vq.num_free++; in detach_buf_split() 715 vq->vq.num_free++; in detach_buf_split() 912 BUG_ON(vq->vq.num_free != vq->split.vring.num); in virtqueue_detach_unused_buf_split() 1701 vq->vq.vdev = vdev; in vring_create_virtqueue_packed() 1702 vq->vq.name = name; in vring_create_virtqueue_packed() 1770 return &vq->vq; in vring_create_virtqueue_packed() 2163 vq->vq.callback(&vq->vq); in vring_interrupt() 2190 vq->vq.vdev = vdev; in __vring_new_virtqueue() 2191 vq->vq.name = name; in __vring_new_virtqueue() [all …]
|
A D | virtio_vdpa.c | 39 struct virtqueue *vq; member 111 ops->kick_vq(vdpa, vq->index); in virtio_vdpa_notify() 142 struct virtqueue *vq; in virtio_vdpa_setup_vq() local 182 if (!vq) { in virtio_vdpa_setup_vq() 219 vq->priv = info; in virtio_vdpa_setup_vq() 220 info->vq = vq; in virtio_vdpa_setup_vq() 226 return vq; in virtio_vdpa_setup_vq() 229 vring_del_virtqueue(vq); in virtio_vdpa_setup_vq() 254 vring_del_virtqueue(vq); in virtio_vdpa_del_vq() 261 struct virtqueue *vq, *n; in virtio_vdpa_del_vqs() local [all …]
|
A D | virtio_pci_legacy.c | 113 void (*callback)(struct virtqueue *vq), in setup_vq() argument 118 struct virtqueue *vq; in setup_vq() local 131 vq = vring_create_virtqueue(index, num, in setup_vq() 135 if (!vq) in setup_vq() 160 return vq; in setup_vq() 165 vring_del_virtqueue(vq); in setup_vq() 171 struct virtqueue *vq = info->vq; in del_vq() local 172 struct virtio_pci_device *vp_dev = to_vp_device(vq->vdev); in del_vq() 175 vp_legacy_queue_vector(&vp_dev->ldev, vq->index, in del_vq() 182 vp_legacy_set_queue_address(&vp_dev->ldev, vq->index, 0); in del_vq() [all …]
|
A D | virtio_pci_modern.c | 194 struct virtqueue *vq; in setup_vq() local 214 vq = vring_create_virtqueue(index, num, in setup_vq() 218 if (!vq) in setup_vq() 224 virtqueue_get_avail_addr(vq), in setup_vq() 225 virtqueue_get_used_addr(vq)); in setup_vq() 228 if (!vq->priv) { in setup_vq() 241 return vq; in setup_vq() 247 vring_del_virtqueue(vq); in setup_vq() 258 struct virtqueue *vq; in vp_modern_find_vqs() local 275 struct virtqueue *vq = info->vq; in del_vq() local [all …]
|
/linux/drivers/vhost/ |
A D | vhost.c | 49 #define vhost_used_event(vq) ((__virtio16 __user *)&vq->avail->ring[vq->num]) argument 50 #define vhost_avail_event(vq) ((__virtio16 __user *)&vq->used->ring[vq->num]) argument 111 vq->is_le = vhost_has_feature(vq, VIRTIO_F_VERSION_1) || !vq->user_be; in vhost_init_is_le() 309 return vq->avail && vq->desc && vq->used && vhost_vq_access_ok(vq); in vhost_vq_is_setup() 407 if (!vq->indirect || !vq->log || !vq->heads) in vhost_dev_alloc_iovecs() 954 return vhost_put_user(vq, cpu_to_vhost16(vq, vq->avail_idx), in vhost_put_avail_event() 969 return vhost_put_user(vq, cpu_to_vhost16(vq, vq->used_flags), in vhost_put_used_flags() 976 return vhost_put_user(vq, cpu_to_vhost16(vq, vq->last_used_idx), in vhost_put_used_idx() 1415 return vq_access_ok(vq, vq->num, vq->desc, vq->avail, vq->used); in vhost_vq_access_ok() 1537 if (!vq_access_ok(vq, vq->num, in vhost_vring_set_addr() [all …]
|
A D | net.c | 245 ubufs->vq = vq; in vhost_net_ubuf_alloc() 388 struct vhost_virtqueue *vq = ubufs->vq; in vhost_zerocopy_callback() local 450 struct vhost_virtqueue *vq = &nvq->vq; in vhost_net_signal_used() local 600 struct vhost_virtqueue *vq = &nvq->vq; in vhost_exceeds_maxpend() local 624 struct vhost_virtqueue *vq = &nvq->vq; in get_tx_bufs() local 695 struct vhost_virtqueue *vq = &nvq->vq; in vhost_net_build_xdp() local 769 struct vhost_virtqueue *vq = &nvq->vq; in handle_tx_copy() local 859 struct vhost_virtqueue *vq = &nvq->vq; in handle_tx_zerocopy() local 963 struct vhost_virtqueue *vq = &nvq->vq; in handle_tx() local 1110 struct vhost_virtqueue *vq = &nvq->vq; in handle_rx() local [all …]
|
A D | test.c | 51 mutex_lock(&vq->mutex); in handle_vq() 54 mutex_unlock(&vq->mutex); in handle_vq() 61 head = vhost_get_vq_desc(vq, vq->iov, in handle_vq() 62 ARRAY_SIZE(vq->iov), in handle_vq() 69 if (head == vq->num) { in handle_vq() 93 mutex_unlock(&vq->mutex); in handle_vq() 135 mutex_lock(&vq->mutex); in vhost_test_stop_vq() 196 vq = n->vqs + index; in vhost_test_run() 259 mutex_lock(&vq->mutex); in vhost_test_set_features() 283 vq = &n->vqs[index]; in vhost_test_set_backend() [all …]
|
A D | scsi.c | 249 vq = &vs->vqs[i].vq; in vhost_scsi_init_inflight() 476 head = vhost_get_vq_desc(vq, vq->iov, in vhost_scsi_do_evt_work() 576 vq = -1; in vhost_scsi_complete_cmd_work() 579 vhost_signal(&vs->dev, &vs->vqs[vq].vq); in vhost_scsi_complete_cmd_work() 827 vc->head = vhost_get_vq_desc(vq, vq->iov, in vhost_scsi_get_desc() 1607 vq = &vs->vqs[i].vq; in vhost_scsi_set_endpoint() 1617 vq = &vs->vqs[i].vq; in vhost_scsi_set_endpoint() 1719 vq = &vs->vqs[i].vq; in vhost_scsi_clear_endpoint() 1728 vq = &vs->vqs[i].vq; in vhost_scsi_clear_endpoint() 1768 vq = &vs->vqs[i].vq; in vhost_scsi_set_features() [all …]
|
A D | vsock.c | 99 mutex_lock(&vq->mutex); in vhost_transport_do_send_pkt() 104 if (!vq_meta_prefetch(vq)) in vhost_transport_do_send_pkt() 131 head = vhost_get_vq_desc(vq, vq->iov, ARRAY_SIZE(vq->iov), in vhost_transport_do_send_pkt() 140 if (head == vq->num) { in vhost_transport_do_send_pkt() 424 return val < vq->num; in vhost_vsock_more_replies() 504 mutex_lock(&vq->mutex); in vhost_vsock_handle_tx_kick() 522 head = vhost_get_vq_desc(vq, vq->iov, ARRAY_SIZE(vq->iov), in vhost_vsock_handle_tx_kick() 527 if (head == vq->num) { in vhost_vsock_handle_tx_kick() 589 vq = &vsock->vqs[i]; in vhost_vsock_start() 621 vq = &vsock->vqs[i]; in vhost_vsock_start() [all …]
|
A D | vhost.h | 141 struct vhost_virtqueue *vq; member 183 bool vhost_vq_access_ok(struct vhost_virtqueue *vq); 192 bool vhost_vq_is_setup(struct vhost_virtqueue *vq); 209 int vq_meta_prefetch(struct vhost_virtqueue *vq); 232 if ((vq)->error_ctx) \ 233 eventfd_signal((vq)->error_ctx, 1);\ 256 vq->private_data = private_data; in vhost_vq_set_backend() 269 return vq->private_data; in vhost_vq_get_backend() 274 return vq->acked_features & (1ULL << bit); in vhost_has_feature() 279 return vq->acked_backend_features & (1ULL << bit); in vhost_backend_has_feature() [all …]
|
/linux/arch/arm64/include/uapi/asm/ |
A D | sve_context.h | 31 #define __sve_vl_from_vq(vq) ((vq) * __SVE_VQ_BYTES) argument 33 #define __SVE_ZREG_SIZE(vq) ((__u32)(vq) * __SVE_VQ_BYTES) argument 34 #define __SVE_PREG_SIZE(vq) ((__u32)(vq) * (__SVE_VQ_BYTES / 8)) argument 35 #define __SVE_FFR_SIZE(vq) __SVE_PREG_SIZE(vq) argument 40 #define __SVE_ZREGS_SIZE(vq) \ argument 43 #define __SVE_PREGS_OFFSET(vq) \ argument 46 (__SVE_PREGS_OFFSET(vq) + __SVE_PREG_SIZE(vq) * (n)) 47 #define __SVE_PREGS_SIZE(vq) \ argument 48 (__SVE_PREG_OFFSET(vq, __SVE_NUM_PREGS) - __SVE_PREGS_OFFSET(vq)) 50 #define __SVE_FFR_OFFSET(vq) \ argument [all …]
|
A D | ptrace.h | 200 #define SVE_PT_SVE_ZREG_SIZE(vq) __SVE_ZREG_SIZE(vq) argument 201 #define SVE_PT_SVE_PREG_SIZE(vq) __SVE_PREG_SIZE(vq) argument 202 #define SVE_PT_SVE_FFR_SIZE(vq) __SVE_FFR_SIZE(vq) argument 212 #define SVE_PT_SVE_ZREGS_SIZE(vq) \ argument 215 #define SVE_PT_SVE_PREGS_OFFSET(vq) \ argument 219 #define SVE_PT_SVE_PREGS_SIZE(vq) \ argument 221 SVE_PT_SVE_PREGS_OFFSET(vq)) 223 #define SVE_PT_SVE_FFR_OFFSET(vq) \ argument 227 ((SVE_PT_SVE_FFR_OFFSET(vq) + SVE_PT_SVE_FFR_SIZE(vq) + \ 230 #define SVE_PT_SVE_FPCR_OFFSET(vq) \ argument [all …]
|
A D | sigcontext.h | 165 #define sve_vl_from_vq(vq) __sve_vl_from_vq(vq) argument 223 #define SVE_SIG_ZREG_SIZE(vq) __SVE_ZREG_SIZE(vq) argument 224 #define SVE_SIG_PREG_SIZE(vq) __SVE_PREG_SIZE(vq) argument 225 #define SVE_SIG_FFR_SIZE(vq) __SVE_FFR_SIZE(vq) argument 235 #define SVE_SIG_ZREGS_SIZE(vq) __SVE_ZREGS_SIZE(vq) argument 237 #define SVE_SIG_PREGS_OFFSET(vq) \ argument 241 #define SVE_SIG_PREGS_SIZE(vq) __SVE_PREGS_SIZE(vq) argument 243 #define SVE_SIG_FFR_OFFSET(vq) \ argument 246 #define SVE_SIG_REGS_SIZE(vq) \ argument 247 (__SVE_FFR_OFFSET(vq) + __SVE_FFR_SIZE(vq)) [all …]
|
/linux/include/linux/ |
A D | virtio.h | 29 void (*callback)(struct virtqueue *vq); 37 int virtqueue_add_outbuf(struct virtqueue *vq, 42 int virtqueue_add_inbuf(struct virtqueue *vq, 53 int virtqueue_add_sgs(struct virtqueue *vq, 60 bool virtqueue_kick(struct virtqueue *vq); 64 bool virtqueue_notify(struct virtqueue *vq); 71 void virtqueue_disable_cb(struct virtqueue *vq); 73 bool virtqueue_enable_cb(struct virtqueue *vq); 85 bool virtqueue_is_broken(struct virtqueue *vq); 144 #define virtio_device_for_each_vq(vdev, vq) \ argument [all …]
|
/linux/drivers/vdpa/vdpa_sim/ |
A D | vdpa_sim_blk.c | 73 ret = vringh_getdesc_iotlb(&vq->vring, &vq->out_iov, &vq->in_iov, in vdpasim_blk_handle_req() 78 if (vq->out_iov.used < 1 || vq->in_iov.used < 1) { in vdpasim_blk_handle_req() 80 vq->out_iov.used, vq->in_iov.used); in vdpasim_blk_handle_req() 84 if (vq->in_iov.iov[vq->in_iov.used - 1].iov_len < 1) { in vdpasim_blk_handle_req() 96 bytes = vringh_iov_pull_iotlb(&vq->vring, &vq->out_iov, &hdr, in vdpasim_blk_handle_req() 120 bytes = vringh_iov_push_iotlb(&vq->vring, &vq->in_iov, in vdpasim_blk_handle_req() 143 bytes = vringh_iov_pull_iotlb(&vq->vring, &vq->out_iov, in vdpasim_blk_handle_req() 156 bytes = vringh_iov_push_iotlb(&vq->vring, &vq->in_iov, in vdpasim_blk_handle_req() 183 bytes = vringh_iov_push_iotlb(&vq->vring, &vq->in_iov, &status, 1); in vdpasim_blk_handle_req() 192 vringh_complete_iotlb(&vq->vring, vq->head, pushed); in vdpasim_blk_handle_req() [all …]
|
A D | vdpa_sim.c | 59 if (!vq->cb) in vdpasim_vq_notify() 62 vq->cb(vq->private); in vdpasim_vq_notify() 83 vq->ready = false; in vdpasim_vq_reset() 84 vq->desc_addr = 0; in vdpasim_vq_reset() 85 vq->driver_addr = 0; in vdpasim_vq_reset() 87 vq->cb = NULL; in vdpasim_vq_reset() 88 vq->private = NULL; in vdpasim_vq_reset() 330 vq->num = num; in vdpasim_set_vq_num() 338 if (vq->ready) in vdpasim_kick_vq() 359 if (vq->ready) in vdpasim_set_vq_ready() [all …]
|
/linux/tools/virtio/linux/ |
A D | virtio.h | 21 void (*callback)(struct virtqueue *vq); 30 int virtqueue_add_sgs(struct virtqueue *vq, 37 int virtqueue_add_outbuf(struct virtqueue *vq, 42 int virtqueue_add_inbuf(struct virtqueue *vq, 47 bool virtqueue_kick(struct virtqueue *vq); 51 void virtqueue_disable_cb(struct virtqueue *vq); 53 bool virtqueue_enable_cb(struct virtqueue *vq); 54 bool virtqueue_enable_cb_delayed(struct virtqueue *vq); 64 bool (*notify)(struct virtqueue *vq), 65 void (*callback)(struct virtqueue *vq), [all …]
|
/linux/drivers/vdpa/vdpa_user/ |
A D | vduse_dev.c | 432 vq->num = 0; in vduse_dev_reset() 433 memset(&vq->state, 0, sizeof(vq->state)); in vduse_dev_reset() 437 if (vq->kickfd) in vduse_dev_reset() 470 if (!vq->ready) in vduse_vq_kick() 473 if (vq->kickfd) in vduse_vq_kick() 518 vq->num = num; in vduse_vdpa_set_vq_num() 535 return vq->ready; in vduse_vdpa_get_vq_ready() 850 if (vq->kickfd) in vduse_kickfd_setup() 853 if (vq->ready && vq->kicked && vq->kickfd) { in vduse_kickfd_setup() 889 if (vq->ready && vq->cb.callback) in vduse_vq_irq_inject() [all …]
|
/linux/tools/testing/selftests/arm64/fp/ |
A D | sve-ptrace.c | 276 unsigned int vq = sve_vq_from_vl(vl); in ptrace_set_sve_get_sve_data() local 298 SVE_PT_SVE_ZREG_SIZE(vq)); in ptrace_set_sve_get_sve_data() 302 SVE_PT_SVE_PREG_SIZE(vq)); in ptrace_set_sve_get_sve_data() 331 read_buf + SVE_PT_SVE_ZREG_OFFSET(vq, i), in ptrace_set_sve_get_sve_data() 332 SVE_PT_SVE_ZREG_SIZE(vq)) != 0) { in ptrace_set_sve_get_sve_data() 341 SVE_PT_SVE_PREG_SIZE(vq)) != 0) { in ptrace_set_sve_get_sve_data() 365 unsigned int vq = sve_vq_from_vl(vl); in ptrace_set_sve_get_fpsimd_data() local 393 SVE_PT_SVE_ZREG_SIZE(vq)); in ptrace_set_sve_get_fpsimd_data() 445 unsigned int vq, vl; in do_parent() local 509 for (vq = SVE_VQ_MIN; vq <= SVE_VQ_MAX; vq++) { in do_parent() [all …]
|
A D | sve-probe-vls.c | 20 unsigned int vq; in main() local 34 for (vq = SVE_VQ_MAX; vq > 0; --vq) { in main() 35 vl = prctl(PR_SVE_SET_VL, vq * 16); in main() 48 vq = sve_vq_from_vl(vl); in main() 53 vqs[nvqs++] = vq; in main()
|
/linux/drivers/gpu/drm/virtio/ |
A D | virtgpu_trace.h | 12 TP_PROTO(struct virtqueue *vq, struct virtio_gpu_ctrl_hdr *hdr), 13 TP_ARGS(vq, hdr), 16 __field(unsigned int, vq) 24 __entry->dev = vq->vdev->index; 25 __entry->vq = vq->index; 26 __entry->name = vq->name; 33 __entry->dev, __entry->vq, __entry->name, 39 TP_PROTO(struct virtqueue *vq, struct virtio_gpu_ctrl_hdr *hdr), 40 TP_ARGS(vq, hdr) 44 TP_PROTO(struct virtqueue *vq, struct virtio_gpu_ctrl_hdr *hdr), [all …]
|
/linux/tools/virtio/ |
A D | virtio_test.c | 35 struct virtqueue *vq; member 100 if (info->vq) in vq_reset() 107 assert(info->vq); in vq_reset() 108 info->vq->priv = info; in vq_reset() 186 virtqueue_disable_cb(vq->vq); in run_test() 197 r = virtqueue_add_outbuf(vq->vq, &sl, 1, in run_test() 211 if (unlikely(!virtqueue_kick(vq->vq))) { in run_test() 227 while (virtqueue_get_buf(vq->vq, &len)) { in run_test() 235 vq_reset(vq, vq->vring.num, &dev->vdev); in run_test() 262 if (virtqueue_enable_cb_delayed(vq->vq)) in run_test() [all …]
|
/linux/net/vmw_vsock/ |
A D | virtio_transport.c | 91 struct virtqueue *vq; in virtio_transport_send_pkt_work() local 156 virtqueue_kick(vq); in virtio_transport_send_pkt_work() 251 struct virtqueue *vq; in virtio_vsock_rx_fill() local 281 } while (vq->num_free); in virtio_vsock_rx_fill() 284 virtqueue_kick(vq); in virtio_vsock_rx_fill() 291 struct virtqueue *vq; in virtio_transport_tx_work() local 304 virtqueue_disable_cb(vq); in virtio_transport_tx_work() 335 struct virtqueue *vq; in virtio_vsock_event_fill_one() local 396 struct virtqueue *vq; in virtio_transport_event_work() local 409 virtqueue_disable_cb(vq); in virtio_transport_event_work() [all …]
|
/linux/arch/um/drivers/ |
A D | virtio_uml.c | 358 struct virtqueue *vq; in vu_req_read_message() local 414 struct virtqueue *vq; in vu_req_interrupt() local 855 vring_del_virtqueue(vq); in vu_del_vq() 873 vu_del_vq(vq); in vu_del_vqs() 927 struct virtqueue *vq; in vu_setup_vq() local 941 if (!vq) { in vu_setup_vq() 945 vq->priv = info; in vu_setup_vq() 978 return vq; in vu_setup_vq() 1003 struct virtqueue *vq; in vu_find_vqs() local 1324 struct virtqueue *vq; in virtio_uml_suspend() local [all …]
|
/linux/drivers/staging/media/sunxi/cedrus/ |
A D | cedrus_video.c | 288 struct vb2_queue *vq; in cedrus_s_fmt_vid_cap() local 292 if (vb2_is_busy(vq)) in cedrus_s_fmt_vid_cap() 308 struct vb2_queue *vq; in cedrus_s_fmt_vid_out() local 322 if (vb2_is_streaming(vq) || (vb2_is_busy(vq) && in cedrus_s_fmt_vid_out() 344 vq->subsystem_flags |= in cedrus_s_fmt_vid_out() 348 vq->subsystem_flags &= in cedrus_s_fmt_vid_out() 403 if (V4L2_TYPE_IS_OUTPUT(vq->type)) in cedrus_queue_setup() 425 if (V4L2_TYPE_IS_OUTPUT(vq->type)) in cedrus_queue_cleanup() 453 if (V4L2_TYPE_IS_OUTPUT(vq->type)) in cedrus_buf_prepare() 466 if (V4L2_TYPE_IS_CAPTURE(vq->type)) in cedrus_buf_prepare() [all …]
|