• Thomas Gleixner's avatar
    genirq: Use the correct variable for note_interrupt · 70433c01
    Thomas Gleixner authored
    note_interrupt wants to be called with the combined result of all
    handlers called, not with the last one. If it's a shared interrupt
    then the last handler might return IRQ_NONE often enough to trigger
    the spurious dectector which turns off a perfectly fine working
    interrupt line. Bug was introduced in commit 1277a532(genirq: Simplify
    handle_irq_event()).
    
    Yes, I really messed up there. First the variable ret should not have
    been named differently to avoid similarity with retval. Second it
    should have been declared in the do {} loop.
    
    Rename it to res and move it into the do {} loop and vanish under a
    huge brown paperbag.
    Reported-bisected-tested-by: default avatarIngo Molnar <mingo@elte.hu>
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    70433c01
handle.c 3.42 KB