Re: [GIT PATCH] x86,percpu: fix pageattr handling with remap allocator

Suresh Siddha
2009-05-16T01:19:20Z

On Thu, 2009-05-14 at 05:49 -0700, Tejun Heo wrote:
> Hello,
>
> Upon ack, please pull from the following git tree.
>
> git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git x86-percpu-pageattr
>
> This patchset fixes subtile bug in pageattr handling when remap percpu
> first chunk allocator is in use and implements percpu_alloc kernel
> parameter so that allocator can be selected from boot prompt.
>
> This problem was spotted by Jan Beulich.
>
> The remap allocator allocates a PMD page per cpu, returns whatever is
> unnecessary to the page allocator and remaps the PMD page into vmalloc
> area to construct the first percpu chunk. This is to take advantage
> of large page mapping.

Tejun, Can you please educate me why we need to map this first percpu
chunk (which is pre-allocated during boot and is physically contiguous)
into vmalloc area? Perhaps even for the other dynamically allocated
secondary chunks? (as far as I can see, all the chunk allocations seems
to be physically contiguous and later mapped into vmalloc area)..

That should simplify these things quite a bit(atleast for first percpu
chunk). I am missing something obvious I guess.

thanks,
suresh