[BISECTED] nvme probe failure with v5.13-rc1

From: Verma, Vishal L
Date: Fri May 21 2021 - 01:00:37 EST


Hi,

I ran into this failure to probe an nvme device in an emulator
(simics). It looks like there is a ~60 second wait followed by a
timeout and a failure to boot (the root device is an nvme disk) with
these messages in the log:

[ 67.174010] nvme nvme0: I/O 5 QID 0 timeout, disable controller
[ 67.175793] nvme nvme0: Removing after probe failure status: -4

I bisected this to:
5befc7c26e5a ("nvme: implement non-mdts command limits")

It's not immediately obvious to me what's causing the problem.
Reverting the above commit fixes it. It is easily reproducible - I'd be
happy to provide more info about the emulated device or test out
patches or theories.

It is of course possible that the emulated device is behaving in some
non spec-compliant way, in which case I'd appreciate any help figuring
out what that is.

Thanks,
-Vishal