[tip:x86/setup] x86, e820: Guard against array overflowed in __e820_add_region()

From: tip-bot for Cyrill Gorcunov
Date: Wed Aug 26 2009 - 02:23:24 EST


Commit-ID: 5051fd69773d2d044734b78516317a04d3774871
Gitweb: http://git.kernel.org/tip/5051fd69773d2d044734b78516317a04d3774871
Author: Cyrill Gorcunov <gorcunov@xxxxxxxxxx>
AuthorDate: Mon, 24 Aug 2009 21:53:37 +0400
Committer: Ingo Molnar <mingo@xxxxxxx>
CommitDate: Wed, 26 Aug 2009 08:17:47 +0200

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@xxxxxxxxxx>
LKML-Reference: <20090824175551.146070377@xxxxxxxxxx>
Signed-off-by: Ingo Molnar <mingo@xxxxxxx>


---
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 7271fa3..2e5e0fa 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;
}
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/