I have been running Debian Jessie on my laptop for more than a year. The
laptop has a regular HDD as /dev/sda and a 32G SSD drive as /dev/sdb.
/dev/sda11 is LUKS1-encrypted as /dev/mapper/sda11-crypt. There are two LVM
VGs:

$ pvs
  PV                      VG        Fmt  Attr PSize  PFree
  /dev/mapper/sda11_crypt encrypted lvm2 a--  17.05g    0
  /dev/sda8               plaintext lvm2 a--  31.27g 1.45g
  /dev/sdb1               plaintext lvm2 a--  29.81g    0

I have four LVs in these two VGs like so:

$ lvs
  LV   VG        Attr       LSize  Pool Origin Data%  Meta%  Move Log
Cpy%Sync Convert
  root encrypted -wi-ao----  7.74g

  swap encrypted -wi-ao----  9.31g

  opt  plaintext rwi-aor--- 11.27g
 100.00
  usr  plaintext rwi-aor--- 18.54g
 100.00

As you might expect, / is mounted on /dev/mapper/root and /usr is mounted
on /dev/mapper/usr.

Until December 17 (according to /var/log/apt/history.log.1.gz), this setup
worked just fine. (The laptop often doesn't come back from hibernation, but
I've never been able to get Linux to hibernate reliably.)

Then on Dec. 17, I updated (aptitude -u, U, g, g) and got a new kernel (apt
history says linux-image-3.16.0-4-amd64:amd64 (3.16.7-ckt11-1+deb8u6,
3.16.7-ckt20-1+deb8u1)), rebooted, and now my machine doesn't boot. (The
packages that were upgraded
include: linux-doc-3.16, linux-image-3.16.0-4-amd64,
libgdk-pixbuf2.0-common, gir1.2-gdkpixbuf-2.0,
linux-headers-3.16.0-4-amd64, linux-compiler-gcc-4.8-x86,
libgdk-pixbuf2.0-0, linux-libc-dev, linux-headers-3.16.0-4-common.)

Here is the output at boot (transcribed from a photo):

... regular output discovering LVM volumes and asking for my LUKS password;
/ is mounted successfully ...
Unable to find LVM volume plaintext/usr
[   24.859513] mdX: failed to create bitmap (-22)
[   24.859655] device-mapper: table: 253:11: raid: Fail to run raid array
  device-mapper: reload ioctl on  failed: Invalid argument
... same message (modulo timestamps) every second for 20-30 seconds ...
Unable to find LVM volume plaintext/usr
Gave up waiting for /usr device.  Common problems:
 - Boot args (cat /proc/cmdline)
   - Check rootdelay= (did the system wait long enough?)
 - Missing modules (cat /proc/modules; ls /dev)
ALERT!  /dev/mapper/plaintext-usr does not exist.  Dropping to a shell!
modprobe: module ehci-orion not found in modules.dep


... BusyBox shell ...

Indeed, at this point, ls -l /dev/mapper contains
plaintext-usr_rimage_0, plaintext-usr_rimage_1, plaintext-usr_rmeta_0,
and plaintext-usr_rmeta_1,
but not plaintext-usr. Root seems to be mounted. lvdisplay says "NOT
available." I tried:

lvm> vgchange -a y plaintext
[  453.698714] mdX: failed to create bitmap (-22)
[  453.700097] device-mapper: table: 253:11: raid: Fail to run raid array
  device-mapper: reload ioctl on  failed: Invalid argument
[  453.716235] mdX: failed to create bitmap (-22)
[  453.717565] device-mapper: table: 253:11: raid: Fail to run raid array
  device-mapper: reload ioctl on  failed: Invalid argument
  0 logical volume(s) in volume group "plaintext" now active


I am able to boot with the 3.16-3-amd64 (note no ".0" at the end) kernel
that is still installed, and everything seems to work fine. I tried to find
any differences in grub config for these two kernels, but didn't find
anything that seems related. (Besides, it seems that I have been running
3.16.0 for as long as /var/log/apt/ can remember.) I was hoping that the
new kernel available today (3.16.7-ckt20-1+deb8u2) might fix this issue,
but no luck.

I could try removing /dev/sdb1 as a PV, rebooting to the newer kernel, then
re-adding /dev/sdb1, but that seems a bit risky, and I don't know if it
would fix the problem.

Any help is appreciated.

Thanks,
Ben

P.S. I know that an unencrypted /usr isn't a super-secure setup, but I
really just want to make sure that if my laptop is stolen, they can't get
my financial documents.

Also, I know that I'm wasting 1.45g of /dev/sda8. Silly me, thinking 32G
means 32GiB.

Reply via email to