]> git.baikalelectronics.ru Git - kernel.git/commit
x86-64, NUMA: Revert NUMA affine page table allocation
authorTejun Heo <tj@kernel.org>
Fri, 4 Mar 2011 09:26:36 +0000 (10:26 +0100)
committerTejun Heo <tj@kernel.org>
Fri, 4 Mar 2011 09:26:36 +0000 (10:26 +0100)
commitf3d5644f6de530e127431ed437243c015c3d070c
treec8fff8bdf2a2297e92e78b8661c9e8b405a7b304
parentb024412d2abcd4c7a4f61689f7139e49fa51f62d
x86-64, NUMA: Revert NUMA affine page table allocation

This patch reverts NUMA affine page table allocation added by commit
a2ce52914d (x86-64, numa: Put pgtable to local node memory).

The commit made an undocumented change where the kernel linear mapping
strictly follows intersection of e820 memory map and NUMA
configuration.  If the physical memory configuration has holes or NUMA
nodes are not properly aligned, this leads to using unnecessarily
smaller mapping size which leads to increased TLB pressure.  For
details,

  http://thread.gmane.org/gmane.linux.kernel/1104672

Patches to fix the problem have been proposed but the underlying code
needs more cleanup and the approach itself seems a bit heavy handed
and it has been determined to revert the feature for now and come back
to it in the next developement cycle.

  http://thread.gmane.org/gmane.linux.kernel/1105959

As init_memory_mapping_high() callsites have been consolidated since
the commit, reverting is done manually.  Also, the RED-PEN comment in
arch/x86/mm/init.c is not restored as the problem no longer exists
with memblock based top-down early memory allocation.

Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Yinghai Lu <yinghai@kernel.org>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
arch/x86/include/asm/page_types.h
arch/x86/kernel/setup.c
arch/x86/mm/init_64.c
arch/x86/mm/numa_64.c