Bug 76221

Summary: spurious wake from suspend to freeze - IVB Ultrabook
Product: Power Management Reporter: Len Brown (lenb)
Component: Hibernation/SuspendAssignee: Zhang Rui (rui.zhang)
Status: CLOSED CODE_FIX    
Severity: normal CC: alan
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 3.15-rc5 Subsystem:
Regression: No Bisected commit-id:
Attachments: acpidump.out.gz

Description Len Brown 2014-05-14 19:42:20 UTC
Created attachment 136111 [details]
acpidump.out.gz

On an IVB core-i5 ultrabook...

echo freeze > /sys/power/state
works, but the system wakes up in under 10 seconds

/sys/kernel/debug/wakeup_sources
shows that BAT0 is ticking away...

Looking at what is counting in /sys/firmware/acpi/interrupts...

echo disable > /sys/firmware/acpi/interrups/gpe1B

stops the spurious wakeups, and I'm able to stay frozen
as long as desired, until button-press wakeup.

Another workaround is to boot without the acpi battery driver.
Comment 1 Alan 2014-05-19 10:31:47 UTC
Do you get spurious wakeups if you unload the xhci driver or build a kernel without it ?
Comment 2 Zhang Rui 2014-05-19 13:25:48 UTC
It is the ACPI battery driver that receive an ACPI notification every 10 seconds, and it is registered a wakeup source by the power_supply class.

I'm working on a fix for this issue.
Comment 3 Len Brown 2014-05-20 15:30:00 UTC
rmmod xhci_hcd makes no difference
rmmod battery makes the system work
Comment 5 Len Brown 2015-07-21 19:02:44 UTC
in 3.16-rc1:

commit 0c5ff0ef80c2561ef20721299ecfc39c5a42f694
Author: Zhang Rui <rui.zhang@intel.com>
Date:   Wed May 28 15:23:35 2014 +0800

    PM / sleep: unregister wakeup source when disabling device wakeup


presumably the rest of the series is too.  closed.