After pm-suspend computer immediately wakes up. How to determine what caused it?

3.4k views Asked by At

I am running a Debian-Jessy Server, that goes into S3 sleep mode after some hours network inactivity (I made a small bash script that checks it every two hours with crontab). Several seconds after suspending, it wakes up again. After a few hours, when my script again triggers pm-suspend because of network inactivity it suspends and does not wake again. The only way to wake it up should be WOL (wake-on-lan).

What can I do?

edit: It may have to do with the WOL package as I found people reporting the same problem: https://bbs.archlinux.org/viewtopic.php?id=173596

http:// ubuntuforums.org/showthread.php?t=2233674

https:// bugzilla.kernel.org/show_bug.cgi?id=46421

Here's an example log of my script:

---------------------------------------
Sun Nov 23 02:00:01 CET 2014
No activity; Suspending now!
#######################################
Sun Nov 23 02:00:02 CET 2014
pm-suspend
#######################################
Sun Nov 23 02:00:15 CET 2014
pm-resume
---------------------------------------
Sun Nov 23 06:00:01 CET 2014
No activity; Suspending now!
#######################################
Sun Nov 23 06:00:01 CET 2014
pm-suspend
#######################################
Sun Nov 23 16:32:14 CET 2014
pm-resume

As you can see, it wakes up again immediately. But the second time, it suspends succesfully.

I disabled every device in proc/acpi/wakeup:

Device  S-state   Status   Sysfs node
CIR   S3    *disabled
PS2K      S4    *disabled
PS2M      S4    *disabled
UR11      S4    *disabled  pnp:00:07
UR12      S4    *disabled  pnp:00:08
USB1      S3    *disabled
RP01      S4    *disabled  pci:0000:00:1c.0
BR11      S4    *disabled
RP02      S4    *disabled
RP03      S4    *disabled  pci:0000:00:1c.2
RP04      S4    *disabled  pci:0000:00:1c.3
RP05      S4    *disabled
RP06      S4    *disabled
RP07      S4    *disabled
RP08      S4    *disabled  pci:0000:00:1c.7
GLAN      S4    *disabled
EHC1      S4    *disabled  pci:0000:00:1d.0
EHC2      S4    *disabled  pci:0000:00:1a.0
XHC   S4    *disabled  pci:0000:00:14.0
HDEF      S4    *disabled
PEG0      S4    *disabled
PEGP      S4    *disabled
PEG1      S4    *disabled
PEG2      S4    *disabled

Is there a way to determine what caused the wake up? Why does the server suspend successfully the second time?

I enabled debug mode in pm-suspend log and looked into syslog, but I couldn't find any interesting information.

Syslog: http://pastebin.com/U963DccX

pm-suspend.log with debug:

Sun Nov 23 02:00:02 CET 2014: performing suspend
+ sync
+ do_suspend
+ echo -n mem
+ date
+ log Sun Nov 23 02:00:15 CET 2014: Awake.
+ is_set true
+ return 0
+ local fmt=%s\n
+ [ Sun Nov 23 02:00:15 CET 2014: Awake. = -n ]
+ printf %s\n Sun Nov 23 02:00:15 CET 2014: Awake.
Sun Nov 23 02:00:15 CET 2014: Awake.
+ date
+ log Sun Nov 23 02:00:15 CET 2014: Running hooks for resume
+ is_set true
+ return 0
+ local fmt=%s\n
+ [ Sun Nov 23 02:00:15 CET 2014: Running hooks for resume = -n ]
+ printf %s\n Sun Nov 23 02:00:15 CET 2014: Running hooks for resume
Sun Nov 23 02:00:15 CET 2014: Running hooks for resume

Thank you for your time!

1

There are 1 answers

0
Jeff Simmons On

Had a similar thing happen when I temporarily used an old PS2 keyboard with a USB adapter on my System76 box. Putting the USB keyboard back fixed it. Didn't look into it any further. but might give you a clue.