summaryrefslogtreecommitdiffstats
path: root/block/blk-mq-tag.h
diff options
context:
space:
mode:
authorJens Axboe <axboe@fb.com>2014-05-20 11:49:02 -0600
committerJens Axboe <axboe@fb.com>2014-05-20 11:49:02 -0600
commite3a2b3f931f59d5284abd13faf8bded726884ffd (patch)
treef5426a4745996e95afc2f01f826e846710929dc2 /block/blk-mq-tag.h
parent64b14519e5913e8d4de9f2e5d9ef59abba3ed83d (diff)
downloadlinux-e3a2b3f931f59d5284abd13faf8bded726884ffd.tar.gz
linux-e3a2b3f931f59d5284abd13faf8bded726884ffd.tar.bz2
linux-e3a2b3f931f59d5284abd13faf8bded726884ffd.zip
blk-mq: allow changing of queue depth through sysfs
For request_fn based devices, the block layer exports a 'nr_requests' file through sysfs to allow adjusting of queue depth on the fly. Currently this returns -EINVAL for blk-mq, since it's not wired up. Wire this up for blk-mq, so that it now also always dynamic adjustments of the allowed queue depth for any given block device managed by blk-mq. Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'block/blk-mq-tag.h')
-rw-r--r--block/blk-mq-tag.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/block/blk-mq-tag.h b/block/blk-mq-tag.h
index e144f68ec45f..e7ff5ceeeb97 100644
--- a/block/blk-mq-tag.h
+++ b/block/blk-mq-tag.h
@@ -55,6 +55,7 @@ extern void blk_mq_tag_busy_iter(struct blk_mq_tags *tags, void (*fn)(void *data
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);
+extern int blk_mq_tag_update_depth(struct blk_mq_tags *tags, unsigned int depth);
enum {
BLK_MQ_TAG_CACHE_MIN = 1,