diff options
author | Tejun Heo <tj@kernel.org> | 2009-02-20 16:29:08 +0900 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2009-02-20 16:29:08 +0900 |
commit | 8fc48985006da4ceba24508db64ec77fc0dfe3bb (patch) | |
tree | 2234b92b13c53bfd1972e967c50ff305b6efe013 /include/linux/vmalloc.h | |
parent | f0aa6617903648077dffe5cfcf7c4458f4610fa7 (diff) | |
download | lwn-8fc48985006da4ceba24508db64ec77fc0dfe3bb.tar.gz lwn-8fc48985006da4ceba24508db64ec77fc0dfe3bb.zip |
vmalloc: add un/map_kernel_range_noflush()
Impact: two more public map/unmap functions
Implement map_kernel_range_noflush() and unmap_kernel_range_noflush().
These functions respectively map and unmap address range in kernel VM
area but doesn't do any vcache or tlb flushing. These will be used by
new percpu allocator.
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Nick Piggin <nickpiggin@yahoo.com.au>
Diffstat (limited to 'include/linux/vmalloc.h')
-rw-r--r-- | include/linux/vmalloc.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/vmalloc.h b/include/linux/vmalloc.h index bbc051392298..599ba7984310 100644 --- a/include/linux/vmalloc.h +++ b/include/linux/vmalloc.h @@ -91,6 +91,9 @@ extern struct vm_struct *remove_vm_area(const void *addr); extern int map_vm_area(struct vm_struct *area, pgprot_t prot, struct page ***pages); +extern int map_kernel_range_noflush(unsigned long start, unsigned long size, + pgprot_t prot, struct page **pages); +extern void unmap_kernel_range_noflush(unsigned long addr, unsigned long size); extern void unmap_kernel_range(unsigned long addr, unsigned long size); /* Allocate/destroy a 'vmalloc' VM area. */ |