Corsair MP600 PRO LPX - SUBNQN and NVME_ID_CNS_CS_CTRL

alsauser at pragmasoft.com alsauser at pragmasoft.com
Thu Aug 24 18:41:28 PDT 2023


I have identified two issues with the Corsair MP600 PRO LPX 4TB M.2 SSD in my Debian Bookworm (12.2.0) system:

1. From syslog:

2023-08-24T20:51:33.193726-04:00 <hostname redacted> kernel: [    1.744108] nvme nvme0: missing or invalid SUBNQN field.

I believe that the attached proposed patch "addresses" this issue.

2. By inserting "printk's", I have concluded that the device does not support the NVME_ID_CNS_CS_CTRL request, more specifically as issued by function nvme_init_non_mdts_limits in drivers/nmve/host/core.c.  Unfortunately, this request results in an additional error in the device's error log on each system reboot, as evidenced by the error log below :(

It appears that recent versions of core.c include a "NVME_CTRL_SKIP_ID_CNS_CS" flag, but I don't see a "quirk" that is able to set that flag and thus avoid the errors on every reboot.

>From assorted web searches, it also appears that there might be a recommendation to include the NVME_QUIRK_DISABLE_WRITE_ZEROES option for this drive.   Unfortunately, I do not have any contacts at Corsair or Phison to clarify/pursue/resolve these issues.  Any additional guidance would be appreciated.

Thanks, Scott.

A: As per "lspci -nn":

02:00.0 Non-Volatile memory controller [0108]: Phison Electronics Corporation E18 PCIe4 NVMe Controller [1987:5018] (rev 01)


B: As per "nvme error-log /dev/nmve0":

Error Log Entries for device:nvme0 entries:63
.................
 Entry[ 0]   
.................
error_count	: 281
sqid		: 0
cmdid		: 0
status_field	: 0x2002(Invalid Field in Command: A reserved coded value or an unsupported value in a defined field)
phase_tag	: 0
parm_err_loc	: 0x28
lba		: 0
nsid		: 0
vs		: 0
trtype		: The transport type is not indicated or the error is not transport related.
cs		: 0
trtype_spec_info: 0
.................


C: As per "nvme id-ctrl /dev/nvme0"

NVME Identify Controller:
vid       : 0x1987
ssvid     : 0x1987
sn        : 231079700001314300EF
mn        : Corsair MP600 PRO LPX                   
fr        : EIFM31.6
rab       : 1
ieee      : 6479a7
cmic      : 0
mdts      : 9
cntlid    : 0x1
ver       : 0x10400
rtd3r     : 0x989680
rtd3e     : 0x989680
oaes      : 0x200
ctratt    : 0x2
rrls      : 0
cntrltype : 1
fguid     : 00000000-0000-0000-0000-000000000000
crdt1     : 0
crdt2     : 0
crdt3     : 0
nvmsr     : 0
vwci      : 0
mec       : 0
oacs      : 0x17
acl       : 3
aerl      : 3
frmw      : 0x12
lpa       : 0x8
elpe      : 62
npss      : 4
avscc     : 0x1
apsta     : 0x1
wctemp    : 357
cctemp    : 362
mtfa      : 100
hmpre     : 0
hmmin     : 0
tnvmcap   : 4,000,787,030,016
unvmcap   : 0
rpmbs     : 0
edstt     : 10
dsto      : 0
fwug      : 1
kas       : 0
hctma     : 0x1
mntmt     : 313
mxtmt     : 352
sanicap   : 0
hmminds   : 0
hmmaxd    : 0
nsetidmax : 0
endgidmax : 0
anatt     : 0
anacap    : 0
anagrpmax : 0
nanagrpid : 0
pels      : 0
domainid  : 0
megcap    : 0
sqes      : 0x66
cqes      : 0x44
maxcmd    : 512
nn        : 1
oncs      : 0x5d
fuses     : 0
fna       : 0
vwc       : 0x7
awun      : 255
awupf     : 0
icsvscc   : 1
nwpc      : 0
acwu      : 0
ocfs      : 0
sgls      : 0
mnan      : 0
maxdna    : 0
maxcna    : 0
subnqn    : 
ioccsz    : 0
iorcsz    : 0
icdoff    : 0
fcatt     : 0
msdbd     : 0
ofcs      : 0
ps      0 : mp:8.80W operational enlat:0 exlat:0 rrt:0 rrl:0
            rwt:0 rwl:0 idle_power:- active_power:-
            active_power_workload:-
ps      1 : mp:7.10W operational enlat:0 exlat:0 rrt:1 rrl:1
            rwt:1 rwl:1 idle_power:- active_power:-
            active_power_workload:-
ps      2 : mp:5.20W operational enlat:0 exlat:0 rrt:2 rrl:2
            rwt:2 rwl:2 idle_power:- active_power:-
            active_power_workload:-
ps      3 : mp:0.0620W non-operational enlat:2500 exlat:7500 rrt:3 rrl:3
            rwt:3 rwl:3 idle_power:- active_power:-
            active_power_workload:-
ps      4 : mp:0.0440W non-operational enlat:10500 exlat:65000 rrt:4 rrl:4
            rwt:4 rwl:4 idle_power:- active_power:-
            active_power_workload:-
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Corsair_MP600_4TB.patch
Type: text/x-diff
Size: 537 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-nvme/attachments/20230824/a61b4d24/attachment.bin>


More information about the Linux-nvme mailing list