Lines Matching refs:vqs

83 	struct virtio_blk_vq *vqs;  member
135 struct virtio_blk_vq *vq = &vblk->vqs[hctx->queue_num]; in get_virtio_blk_vq()
360 spin_lock_irqsave(&vblk->vqs[qid].lock, flags); in virtblk_done()
363 while ((vbr = virtqueue_get_buf(vblk->vqs[qid].vq, &len)) != NULL) { in virtblk_done()
377 spin_unlock_irqrestore(&vblk->vqs[qid].lock, flags); in virtblk_done()
383 struct virtio_blk_vq *vq = &vblk->vqs[hctx->queue_num]; in virtio_commit_rqs()
445 spin_lock_irqsave(&vblk->vqs[qid].lock, flags); in virtio_queue_rq()
446 err = virtblk_add_req(vblk->vqs[qid].vq, vbr); in virtio_queue_rq()
448 virtqueue_kick(vblk->vqs[qid].vq); in virtio_queue_rq()
454 spin_unlock_irqrestore(&vblk->vqs[qid].lock, flags); in virtio_queue_rq()
459 if (bd->last && virtqueue_kick_prepare(vblk->vqs[qid].vq)) in virtio_queue_rq()
461 spin_unlock_irqrestore(&vblk->vqs[qid].lock, flags); in virtio_queue_rq()
464 virtqueue_notify(vblk->vqs[qid].vq); in virtio_queue_rq()
1027 struct virtqueue **vqs; in init_vq() local
1059 vblk->vqs = kmalloc_array(num_vqs, sizeof(*vblk->vqs), GFP_KERNEL); in init_vq()
1060 if (!vblk->vqs) in init_vq()
1065 vqs = kmalloc_array(num_vqs, sizeof(*vqs), GFP_KERNEL); in init_vq()
1066 if (!names || !callbacks || !vqs) { in init_vq()
1073 snprintf(vblk->vqs[i].name, VQ_NAME_LEN, "req.%d", i); in init_vq()
1074 names[i] = vblk->vqs[i].name; in init_vq()
1079 snprintf(vblk->vqs[i].name, VQ_NAME_LEN, "req_poll.%d", i); in init_vq()
1080 names[i] = vblk->vqs[i].name; in init_vq()
1084 err = virtio_find_vqs(vdev, num_vqs, vqs, callbacks, names, &desc); in init_vq()
1089 spin_lock_init(&vblk->vqs[i].lock); in init_vq()
1090 vblk->vqs[i].vq = vqs[i]; in init_vq()
1095 kfree(vqs); in init_vq()
1099 kfree(vblk->vqs); in init_vq()
1359 queue_depth = vblk->vqs[0].vq->num_free; in virtblk_probe()
1590 kfree(vblk->vqs); in virtblk_probe()
1618 kfree(vblk->vqs); in virtblk_remove()
1639 kfree(vblk->vqs); in virtblk_freeze()