NanoPi M4v2 with official NVME hat kit, boot from EMMC with
OS: Armbian w/ debian Bullseye, Linux 5.10.12-rockchip64
SSD: Kioxia XG6 (Thinkpad part)

That also happened with 5.9 kernel. Not tested with other OS.

When doing cold boot, always got kernel messages like:

Code: Select all

Feb 11 01:14:34 localhost kernel: [    3.102606] nvme 0000:01:00.0: enabling device (0000 -> 0002)
Feb 11 01:14:34 localhost kernel: [    3.106554] input: gpio-keys as /devices/platform/gpio-keys/input/input0
Feb 11 01:14:34 localhost kernel: [    3.107121] of_cfs_init
Feb 11 01:14:34 localhost kernel: [    3.107161] of_cfs_init: OK
Feb 11 01:14:34 localhost kernel: [    3.129048] dwmmc_rockchip fe310000.mmc: Successfully tuned phase to 193
Feb 11 01:14:34 localhost kernel: [    3.135392] mmc0: new ultra high speed SDR104 SDIO card at address 0001
Feb 11 01:14:34 localhost kernel: [    3.144242] usb 7-1: new high-speed USB device number 2 using xhci-hcd
Feb 11 01:14:34 localhost kernel: [    3.295224] usb 7-1: New USB device found, idVendor=2109, idProduct=2817, bcdDevice= 0.50
Feb 11 01:14:34 localhost kernel: [    3.295236] usb 7-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Feb 11 01:14:34 localhost kernel: [    3.295244] usb 7-1: Product: USB2.0 Hub
Feb 11 01:14:34 localhost kernel: [    3.295253] usb 7-1: Manufacturer: VIA Labs, Inc.
Feb 11 01:14:34 localhost kernel: [    3.355660] hub 7-1:1.0: USB hub found
Feb 11 01:14:34 localhost kernel: [    3.355851] hub 7-1:1.0: 4 ports detected
Feb 11 01:14:34 localhost kernel: [    3.421534] random: crng init done
Feb 11 01:14:34 localhost kernel: [    3.450423] usb 8-1: new SuperSpeed Gen 1 USB device number 2 using xhci-hcd
Feb 11 01:14:34 localhost kernel: [    3.542849] usb 8-1: New USB device found, idVendor=2109, idProduct=0817, bcdDevice= 0.50
Feb 11 01:14:34 localhost kernel: [    3.542860] usb 8-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Feb 11 01:14:34 localhost kernel: [    3.542869] usb 8-1: Product: USB3.0 Hub
Feb 11 01:14:34 localhost kernel: [    3.542877] usb 8-1: Manufacturer: VIA Labs, Inc.
Feb 11 01:14:34 localhost kernel: [    3.563553] hub 8-1:1.0: USB hub found
Feb 11 01:14:34 localhost kernel: [    3.563793] hub 8-1:1.0: 4 ports detected
Feb 11 01:14:34 localhost kernel: [   64.480292] nvme nvme0: I/O 12 QID 0 timeout, disable controller
Feb 11 01:14:34 localhost kernel: [   64.588242] nvme nvme0: Device shutdown incomplete; abort shutdown
Feb 11 01:14:34 localhost kernel: [   64.588624] nvme nvme0: Identify Controller failed (-4)
Feb 11 01:14:34 localhost kernel: [   64.588636] nvme nvme0: Removing after probe failure status: -5
Feb 11 01:14:34 localhost kernel: [   64.607118] Freeing unused kernel memory: 4352K
Feb 11 01:14:34 localhost kernel: [   64.620362] Run /init as init process

As stated, nvme disk will be removed after 60 seconds timeout.

Currently my method to recover is to do a reboot, then there has no problem to use it.

Is this a bug or compatibility issue? Is it possible that I can add back the nvme0 drive without reboot? (I've tried the pci rescan sysfs file, seems no use.)

BTW, the unsafe_shutdowns in nvme's smart-log also increases.