]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - block/blk-mq.c
blk-mq: fix sysfs registration/unregistration race
[karo-tx-linux.git] / block / blk-mq.c
index 2fd7283ec62ba29bd176e2d7f3149f5aa228d1ea..0262131ac5f24b4f2618e49229176cb45c9f90ac 100644 (file)
@@ -2035,13 +2035,13 @@ struct request_queue *blk_mq_init_allocated_queue(struct blk_mq_tag_set *set,
                goto err_hctxs;
 
        mutex_lock(&all_q_mutex);
-       list_add_tail(&q->all_q_node, &all_q_list);
-       mutex_unlock(&all_q_mutex);
 
+       list_add_tail(&q->all_q_node, &all_q_list);
        blk_mq_add_queue_tag_set(set, q);
-
        blk_mq_map_swqueue(q);
 
+       mutex_unlock(&all_q_mutex);
+
        return q;
 
 err_hctxs: