Re: [PATCH 3/7] Generic Virtual Memmap support for SPARSEMEM

KAMEZAWA Hiroyuki
2007-07-13T23:25:37Z

On Fri, 13 Jul 2007 16:17:32 -0700 (PDT)
Christoph Lameter <clameter@sgi.com> wrote:

> > Note
> > >From memory hotplug development/enhancement view, I have following thinking now.
> >
> > 1. memmap's section is *not* aligned to "big page size". We have to take care
> > of this at adding support for memory_hotplug/unplug.
>
> You can call the functions for virtual memmap allocation directly. They
> are already generic and will call the page allocator instead of the
> bootmem allocator if the system is already. They will give you the
> properly aligned memory. Perhaps you can just change a few lines
> in sparse_add_one_section to call the vmemmap functions instead?
>
yes, I think so now. But we'll see warnings of "section mismatch".
Because this patch includes following.

==
func() {
if()
call_generic_func
else
call_boot_func.
}
==

> > 2. With an appropriate patch, we can allocate new section's memmap from
> > itself. This will reduce possibility of memory hotplug failure becasue of
> > large size kmalloc/vmalloc. And it guarantees locality of memmap.
> > But maybe need some amount of work for implementing this in clean way.
> > This will depend on vmemmap.
>
> That is a good idea. Maybe do the simple approach first and then the other
> one?
Yes, simple first. Above one will be an option for people who use
big-section-size, like ia64.

-Kame