Lines Matching refs:hctx

46 void blk_mq_flush_busy_ctxs(struct blk_mq_hw_ctx *hctx, struct list_head *list);
48 struct request *blk_mq_dequeue_from_ctx(struct blk_mq_hw_ctx *hctx,
67 void __blk_mq_insert_request(struct blk_mq_hw_ctx *hctx, struct request *rq,
70 void blk_mq_insert_requests(struct blk_mq_hw_ctx *hctx, struct blk_mq_ctx *ctx,
75 void blk_mq_try_issue_list_directly(struct blk_mq_hw_ctx *hctx,
127 extern void blk_mq_hctx_kobj_init(struct blk_mq_hw_ctx *hctx);
166 struct blk_mq_hw_ctx *hctx; member
172 return data->hctx->sched_tags; in blk_mq_tags_from_data()
174 return data->hctx->tags; in blk_mq_tags_from_data()
177 static inline bool blk_mq_hctx_stopped(struct blk_mq_hw_ctx *hctx) in blk_mq_hctx_stopped() argument
179 return test_bit(BLK_MQ_S_STOPPED, &hctx->state); in blk_mq_hctx_stopped()
182 static inline bool blk_mq_hw_queue_mapped(struct blk_mq_hw_ctx *hctx) in blk_mq_hw_queue_mapped() argument
184 return hctx->nr_ctx && hctx->tags; in blk_mq_hw_queue_mapped()
191 static inline void blk_mq_put_dispatch_budget(struct blk_mq_hw_ctx *hctx) in blk_mq_put_dispatch_budget() argument
193 struct request_queue *q = hctx->queue; in blk_mq_put_dispatch_budget()
196 q->mq_ops->put_budget(hctx); in blk_mq_put_dispatch_budget()
199 static inline bool blk_mq_get_dispatch_budget(struct blk_mq_hw_ctx *hctx) in blk_mq_get_dispatch_budget() argument
201 struct request_queue *q = hctx->queue; in blk_mq_get_dispatch_budget()
204 return q->mq_ops->get_budget(hctx); in blk_mq_get_dispatch_budget()
208 static inline void __blk_mq_put_driver_tag(struct blk_mq_hw_ctx *hctx, in __blk_mq_put_driver_tag() argument
211 blk_mq_put_tag(hctx, hctx->tags, rq->mq_ctx, rq->tag); in __blk_mq_put_driver_tag()
216 atomic_dec(&hctx->nr_active); in __blk_mq_put_driver_tag()