lkml.org 
[lkml]   [2010]   [Apr]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subjectpercpu: implement nommu support
Date
Hello,

This patchset implements nommu support in percpu allocator. Chunk
alloc/free/(de)populate codes are separated into a separate file so
that different flavor can be included depending on configuration. The
default vmalloc area based version now lives in percpu-vm.c and the
new kernel memory based one lives in percpu-km.c and can be selected
by CONFIG_NEED_PER_CPU_KM.

percpu-km allocates each chunk as contigus area in kernel memory using
alloc_pages(). For details on usage and limitations, please read the
patch description and comment in mm/percpu-km.c.

This patchset contains the following five patches.

0001-percpu-factor-out-pcpu_addr_in_first-reserved_chunk-.patch
0002-percpu-reorganize-chunk-creation-and-destruction.patch
0003-percpu-misc-preparations-for-nommu-support.patch
0004-percpu-move-vmalloc-based-chunk-management-into-perc.patch
0005-percpu-implement-kernel-memory-based-chunk-allocatio.patch

0001-0003 prepare for future changes - factor things out, relocate,
clean up.

0004 separates out the default vmalloc based chunk management into
percpu-vm.c.

0005 implements percpu-km.c.

The following git branch contains these patches.

git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu.git nommu

I've tested percpu-km on x86_64 w/ configuration and percpu init code
massged. Sonic Zhang tested it on blackfin and reports it works fine
there too (Sonic, please base further tests on these new patches).
I'll wait several days for review and further test results and then
push these patches to linux-next.

This patchset contains the following changes.

mm/percpu-km.c | 104 ++++++++++
mm/percpu-vm.c | 451 ++++++++++++++++++++++++++++++++++++++++++++
mm/percpu.c | 584 ++++++++++-----------------------------------------------
3 files changed, 664 insertions(+), 475 deletions(-)

Thanks.

--
tejun


\
 
 \ /
  Last update: 2010-04-08 06:15    [W:0.056 / U:0.048 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site