# SOLVED ! nvme0: missing or invalid SUBNQN field

## CooSee

never saw this message before

using current 5.4.7 kernel and everthing's working great, no fs error or freeze, etc.

both m.2 are new hardware - fresh install.

is this a false positive

```
    3.473491] nvme nvme0: pci function 0000:03:00.0

[    3.474108] nvme nvme1: pci function 0000:04:00.0

[    3.681409] nvme nvme0: missing or invalid SUBNQN field.

[    3.681893] nvme nvme1: missing or invalid SUBNQN field.

[    3.681980] nvme nvme0: Shutdown timeout set to 10 seconds

[    3.682525] nvme nvme1: Shutdown timeout set to 8 seconds

[    3.683681] nvme nvme0: 8/0/0 default/read/poll queues

[    3.684461] nvme nvme0: ctrl returned bogus length: 16 for NVME_NIDT_EUI64

[    3.685143] nvme nvme0: ctrl returned bogus length: 16 for NVME_NIDT_EUI64

[    3.687034]  nvme0n1: p1 p2 p3 p4

[    3.695759] nvme nvme1: 8/0/0 default/read/poll queues

[    3.705074]  nvme1n1: p1 p2 p3 p4

[    4.116109] XFS (nvme0n1p2): Mounting V5 Filesystem

[    4.121376] XFS (nvme0n1p2): Ending clean mount

[    5.350454] LoadPin: nvme0n1p2 (259:2): writable

[    6.689293] Adding 1048572k swap on /dev/nvme1n1p2.  Priority:-2 extents:1 across:1048572k SSFS

[    6.811809] XFS (nvme0n1p3): Mounting V5 Filesystem

[    6.819241] XFS (nvme0n1p3): Ending clean mount
```

tried boot/kernel options:

```
nvme_core.default_ps_max_latency_us=200

nvme_core.default_ps_max_latency_us=0
```

didn't work.

thx

----------

## mike155

```
# dmesg | grep SUBNQN

[    0.801824] nvme nvme0: missing or invalid SUBNQN field.

[    0.801844] nvme nvme1: missing or invalid SUBNQN field.
```

I get this message on all machines that have NVMe SSDs (Samsung SSD 970 EVO Plus). I've never had problems with my NVMe SSDs and I decided to ignore this message.

----------

## grumblebear

I think, this is just a kernel warning without any negative impact on your drive's performance. It simply means the drive has a crappy firmware violating the NVME specs.

----------

## Ionen

I don't have that message but out of curiosity had a look at the kernel and it has a dedicated quirk for it NVME_QUIRK_IGNORE_DEV_SUBNQN which (if set) will just ignore it instead of throw a scary warning. Either way (quirk or warning), it then generate a "fake" subnqn that seem to do the same job save for being generic:

```
        /* Generate a "fake" NQN per Figure 254 in NVMe 1.3 + ECN 001 */

        off = snprintf(subsys->subnqn, NVMF_NQN_SIZE,

                        "nqn.2014.08.org.nvmexpress:%04x%04x",

                        le16_to_cpu(id->vid), le16_to_cpu(id->ssvid));
```

Warning just means those aren't registered to need that quirk yet (in drivers/nvme/host/pci.c), eventually it may just go away when the list gets updated, end result will be the same. In other words, drives are fine  :Smile: 

----------

## CooSee

thanks to all of you, for your input.

the new m.2's are really fast and the complete reinstall on my new AORUS PCI-E M.2 just took 1 hour   :Smile: 

ok, but only with all the usepkg=yes option from old system.

thx again

----------

