[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#19190: Cannot boot with encrypted root
From: |
Ludovic Courtès |
Subject: |
bug#19190: Cannot boot with encrypted root |
Date: |
Thu, 27 Nov 2014 11:12:39 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux) |
Duncan Keall <address@hidden> skribis:
> Here are the configurations I have tested which all result in the errors
> posted above:
>
> ("dm-crypt.ko" "aes-x86_64.ko" "crc32.ko" "pcbc.ko" "xcbc.ko"
> "sha256-ssse3.ko")
> ("dm-crypt.ko" "cryptd.ko" "aes-x86_64.ko" "crc32.ko" "pcbc.ko" "xcbc.ko"
> "sha256-ssse3.ko")
> ("dm-crypt.ko" "cryptd.ko" "crc32-pclmul.ko" "aes-x86_64.ko" "crc32.ko"
> "pcbc.ko" "xcbc.ko" "sha256-ssse3.ko")
>
> I could also add "aesni-intel.ko" but it resulted in a different set of
> kernel errors on boot:
>
> aesni_intel: Unknown symbol ablk_decrypt (err 0)
> aesni_intel: Unknown symbol lrw_free_table (err 0)
> aesni_intel: Unknown symbol ablk_set_key (err 0)
> ...
> ERROR: In procedure load-linux-module: Unknown error -1
Presumably that’s because one of its prerequisites hasn’t been loaded
yet.
The difficulty is that modules need to be listed in topological order:
things that aesni_intel.ko depends on must appear before aesni_intel.ko.
On my machine, I see:
--8<---------------cut here---------------start------------->8---
$ lsmod|grep aes
aesni_intel 165373 3
ablk_helper 13597 1 aesni_intel
cryptd 20359 4 ghash_clmulni_intel,aesni_intel,ablk_helper
lrw 13286 1 aesni_intel
glue_helper 13990 1 aesni_intel
aes_x86_64 17131 1 aesni_intel
--8<---------------cut here---------------end--------------->8---
So the right order for these would be:
cryptd
aes_x86_64
ablk_helper
lrw
aesni_intel
We’ll have to change the initrd build to figure that out automatically,
but in the meantime, we have to sort them by hand.
Ludo’.