[PATCH] powerpc/mm: use memblock_is_memory

Michael Ellerman mpe at ellerman.id.au
Mon Oct 12 20:35:54 AEDT 2015


On Sat, 2015-10-10 at 00:30 +0600, Alexander Kuleshov wrote:
> The <linux/memblock.h> provides memblock_is_memory() function that
> tries to find a given physical address in the memblock.memory.regions.
> Let's use this function instead of direct coding of the same functionality.

Are you sure it implements exactly the same logic?

> diff --git a/arch/powerpc/mm/mem.c b/arch/powerpc/mm/mem.c
> index 22d94c3..85b462b 100644
> --- a/arch/powerpc/mm/mem.c
> +++ b/arch/powerpc/mm/mem.c
> @@ -82,11 +82,9 @@ int page_is_ram(unsigned long pfn)
>  	return pfn < max_pfn;
>  #else
>  	unsigned long paddr = (pfn << PAGE_SHIFT);
> -	struct memblock_region *reg;
> 
> -	for_each_memblock(memory, reg)
> -		if (paddr >= reg->base && paddr < (reg->base + reg->size))
> -			return 1;
> +	if (memblock_is_memory(paddr))
> +		return 1;
>  	return 0;

Why not just return memblock_is_memory(paddr) ?

cheers




More information about the Linuxppc-dev mailing list