[PATCH] fix: nvme_update_ns_info method should be called even if nvme_ms_ids_equal return false

Arman Hajishafieha arman.hajishafieha at hotmail.com
Tue May 24 09:51:57 PDT 2022


On Tue, 2022-05-24 at 15:50 +0200, hch at lst.de wrote:
> On Mon, May 23, 2022 at 06:18:01PM +0000, Arman Hajishafieha wrote:
> > I can confirm that "MAXIO MAP1001" (1e4b:1001) controller found in
> > "Asgard N2 1TB SSD" suffers from the exact same issue as well.
> > After applying the patch to disable checking namespace identifiers
> > it
> > can resume from suspend normally. It seems like this issue affects
> > a
> > wider range of Maxio controllers.
> > Could you please add a quirk for this device as well?
> 
> Please try this:
> 
> 
> diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
> index 5a98a7de09642..cb4adc0c22843 100644
> --- a/drivers/nvme/host/pci.c
> +++ b/drivers/nvme/host/pci.c
> @@ -3453,6 +3453,8 @@ static const struct pci_device_id
> nvme_id_table[] = {
>                 .driver_data = NVME_QUIRK_NO_DEEPEST_PS, },
>         { PCI_DEVICE(0x2646, 0x2263),   /* KINGSTON A2000 NVMe SSD 
> */
>                 .driver_data = NVME_QUIRK_NO_DEEPEST_PS, },
> +       { PCI_DEVICE(0x1e4B, 0x1001),   /* MAXIO MAP1001 */
> +               .driver_data = NVME_QUIRK_BOGUS_NID, },
>         { PCI_DEVICE(0x1e4B, 0x1002),   /* MAXIO MAP1002 */
>                 .driver_data = NVME_QUIRK_BOGUS_NID, },
>         { PCI_DEVICE(0x1e4B, 0x1202),   /* MAXIO MAP1202 */
> 
> 
I applied the patch against kernel 5.18.0
As dmesg log below shows, the quirk is applied correctly and resume
from suspend is working as expected.
Thank you

[    1.684064] nvme 0000:04:00.0: platform quirk: setting simple
suspend
[    1.684119] nvme nvme0: pci function 0000:04:00.0
[    1.696073] nvme nvme0: missing or invalid SUBNQN field.
[    1.699332] nvme nvme0: allocated 16 MiB host memory buffer.
[    1.701789] nvme nvme0: 8/0/0 default/read/poll queues
[    1.707999] nvme nvme0: Ignoring bogus Namespace Identifiers
[    1.710368]  nvme0n1: p1 p2 p3 p4 p5 p6 p7
[   36.560018] XFS (nvme0n1p5): Mounting V5 Filesystem
[   36.982002] XFS (nvme0n1p5): Ending clean mount
[   91.027799] nvme nvme0: 8/0/0 default/read/poll queues
[   91.034207] nvme nvme0: Ignoring bogus Namespace Identifiers


More information about the Linux-nvme mailing list