Commit 27123cbc authored by Geert Uytterhoeven's avatar Geert Uytterhoeven Committed by Linus Torvalds

m68k: Fix off-by-one in m68k_setup_user_interrupt()

commit 69961c37 ("[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: default avatarStephen N Chivers <schivers@csc.com.au>
Tested-by: default avatarKars de Jong <jongk@linux-m68k.org>
Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
Cc: stable@kernel.org
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent fa0cfc20
...@@ -133,7 +133,7 @@ void __init m68k_setup_user_interrupt(unsigned int vec, unsigned int cnt, ...@@ -133,7 +133,7 @@ void __init m68k_setup_user_interrupt(unsigned int vec, unsigned int cnt,
{ {
int i; int i;
BUG_ON(IRQ_USER + cnt >= NR_IRQS); BUG_ON(IRQ_USER + cnt > NR_IRQS);
m68k_first_user_vec = vec; m68k_first_user_vec = vec;
for (i = 0; i < cnt; i++) for (i = 0; i < cnt; i++)
irq_controller[IRQ_USER + i] = &user_irq_controller; irq_controller[IRQ_USER + i] = &user_irq_controller;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment