• Home
  • Raw
  • Download

Lines Matching refs:rq

21 void blk_mq_sched_assign_ioc(struct request *rq)  in blk_mq_sched_assign_ioc()  argument
23 struct request_queue *q = rq->q; in blk_mq_sched_assign_ioc()
44 rq->elv.icq = icq; in blk_mq_sched_assign_ioc()
89 struct request *rq; in blk_mq_dispatch_hctx_list() local
93 list_for_each_entry(rq, rq_list, queuelist) { in blk_mq_dispatch_hctx_list()
94 if (rq->mq_hctx != hctx) { in blk_mq_dispatch_hctx_list()
95 list_cut_before(&hctx_list, rq_list, &rq->queuelist); in blk_mq_dispatch_hctx_list()
132 struct request *rq; in __blk_mq_do_dispatch_sched() local
145 rq = e->type->ops.dispatch_request(hctx); in __blk_mq_do_dispatch_sched()
146 if (!rq) { in __blk_mq_do_dispatch_sched()
164 list_add_tail(&rq->queuelist, &rq_list); in __blk_mq_do_dispatch_sched()
165 if (rq->mq_hctx != hctx) in __blk_mq_do_dispatch_sched()
236 struct request *rq; in blk_mq_do_dispatch_ctx() local
250 rq = blk_mq_dequeue_from_ctx(hctx, ctx); in blk_mq_do_dispatch_ctx()
251 if (!rq) { in blk_mq_do_dispatch_ctx()
269 list_add(&rq->queuelist, &rq_list); in blk_mq_do_dispatch_ctx()
272 ctx = blk_mq_next_ctx(hctx, rq->mq_ctx); in blk_mq_do_dispatch_ctx()
274 } while (blk_mq_dispatch_rq_list(rq->mq_hctx, &rq_list, 1)); in blk_mq_do_dispatch_ctx()
389 bool blk_mq_sched_try_insert_merge(struct request_queue *q, struct request *rq) in blk_mq_sched_try_insert_merge() argument
391 return rq_mergeable(rq) && elv_attempt_insert_merge(q, rq); in blk_mq_sched_try_insert_merge()
395 void blk_mq_sched_request_inserted(struct request *rq) in blk_mq_sched_request_inserted() argument
397 trace_block_rq_insert(rq->q, rq); in blk_mq_sched_request_inserted()
403 struct request *rq) in blk_mq_sched_bypass_insert() argument
416 if ((rq->rq_flags & RQF_FLUSH_SEQ) || blk_rq_is_passthrough(rq)) in blk_mq_sched_bypass_insert()
420 rq->rq_flags |= RQF_SORTED; in blk_mq_sched_bypass_insert()
426 void blk_mq_sched_insert_request(struct request *rq, bool at_head, in blk_mq_sched_insert_request() argument
429 struct request_queue *q = rq->q; in blk_mq_sched_insert_request()
431 struct blk_mq_ctx *ctx = rq->mq_ctx; in blk_mq_sched_insert_request()
432 struct blk_mq_hw_ctx *hctx = rq->mq_hctx; in blk_mq_sched_insert_request()
435 WARN_ON(e && (rq->tag != BLK_MQ_NO_TAG)); in blk_mq_sched_insert_request()
437 trace_android_vh_blk_mq_sched_insert_request(&skip, rq); in blk_mq_sched_insert_request()
439 if (!skip && blk_mq_sched_bypass_insert(hctx, !!e, rq)) { in blk_mq_sched_insert_request()
461 at_head = (rq->rq_flags & RQF_FLUSH_SEQ) ? true : at_head; in blk_mq_sched_insert_request()
462 blk_mq_request_bypass_insert(rq, at_head, false); in blk_mq_sched_insert_request()
469 list_add(&rq->queuelist, &list); in blk_mq_sched_insert_request()
473 __blk_mq_insert_request(hctx, rq, at_head); in blk_mq_sched_insert_request()