summaryrefslogtreecommitdiffstats
path: root/arch/x86/ia32
diff options
context:
space:
mode:
authorYinghai Lu <yinghai@kernel.org>2009-06-30 20:41:37 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2009-07-01 03:56:01 +0200
commit66918dcdf91ad101194c749c18099e836ba3de2b (patch)
treec7c2b3e4665a20fc670ea09a8b2da7a9d289984d /arch/x86/ia32
parentcpusets: document adding/removing cpus to cpuset elaborately (diff)
downloadlinux-66918dcdf91ad101194c749c18099e836ba3de2b.tar.xz
linux-66918dcdf91ad101194c749c18099e836ba3de2b.zip
x86: only clear node_states for 64bit
Nathan reported that | commit 73d60b7f747176dbdff826c4127d22e1fd3f9f74 | Author: Yinghai Lu <yinghai@kernel.org> | Date: Tue Jun 16 15:33:00 2009 -0700 | | page-allocator: clear N_HIGH_MEMORY map before we set it again | | SRAT tables may contains nodes of very small size. The arch code may | decide to not activate such a node. However, currently the early boot | code sets N_HIGH_MEMORY for such nodes. These nodes therefore seem to be | active although these nodes have no present pages. | | For 64bit N_HIGH_MEMORY == N_NORMAL_MEMORY, so that works for 64 bit too unintentionally and incorrectly clears the cpuset.mems cgroup attribute on an i386 kvm guest, meaning that cpuset.mems can not be used. Fix this by only clearing node_states[N_NORMAL_MEMORY] for 64bit only. and need to do save/restore for that in find_zone_movable_pfn Reported-by: Nathan Lynch <ntl@pobox.com> Tested-by: Nathan Lynch <ntl@pobox.com> Signed-off-by: Yinghai Lu <yinghai@kernel.org> Cc: Christoph Lameter <cl@linux-foundation.org> Cc: Ingo Molnar <mingo@elte.hu>, Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/x86/ia32')
0 files changed, 0 insertions, 0 deletions