diff --git a/block/blk-mq.c b/block/blk-mq.c index 2c850330a32b..a26a11c73ee3 100644 --- a/block/blk-mq.c +++ b/block/blk-mq.c @@ -4975,6 +4975,7 @@ void blk_mq_free_tag_set(struct blk_mq_tag_set *set) srcu_barrier(&set->tags_srcu); cleanup_srcu_struct(&set->tags_srcu); if (set->flags & BLK_MQ_F_BLOCKING) { + srcu_barrier(set->srcu); cleanup_srcu_struct(set->srcu); kfree(set->srcu); }