diff options
author | Becky Bruce <beckyb@kernel.crashing.org> | 2011-06-28 05:54:46 -0400 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2011-06-29 03:48:18 -0400 |
commit | 3d41e0f6d91cedcab08dff2f5e148b20c87a7432 (patch) | |
tree | 9c0ef3d7b681077ec402e2bff74973a678bf0529 /arch | |
parent | 72632ce5a4ee8c75aa7cc17eb4473fcf625b8941 (diff) |
powerpc: mem_init should call memblock_is_reserved with phys_addr_t
This has been broken for a while but hasn't been an issue until
now because nobody was reserving regions at high addresses.
Signed-off-by: Becky Bruce <beckyb@kernel.crashing.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/mm/mem.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/powerpc/mm/mem.c b/arch/powerpc/mm/mem.c index 57e545b84bf1..097b288779e2 100644 --- a/arch/powerpc/mm/mem.c +++ b/arch/powerpc/mm/mem.c | |||
@@ -337,8 +337,9 @@ void __init mem_init(void) | |||
337 | 337 | ||
338 | highmem_mapnr = lowmem_end_addr >> PAGE_SHIFT; | 338 | highmem_mapnr = lowmem_end_addr >> PAGE_SHIFT; |
339 | for (pfn = highmem_mapnr; pfn < max_mapnr; ++pfn) { | 339 | for (pfn = highmem_mapnr; pfn < max_mapnr; ++pfn) { |
340 | phys_addr_t paddr = (phys_addr_t)pfn << PAGE_SHIFT; | ||
340 | struct page *page = pfn_to_page(pfn); | 341 | struct page *page = pfn_to_page(pfn); |
341 | if (memblock_is_reserved(pfn << PAGE_SHIFT)) | 342 | if (memblock_is_reserved(paddr)) |
342 | continue; | 343 | continue; |
343 | ClearPageReserved(page); | 344 | ClearPageReserved(page); |
344 | init_page_count(page); | 345 | init_page_count(page); |