lkml.org 
[lkml]   [2011]   [Apr]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 06/14] x86-32, NUMA: Make @size in init_aloc_remap() represent bytes
On 04/04/2011 03:23 PM, Tejun Heo wrote:
> @size variable in init_alloc_remap() is confusing in that it starts as
> number of bytes as its name implies and then becomes number of pages.
> Make it consistently represent bytes.
>
> Signed-off-by: Tejun Heo<tj@kernel.org>
> Cc: Yinghai Lu<yinghai@kernel.org>
> Cc: David Rientjes<rientjes@google.com>
> Cc: Thomas Gleixner<tglx@linutronix.de
> Cc: Ingo Molnar<mingo@redhat.com>
> Cc: "H. Peter Anvin"<hpa@zytor.com>
> ---
> arch/x86/mm/numa_32.c | 18 +++++++-----------
> 1 files changed, 7 insertions(+), 11 deletions(-)
>
> diff --git a/arch/x86/mm/numa_32.c b/arch/x86/mm/numa_32.c
> index 30933fe..99310d2 100644
> --- a/arch/x86/mm/numa_32.c
> +++ b/arch/x86/mm/numa_32.c
> @@ -286,22 +286,19 @@ static __init unsigned long init_alloc_remap(int nid, unsigned long offset)
> size = node_remap_size[nid];
> size += ALIGN(sizeof(pg_data_t), PAGE_SIZE);
>
> - /* convert size to large (pmd size) pages, rounding up */
> - size = (size + LARGE_PAGE_BYTES - 1) / LARGE_PAGE_BYTES;
> - /* now the roundup is correct, convert to PAGE_SIZE pages */
> - size = size * PTRS_PER_PTE;
> + /* align to large page */
> + size = ALIGN(size, LARGE_PAGE_BYTES);
>
> node_pa = memblock_find_in_range(node_start_pfn[nid]<< PAGE_SHIFT,
> (u64)node_end_pfn[nid]<< PAGE_SHIFT,
> - (u64)size<< PAGE_SHIFT,
> - LARGE_PAGE_BYTES);
> + size, LARGE_PAGE_BYTES);
> if (node_pa == MEMBLOCK_ERROR)
> panic("Can not get kva ram\n");
>
> - node_remap_size[nid] = size;
> + node_remap_size[nid] = size>> PAGE_SHIFT;
> node_remap_offset[nid] = offset;
> printk(KERN_DEBUG "Reserving %ld pages of KVA for lmem_map of node %d at %llx\n",
> - size, nid, node_pa>> PAGE_SHIFT);
> + size>> PAGE_SHIFT, nid, node_pa>> PAGE_SHIFT);
>
> /*
> * prevent kva address below max_low_pfn want it on system
> @@ -315,12 +312,11 @@ static __init unsigned long init_alloc_remap(int nid, unsigned long offset)
> * So memblock_x86_reserve_range here, hope we don't run out
> * of that array
> */
> - memblock_x86_reserve_range(node_pa, node_pa + ((u64)size<< PAGE_SHIFT),
> - "KVA RAM");
> + memblock_x86_reserve_range(node_pa, node_pa + size, "KVA RAM");
>
> node_remap_start_pfn[nid] = node_pa>> PAGE_SHIFT;
>
> - return size;
> + return size>> PAGE_SHIFT;
> }
>
> static void init_remap_allocator(int nid)

Acked-by: Yinghai Lu <yinghai@kernel.org>


\
 
 \ /
  Last update: 2011-04-05 19:57    [from the cache]
©2003-2011 Jasper Spaans