On 08/15/2014 11:28 PM, Toshi Kani wrote: > On Wed, 2014-08-13 at 15:26 +0300, Boaz Harrosh wrote: >> From: Yigal Korman <yigal@xxxxxxxxxxxxx> >> <> >> >> All is actually needed for this is to allocate page-sections >> and map them into kernel virtual memory. Note that these sections >> are not associated with any zone, because that would add them to >> the page_allocators. > > Can we just use memory hotplug and call add_memory(), instead of > directly calling sparse_add_one_section()? Memory hotplug adds memory > as off-line state, and sets all pages reserved. So, I do not think the > page allocators will mess with them (unless you put them online). It > can also maps the pages with large page size. > > Thanks, > -Toshi > Thank you Toshi for your reply I was thinking about that as well at first, but I was afraid, once I call add_memory() what will prevent the user from enabling that memory through the sysfs interface later, it looks to me that add_memory() will add all the necessary knobs to do it. It is very important to keep a clear distinction, pmem is *not* memory what-so-ever it is however memory-mapped and needs these accesses enabled for it, hence the need for page-struct so we can DMA it off the buss. I am very afraid of any thing that will associate a "zone" with this memory. Also the: firmware_map_add_hotplug(start, start + size, "System RAM"); "System RAM" it is not. And also I think that for DDR4 NvDIMMs we will fail with: ret = check_hotplug_memory_range(start, size); Thanks Boaz > > -- > To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html