Fix for random wakeup daemon locks at resuming from sleep/hibernate

15 views
Skip to first unread message

Benoist PINCON

unread,
Jul 20, 2019, 5:24:40 AM7/20/19
to ckb-next
Hi all,

I've been struggling for months with this :
when resuming from system sleep/hibernate I got daemon not responding at all at least one a week (sometimes much more frequently).

Same happens on Ubuntu 18.x/19.x / Mint 18/19
kernels 4.1/4.2 or 5.1 / 5.2
Motherboards/Processor X370 / Ryzen 1700 - X470 / Ryzen 2700


Attempting to stop/restart like :
sudo systemctl stop ckb-next-daemon
sudo systemctl start ckb-next-daemon
was impossible since it was completely unresponsive. Computer was not even able to properly shutdown, kernel was hanging on ckb-daemon,
there was no other option than pressing physical switch to shutdown the computer.

Anyway I got it solved by adding a small script (beware it's sh, not bash so string comparison are different !)
executed before/after system sleep occurs for stopping and restarting daemon :

#!/bin/sh
if [ ${1} = "pre" ]; then
 systemctl stop ckb
-next-daemon
elif [ ${1} = "post" ]; then
 systemctl start ckb
-next-daemon
fi


details :

#!/bin/sh
# location : usr/lib/systemd/system-sleep/ckb-next
# must be executable and belong to root : rwxr-xr-x 1 root root 505 juin  29 11:27 ckb-next*
#echo  "event {1}={$1} {2}={$2} at $(date)... " >> /tmp/systemd_suspend_test


if [ ${1} = "pre" ]; then
# Do the thing you want before suspend here, e.g.:
# echo "we are suspending at $(date)..." >> /tmp/systemd_suspend_test

  systemctl stop ckb-next-daemon
elif [ ${1} = "post" ]; then
# Do the thing you want after resume here, e.g.:
# echo "...and we are resuming from $(date)" >> /tmp/systemd_suspend_test

  systemctl start ckb-next-daemon
fi


Since then I no longer have trouble for a few weeks (hopefully this is a definitive fix for me).

Hope this can help someone else face the same problems.

Apart from this, I'd like to thank you all for the awesome work and support !
Reply all
Reply to author
Forward
0 new messages