From: Zachary Palmer <zep_bcache-J5qI5MFTcs8@public.gmane.org>
To: linux-bcache-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Suspend and Hibernation Bugs
Date: Sun, 01 Sep 2013 14:10:11 -0400 [thread overview]
Message-ID: <52238303.6040509@bahj.com> (raw)
Hello there. I'm not sure if this is the appropriate venue, so please
let me know if this information should be somewhere else. I have
configured a Debian 7.0 installation on a Dell Inspiron 17R SE laptop to
use a bcache root device. The previous known working configuration for
the laptop was:
/dev/sda (1TB HDD)
...
/dev/sda7 (used as LUKS encrypted volume)
/dev/mapper/sda7_crypt (used as LVM PV)
/dev/vg0/home
/dev/vg0/root
...
/dev/sda8 (used as ext3 /boot)
The new configuration is
/dev/sda (1TB HDD)
...
/dev/sda7 (used as bcache backing device)
/dev/bcache0 (used as LUKS encrypted volume)
/dev/mapper/bcache_crypt (used as LVM PV)
/dev/vg0/home
/dev/vg0/root
...
/dev/sda8 (used as ext3 /boot)
/dev/sdb (32GB SSD)
...
/dev/sdb3 (used as bcache caching device)
In order to get things booting, I also:
* Installed a Linux 3.10 kernel from wheezy-backports
(3.10-0.bpo.2-686-pae)
* Obtained a copy of the bcache-tools source from the git repo and
compiled it
* Constructed a Debian package for bcache-tools using checkinstall
* Because udev recognition wasn't enough at boot time, added a
script /etc/initramfs-tools/scripts/init-premount/z-bcache which looks
like this:
#!/bin/sh -e
# ZEP - Added (2013-08-29) because some bcache devices were
not being detected
# at startup by udev. This sloppy hack should do the
job.
PREREQS=""
prereqs() { echo "$PREREQS"; }
case "$1" in
prereqs)
prereqs
exit 0
;;
esac
. /scripts/functions
if [ -e '/sys/fs/bcache/register_quiet' ]; then
log_begin_msg "Scanning for bcache devices..."
for d in `ls /dev/sd*`; do
echo "$d" > /sys/fs/bcache/register_quiet
2>/dev/null || true
done
log_end_msg "bcache device scan complete"
else
log_warning_msg "/sys/fs/bcache/register_quiet not
found; not registering devices"
fi
* Executed update-initramfs -u -k all to get everything working
My machine boots from /dev/sda8 and the initramfs has enough machinery
to get the root drive mounted. I was thrilled until I discovered that
neither suspend nor hibernate seems to work; the suspend process seizes
up while suspending devices and never comes back. I booted the laptop
from a custom Debian live disk using the same kernel
(3.10-0.bpo.2-686-pae) and performed a series of tests:
* When the bcache kernel module was not loaded, suspend to RAM
worked correctly.
* When the bcache kernel module was loaded but no devices were
registered, suspend to RAM worked correctly.
* When a single bcache device was registered using "echo /dev/sda7
> /sys/fs/bcache/register; echo /dev/sdb3 > /sys/fs/bcache/register",
suspend to RAM failed to change the power state of the machine.
* With a /dev/bcache0 device in use as an encrypted volume, running
"echo freezer > /sys/power/pm_test; echo platform > /sys/power/disk;
echo disk > /sys/power/state" allows the machine to awaken from the test
correctly.
* With a /dev/bcache0 device in use as an encrypted volume, running
"echo devices > /sys/power/pm_test; echo platform > /sys/power/disk;
echo disk > /sys/power/state" causes the machine to hang.
Has suspend/hibernate been tested with bcache? Is it supported? I'm
trying to figure out if it's my specific laptop hardware causing the
issue or if bcache is somehow at fault. (Clearly, I can get
suspend/hibernate back if I migrate back to using just my HDD, but
caching blocks in a fashion designed for SSDs seems like such a lovely
idea.)
Thanks,
Zach
next reply other threads:[~2013-09-01 18:10 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-09-01 18:10 Zachary Palmer [this message]
[not found] ` <52238303.6040509-J5qI5MFTcs8@public.gmane.org>
2013-09-01 19:46 ` Suspend and Hibernation Bugs Gabriel de Perthuis
[not found] ` <5223999F.2050508-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2013-09-01 23:13 ` Zachary Palmer
[not found] ` <5223CA04.4010607-J5qI5MFTcs8@public.gmane.org>
2013-09-02 9:58 ` Gabriel de Perthuis
2013-09-02 16:37 ` Darrick J. Wong
[not found] ` <20130902163743.GA14878-yuuUpGxbzT9UbpRmUfBrXUB+6BGkLq7r@public.gmane.org>
2013-09-02 20:07 ` Zachary Palmer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=52238303.6040509@bahj.com \
--to=zep_bcache-j5qi5mftcs8@public.gmane.org \
--cc=linux-bcache-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.