add NVME_QUIRK_BOGUS_NID for Intel P4608

Neerav Kumar me at nero.im
Fri Sep 30 08:13:04 PDT 2022


 lspci -nn|grep NVM
09:00.0 Non-Volatile memory controller [0108]: Intel Corporation NVMe
Datacenter SSD [3DNAND, Beta Rock Controller] [8086:0a54]
0a:00.0 Non-Volatile memory controller [0108]: Intel Corporation NVMe
Datacenter SSD [3DNAND, Beta Rock Controller] [8086:0a54]

So, it seems to be the broken 2x4?
I only have access to a P4608 so I have not tested this on other
device ids, if there is a way to narrow down the patch to P4608 I
would be happy to do that.

On Fri, Sep 30, 2022 at 10:07 AM Keith Busch <kbusch at kernel.org> wrote:
>
> On Fri, Sep 30, 2022 at 09:58:36AM -0500, Neerav Kumar wrote:
> > Intel P4608 reports bogus eui64 non-unique values so apply the
> > namespace quirk to it too.
>
> Is this specific to the 4608 with its broken "2x4" pretending to be a 1x8, or
> are all the 0a54 device id's similarly affected?
>
> > diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
> > index 9f6614f7dbeb..ed4002109122 100644
> > --- a/drivers/nvme/host/pci.c
> > +++ b/drivers/nvme/host/pci.c
> > @@ -3432,7 +3432,8 @@ static const struct pci_device_id nvme_id_table[] = {
> >      { PCI_VDEVICE(INTEL, 0x0a54),    /* Intel P4500/P4600 */
> >          .driver_data = NVME_QUIRK_STRIPE_SIZE |
> >                  NVME_QUIRK_DEALLOCATE_ZEROES |
> > -                NVME_QUIRK_IGNORE_DEV_SUBNQN, },
> > +                NVME_QUIRK_IGNORE_DEV_SUBNQN |
> > +                NVME_QUIRK_BOGUS_NID, },
> >      { PCI_VDEVICE(INTEL, 0x0a55),    /* Dell Express Flash P4600 */
> >          .driver_data = NVME_QUIRK_STRIPE_SIZE |
> >                  NVME_QUIRK_DEALLOCATE_ZEROES, },
> >



More information about the Linux-nvme mailing list