On Mon, May 4, 2020 at 7:09 PM Chris Chiu <chiu@xxxxxxxxxxxx> wrote: > > Hi, > I have an Intel X5-Z8350 laptop which used to work fine on s2idle > enter/exit with kernel 5.3. After upgrading to kernel 5.4 and later, > the system can still exit s2idle by power button. However, if I try to > wake it up from a keystroke, the system will freeze and then no longer > respond even to the power button. I can only shut it down and power on > again. > > I tried to 'git bisect' to find out which commit causes the > difference, it shows me the commit "ACPI: PM: s2idle: Prevent spurious > SCIs from waking up the system". My laptop can work as usual to exit > s2idle by a keystroke with reverting it on kernel 5.4. > > Then I tried to check whether I can reproduce it on the latest > mainline kernel, the same problem still there. But I can not fix it by > simply reverting. I found the acpi_s2idle_wake() has been refined on > the latest mainline kernel, and I have to make modifications as > follows to make my laptop work. Thanks for the report, the issue evidently is EC-related. > @@ -1024,7 +1024,7 @@ static bool acpi_s2idle_wake(void) > * regarded as a spurious one. > */ > if (!acpi_ec_dispatch_gpe()) > - return false; > + return true; Have you tried commenting out simply removing the if () check and the following return statement? If not, can you please try this and see what happens? > > /* > * Cancel the wakeup and process all pending events in case >