From: Ming Lei <ming.lei@canonical.com> Date: Fri, 15 Aug 2014 15:16:32 +0000 (+0800) Subject: blk-mq: fix WARNING "percpu_ref_kill() called more than once!" X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=dd840087086f3b93ac20f7472b4fca59aff7b79f;p=linux.git blk-mq: fix WARNING "percpu_ref_kill() called more than once!" Before doing queue release, the queue has been freezed already by blk_cleanup_queue(), so needn't to freeze queue for deleting tag set. This patch fixes the WARNING of "percpu_ref_kill() called more than once!" which is triggered during unloading block driver. Cc: Tejun Heo <tj@kernel.org> Signed-off-by: Ming Lei <ming.lei@canonical.com> Signed-off-by: Jens Axboe <axboe@fb.com> --- diff --git a/block/blk-mq.c b/block/blk-mq.c index 5189cb1e478a6..ac8a0413664e6 100644 --- a/block/blk-mq.c +++ b/block/blk-mq.c @@ -1713,14 +1713,10 @@ static void blk_mq_del_queue_tag_set(struct request_queue *q) { struct blk_mq_tag_set *set = q->tag_set; - blk_mq_freeze_queue(q); - mutex_lock(&set->tag_list_lock); list_del_init(&q->tag_set_list); blk_mq_update_tag_set_depth(set); mutex_unlock(&set->tag_list_lock); - - blk_mq_unfreeze_queue(q); } static void blk_mq_add_queue_tag_set(struct blk_mq_tag_set *set,