2018-07-04 08:55:09

by Johannes Thumshirn

[permalink] [raw]
Subject: [PATCH] scsi: switch to scsi-mq by default

It has been more than one year since we tried to change the default
from legacy to multi queue in SCSI with commit c279bd9e406 ("scsi:
default to scsi-mq"). But due to issues with suspend/resume and
performance problems it had been reverted again with commit
cbe7dfa26eee ("Revert "scsi: default to scsi-mq"").

In the meantime there have been a substantial amount of performance
improvements and suspend/resume got fixed as well, thus we can
re-enable scsi-mq without a significant performance penalty.

Signed-off-by: Johannes Thumshirn <[email protected]>
Reviewed-by: Hannes Reinecke <[email protected]>
Reviewed-by: Ming Lei <[email protected]>
Acked-by: John Garry <[email protected]>

---
Changes since RFC:
- Improve Changelog as Bart suggested
- Collect Acks and Reviews
---
drivers/scsi/Kconfig | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
index 35c909bbf8ba..bd115bab162e 100644
--- a/drivers/scsi/Kconfig
+++ b/drivers/scsi/Kconfig
@@ -49,6 +49,7 @@ config SCSI_NETLINK

config SCSI_MQ_DEFAULT
bool "SCSI: use blk-mq I/O path by default"
+ default y
depends on SCSI
---help---
This option enables the new blk-mq based I/O path for SCSI
--
2.16.4



2018-07-11 02:53:43

by Martin K. Petersen

[permalink] [raw]
Subject: Re: [PATCH] scsi: switch to scsi-mq by default


Johannes,

> It has been more than one year since we tried to change the default
> from legacy to multi queue in SCSI with commit c279bd9e406 ("scsi:
> default to scsi-mq"). But due to issues with suspend/resume and
> performance problems it had been reverted again with commit
> cbe7dfa26eee ("Revert "scsi: default to scsi-mq"").
>
> In the meantime there have been a substantial amount of performance
> improvements and suspend/resume got fixed as well, thus we can
> re-enable scsi-mq without a significant performance penalty.

Applied to 4.19/scsi-queue, thanks!

--
Martin K. Petersen Oracle Linux Engineering

2018-07-11 08:34:10

by Adrian Hunter

[permalink] [raw]
Subject: Re: [PATCH] scsi: switch to scsi-mq by default

On 11/07/18 05:52, Martin K. Petersen wrote:
>
> Johannes,
>
>> It has been more than one year since we tried to change the default
>> from legacy to multi queue in SCSI with commit c279bd9e406 ("scsi:
>> default to scsi-mq"). But due to issues with suspend/resume and
>> performance problems it had been reverted again with commit
>> cbe7dfa26eee ("Revert "scsi: default to scsi-mq"").
>>
>> In the meantime there have been a substantial amount of performance
>> improvements and suspend/resume got fixed as well, thus we can
>> re-enable scsi-mq without a significant performance penalty.
>
> Applied to 4.19/scsi-queue, thanks!
>

But there is no runtime pm support, is there? I tried enabling runtime PM
for UFS SCSI devices with scsi-mq and it didn't work, which is a regression.

2018-07-11 19:24:11

by Ming Lei

[permalink] [raw]
Subject: Re: [PATCH] scsi: switch to scsi-mq by default

On Wed, Jul 11, 2018 at 4:31 PM, Adrian Hunter <[email protected]> wrote:
> On 11/07/18 05:52, Martin K. Petersen wrote:
>>
>> Johannes,
>>
>>> It has been more than one year since we tried to change the default
>>> from legacy to multi queue in SCSI with commit c279bd9e406 ("scsi:
>>> default to scsi-mq"). But due to issues with suspend/resume and
>>> performance problems it had been reverted again with commit
>>> cbe7dfa26eee ("Revert "scsi: default to scsi-mq"").
>>>
>>> In the meantime there have been a substantial amount of performance
>>> improvements and suspend/resume got fixed as well, thus we can
>>> re-enable scsi-mq without a significant performance penalty.
>>
>> Applied to 4.19/scsi-queue, thanks!
>>
>
> But there is no runtime pm support, is there? I tried enabling runtime PM
> for UFS SCSI devices with scsi-mq and it didn't work, which is a regression.

I just posted one RFC patchset for supporting runtime PM on scsi_mq, and
looks it works in my test on usb-storage.

https://marc.info/?l=linux-block&m=153132657922233&w=2

thanks,
Ming Lei

2018-07-12 06:20:55

by Adrian Hunter

[permalink] [raw]
Subject: Re: [PATCH] scsi: switch to scsi-mq by default

On 11/07/18 19:35, Ming Lei wrote:
> On Wed, Jul 11, 2018 at 4:31 PM, Adrian Hunter <[email protected]> wrote:
>> On 11/07/18 05:52, Martin K. Petersen wrote:
>>>
>>> Johannes,
>>>
>>>> It has been more than one year since we tried to change the default
>>>> from legacy to multi queue in SCSI with commit c279bd9e406 ("scsi:
>>>> default to scsi-mq"). But due to issues with suspend/resume and
>>>> performance problems it had been reverted again with commit
>>>> cbe7dfa26eee ("Revert "scsi: default to scsi-mq"").
>>>>
>>>> In the meantime there have been a substantial amount of performance
>>>> improvements and suspend/resume got fixed as well, thus we can
>>>> re-enable scsi-mq without a significant performance penalty.
>>>
>>> Applied to 4.19/scsi-queue, thanks!
>>>
>>
>> But there is no runtime pm support, is there? I tried enabling runtime PM
>> for UFS SCSI devices with scsi-mq and it didn't work, which is a regression.
>
> I just posted one RFC patchset for supporting runtime PM on scsi_mq, and
> looks it works in my test on usb-storage.
>
> https://marc.info/?l=linux-block&m=153132657922233&w=2

Cool, please cc me on the next revision of your patch set.