diff options
author | Cyrill Gorcunov <gorcunov@openvz.org> | 2009-08-24 21:53:37 +0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-08-26 08:17:47 +0200 |
commit | 5051fd69773d2d044734b78516317a04d3774871 (patch) | |
tree | 68b75b31a5803cdc333dbb1d9883e9c29b3b1784 /arch/x86/kernel/e820.c | |
parent | 2495fbf7effa6868f5d74124ae9b22a57980755b (diff) | |
download | talos-obmc-linux-5051fd69773d2d044734b78516317a04d3774871.tar.gz talos-obmc-linux-5051fd69773d2d044734b78516317a04d3774871.zip |
x86, e820: Guard against array overflowed in __e820_add_region()
Better to be paranoid against unpredicted nr_map modifications.
Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org>
LKML-Reference: <20090824175551.146070377@openvz.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/e820.c')
-rw-r--r-- | arch/x86/kernel/e820.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kernel/e820.c b/arch/x86/kernel/e820.c index 7271fa33d791..2e5e0faa99b5 100644 --- a/arch/x86/kernel/e820.c +++ b/arch/x86/kernel/e820.c @@ -115,7 +115,7 @@ static void __init __e820_add_region(struct e820map *e820x, u64 start, u64 size, { int x = e820x->nr_map; - if (x == ARRAY_SIZE(e820x->map)) { + if (x >= ARRAY_SIZE(e820x->map)) { printk(KERN_ERR "Ooops! Too many entries in the memory map!\n"); return; } |