diff options
author | Tejun Heo <tj@kernel.org> | 2009-02-20 02:29:08 -0500 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2009-02-20 02:29:08 -0500 |
commit | 8fc48985006da4ceba24508db64ec77fc0dfe3bb (patch) | |
tree | 2234b92b13c53bfd1972e967c50ff305b6efe013 /include/linux | |
parent | f0aa6617903648077dffe5cfcf7c4458f4610fa7 (diff) |
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')
-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); | |||
91 | 91 | ||
92 | extern int map_vm_area(struct vm_struct *area, pgprot_t prot, | 92 | extern int map_vm_area(struct vm_struct *area, pgprot_t prot, |
93 | struct page ***pages); | 93 | struct page ***pages); |
94 | extern int map_kernel_range_noflush(unsigned long start, unsigned long size, | ||
95 | pgprot_t prot, struct page **pages); | ||
96 | extern void unmap_kernel_range_noflush(unsigned long addr, unsigned long size); | ||
94 | extern void unmap_kernel_range(unsigned long addr, unsigned long size); | 97 | extern void unmap_kernel_range(unsigned long addr, unsigned long size); |
95 | 98 | ||
96 | /* Allocate/destroy a 'vmalloc' VM area. */ | 99 | /* Allocate/destroy a 'vmalloc' VM area. */ |