Hi Jens,

On Fri, Apr 28, 2017 at 07:42:05AM -0600, Jens Axboe wrote:
> On 04/28/2017 01:32 AM, Ming Lei wrote:
> > We have freezed queue already, not necessary to call
> > blk_mq_quiesce_queue() any more, so remove it.
> 
> Are you sure? It ensures that we also aren't in the middle of
> blk_mq_make_request(), we need a stable view of the sched
> status throughout that.

After blk_mq_freeze_queue() returned, no requests belonging to this queue
can be in use, so there shouldn't be any .queue_rq() running for this
queue.

Or you mean any .queue_rq()(even not belongs to this queue) can't be
running during mq scheduler switch? If yes, per-hctx srcu can't guarantee
that too for BLOCKING case.

Thanks,
Ming

Reply via email to