lkml.org 
[lkml]   [2011]   [Feb]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/4] x86, numa: Do not adjust start/end for early_node_mem()
On Fri, 18 Feb 2011, Yinghai Lu wrote:

> Index: linux-2.6/arch/x86/mm/numa_64.c
> ===================================================================
> --- linux-2.6.orig/arch/x86/mm/numa_64.c
> +++ linux-2.6/arch/x86/mm/numa_64.c
> @@ -164,14 +164,9 @@ static void * __init early_node_mem(int
> unsigned long mem;
>
> /*
> - * put it on high as possible
> - * something will go with NODE_DATA
> + * memblock find will follow top-down, so don't need to adjust
> + * start anymore
> */
> - if (start < (MAX_DMA_PFN<<PAGE_SHIFT))
> - start = MAX_DMA_PFN<<PAGE_SHIFT;
> - if (start < (MAX_DMA32_PFN<<PAGE_SHIFT) &&
> - end > (MAX_DMA32_PFN<<PAGE_SHIFT))
> - start = MAX_DMA32_PFN<<PAGE_SHIFT;
> mem = memblock_x86_find_in_range_node(nodeid, start, end, size, align);
> if (mem != MEMBLOCK_ERROR)
> return __va(mem);
>

The old code guarantees that the range is from a single zone, and even
though memblock may be top -> down, it seems like there would be
configurations where this would still be an issue (perhaps simulating it
with numa=fake for testing?) if it crosses the boundary.


\
 
 \ /
  Last update: 2011-02-20 05:07    [W:0.072 / U:0.100 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site