mbox series

[0/1] Failure to hibernate on Dell Latitude 7430

Message ID 20240318191153.6978-1-corngood@gmail.com (mailing list archive)
Headers show
Series Failure to hibernate on Dell Latitude 7430 | expand

Message

David McFarland March 18, 2024, 7:11 p.m. UTC
I have a Dell Latitude 7430, and recently whenever I hibernate with
`systemctl hibernate`, the machine would immediately wake.

I bisected it to:

0c4cae1bc00d PM: hibernate: Avoid missing wakeup events during hibernation

However, the underlying problem seems to be that during hibernation, my
system gets a 0xcf (power button release) event, and the above change
causes it to abort hibernation correctly.

I also noticed that holding the power button down (when it's configured
to suspend) causes the system to suspend and then wake upon release, if
it's held long enough.

I'm attaching a patch which fixes the problem for me, by skipping the
wake on any of the release events.  These events are all marked
KEY_IGNORE, so think this is a reasonable thing to do.

I'm a little worried about the consequences of doing this
unconditionally in intel-hid.  Perhaps it should be a quirk?

David McFarland (1):
  platform/x86/intel/hid: Don't wake on 5-button releases

 drivers/platform/x86/intel/hid.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

Comments

Thorsten Leemhuis March 21, 2024, 9:31 a.m. UTC | #1
On 18.03.24 20:11, David McFarland wrote:
> I have a Dell Latitude 7430, and recently whenever I hibernate with
> `systemctl hibernate`, the machine would immediately wake.

Thanks for the report and the proposed patch.

> I bisected it to:
> 
> 0c4cae1bc00d PM: hibernate: Avoid missing wakeup events during hibernation

I CCed the author of that change, which should at least be aware of this
any maybe help out.

Also CCed the people that take care of the code your patch modifies,
they should be the best to judge what should be done here.

FWIW, the start of the thread and the proposed patch can be found here:
https://lore.kernel.org/all/20240318191153.6978-1-corngood@gmail.com/

Ciao, Thorsten

> However, the underlying problem seems to be that during hibernation, my
> system gets a 0xcf (power button release) event, and the above change
> causes it to abort hibernation correctly.
> 
> I also noticed that holding the power button down (when it's configured
> to suspend) causes the system to suspend and then wake upon release, if
> it's held long enough.
> 
> I'm attaching a patch which fixes the problem for me, by skipping the
> wake on any of the release events.  These events are all marked
> KEY_IGNORE, so think this is a reasonable thing to do.
> 
> I'm a little worried about the consequences of doing this
> unconditionally in intel-hid.  Perhaps it should be a quirk?
> 
> David McFarland (1):
>   platform/x86/intel/hid: Don't wake on 5-button releases
> 
>  drivers/platform/x86/intel/hid.c | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)

P.S.: To be sure the issue doesn't fall through the cracks unnoticed,
I'm adding it to regzbot, the Linux kernel regression tracking bot:

#regzbot ^introduced 0c4cae1bc00d
#regzbot title PM: hibernate: & platform/x86/intel/hid: hibernate on
Dell Latitude 7430 fails
#regzbot ignore-activity

--
Everything you wanna know about Linux kernel regression tracking:
https://linux-regtracking.leemhuis.info/about/#tldr
That page also explains what to do if mails like this annoy you.