From 829dfb841e86603f0dbd11c9b0a0008a7ae08bd5 Mon Sep 17 00:00:00 2001 From: Dan Duval Date: Fri, 29 Jul 2016 13:20:06 -0400 Subject: [PATCH] [2d8747c2] fixup! blk-mq: prevent double-unlock of mutex Orabug: 24376549 Commit 2d8747c28478f85d9f04292780b1432edd2a384e ("blk-mq: avoid inserting requests before establishing new mapping") introduced an extraneous call to mutex_unlock(). The result is that the mutex gets unlocked twice. Remove the extra call. Signed-off-by: Dan Duval --- block/blk-mq.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/block/blk-mq.c b/block/blk-mq.c index 4d46de247232f..b9dd849fcea28 100644 --- a/block/blk-mq.c +++ b/block/blk-mq.c @@ -2016,6 +2016,7 @@ struct request_queue *blk_mq_init_allocated_queue(struct blk_mq_tag_set *set, blk_mq_init_cpu_queues(q, set->nr_hw_queues); get_online_cpus(); + mutex_lock(&all_q_mutex); list_add_tail(&q->all_q_node, &all_q_list); mutex_unlock(&all_q_mutex); @@ -2023,7 +2024,6 @@ struct request_queue *blk_mq_init_allocated_queue(struct blk_mq_tag_set *set, blk_mq_add_queue_tag_set(set, q); blk_mq_map_swqueue(q, cpu_online_mask); - mutex_unlock(&all_q_mutex); put_online_cpus(); return q; -- 2.50.1