diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c index efb97ec37eee..fb59a3edc778 100644 --- a/block/blk-cgroup.c +++ b/block/blk-cgroup.c @@ -1223,10 +1223,9 @@ int blkcg_activate_policy(struct request_queue *q, if (blkcg_policy_enabled(q, pol)) return 0; - if (q->mq_ops) { + if (q->mq_ops) blk_mq_freeze_queue(q); - blk_mq_quiesce_queue(q); - } else + else blk_queue_bypass_start(q); pd_prealloc: if (!pd_prealloc) { @@ -1265,10 +1264,9 @@ pd_prealloc: spin_unlock_irq(q->queue_lock); out_bypass_end: - if (q->mq_ops) { + if (q->mq_ops) blk_mq_unfreeze_queue(q); - blk_mq_start_stopped_hw_queues(q, true); - } else + else blk_queue_bypass_end(q); if (pd_prealloc) pol->pd_free_fn(pd_prealloc); @@ -1292,10 +1290,9 @@ void blkcg_deactivate_policy(struct request_queue *q, if (!blkcg_policy_enabled(q, pol)) return; - if (q->mq_ops) { + if (q->mq_ops) blk_mq_freeze_queue(q); - blk_mq_quiesce_queue(q); - } else + else blk_queue_bypass_start(q); spin_lock_irq(q->queue_lock); @@ -1318,10 +1315,9 @@ void blkcg_deactivate_policy(struct request_queue *q, spin_unlock_irq(q->queue_lock); - if (q->mq_ops) { + if (q->mq_ops) blk_mq_unfreeze_queue(q); - blk_mq_start_stopped_hw_queues(q, true); - } else + else blk_queue_bypass_end(q); } EXPORT_SYMBOL_GPL(blkcg_deactivate_policy);