[ add back linux-nvdimm as others may hit the same issue too and I
want this in the archives ]

On Fri, Jun 19, 2020 at 4:49 PM Ananth, Rajesh <[email protected]> wrote:
>
> Dan,
>
> Thank you so much for your response.  Our PLATFORM is totally NFIT compliant 
> and does not use the Type-12/E820 maps.

Ah, great.

>
> We have 2 NVDIMMs interleaved in the same Memory Channel, each 16 GB in size.
>
> This is what the 4.7.9 Kernel reports for the for "/proc/iomem":

Can you post the output of:

acpdump -n NFIT

...?

Labels can't create new regions, so there must be a behavior
difference in how these kernels are parsing this NFIT.

>
> 00001000-0009afff : System RAM
> 0009b000-0009ffff : reserved
> 000a0000-000bffff : PCI Bus 0000:00
> 000c0000-000c7fff : Video ROM
>   000c4000-000c7fff : PCI Bus 0000:00
> 000c8000-000c8dff : Adapter ROM
> 000c9000-000c9dff : Adapter ROM
> 000e0000-000fffff : reserved
>   000f0000-000fffff : System ROM
> 00100000-6984ffff : System RAM
>   2e000000-2e7f1922 : Kernel code
>   2e7f1923-2ed448ff : Kernel data
>   2eedb000-2f055fff : Kernel bss
> 69850000-6c1f8fff : reserved
>   6b1dd018-6b1dd018 : APEI ERST
>   6b1dd01c-6b1dd021 : APEI ERST
>   6b1dd028-6b1dd039 : APEI ERST
>   6b1dd040-6b1dd04c : APEI ERST
>   6b1dd050-6b1df04f : APEI ERST
> 6c1f9000-6c322fff : System RAM
> 6c323000-6ce83fff : ACPI Non-volatile Storage
> 6ce84000-6f2fcfff : reserved
> 6f2fd000-6f7fffff : System RAM
>  fec00000-fec003ff : IOAPIC 0
>   fec01000-fec013ff : IOAPIC 1
>   fec08000-fec083ff : IOAPIC 2
>   fec10000-fec103ff : IOAPIC 3
>   fec18000-fec183ff : IOAPIC 4
>   fec20000-fec203ff : IOAPIC 5
>   fec28000-fec283ff : IOAPIC 6
>   fec30000-fec303ff : IOAPIC 7
>   fec38000-fec383ff : IOAPIC 8
> fed00000-fed003ff : HPET 0
>   fed00000-fed003ff : PNP0103:00
> fed12000-fed1200f : pnp 00:01
> fed12010-fed1201f : pnp 00:01
> fed1b000-fed1bfff : pnp 00:01
> fed20000-fed44fff : reserved
> fed45000-fed8bfff : pnp 00:01
> fee00000-feefffff : pnp 00:01
>   fee00000-fee00fff : Local APIC
> ff000000-ffffffff : reserved
>   ff000000-ffffffff : pnp 00:01
> 100000000-407fffffff : System RAM
> 4080000000-487fffffff : Persistent Memory         <<<<<  PERSISTENT MEMORY
>   4080000000-487fffffff : namespace0.0
> 4880000000-887fffffff : System RAM
>
> The same system configuration under 4.16 Kernel (We just rebooted with a new 
> Kernel):
>
> 00001000-0009afff : System RAM
> 0009b000-0009ffff : Reserved
> 000a0000-000bffff : PCI Bus 0000:00
> 000c0000-000c7fff : Video ROM
>   000c4000-000c7fff : PCI Bus 0000:00
> 000c8000-000c8dff : Adapter ROM
> 000c9000-000c9dff : Adapter ROM
> 000e0000-000fffff : Reserved
>   000f0000-000fffff : System ROM
> 00100000-6984ffff : System RAM
> 69850000-6c1f8fff : Reserved
>   6b1dd018-6b1dd018 : APEI ERST
>   6b1dd01c-6b1dd021 : APEI ERST
>   6b1dd028-6b1dd039 : APEI ERST
>   6b1dd040-6b1dd04c : APEI ERST
>   6b1dd050-6b1df04f : APEI ERST
> 6c1f9000-6c322fff : System RAM
> 6c323000-6ce83fff : ACPI Non-volatile Storage
> 6ce84000-6f2fcfff : Reserved
> 6f2fd000-6f7fffff : System RAM
> 6f800000-8fffffff : Reserved
>   80000000-8fffffff : PCI MMCONFIG 0000 [bus 00-ff]
> 90000000-9d7fffff : PCI Bus 0000:00
> fec18000-fec183ff : IOAPIC 4
>   fec20000-fec203ff : IOAPIC 5
>   fec28000-fec283ff : IOAPIC 6
>   fec30000-fec303ff : IOAPIC 7
>   fec38000-fec383ff : IOAPIC 8
> fed00000-fed003ff : HPET 0
>   fed00000-fed003ff : PNP0103:00
> fed12000-fed1200f : pnp 00:01
> fed12010-fed1201f : pnp 00:01
> fed1b000-fed1bfff : pnp 00:01
> fed20000-fed44fff : Reserved
> fed45000-fed8bfff : pnp 00:01
> fee00000-feefffff : pnp 00:01
>   fee00000-fee00fff : Local APIC
> ff000000-ffffffff : Reserved
>   ff000000-ffffffff : pnp 00:01
> 100000000-407fffffff : System RAM
> 4080000000-487fffffff : Persistent Memory             <<<  PERSISTENT MEMORY
>   4080000000-447fffffff : namespace0.0
>   4480000000-487fffffff : namespace1.0
> 4880000000-887fffffff : System RAM
>   4d15000000-4d15c031d0 : Kernel code
>   4d15c031d1-4d16387b7f : Kernel data
>   4d1692d000-4d16a82fff : Kernel bss
>
>
> Thanks,
> Rajesh
>
> -----Original Message-----
> From: Dan Williams [mailto:[email protected]]
> Sent: Friday, June 19, 2020 4:34 PM
> To: Ananth, Rajesh
> Cc: [email protected]
> Subject: Re: Question on PMEM regions (Linux 4.9 Kernel & above)
>
> SMART Modular Security Checkpoint: External email. Please make sure you trust 
> this source before clicking links or opening attachments.
>
> 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]

Reply via email to