Skip to content

Commit

Permalink
memblock/arm: pfn_valid uses memblock_is_memory()
Browse files Browse the repository at this point in the history
The implementation is pretty much similar. There is a -small- added
overhead by having another function call and the address shift.

If that becomes a concern, I suppose we could actually have memblock
itself expose a memblock_pfn_valid() which then ARM can use directly
with an appropriate #define...

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
  • Loading branch information
Benjamin Herrenschmidt committed Aug 4, 2010
1 parent 72d4b0b commit 5e6f6aa
Showing 1 changed file with 1 addition and 14 deletions.
15 changes: 1 addition & 14 deletions arch/arm/mm/init.c
Original file line number Diff line number Diff line change
Expand Up @@ -237,20 +237,7 @@ static void __init arm_bootmem_free(struct meminfo *mi, unsigned long min,
#ifndef CONFIG_SPARSEMEM
int pfn_valid(unsigned long pfn)
{
struct memblock_type *mem = &memblock.memory;
unsigned int left = 0, right = mem->cnt;

do {
unsigned int mid = (right + left) / 2;

if (pfn < memblock_start_pfn(mem, mid))
right = mid;
else if (pfn >= memblock_end_pfn(mem, mid))
left = mid + 1;
else
return 1;
} while (left < right);
return 0;
return memblock_is_memory(pfn << PAGE_SHIFT);
}
EXPORT_SYMBOL(pfn_valid);

Expand Down

0 comments on commit 5e6f6aa

Please sign in to comment.