Re: System not booting since dm changes? (was Linux 4.20-rc1)

From: Jens Axboe
Date: Mon Nov 05 2018 - 10:08:48 EST


On 11/5/18 7:35 AM, Satheesh Rajendran wrote:
> On Mon, Nov 05, 2018 at 08:51:57AM -0500, Mike Snitzer wrote:
>> On Mon, Nov 05 2018 at 5:25am -0500,
>> Michael Ellerman <mpe@xxxxxxxxxxxxxx> wrote:
>>
>>> Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> writes:
>>> ...
>>>> Mike Snitzer (1):
>>>> device mapper updates
>>>
>>> Hi Mike,
>>>
>>> Replying here because I can't find the device-mapper pull or the patch
>>> in question on LKML. I guess I should be subscribed to dm-devel.
>>>
>>> We have a box that doesn't boot any more, bisect points at one of:
>>>
>>> cef6f55a9fb4 Mike Snitzer dm table: require that request-based DM be layered on blk-mq devices
>>> 953923c09fe8 Mike Snitzer dm: rename DM_TYPE_MQ_REQUEST_BASED to DM_TYPE_REQUEST_BASED
>>> 6a23e05c2fe3 Jens Axboe dm: remove legacy request-based IO path
>>>
>>>
>>> It's a Power8 system running Rawhide, it does have multipath, but I'm
>>> told it was setup by the Fedora installer, ie. nothing fancy.
>>>
>>> The symptom is the system can't find its root filesystem and drops into
>>> the initramfs shell. The dmesg includes a bunch of errors like below:
>>>
>>> [ 43.263460] localhost multipathd[1344]: sdb: fail to get serial
>>> [ 43.268762] localhost multipathd[1344]: mpatha: failed in domap for addition of new path sdb
>>> [ 43.268762] localhost multipathd[1344]: uevent trigger error
>>> [ 43.282065] localhost kernel: device-mapper: table: table load rejected: not all devices are blk-mq request-stackable
>> ...
>>>
>>> Any ideas what's going wrong here?
>>
>> "table load rejected: not all devices are blk-mq request-stackable"
>> speaks to the fact that you aren't using blk-mq for scsi (aka scsi-mq).
>>
>> You need to use scsi_mod.use_blk_mq=Y on the kernel commandline (or set
>> CONFIG_SCSI_MQ_DEFAULT in your kernel config)
>
> Thanks Mike!, above solution worked and the system booted fine now:-)

This quirk will go away for the next kernel, fwiw, since the non-mq
path for SCSI will be dropped as well.

--
Jens Axboe