[PATCH V3 1/4] blk-mq: serialize queue quiesce and unquiesce by mutex
Bart Van Assche
bvanassche at acm.org
Tue Sep 8 13:54:14 EDT 2020
On 2020-09-08 01:15, Ming Lei wrote:
> void blk_mq_unquiesce_queue(struct request_queue *q)
> {
> + mutex_lock(&q->mq_quiesce_lock);
> +
> blk_queue_flag_clear(QUEUE_FLAG_QUIESCED, q);
>
> /* dispatch requests which are inserted during quiescing */
> blk_mq_run_hw_queues(q, true);
> +
> + mutex_unlock(&q->mq_quiesce_lock);
> }
Has the sunvdc driver been retested? It calls blk_mq_unquiesce_queue()
with a spinlock held. As you know calling mutex_lock() while holding a
spinlock is not allowed.
There may be other drivers than the sunvdc driver that do this.
Thanks,
Bart.
More information about the Linux-nvme
mailing list