[PATCH] init_reap_node() initialization fix
It looks like there is a bug in init_reap_node() in slab.c that can cause multiple oops's on certain ES7000 configurations. The variable reap_node is defined per cpu, but only initialized on a single CPU. This causes an oops in next_reap_node() when __get_cpu_var(reap_node) returns the wrong value. Fix is below. Signed-off-by: Dan Yeisley <dan.yeisley@unisys.com> Cc: Andi Kleen <ak@suse.de> Acked-by: Christoph Lameter <clameter@engr.sgi.com> Cc: Pekka Enberg <penberg@cs.helsinki.fi> Cc: Manfred Spraul <manfred@colorfullife.com> Cc: <stable@kernel.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Родитель
d13adb6046
Коммит
7f6b8876c7
|
@ -883,7 +883,7 @@ static void init_reap_node(int cpu)
|
|||
if (node == MAX_NUMNODES)
|
||||
node = first_node(node_online_map);
|
||||
|
||||
__get_cpu_var(reap_node) = node;
|
||||
per_cpu(reap_node, cpu) = node;
|
||||
}
|
||||
|
||||
static void next_reap_node(void)
|
||||
|
|
Загрузка…
Ссылка в новой задаче