On Fri, Jun 19, 2020 at 4:18 PM Ananth, Rajesh <[email protected]> wrote: > > I have a question on the default REGION creation (unlabeled NVDIMM) on the > Interleave Sets. I observe that for a Single Interleave Set, the Linux > Kernels earlier to 4.9 create only one "Region0->namespace0.0" (pmem0 for the > entire size), but in the later Kernels I observe for the same Interleave Set > it creates "Region0->namespace0.0" and "Region1->namespace1.0" by default > (pmem0, pmem1 for half the size of the Interleave set). > > I don't have any explicit labels created using the ndctl utilities. I just > plug-in the fresh NVDIMM modules like I always do. > > I searched for and found the relevant information on that front regarding the > nd_pmem driver and the support for multiple pmem namespaces. I am wondering > whether is there a way I could -- through Kernel Parameters or something -- > get the default behavior the same as it existed before Kernel 4.9 driver > changes.
How is your platform BIOS indicating the persistent memory range? I suspect you might be using the non-standard Type-12 memory hack and are hitting this issue: 23446cb66c07 x86/e820: Don't merge consecutive E820_PRAM ranges https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=23446cb66c07 For it to show up as one range the BIOS needs to tell Linux that it is one coherent range. You can force the kernel to override the BIOS provided memory map with the memmap= parameter. Some details of that here: https://nvdimm.wiki.kernel.org/how_to_choose_the_correct_memmap_kernel_parameter_for_pmem_on_your_system _______________________________________________ Linux-nvdimm mailing list -- [email protected] To unsubscribe send an email to [email protected]
