[PATCH 17/18] nvme: move namespace scanning to common code

Busch, Keith keith.busch at intel.com
Thu Oct 22 14:24:25 PDT 2015

On Thu, Oct 22, 2015 at 06:30:00PM +0200, Christoph Hellwig wrote:
> On Thu, Oct 22, 2015 at 01:48:30PM +0000, Busch, Keith wrote:
> > Here's a namespace list proposal:
> > 
> > http://lists.infradead.org/pipermail/linux-nvme/2015-September/002325.html
> > 
> > I'll rebase it on the latest and resend.
> Looks good.  I suspect we might want a fallback if the controller
> doesn't support Identify 0x2 - NVMe 1.1 doesn't mention anything about
> Identify subcommand being optional or not and 1.2 says "Controllers that
> support specification revision 1.1 or later shall support this
> capability." which isn't as a strong as a must.  And some lazy people
> like me implemented NVMe targets systes that don't support it but claim
> to be version 1.2, although I'll try to get that fixed ASAP.

It does fall through to the older way if identify list fails. My concern
is when it doesn't fail when it should have. Some controllers claim 1.1 or
higher, but do not interpret the Identify Namespace List correctly. They
just check that CNS != 0, and if true, returns success with an Identify
Namespace structure, so the driver misinterprets the data.

I filed bugs with the vendors I know about, but there may be others I
haven't tested.

More information about the Linux-nvme mailing list