[pkg-cryptsetup-devel] Bug#639832: cryptsetup: initramfs hooks vs aesni-intel

Simon Mackinlay smackinlay at mail.com
Tue Aug 30 17:47:17 UTC 2011

Package: cryptsetup
Version: 2:1.3.0-3
Severity: normal

It seems as if arch-specific crypto modules (for example - aesni-intel) are
loaded _after_ the root and swap devices are luksOpen'd (other devices are
open'd later in boot, late enough that the forced modprobe (I have aesni-intel
in /etc/modules) has occurred.

Unfortunately it appears that this results in these devices using SW-based
crypto (it's reasonably obvious on this system which is which; aesni-intel
can move 481Mbyte/s vs the SSD's native 542Mbyte/s vs SW-based crypto
topping out at ~141Mbyte/s; as if that wasn't enough - temperatore rises
sharply in the SW-based case).

It wasn't apparent how to configure things differently to work around this
(obviously this is VERY early init stuff) although I can see that moving
from modular to static aesni-intel might be one way to go.


-- Package-specific info:
-- /proc/cmdline
BOOT_IMAGE=/vmlinuz-3.0.3 root=/dev/mapper/root ro root=LABEL=root acpi_osi=Linux video=vesafb:off libata.noacpi=1 quiet

-- /etc/crypttab
# <target name>	<source device>		<key file>	<options>
swap /dev/sdb5 none luks
root /dev/sdb6 none luks
scratch /dev/sdb10 none luks

-- /etc/fstab
# /etc/fstab: static file system information.
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0
LABEL=root      /               ext4    noatime,nodiratime,barrier=1,commit=600,discard,errors=remount-ro 0       1
LABEL=boot      /boot           ext2    noatime,nodiratime,errors=remount-ro 0       1
LABEL=scratch   /scratch        ext4    noatime,nodiratime,barrier=1,commit=600,discard,nodev,nosuid,noexec 0       2
LABEL=swap      none            swap    sw              0       0

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.0.3 (SMP w/8 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages cryptsetup depends on:
ii  debconf [debconf-2.0]      1.5.41        Debian configuration management sy
ii  dmsetup                    2:1.02.63-3.1 The Linux Kernel Device Mapper use
ii  libc6                      2.13-16       Embedded GNU C Library: Shared lib
ii  libcryptsetup1             2:1.3.0-3     libcryptsetup shared library
ii  libpopt0                   1.16-1        lib for parsing cmdline parameters

cryptsetup recommends no packages.

Versions of packages cryptsetup suggests:
ii  busybox                       1:1.18.5-1 Tiny utilities for small and embed
ii  dosfstools                    3.0.9-1    utilities for making and checking 
ii  initramfs-tools [linux-initra 0.99       tools for generating an initramfs
ii  liblocale-gettext-perl        1.05-7     module using libc functions for in
ii  udev                          172-1      /dev/ and hotplug management daemo

-- debconf information:
  cryptsetup/prerm_active_mappings: true

More information about the pkg-cryptsetup-devel mailing list