• Thomas Gleixner's avatar
    Revert "ACPI: Make ACPI interrupt threaded" · 9ecf8c0d
    Thomas Gleixner authored
    This reverts commit 6fe0d062.
    
    Paul bisected this regression.
    
    The conversion was done blindly and is wrong, as it does not provide a
    primary handler to disable the level type irq on the device level.
    Neither does it set the IRQF_ONESHOT flag which handles that at the irq
    line level.  This can't be done as the interrupt might be shared, though
    we might extend the core to force it.
    
    So an interrupt on this line will wake up the thread, but immediately
    unmask the irq after that.  Due to the interrupt being level type the
    hardware interrupt is raised over and over and prevents the irq thread
    from handling it.  Fail.
    
    request_irq() unfortunately does not refuse such a request and the patch
    was obviously never tested with real interrupts.
    Bisected-by: default avatarPaul Bolle <pebolle@tiscali.nl>
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    9ecf8c0d
osl.c 36.2 KB