CXL 3.2 Spec mentions CXL LSA 2.1 Namespace Labels at section
9.13.2.5. If Namespace label is present in LSA during
nvdimm_probe() then dimm-physical-address(DPA) reservation is
required. But this reservation is not required by cxl region
label. Therefore if LSA scanning finds any region label, skip it.
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
Reviewed-by: Jonathan Cameron <jonathan.cameron@huawei.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Signed-off-by: Neeraj Kumar <s.neeraj@samsung.com>
---
drivers/nvdimm/label.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/drivers/nvdimm/label.c b/drivers/nvdimm/label.c
index 5a4599c5e5a8..f18b04f63dcc 100644
--- a/drivers/nvdimm/label.c
+++ b/drivers/nvdimm/label.c
@@ -471,6 +471,13 @@ int nd_label_reserve_dpa(struct nvdimm_drvdata *ndd)
lsa_label = to_lsa_label(ndd, slot);
nd_label = &lsa_label->ns_label;
+ /*
+ * If the LSA label is a region label then it doesn't
+ * require a dimm-physical-address(DPA) reservation.
+ */
+ if (is_region_label(ndd, lsa_label))
+ continue;
+
if (!slot_valid(ndd, lsa_label, slot))
continue;
--
2.34.1