[PATCH] x86_64: Bug correction in populate_memnodemap()
authorEric Dumazet <dada1@cosmosbay.com>
Tue, 13 Dec 2005 06:17:14 +0000 (22:17 -0800)
committerLinus Torvalds <torvalds@g5.osdl.org>
Tue, 13 Dec 2005 06:31:16 +0000 (22:31 -0800)
commit8309cf66fd90ccba9894adde2f3a8d7e1507e4d2
treee9d9045cfa5a2f2599b3682f9f53d68fe3b8ebf2
parentfd4954714e8e7db9f6eb5878fa6111c46445ca81
[PATCH] x86_64: Bug correction in populate_memnodemap()

As reported by Keith Mannthey, there are problems in populate_memnodemap()

The bug was that the compute_hash_shift() was returning 31, with incorrect
initialization of memnodemap[]

To correct the bug, we must use (1UL << shift) instead of (1 << shift) to
avoid an integer overflow, and we must check that shift < 64 to avoid an
infinite loop.

Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/x86_64/mm/numa.c