diff options
author | Jiang Liu <liuj97@gmail.com> | 2013-07-03 18:02:48 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-07-03 19:07:32 -0400 |
commit | 11199692d83dd3fe1511203024fb9853d176ec4c (patch) | |
tree | a8632c310774eef2928f24d5aca81d1203dd54b8 /mm/page_alloc.c | |
parent | dcf6b7ddd7df8965727746f89c59229b23180e5a (diff) |
mm: change signature of free_reserved_area() to fix building warnings
Change signature of free_reserved_area() according to Russell King's
suggestion to fix following build warnings:
arch/arm/mm/init.c: In function 'mem_init':
arch/arm/mm/init.c:603:2: warning: passing argument 1 of 'free_reserved_area' makes integer from pointer without a cast [enabled by default]
free_reserved_area(__va(PHYS_PFN_OFFSET), swapper_pg_dir, 0, NULL);
^
In file included from include/linux/mman.h:4:0,
from arch/arm/mm/init.c:15:
include/linux/mm.h:1301:22: note: expected 'long unsigned int' but argument is of type 'void *'
extern unsigned long free_reserved_area(unsigned long start, unsigned long end,
mm/page_alloc.c: In function 'free_reserved_area':
>> mm/page_alloc.c:5134:3: warning: passing argument 1 of 'virt_to_phys' makes pointer from integer without a cast [enabled by default]
In file included from arch/mips/include/asm/page.h:49:0,
from include/linux/mmzone.h:20,
from include/linux/gfp.h:4,
from include/linux/mm.h:8,
from mm/page_alloc.c:18:
arch/mips/include/asm/io.h:119:29: note: expected 'const volatile void *' but argument is of type 'long unsigned int'
mm/page_alloc.c: In function 'free_area_init_nodes':
mm/page_alloc.c:5030:34: warning: array subscript is below array bounds [-Warray-bounds]
Also address some minor code review comments.
Signed-off-by: Jiang Liu <jiang.liu@huawei.com>
Reported-by: Arnd Bergmann <arnd@arndb.de>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: <sworddragon2@aol.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Chris Metcalf <cmetcalf@tilera.com>
Cc: David Howells <dhowells@redhat.com>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Cc: Jianguo Wu <wujianguo@huawei.com>
Cc: Joonsoo Kim <js1304@gmail.com>
Cc: Kamezawa Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Marek Szyprowski <m.szyprowski@samsung.com>
Cc: Mel Gorman <mel@csn.ul.ie>
Cc: Michel Lespinasse <walken@google.com>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Rik van Riel <riel@redhat.com>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: Tang Chen <tangchen@cn.fujitsu.com>
Cc: Tejun Heo <tj@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Wen Congyang <wency@cn.fujitsu.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: Yasuaki Ishimatsu <isimatu.yasuaki@jp.fujitsu.com>
Cc: Yinghai Lu <yinghai@kernel.org>
Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/page_alloc.c')
-rw-r--r-- | mm/page_alloc.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c index d711dcdda362..be18ccd017bb 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c | |||
@@ -5206,25 +5206,26 @@ early_param("movablecore", cmdline_parse_movablecore); | |||
5206 | 5206 | ||
5207 | #endif /* CONFIG_HAVE_MEMBLOCK_NODE_MAP */ | 5207 | #endif /* CONFIG_HAVE_MEMBLOCK_NODE_MAP */ |
5208 | 5208 | ||
5209 | unsigned long free_reserved_area(unsigned long start, unsigned long end, | 5209 | unsigned long free_reserved_area(void *start, void *end, int poison, char *s) |
5210 | int poison, char *s) | ||
5211 | { | 5210 | { |
5212 | unsigned long pages, pos; | 5211 | void *pos; |
5212 | unsigned long pages = 0; | ||
5213 | 5213 | ||
5214 | pos = start = PAGE_ALIGN(start); | 5214 | start = (void *)PAGE_ALIGN((unsigned long)start); |
5215 | end &= PAGE_MASK; | 5215 | end = (void *)((unsigned long)end & PAGE_MASK); |
5216 | for (pages = 0; pos < end; pos += PAGE_SIZE, pages++) { | 5216 | for (pos = start; pos < end; pos += PAGE_SIZE, pages++) { |
5217 | if (poison) | 5217 | if (poison) |
5218 | memset((void *)pos, poison, PAGE_SIZE); | 5218 | memset(pos, poison, PAGE_SIZE); |
5219 | free_reserved_page(virt_to_page((void *)pos)); | 5219 | free_reserved_page(virt_to_page(pos)); |
5220 | } | 5220 | } |
5221 | 5221 | ||
5222 | if (pages && s) | 5222 | if (pages && s) |
5223 | pr_info("Freeing %s memory: %ldK (%lx - %lx)\n", | 5223 | pr_info("Freeing %s memory: %ldK (%p - %p)\n", |
5224 | s, pages << (PAGE_SHIFT - 10), start, end); | 5224 | s, pages << (PAGE_SHIFT - 10), start, end); |
5225 | 5225 | ||
5226 | return pages; | 5226 | return pages; |
5227 | } | 5227 | } |
5228 | EXPORT_SYMBOL(free_reserved_area); | ||
5228 | 5229 | ||
5229 | #ifdef CONFIG_HIGHMEM | 5230 | #ifdef CONFIG_HIGHMEM |
5230 | void free_highmem_page(struct page *page) | 5231 | void free_highmem_page(struct page *page) |