On 08/13/2017 12:44 PM, Christoph Hellwig wrote: > Defaulting to scsi-mq in 4.13-rc has shown various regressions > on setups that we didn't previously consider. Fixes for them are > in progress, but too invasive to make it in this cycle. So for > now revert the commit that defaults to blk-mq for SCSI. For 4.14 > we'll plan to try again with these fixes. I'm not sure if this is one of your known regressions, but I've had a problem on my Lenovo T410 with the 4.13-rc kernels. When unplugging the power cord, the hard disk gets suspended. [ 1499.629415] thinkpad_acpi: EC reports that Thermal Table has changed [ 1499.832116] sd 0:0:0:0: [sda] Synchronizing SCSI cache [ 1499.885831] e1000e: eth0 NIC Link is Down [ 1499.897531] sd 0:0:0:0: [sda] Stopping disk [ 1499.923736] EXT4-fs (sda5): re-mounted. Opts: data=ordered,commit=600 [ 1504.240444] thinkpad_acpi: EC reports that Thermal Table has changed [ 1515.502561] sd 0:0:0:0: timing out command, waited 15s Adding "scsi_mod.use_blk_mq=0" to the command line fixes it. Thanks, Shaggy > > This reverts commit 5c279bd9e40624f4ab6e688671026d6005b066fa. > > Signed-off-by: Christoph Hellwig <hch@xxxxxx> > --- > drivers/scsi/Kconfig | 11 +++++++++++ > drivers/scsi/scsi.c | 4 ++++ > 2 files changed, 15 insertions(+) > > diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig > index f4538d7a3016..d145e0d90227 100644 > --- a/drivers/scsi/Kconfig > +++ b/drivers/scsi/Kconfig > @@ -47,6 +47,17 @@ config SCSI_NETLINK > default n > depends on NET > > +config SCSI_MQ_DEFAULT > + bool "SCSI: use blk-mq I/O path by default" > + depends on SCSI > + ---help--- > + This option enables the new blk-mq based I/O path for SCSI > + devices by default. With the option the scsi_mod.use_blk_mq > + module/boot option defaults to Y, without it to N, but it can > + still be overridden either way. > + > + If unsure say N. > + > config SCSI_PROC_FS > bool "legacy /proc/scsi/ support" > depends on SCSI && PROC_FS > diff --git a/drivers/scsi/scsi.c b/drivers/scsi/scsi.c > index 3d38c6d463b8..1bf274e3b2b6 100644 > --- a/drivers/scsi/scsi.c > +++ b/drivers/scsi/scsi.c > @@ -800,7 +800,11 @@ MODULE_LICENSE("GPL"); > module_param(scsi_logging_level, int, S_IRUGO|S_IWUSR); > MODULE_PARM_DESC(scsi_logging_level, "a bit mask of logging levels"); > > +#ifdef CONFIG_SCSI_MQ_DEFAULT > bool scsi_use_blk_mq = true; > +#else > +bool scsi_use_blk_mq = false; > +#endif > module_param_named(use_blk_mq, scsi_use_blk_mq, bool, S_IWUSR | S_IRUGO); > > static int __init init_scsi(void) >