Intel P4608 (Oracle f640) doesn't show both NVMe devices. globally duplicate IDs for nsid

Pankaj Raghav p.raghav at samsung.com
Fri Mar 31 05:01:22 PDT 2023


On Wed, Mar 29, 2023 at 09:36:43AM -0600, Keith Busch wrote:
> On Wed, Mar 29, 2023 at 12:36:23PM +0200, Olav Gjerde wrote:
> > Hi,
> > 
> > I just upgraded to debian-testing which runs Linux 6.1 on a machine
> > here and I have trouble with my NVME card which has two NVMe drives. I
> > find the following error message in
> > dmesg: nvme nvme2: globally duplicate IDs for nsid 1
> > 
> > I googled this error message and came over the explanation here:
> > https://bugzilla.kernel.org/show_bug.cgi?id=216049
> > 
> > lspci returns this,
> > 
> > 87:00.0 Non-Volatile memory controller [0108]: Intel Corporation NVMe
> > Datacenter SSD [3DNAND, Beta Rock Controller] [8086:0a54]
> > 88:00.0 Non-Volatile memory controller [0108]: Intel Corporation NVMe
> > Datacenter SSD [3DNAND, Beta Rock Controller] [8086:0a54]
> > 
> > I have checked the master source code, and I see no changes recently,
> > so my guess is that the fix is adding NVME_QUIRK_BOGUS_NID
> > to the following section:
> > { PCI_VDEVICE(INTEL, 0x0a54), /* Intel P4500/P4600 */
> >      .driver_data = NVME_QUIRK_STRIPE_SIZE |
> >      NVME_QUIRK_DEALLOCATE_ZEROES |
> >       NVME_QUIRK_IGNORE_DEV_SUBNQN, },
> > 
> > in drivers/nvme/host/pci.c
> 
> Yeah, NVME_QUIRK_BOGUS_NID is needed. The only problem is this particular model
> shares the same VID:DID as the 4500/4600 that do not have this problem. I guess
> none of them get to use those features...
Can this be then moved to core_quirks in core.c then with its specific mn?
> 



More information about the Linux-nvme mailing list