lkml.org 
[lkml]   [2008]   [Mar]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[patch] drivers/char/esp.c: fix bootup lockup (was: Re: Linux 2.6.25-rc4)

    randconfig testing found a bootup lockup in drivers/char/esp.c - find
    the fix below. Not sure why it became more prominent in 2.6.25-rc4, the
    bug seems rather old and i've been doing allyesconfig bootups for ages
    with CONFIG_ESP enabled.

    ------------->
    Subject: drivers/char/esp.c: fix bootup lockup
    From: Ingo Molnar <mingo@elte.hu>
    Date: Fri Mar 07 10:47:43 CET 2008

    fix this bootup lockup:

    PM: Adding info for No Bus:ttyP63
    ttyP32 at 0x0240 (irq = 0) is an ESP primary port
    BUG: spinlock lockup on CPU#0, swapper/1, f56dd004
    Pid: 1, comm: swapper Not tainted 2.6.25-rc4-sched-devel.git-x86-latest.git #402 [<c03ac6f4>] _raw_spin_lock+0x134/0x140
    [<c08649be>] _spin_lock_irqsave+0x5e/0x80
    [<c0b9fbfe>] ? espserial_init+0x2be/0x6e0
    [<c0b9fbfe>] espserial_init+0x2be/0x6e0
    [<c0b877a3>] kernel_init+0x83/0x260
    [<c0b9f940>] ? espserial_init+0x0/0x6e0
    [<c010416a>] ? restore_nocheck_notrace+0x0/0xe
    [<c0b87720>] ? kernel_init+0x0/0x260
    [<c0b87720>] ? kernel_init+0x0/0x260
    [<c0104507>] kernel_thread_helper+0x7/0x10
    =======================

    kzalloc() is not the way to initialize spinlocks anymore.

    Signed-off-by: Ingo Molnar <mingo@elte.hu>
    ---
    drivers/char/esp.c | 1 +
    1 file changed, 1 insertion(+)

    Index: linux/drivers/char/esp.c
    ===================================================================
    --- linux.orig/drivers/char/esp.c
    +++ linux/drivers/char/esp.c
    @@ -2484,6 +2484,7 @@ static int __init espserial_init(void)
    return 0;
    }

    + spin_lock_init(&info->lock);
    /* rx_trigger, tx_trigger are needed by autoconfig */
    info->config.rx_trigger = rx_trigger;
    info->config.tx_trigger = tx_trigger;

    \
     
     \ /
      Last update: 2008-03-07 11:11    [W:3.894 / U:0.236 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site