Lines Matching refs:hctx_idx

612 	blk_opf_t opf, blk_mq_req_flags_t flags, unsigned int hctx_idx)
640 if (hctx_idx >= q->nr_hw_queues)
652 data.hctx = xa_load(&q->hctx_table, hctx_idx);
3284 unsigned int hctx_idx)
3295 drv_tags = set->tags[hctx_idx];
3305 set->ops->exit_request(set, rq, hctx_idx);
3335 unsigned int hctx_idx)
3343 if (hctx_idx >= start && hctx_idx < end)
3354 unsigned int hctx_idx)
3356 enum hctx_type type = hctx_idx_to_type(set, hctx_idx);
3358 return blk_mq_hw_queue_to_node(&set->map[type], hctx_idx);
3362 unsigned int hctx_idx,
3366 int node = blk_mq_get_hctx_node(set, hctx_idx);
3399 unsigned int hctx_idx, int node)
3404 ret = set->ops->init_request(set, rq, hctx_idx, node);
3415 unsigned int hctx_idx, unsigned int depth)
3418 int node = blk_mq_get_hctx_node(set, hctx_idx);
3474 if (blk_mq_init_request(set, rq, hctx_idx, node)) {
3486 blk_mq_free_rqs(set, tags, hctx_idx);
3648 struct blk_mq_hw_ctx *hctx, unsigned int hctx_idx)
3656 blk_mq_clear_flush_rq_mapping(set->tags[hctx_idx],
3659 set->ops->exit_request(set, flush_rq, hctx_idx);
3662 set->ops->exit_hctx(hctx, hctx_idx);
3666 xa_erase(&q->hctx_table, hctx_idx);
3688 struct blk_mq_hw_ctx *hctx, unsigned hctx_idx)
3690 hctx->queue_num = hctx_idx;
3697 hctx->tags = set->tags[hctx_idx];
3700 set->ops->init_hctx(hctx, set->driver_data, hctx_idx))
3703 if (blk_mq_init_request(set, hctx->fq->flush_rq, hctx_idx,
3707 if (xa_insert(&q->hctx_table, hctx_idx, hctx, GFP_KERNEL))
3714 set->ops->exit_request(set, hctx->fq->flush_rq, hctx_idx);
3717 set->ops->exit_hctx(hctx, hctx_idx);
3819 unsigned int hctx_idx,
3825 tags = blk_mq_alloc_rq_map(set, hctx_idx, depth, set->reserved_tags);
3829 ret = blk_mq_alloc_rqs(set, tags, hctx_idx, depth);
3839 int hctx_idx)
3842 set->tags[hctx_idx] = set->shared_tags;
3847 set->tags[hctx_idx] = blk_mq_alloc_map_and_rqs(set, hctx_idx,
3850 return set->tags[hctx_idx];
3855 unsigned int hctx_idx)
3858 blk_mq_free_rqs(set, tags, hctx_idx);
3864 unsigned int hctx_idx)
3867 blk_mq_free_map_and_rqs(set, set->tags[hctx_idx], hctx_idx);
3869 set->tags[hctx_idx] = NULL;
3874 unsigned int j, hctx_idx;
3900 hctx_idx = set->map[j].mq_map[i];
3902 if (!set->tags[hctx_idx] &&
3903 !__blk_mq_alloc_map_and_rqs(set, hctx_idx)) {
4190 int hctx_idx, int node)
4211 if (blk_mq_init_hctx(q, set, hctx, hctx_idx))