[lkml]   [2009]   [Aug]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Threaded interrupt handlers broken?
    On Sun, 16 Aug 2009, Michael Buesch wrote:

    > Hi,

    > I was trying to use threaded interrupt handlers, but the code always
    > crashes within irq_thread() with a "BUG: spinlock bad magic
    > 00000000". The spinlock that's not properly initialized is from the
    > wait_for_threads waitqueue.
    > It crashes on line 526 (see below). The initialization of the
    > waitqueue struct seems to depend on whether the IRQ is shared or
    > not. I don't know if that's correct, but I patched it to
    > unconditionally initialize the struct. That did not help.

    Hmm. The waitqueue is initialized when the first handler is set up. In
    that case shared == 0. When the second handler is installed we do not
    initialize it again as it is already initialized and even might have
    waiters queued. I'll have a look.



     \ /
      Last update: 2009-08-16 15:21    [W:0.053 / U:11.884 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site