Lines Matching refs:rq
217 struct request *rq = req->p.rq;
218 struct nvme_ctrl *ctrl = nvme_req(rq)->ctrl;
219 struct nvme_ns *ns = rq->q->queuedata;
224 status = nvme_execute_rq(rq, false);
241 req->cqe->result = nvme_req(rq)->result;
243 blk_mq_free_request(rq);
249 static enum rq_end_io_ret nvmet_passthru_req_done(struct request *rq,
252 struct nvmet_req *req = rq->end_io_data;
254 req->cqe->result = nvme_req(rq)->result;
255 nvmet_req_complete(req, nvme_req(rq)->status);
256 blk_mq_free_request(rq);
260 static int nvmet_passthru_map_sg(struct nvmet_req *req, struct request *rq)
272 ARRAY_SIZE(req->inline_bvec), req_op(rq));
274 bio = bio_alloc(NULL, bio_max_segs(req->sg_cnt), req_op(rq),
280 if (bio_add_pc_page(rq->q, bio, sg_page(sg), sg->length,
287 blk_rq_bio_prep(rq, bio, req->sg_cnt);
297 struct request *rq = NULL;
319 rq = blk_mq_alloc_request(q, nvme_req_op(req->cmd), 0);
320 if (IS_ERR(rq)) {
324 nvme_init_request(rq, req->cmd);
327 rq->timeout = timeout;
330 ret = nvmet_passthru_map_sg(req, rq);
346 req->p.rq = rq;
349 rq->end_io = nvmet_passthru_req_done;
350 rq->end_io_data = req;
351 blk_execute_rq_nowait(rq, false);
360 blk_mq_free_request(rq);