diff options
author | Omar Sandoval <osandov@fb.com> | 2016-09-17 01:28:23 -0700 |
---|---|---|
committer | Jens Axboe <axboe@fb.com> | 2016-09-17 08:39:10 -0600 |
commit | 40aabb67464d5aad9ca3d2a5fedee56e2ff45aa0 (patch) | |
tree | 19592825f8eb48363f5f9279c0d32003e7ed6532 /block/blk-mq-tag.h | |
parent | 48e28166a7b608e19a6aea3acadd81cdfe660f6b (diff) |
sbitmap: push per-cpu last_tag into sbitmap_queue
Allocating your own per-cpu allocation hint separately makes for an
awkward API. Instead, allocate the per-cpu hint as part of the struct
sbitmap_queue. There's no point for a struct sbitmap_queue without the
cache, but you can still use a bare struct sbitmap.
Signed-off-by: Omar Sandoval <osandov@fb.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'block/blk-mq-tag.h')
-rw-r--r-- | block/blk-mq-tag.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/block/blk-mq-tag.h b/block/blk-mq-tag.h index 3215c08c63cc..2b1d52ed82e0 100644 --- a/block/blk-mq-tag.h +++ b/block/blk-mq-tag.h @@ -27,7 +27,8 @@ extern struct blk_mq_tags *blk_mq_init_tags(unsigned int nr_tags, unsigned int r extern void blk_mq_free_tags(struct blk_mq_tags *tags); extern unsigned int blk_mq_get_tag(struct blk_mq_alloc_data *data); -extern void blk_mq_put_tag(struct blk_mq_hw_ctx *hctx, unsigned int tag, unsigned int *last_tag); +extern void blk_mq_put_tag(struct blk_mq_hw_ctx *hctx, struct blk_mq_ctx *ctx, + unsigned int tag); extern bool blk_mq_has_free_tags(struct blk_mq_tags *tags); extern ssize_t blk_mq_tag_sysfs_show(struct blk_mq_tags *tags, char *page); extern void blk_mq_tag_init_last_tag(struct blk_mq_tags *tags, unsigned int *last_tag); |