On Wed, Jan 16, 2019 at 04:27:16PM -0800, Bart Van Assche wrote:
In scsi-mq mode it is not allowed to sleep inside srp_queuecommand() since the flag BLK_MQ_F_BLOCKING has not been set. Since setting the request queue flag BLK_MQ_F_BLOCKING would slow down the hot path, make srp_queuecommand() skip the mutex_lock() and mutex_unlock() calls when called from inside scsi_queue_rq() from the SCSI EH thread.
This patch avoids that the following appears in the kernel log:
I think we need to get rid of the taking a sleeping lock in ->queuecomand entirely. These checks are way to fragile.