Bläddra i källkod

x86-64, numa: Allocate memnodemap under max_pfn_mapped

We need to access it right way, so make sure that it is mapped already.

Prepare to put page table on local node, and nodemap is used before that.

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
LKML-Reference: <4D1933C8.7060105@kernel.org>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Yinghai Lu 15 år sedan
förälder
incheckning
dbef7b56d2
1 ändrade filer med 1 tillägg och 1 borttagningar
  1. 1 1
      arch/x86/mm/numa_64.c

+ 1 - 1
arch/x86/mm/numa_64.c

@@ -87,7 +87,7 @@ static int __init allocate_cachealigned_memnodemap(void)
 
 
 	addr = 0x8000;
 	addr = 0x8000;
 	nodemap_size = roundup(sizeof(s16) * memnodemapsize, L1_CACHE_BYTES);
 	nodemap_size = roundup(sizeof(s16) * memnodemapsize, L1_CACHE_BYTES);
-	nodemap_addr = memblock_find_in_range(addr, max_pfn<<PAGE_SHIFT,
+	nodemap_addr = memblock_find_in_range(addr, get_max_mapped(),
 				      nodemap_size, L1_CACHE_BYTES);
 				      nodemap_size, L1_CACHE_BYTES);
 	if (nodemap_addr == MEMBLOCK_ERROR) {
 	if (nodemap_addr == MEMBLOCK_ERROR) {
 		printk(KERN_ERR
 		printk(KERN_ERR