Message ID | 20170501232802.27219-1-ming.lei@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 05/01/2017 05:28 PM, Ming Lei wrote: > After queue is freezed, no request in this queue can be in use > at all, so there can't be any .queue_rq() is running on this queue. > It isn't necessary to call blk_mq_quiesce_queue() any more, so > remove it in both elevator_switch_mq() and blk_mq_update_nr_requests(). Added, thanks Ming.
On Tue, 2017-05-02 at 07:28 +0800, Ming Lei wrote: > After queue is freezed, no request in this queue can be in use > at all, so there can't be any .queue_rq() is running on this queue. > It isn't necessary to call blk_mq_quiesce_queue() any more, so > remove it in both elevator_switch_mq() and blk_mq_update_nr_requests(). Reviewed-by: Bart Van Assche <bart.vanassche@sandisk.com>
diff --git a/block/blk-mq.c b/block/blk-mq.c index bf90684a007a..8f72f16b498a 100644 --- a/block/blk-mq.c +++ b/block/blk-mq.c @@ -2617,7 +2617,6 @@ int blk_mq_update_nr_requests(struct request_queue *q, unsigned int nr) return -EINVAL; blk_mq_freeze_queue(q); - blk_mq_quiesce_queue(q); ret = 0; queue_for_each_hw_ctx(q, hctx, i) { @@ -2643,7 +2642,6 @@ int blk_mq_update_nr_requests(struct request_queue *q, unsigned int nr) q->nr_requests = nr; blk_mq_unfreeze_queue(q); - blk_mq_start_stopped_hw_queues(q, true); return ret; } diff --git a/block/elevator.c b/block/elevator.c index bf11e70f008b..c7a4ee682033 100644 --- a/block/elevator.c +++ b/block/elevator.c @@ -950,7 +950,6 @@ static int elevator_switch_mq(struct request_queue *q, int ret; blk_mq_freeze_queue(q); - blk_mq_quiesce_queue(q); if (q->elevator) { if (q->elevator->registered) @@ -978,9 +977,7 @@ static int elevator_switch_mq(struct request_queue *q, out: blk_mq_unfreeze_queue(q); - blk_mq_start_stopped_hw_queues(q, true); return ret; - } /*
After queue is freezed, no request in this queue can be in use at all, so there can't be any .queue_rq() is running on this queue. It isn't necessary to call blk_mq_quiesce_queue() any more, so remove it in both elevator_switch_mq() and blk_mq_update_nr_requests(). Cc: Bart Van Assche <bart.vanassche@sandisk.com> Signed-off-by: Ming Lei <ming.lei@redhat.com> --- block/blk-mq.c | 2 -- block/elevator.c | 3 --- 2 files changed, 5 deletions(-)