• Sebastian Andrzej Siewior's avatar
    ACPI: EC: Eliminate in_interrupt() usage · 2e84ea5a
    Sebastian Andrzej Siewior authored
    advance_transaction() is using in_interrupt() to distinguish between
    an invocation from the interrupt handler and an invocation from
    another part of the stack.
    
    This looks misleading because chains like
    
      acpi_update_all_gpes() -> acpi_ev_gpe_detect() ->
      acpi_ev_detect_gpe() -> acpi_ec_gpe_handler()
    
    should probably also behave as if they were called from an interrupt
    handler.
    
    Replace in_interrupt() usage with a function parameter.
    
    Set this parameter to `true' if invoked from an interrupt handler
    (acpi_ec_gpe_handler() and acpi_ec_irq_handler()) and `false'
    otherwise.
    Signed-off-by: default avatarSebastian Andrzej Siewior <bigeasy@linutronix.de>
    [ rjw: Subject edits ]
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    2e84ea5a
ec.c 57.4 KB