8250: Fix lock warning (and possible crash)
authorAlan Cox <alan@redhat.com>
Tue, 14 Oct 2008 10:29:06 +0000 (11:29 +0100)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 14 Oct 2008 17:03:33 +0000 (10:03 -0700)
Splitting the 8250 code back up to avoid a clash with the NR_IRQS removal
patch introduced a last minute bug. Put back the additional needed lines
for the old lock init

Signed-off-by: Alan Cox <alan@redhat.com>
[ Ingo also reports that this can cause a spontaneous reboot crash with
  certain configs, and sends in an identical patch ]
Tested-by: Kamalesh Babulal <kamalesh@linux.vnet.ibm.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/serial/8250.c

index d4104a3bbe87cd7400a68f083369c41da3396d5b..d3ca7d32abe0ef654f46f9bfd8b6cd00ad977557 100644 (file)
@@ -2969,6 +2969,9 @@ static int __init serial8250_init(void)
                "%d ports, IRQ sharing %sabled\n", nr_uarts,
                share_irqs ? "en" : "dis");
 
+       for (i = 0; i < NR_IRQS; i++)
+               spin_lock_init(&irq_lists[i].lock);
+
 #ifdef CONFIG_SPARC
        ret = sunserial_register_minors(&serial8250_reg, UART_NR);
 #else