NVMe: Fix interpretation of 'Number of Namespaces' field
authorMatthew Wilcox <matthew.r.wilcox@intel.com>
Wed, 16 Mar 2011 20:29:58 +0000 (16:29 -0400)
committerMatthew Wilcox <matthew.r.wilcox@intel.com>
Fri, 4 Nov 2011 19:53:00 +0000 (15:53 -0400)
The spec says this is a 0s based value.  We don't need to handle the
maximal value because it's reserved to mean "every namespace".

Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>
drivers/block/nvme.c

index d4f95eb..0d5c918 100644 (file)
@@ -1364,7 +1364,7 @@ static int __devinit nvme_dev_add(struct nvme_dev *dev)
        crt.features.prp1 = cpu_to_le64(dma_addr + 4096);
        crt.features.fid = cpu_to_le32(NVME_FEAT_LBA_RANGE);
 
-       for (i = 0; i < nn; i++) {
+       for (i = 0; i <= nn; i++) {
                cid.identify.nsid = cpu_to_le32(i);
                res = nvme_submit_admin_cmd(dev, &cid, NULL);
                if (res)