percpu: move vmalloc based chunk management into percpu-vm.c
authorTejun Heo <tj@kernel.org>
Fri, 9 Apr 2010 09:57:01 +0000 (18:57 +0900)
committerTejun Heo <tj@kernel.org>
Sat, 1 May 2010 06:30:50 +0000 (08:30 +0200)
commit9f6455325618821dcf6775d7972881fde32e77c5
tree6031e6f28aaaa3bf8d8e08dd59031d94c19fa89e
parent88999a898b565960690f18e4a13a1e8a9fa4dfef
percpu: move vmalloc based chunk management into percpu-vm.c

Separate out and move chunk management (creation/desctruction and
[de]population) code into percpu-vm.c which is included by percpu.c
and compiled together.  The interface for chunk management is defined
as follows.

 * pcpu_populate_chunk - populate the specified range of a chunk
 * pcpu_depopulate_chunk - depopulate the specified range of a chunk
 * pcpu_create_chunk - create a new chunk
 * pcpu_destroy_chunk - destroy a chunk, always preceded by full depop
 * pcpu_addr_to_page - translate address to physical address
 * pcpu_verify_alloc_info - check alloc_info is acceptable during init

Other than wrapping vmalloc_to_page() inside pcpu_addr_to_page() and
dummy pcpu_verify_alloc_info() implementation, this patch only moves
code around.  This separation is to allow alternate chunk management
implementation.

Signed-off-by: Tejun Heo <tj@kernel.org>
Reviewed-by: David Howells <dhowells@redhat.com>
Cc: Graff Yang <graff.yang@gmail.com>
Cc: Sonic Zhang <sonic.adi@gmail.com>
mm/percpu-vm.c [new file with mode: 0644]
mm/percpu.c