libnvdimm, namespace: record 'lbasize' for pmem namespaces
authorDan Williams <dan.j.williams@intel.com>
Mon, 3 Jul 2017 23:30:44 +0000 (16:30 -0700)
committerDan Williams <dan.j.williams@intel.com>
Mon, 3 Jul 2017 23:30:44 +0000 (16:30 -0700)
Commit f979b13c3cc5 "libnvdimm, label: honor the lba size specified in
v1.2 labels") neglected to update the 'lbasize' in the label when the
namespace sector_size attribute was written. We need this value in the
label for inter-OS / pre-OS compatibility.

Fixes: f979b13c3cc5 ("libnvdimm, label: honor the lba size specified in v1.2 labels")
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/nvdimm/label.c

index 922b68718a1af47281fb7df26295e3dfaedb1c3e..87796f840777067e8594a2fb52ec6a4241ed83b7 100644 (file)
@@ -660,6 +660,7 @@ static int __pmem_label_update(struct nd_region *nd_region,
        nd_label->position = __cpu_to_le16(pos);
        nd_label->isetcookie = __cpu_to_le64(cookie);
        nd_label->rawsize = __cpu_to_le64(resource_size(res));
+       nd_label->lbasize = __cpu_to_le64(nspm->lbasize);
        nd_label->dpa = __cpu_to_le64(res->start);
        nd_label->slot = __cpu_to_le32(slot);
        if (namespace_label_has(ndd, type_guid))