• Rafael J. Wysocki's avatar
    ACPI / PM / EC: Flush all EC work in acpi_freeze_sync() · 880a6627
    Rafael J. Wysocki authored
    Commit eed4d47e (ACPI / sleep: Ignore spurious SCI wakeups from
    suspend-to-idle) introduced acpi_freeze_sync() whose purpose is to
    flush all of the processing of possible wakeup events signaled via
    the ACPI SCI.  However, it doesn't flush the query workqueue used
    by the EC driver, so the events generated by the EC may not be
    processed timely which leads to issues (increased overhead at least,
    lost events possibly).
    
    To fix that introduce acpi_ec_flush_work() that will flush all of
    the outstanding EC work and call it from acpi_freeze_sync().
    
    Fixes: eed4d47e (ACPI / sleep: Ignore spurious SCI wakeups from suspend-to-idle)
    Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
    880a6627
sleep.c 26.2 KB