vhost_virtqueue
struct vhost_virtqueue *vq;
struct vhost_virtqueue *rvq = &rnvq->vq;
struct vhost_virtqueue *tvq = &tnvq->vq;
struct vhost_virtqueue *vq = &nvq->vq;
struct vhost_virtqueue vq;
struct vhost_virtqueue *vq = &nvq->vq;
struct vhost_virtqueue *vq = container_of(work, struct vhost_virtqueue,
struct vhost_virtqueue *vq = container_of(work, struct vhost_virtqueue,
struct vhost_virtqueue **vqs;
struct vhost_virtqueue *vq)
struct vhost_virtqueue *vq;
vhost_net_ubuf_alloc(struct vhost_virtqueue *vq, bool zcopy)
struct vhost_virtqueue *vq)
struct vhost_virtqueue *vq = ubufs->vq;
struct vhost_virtqueue *vq)
struct vhost_virtqueue *vq)
struct vhost_virtqueue *vq = &nvq->vq;
struct vhost_virtqueue *vq = &nvq->vq;
struct vhost_virtqueue *vq)
struct vhost_virtqueue *rvq,
struct vhost_virtqueue *tvq,
struct vhost_virtqueue *vq = poll_rx ? tvq : rvq;
struct vhost_virtqueue *rvq = &rnvq->vq;
struct vhost_virtqueue *tvq = &tnvq->vq;
struct vhost_virtqueue *vq = &nvq->vq;
static size_t init_iov_iter(struct vhost_virtqueue *vq, struct iov_iter *iter,
struct vhost_virtqueue *vq = &nvq->vq;
static bool tx_can_batch(struct vhost_virtqueue *vq, size_t total_len)
struct vhost_virtqueue *vq = &nvq->vq;
struct vhost_virtqueue *vq = &nvq->vq;
struct vhost_virtqueue *vq = &nvq->vq;
struct vhost_virtqueue *vq = &nvq->vq;
vhost_scsi_send_status(struct vhost_scsi *vs, struct vhost_virtqueue *vq,
struct vhost_virtqueue *vq,
vhost_scsi_get_desc(struct vhost_scsi *vs, struct vhost_virtqueue *vq,
vhost_scsi_chk_size(struct vhost_virtqueue *vq, struct vhost_scsi_ctx *vc)
vhost_scsi_get_req(struct vhost_virtqueue *vq, struct vhost_scsi_ctx *vc,
vhost_scsi_handle_vq(struct vhost_scsi *vs, struct vhost_virtqueue *vq)
struct vhost_virtqueue *tvc_vq;
vhost_scsi_send_tmf_resp(struct vhost_scsi *vs, struct vhost_virtqueue *vq,
struct vhost_virtqueue *vq = &tmf->svq->vq;
struct vhost_virtqueue *vq,
struct vhost_virtqueue *vq,
vhost_scsi_ctl_handle_vq(struct vhost_scsi *vs, struct vhost_virtqueue *vq)
struct vhost_virtqueue *vq = container_of(work, struct vhost_virtqueue,
vhost_scsi_send_evt(struct vhost_scsi *vs, struct vhost_virtqueue *vq,
struct vhost_virtqueue *vq = container_of(work, struct vhost_virtqueue,
struct vhost_virtqueue *vq = container_of(work, struct vhost_virtqueue,
static void vhost_scsi_destroy_vq_log(struct vhost_virtqueue *vq)
static void vhost_scsi_destroy_vq_cmds(struct vhost_virtqueue *vq)
static int vhost_scsi_setup_vq_cmds(struct vhost_virtqueue *vq, int max_cmds)
struct vhost_virtqueue *vq;
struct vhost_virtqueue *vq;
struct vhost_virtqueue vq;
struct vhost_virtqueue *vq;
struct vhost_virtqueue **vqs;
struct vhost_virtqueue *vq = &vs->vqs[VHOST_SCSI_VQ_EVT].vq;
struct vhost_virtqueue *vq;
struct vhost_virtqueue *vq;
vhost_scsi_get_inflight(struct vhost_virtqueue *vq)
static int vhost_scsi_copy_cmd_log(struct vhost_virtqueue *vq,
static void vhost_scsi_log_write(struct vhost_virtqueue *vq,
struct vhost_virtqueue *vq = &vs->vqs[VHOST_SCSI_VQ_EVT].vq;
struct vhost_virtqueue *vq = &vs->vqs[VHOST_SCSI_VQ_EVT].vq;
struct vhost_virtqueue *vq = &vs->vqs[VHOST_SCSI_VQ_EVT].vq;
vhost_scsi_get_cmd(struct vhost_virtqueue *vq, u64 scsi_tag)
struct vhost_virtqueue *vq = container_of(work, struct vhost_virtqueue,
struct vhost_virtqueue **vqs;
struct vhost_virtqueue *vq)
struct vhost_virtqueue *vq;
struct vhost_virtqueue *vq;
struct vhost_virtqueue *vq;
struct vhost_virtqueue vqs[VHOST_TEST_VQ_MAX];
struct vhost_virtqueue *vq = &n->vqs[VHOST_TEST_VQ];
struct vhost_virtqueue **vqs;
v->vqs = kmalloc_objs(struct vhost_virtqueue, v->nvqs);
struct vhost_virtqueue *vq = container_of(work, struct vhost_virtqueue,
struct vhost_virtqueue *vq = private;
struct vhost_virtqueue *vq = &v->vqs[qid];
struct vhost_virtqueue *vq = &v->vqs[qid];
struct vhost_virtqueue *vqs;
struct vhost_virtqueue *vq = d->vqs[i];
struct vhost_virtqueue *vq;
struct vhost_virtqueue *vq;
static void vhost_init_is_le(struct vhost_virtqueue *vq)
static void vhost_disable_cross_endian(struct vhost_virtqueue *vq)
static long vhost_set_vring_endian(struct vhost_virtqueue *vq, int __user *argp)
static inline void __user *vhost_vq_meta_fetch(struct vhost_virtqueue *vq,
static long vhost_get_vring_endian(struct vhost_virtqueue *vq, u32 idx,
static int translate_desc(struct vhost_virtqueue *vq, u64 addr, u32 len,
static int vhost_copy_to_user(struct vhost_virtqueue *vq, void __user *to,
static int vhost_copy_from_user(struct vhost_virtqueue *vq, void *to,
static void vhost_init_is_le(struct vhost_virtqueue *vq)
static void __user *__vhost_get_user_slow(struct vhost_virtqueue *vq,
static inline void __user *__vhost_get_user(struct vhost_virtqueue *vq,
static void vhost_reset_is_le(struct vhost_virtqueue *vq)
static inline int vhost_put_avail_event(struct vhost_virtqueue *vq)
static inline int vhost_put_used(struct vhost_virtqueue *vq,
static inline int vhost_put_used_flags(struct vhost_virtqueue *vq)
static inline int vhost_put_used_idx(struct vhost_virtqueue *vq)
static inline int vhost_get_avail_idx(struct vhost_virtqueue *vq)
static inline int vhost_get_avail_head(struct vhost_virtqueue *vq,
static inline int vhost_get_avail_flags(struct vhost_virtqueue *vq,
static inline int vhost_get_used_event(struct vhost_virtqueue *vq,
static inline int vhost_get_used_idx(struct vhost_virtqueue *vq,
static inline int vhost_get_desc(struct vhost_virtqueue *vq,
static int vhost_iotlb_miss(struct vhost_virtqueue *vq, u64 iova, int access)
static bool vq_access_ok(struct vhost_virtqueue *vq, unsigned int num,
static void vhost_vq_meta_update(struct vhost_virtqueue *vq,
static bool iotlb_access_ok(struct vhost_virtqueue *vq,
int vq_meta_prefetch(struct vhost_virtqueue *vq)
static bool vq_log_used_access_ok(struct vhost_virtqueue *vq,
static bool vq_log_access_ok(struct vhost_virtqueue *vq,
bool vhost_vq_access_ok(struct vhost_virtqueue *vq)
struct vhost_virtqueue *vq)
struct vhost_virtqueue *vq,
struct vhost_virtqueue *vq,
struct vhost_virtqueue *vq,
struct vhost_virtqueue *vq;
struct vhost_virtqueue *vq = d->vqs[i];
struct vhost_virtqueue *vq;
static int log_write_hva(struct vhost_virtqueue *vq, u64 hva, u64 len)
static int log_used(struct vhost_virtqueue *vq, u64 used_offset, u64 len)
int vhost_log_write(struct vhost_virtqueue *vq, struct vhost_log *log,
static int vhost_update_used_flags(struct vhost_virtqueue *vq)
bool vhost_vq_work_queue(struct vhost_virtqueue *vq, struct vhost_work *work)
static int vhost_update_avail_event(struct vhost_virtqueue *vq)
int vhost_vq_init_access(struct vhost_virtqueue *vq)
static int translate_desc(struct vhost_virtqueue *vq, u64 addr, u32 len,
static unsigned next_desc(struct vhost_virtqueue *vq, struct vring_desc *desc)
static int get_indirect(struct vhost_virtqueue *vq,
int vhost_get_vq_desc_n(struct vhost_virtqueue *vq,
int vhost_get_vq_desc(struct vhost_virtqueue *vq,
void vhost_discard_vq_desc(struct vhost_virtqueue *vq, int nbufs,
int vhost_add_used(struct vhost_virtqueue *vq, unsigned int head, int len)
static int __vhost_add_used_n(struct vhost_virtqueue *vq,
static int vhost_add_used_n_ooo(struct vhost_virtqueue *vq,
static int vhost_add_used_n_in_order(struct vhost_virtqueue *vq,
int vhost_add_used_n(struct vhost_virtqueue *vq, struct vring_used_elem *heads,
static bool vhost_notify(struct vhost_dev *dev, struct vhost_virtqueue *vq)
void vhost_signal(struct vhost_dev *dev, struct vhost_virtqueue *vq)
struct vhost_virtqueue *vq,
bool vhost_vq_has_work(struct vhost_virtqueue *vq)
struct vhost_virtqueue *vq,
bool vhost_vq_avail_empty(struct vhost_dev *dev, struct vhost_virtqueue *vq)
bool vhost_enable_notify(struct vhost_dev *dev, struct vhost_virtqueue *vq)
void vhost_disable_notify(struct vhost_dev *dev, struct vhost_virtqueue *vq)
struct vhost_msg_node *vhost_new_msg(struct vhost_virtqueue *vq, int type)
struct vhost_virtqueue *vq;
static void __vhost_vq_meta_reset(struct vhost_virtqueue *vq)
bool vhost_vq_is_setup(struct vhost_virtqueue *vq)
struct vhost_virtqueue *vq)
struct vhost_virtqueue *vq;
static void vhost_vq_free_iovecs(struct vhost_virtqueue *vq)
struct vhost_virtqueue *vq;
bool vhost_exceeds_weight(struct vhost_virtqueue *vq,
static size_t vhost_get_avail_size(struct vhost_virtqueue *vq,
static size_t vhost_get_used_size(struct vhost_virtqueue *vq,
static size_t vhost_get_desc_size(struct vhost_virtqueue *vq,
struct vhost_virtqueue **vqs, int nvqs,
struct vhost_virtqueue *vq;
static void vhost_disable_cross_endian(struct vhost_virtqueue *vq)
static void vhost_enable_cross_endian_big(struct vhost_virtqueue *vq)
static void vhost_enable_cross_endian_little(struct vhost_virtqueue *vq)
static long vhost_set_vring_endian(struct vhost_virtqueue *vq, int __user *argp)
static void __vhost_vq_attach_worker(struct vhost_virtqueue *vq,
static int vhost_vq_attach_worker(struct vhost_virtqueue *vq,
static long vhost_get_vring_endian(struct vhost_virtqueue *vq, u32 idx,
struct vhost_virtqueue **vq, u32 *id)
struct vhost_virtqueue *vq;
struct vhost_virtqueue **vqs;
bool vhost_exceeds_weight(struct vhost_virtqueue *vq, int pkts, int total_len);
void vhost_dev_init(struct vhost_dev *, struct vhost_virtqueue **vqs,
bool vhost_vq_access_ok(struct vhost_virtqueue *vq);
int vhost_get_vq_desc(struct vhost_virtqueue *,
int vhost_get_vq_desc_n(struct vhost_virtqueue *vq,
void vhost_discard_vq_desc(struct vhost_virtqueue *, int nbuf,
bool vhost_vq_work_queue(struct vhost_virtqueue *vq, struct vhost_work *work);
bool vhost_vq_has_work(struct vhost_virtqueue *vq);
bool vhost_vq_is_setup(struct vhost_virtqueue *vq);
int vhost_vq_init_access(struct vhost_virtqueue *);
int vhost_add_used(struct vhost_virtqueue *, unsigned int head, int len);
int vhost_add_used_n(struct vhost_virtqueue *, struct vring_used_elem *heads,
void vhost_add_used_and_signal(struct vhost_dev *, struct vhost_virtqueue *,
void vhost_add_used_and_signal_n(struct vhost_dev *, struct vhost_virtqueue *,
void vhost_signal(struct vhost_dev *, struct vhost_virtqueue *);
void vhost_disable_notify(struct vhost_dev *, struct vhost_virtqueue *);
bool vhost_vq_avail_empty(struct vhost_dev *, struct vhost_virtqueue *);
bool vhost_enable_notify(struct vhost_dev *, struct vhost_virtqueue *);
int vhost_log_write(struct vhost_virtqueue *vq, struct vhost_log *log,
int vq_meta_prefetch(struct vhost_virtqueue *vq);
struct vhost_msg_node *vhost_new_msg(struct vhost_virtqueue *vq, int type);
static inline void vhost_vq_set_backend(struct vhost_virtqueue *vq,
static inline void *vhost_vq_get_backend(struct vhost_virtqueue *vq)
static inline bool vhost_has_feature(struct vhost_virtqueue *vq, int bit)
static inline bool vhost_backend_has_feature(struct vhost_virtqueue *vq, int bit)
static inline bool vhost_is_little_endian(struct vhost_virtqueue *vq)
static inline bool vhost_is_little_endian(struct vhost_virtqueue *vq)
static inline u16 vhost16_to_cpu(struct vhost_virtqueue *vq, __virtio16 val)
static inline __virtio16 cpu_to_vhost16(struct vhost_virtqueue *vq, u16 val)
static inline u32 vhost32_to_cpu(struct vhost_virtqueue *vq, __virtio32 val)
static inline __virtio32 cpu_to_vhost32(struct vhost_virtqueue *vq, u32 val)
static inline u64 vhost64_to_cpu(struct vhost_virtqueue *vq, __virtio64 val)
static inline __virtio64 cpu_to_vhost64(struct vhost_virtqueue *vq, u64 val)
struct vhost_virtqueue *vq;
struct vhost_virtqueue *vq);
struct vhost_virtqueue *vq;
struct vhost_virtqueue *tx_vq = &vsock->vqs[VSOCK_VQ_TX];
vhost_vsock_alloc_skb(struct vhost_virtqueue *vq,
struct vhost_virtqueue *vq = &vsock->vqs[VSOCK_VQ_TX];
struct vhost_virtqueue *vq = container_of(work, struct vhost_virtqueue,
struct vhost_virtqueue vqs[2];
struct vhost_virtqueue *vq = container_of(work, struct vhost_virtqueue,
struct vhost_virtqueue *vq;
struct vhost_virtqueue *vq = &vsock->vqs[i];
struct vhost_virtqueue **vqs;
struct vhost_virtqueue *vq;
struct vhost_virtqueue *vq)
struct vhost_virtqueue *tx_vq = &vsock->vqs[VSOCK_VQ_TX];