diff options
author | Jens Axboe <axboe@fb.com> | 2014-06-04 09:11:53 -0600 |
---|---|---|
committer | Jens Axboe <axboe@fb.com> | 2014-06-04 09:11:53 -0600 |
commit | f899fed4421d6b098ed6a9d69303c70e590bf2c0 (patch) | |
tree | 0a0264c0cd6169aa900f6de1f44fbc0f6c7ddd9d /block/blk-mq.c | |
parent | ff87bcec197774f938fbd1fe996068005f3dfb3c (diff) | |
download | lwn-f899fed4421d6b098ed6a9d69303c70e590bf2c0.tar.gz lwn-f899fed4421d6b098ed6a9d69303c70e590bf2c0.zip |
blk-mq: fix regression from commit 624dbe475416
When the code was collapsed to avoid duplication, the recent patch
for ensuring that a queue is idled before free was dropped, which was
added by commit 19c5d84f14d2.
Add back the blk_mq_tag_idle(), to ensure we don't leak a reference
to an active queue when it is freed.
Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'block/blk-mq.c')
-rw-r--r-- | block/blk-mq.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/block/blk-mq.c b/block/blk-mq.c index 96e6eb638f00..4e8e8cf00815 100644 --- a/block/blk-mq.c +++ b/block/blk-mq.c @@ -1552,6 +1552,8 @@ static void blk_mq_exit_hw_queues(struct request_queue *q, if (i == nr_queue) break; + blk_mq_tag_idle(hctx); + if (set->ops->exit_hctx) set->ops->exit_hctx(hctx, i); |