diff options
author | Geert Uytterhoeven <geert@linux-m68k.org> | 2008-11-14 08:10:19 +0100 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-11-15 11:36:06 -0800 |
commit | 27123cbc264de89ce6951b1b4c84c223eb0f1702 (patch) | |
tree | 81e4d2cab353fb1e6085850a8a9f1a41465fb944 | |
parent | fa0cfc202c4969ceed567b1567c2e5effe7fd28b (diff) | |
download | op-kernel-dev-27123cbc264de89ce6951b1b4c84c223eb0f1702.zip op-kernel-dev-27123cbc264de89ce6951b1b4c84c223eb0f1702.tar.gz |
m68k: Fix off-by-one in m68k_setup_user_interrupt()
commit 69961c375288bdab7604e0bb1c8d22999bb8a347 ("[PATCH] m68k/Atari:
Interrupt updates") added a BUG_ON() with an incorrect upper bound
comparison, which causes an early crash on VME boards, where IRQ_USER is
8, cnt is 192 and NR_IRQS is 200.
Reported-by: Stephen N Chivers <schivers@csc.com.au>
Tested-by: Kars de Jong <jongk@linux-m68k.org>
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: stable@kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | arch/m68k/kernel/ints.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/m68k/kernel/ints.c b/arch/m68k/kernel/ints.c index 7e8a0d3..761ee04 100644 --- a/arch/m68k/kernel/ints.c +++ b/arch/m68k/kernel/ints.c @@ -133,7 +133,7 @@ void __init m68k_setup_user_interrupt(unsigned int vec, unsigned int cnt, { int i; - BUG_ON(IRQ_USER + cnt >= NR_IRQS); + BUG_ON(IRQ_USER + cnt > NR_IRQS); m68k_first_user_vec = vec; for (i = 0; i < cnt; i++) irq_controller[IRQ_USER + i] = &user_irq_controller; |