On Fri, 2017-09-22 at 06:06 +0800, Ming Lei wrote: > On Thu, Sep 21, 2017 at 02:22:55PM -0700, Bart Van Assche wrote: > > + } else { > > scsi_run_queue(q); > > + while (atomic_read(&sdev->device_busy)) { > > + msleep_interruptible(200); > > + scsi_run_queue(q); > > + } > > Are you sure only blk-mq need to drain queue? We need > to do that for block legacy too. The code above your comment drains the queue for the legacy block layer. Bart.