Home
last modified time | relevance | path

Searched refs:tags (Results 1 – 8 of 8) sorted by relevance

/block/
Dblk-mq-tag.c16 bool blk_mq_has_free_tags(struct blk_mq_tags *tags) in blk_mq_has_free_tags() argument
18 if (!tags) in blk_mq_has_free_tags()
21 return sbitmap_any_bit_clear(&tags->bitmap_tags.sb); in blk_mq_has_free_tags()
31 atomic_inc(&hctx->tags->active_queues); in __blk_mq_tag_busy()
39 void blk_mq_tag_wakeup_all(struct blk_mq_tags *tags, bool include_reserve) in blk_mq_tag_wakeup_all() argument
41 sbitmap_queue_wake_all(&tags->bitmap_tags); in blk_mq_tag_wakeup_all()
43 sbitmap_queue_wake_all(&tags->breserved_tags); in blk_mq_tag_wakeup_all()
52 struct blk_mq_tags *tags = hctx->tags; in __blk_mq_tag_idle() local
57 atomic_dec(&tags->active_queues); in __blk_mq_tag_idle()
59 blk_mq_tag_wakeup_all(tags, false); in __blk_mq_tag_idle()
[all …]
Dblk-tag.c90 init_tag_map(struct request_queue *q, struct blk_queue_tag *tags, int depth) in init_tag_map() argument
111 tags->real_max_depth = depth; in init_tag_map()
112 tags->max_depth = depth; in init_tag_map()
113 tags->tag_index = tag_index; in init_tag_map()
114 tags->tag_map = tag_map; in init_tag_map()
125 struct blk_queue_tag *tags; in __blk_queue_init_tags() local
127 tags = kmalloc(sizeof(struct blk_queue_tag), GFP_ATOMIC); in __blk_queue_init_tags()
128 if (!tags) in __blk_queue_init_tags()
131 if (init_tag_map(q, tags, depth)) in __blk_queue_init_tags()
134 atomic_set(&tags->refcnt, 1); in __blk_queue_init_tags()
[all …]
Dblk-mq-tag.h26 extern void blk_mq_free_tags(struct blk_mq_tags *tags);
29 extern void blk_mq_put_tag(struct blk_mq_hw_ctx *hctx, struct blk_mq_tags *tags,
31 extern bool blk_mq_has_free_tags(struct blk_mq_tags *tags);
33 struct blk_mq_tags **tags,
35 extern void blk_mq_tag_wakeup_all(struct blk_mq_tags *tags, bool);
86 hctx->tags->rqs[tag] = rq; in blk_mq_tag_set_rq()
89 static inline bool blk_mq_tag_is_reserved(struct blk_mq_tags *tags, in blk_mq_tag_is_reserved() argument
92 return tag < tags->nr_reserved_tags; in blk_mq_tag_is_reserved()
Dblk-mq.c278 blk_mq_tag_wakeup_all(hctx->tags, true); in blk_mq_wake_waiters()
290 return blk_mq_has_free_tags(hctx->tags); in blk_mq_can_queue()
297 struct blk_mq_tags *tags = blk_mq_tags_from_data(data); in blk_mq_rq_ctx_init() local
298 struct request *rq = tags->static_rqs[tag]; in blk_mq_rq_ctx_init()
312 data->hctx->tags->rqs[rq->tag] = rq; in blk_mq_rq_ctx_init()
505 blk_mq_put_tag(hctx, hctx->tags, ctx, rq->tag); in blk_mq_free_request()
748 struct request *blk_mq_tag_to_rq(struct blk_mq_tags *tags, unsigned int tag) in blk_mq_tag_to_rq() argument
750 if (tag < tags->nr_tags) { in blk_mq_tag_to_rq()
751 prefetch(tags->rqs[tag]); in blk_mq_tag_to_rq()
752 return tags->rqs[tag]; in blk_mq_tag_to_rq()
[all …]
Dblk-mq.h43 void blk_mq_free_rqs(struct blk_mq_tag_set *set, struct blk_mq_tags *tags,
45 void blk_mq_free_rq_map(struct blk_mq_tags *tags);
50 int blk_mq_alloc_rqs(struct blk_mq_tag_set *set, struct blk_mq_tags *tags,
125 return data->hctx->tags; in blk_mq_tags_from_data()
135 return hctx->nr_ctx && hctx->tags; in blk_mq_hw_queue_mapped()
Dblk-mq-debugfs.c438 struct blk_mq_tags *tags) in blk_mq_debugfs_tags_show() argument
440 seq_printf(m, "nr_tags=%u\n", tags->nr_tags); in blk_mq_debugfs_tags_show()
441 seq_printf(m, "nr_reserved_tags=%u\n", tags->nr_reserved_tags); in blk_mq_debugfs_tags_show()
443 atomic_read(&tags->active_queues)); in blk_mq_debugfs_tags_show()
446 sbitmap_queue_show(&tags->bitmap_tags, m); in blk_mq_debugfs_tags_show()
448 if (tags->nr_reserved_tags) { in blk_mq_debugfs_tags_show()
450 sbitmap_queue_show(&tags->breserved_tags, m); in blk_mq_debugfs_tags_show()
463 if (hctx->tags) in hctx_tags_show()
464 blk_mq_debugfs_tags_show(m, hctx->tags); in hctx_tags_show()
480 if (hctx->tags) in hctx_tags_bitmap_show()
[all …]
Dblk-mq-sched.c305 struct blk_mq_tags *const tags = hctx->tags; in blk_mq_sched_restart() local
323 if (hctx2->tags == tags && in blk_mq_sched_restart()
332 if (hctx2->tags == tags && in blk_mq_sched_restart()
Dblk-mq-sysfs.c137 return sprintf(page, "%u\n", hctx->tags->nr_tags); in blk_mq_hw_sysfs_nr_tags_show()
143 return sprintf(page, "%u\n", hctx->tags->nr_reserved_tags); in blk_mq_hw_sysfs_nr_reserved_tags_show()