Commit 96b8517a authored by Rafael J. Wysocki's avatar Rafael J. Wysocki Committed by Zheng Zengkai
Browse files

ACPI: PM: s2idle: Cancel wakeup before dispatching EC GPE

stable inclusion
from stable-v5.10.101
commit 48e413087de1bc688ad732839efc0a5627f38d34
bugzilla: https://gitee.com/openeuler/kernel/issues/I5669Z

Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=48e413087de1bc688ad732839efc0a5627f38d34



--------------------------------

[ Upstream commit dc0075ba ]

Commit 4a9af6ca ("ACPI: EC: Rework flushing of EC work while
suspended to idle") made acpi_ec_dispatch_gpe() check
pm_wakeup_pending(), but that is before canceling the SCI wakeup,
so pm_wakeup_pending() is always true.  This causes the loop in
acpi_ec_dispatch_gpe() to always terminate after one iteration which
may not be correct.

Address this issue by canceling the SCI wakeup earlier, from
acpi_ec_dispatch_gpe() itself.

Fixes: 4a9af6ca ("ACPI: EC: Rework flushing of EC work while suspended to idle")
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
Signed-off-by: default avatarYu Liao <liaoyu15@huawei.com>
Reviewed-by: default avatarWei Li <liwei391@huawei.com>
Signed-off-by: default avatarZheng Zengkai <zhengzengkai@huawei.com>
parent 763b8d27
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment