diff options
author | Marek Szyprowski <m.szyprowski@samsung.com> | 2012-07-30 03:11:33 -0400 |
---|---|---|
committer | Marek Szyprowski <m.szyprowski@samsung.com> | 2012-07-30 06:25:45 -0400 |
commit | e9da6e9905e639b0f842a244bc770b48ad0523e9 (patch) | |
tree | c99beeb259716121dcb388f35f54f99a2a414a92 /mm/vmalloc.c | |
parent | 5e6cafc83e30f0f70c79a2b7aef237dc57e29f02 (diff) |
ARM: dma-mapping: remove custom consistent dma region
This patch changes dma-mapping subsystem to use generic vmalloc areas
for all consistent dma allocations. This increases the total size limit
of the consistent allocations and removes platform hacks and a lot of
duplicated code.
Atomic allocations are served from special pool preallocated on boot,
because vmalloc areas cannot be reliably created in atomic context.
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Reviewed-by: Kyungmin Park <kyungmin.park@samsung.com>
Reviewed-by: Minchan Kim <minchan@kernel.org>
Diffstat (limited to 'mm/vmalloc.c')
-rw-r--r-- | mm/vmalloc.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/mm/vmalloc.c b/mm/vmalloc.c index 11308f034f85..65fc4dc71108 100644 --- a/mm/vmalloc.c +++ b/mm/vmalloc.c | |||
@@ -1403,7 +1403,15 @@ struct vm_struct *get_vm_area_caller(unsigned long size, unsigned long flags, | |||
1403 | -1, GFP_KERNEL, caller); | 1403 | -1, GFP_KERNEL, caller); |
1404 | } | 1404 | } |
1405 | 1405 | ||
1406 | static struct vm_struct *find_vm_area(const void *addr) | 1406 | /** |
1407 | * find_vm_area - find a continuous kernel virtual area | ||
1408 | * @addr: base address | ||
1409 | * | ||
1410 | * Search for the kernel VM area starting at @addr, and return it. | ||
1411 | * It is up to the caller to do all required locking to keep the returned | ||
1412 | * pointer valid. | ||
1413 | */ | ||
1414 | struct vm_struct *find_vm_area(const void *addr) | ||
1407 | { | 1415 | { |
1408 | struct vmap_area *va; | 1416 | struct vmap_area *va; |
1409 | 1417 | ||