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: Dave Jiang <[email protected]> Signed-off-by: Neeraj Kumar <[email protected]> --- drivers/nvdimm/label.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/nvdimm/label.c b/drivers/nvdimm/label.c index 9854cb45fb62..169692dfa12c 100644 --- a/drivers/nvdimm/label.c +++ b/drivers/nvdimm/label.c @@ -469,6 +469,14 @@ int nd_label_reserve_dpa(struct nvdimm_drvdata *ndd) lsa_label = to_lsa_label(ndd, slot); nd_label = &lsa_label->ns_label; + /* + * Skip region label. If LSA label is region label + * then it don't require dimm-physical-address(DPA) + * reservation. Whereas its required for namespace label + */ + if (is_region_label(ndd, lsa_label)) + continue; + if (!slot_valid(ndd, lsa_label, slot)) continue; -- 2.34.1

