]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: 7067/1: mm: keep significant bits in pfn_valid
authorMark Rutland <mark.rutland@arm.com>
Tue, 30 Aug 2011 16:45:10 +0000 (17:45 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Sun, 4 Sep 2011 09:50:03 +0000 (10:50 +0100)
commitb334b8f33d382f73f5a99aada97f35d68a01b6fe
treeddccd8f32734a46e84ee08a4b905c9855a95582f
parentad4a839dd538266a5f501a23eeb49c889b0745ae
ARM: 7067/1: mm: keep significant bits in pfn_valid

When ARCH_HAS_HOLES_MEMORYMODEL is selected, pfn_valid calls
memblock_is_memory to test validity of a pfn:

> memblock_is_memory(pfn << PAGE_SHIFT);

On LPAE systems this cuts off the top bits, as the shift occurs before
the value is promoted to a phys_addr_t.

This patch replaces the shift with a call to __pfn_to_phys (which casts
pfn to phys_addr_t before shifting), preventing the loss of significant
bits.

Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mm/init.c