Hi, On Tue, Dec 05, 2023 at 05:14:20PM +0100, Salvatore Bonaccorso wrote: > Control: reassign -1 src:cryptsetup 2:2.6.1-5 > > Hi > > On Tue, Dec 05, 2023 at 04:55:58PM +0100, Salvatore Bonaccorso wrote: > > Hi, > > > > On Tue, Dec 05, 2023 at 04:38:19PM +0100, Salvatore Bonaccorso wrote: > > > Control: tags -1 + confirmed > > > > > > On Tue, Dec 05, 2023 at 06:23:45AM +0100, Michael Ott wrote: > > > > Package: src:linux > > > > Version: 6.6.4-1~exp1 > > > > Severity: important > > > > > > > > Dear Maintainer, > > > > > > > > After updating to the 6.6 kernel the password for my encryption does > > > > not longer > > > > work > > > > > > > > Please unlock disk nvme0n1p3_crypt: ********** > > > > device-mapper: table: 253:0: crypt: Error allocation crypto tfm > > > > (_ENOENT) > > > > device-mapper: ioctl: error adding target to table > > > > device-mapper: reload ioctl on nvme0n1p3_crypt (253:0) failed: No such > > > > file or > > > > directory > > > > cryptsetup: ERROR: nvme0n1p3_crypt: cryptsetup failed, bad password or > > > > options? > > > > > > > > Everything works with 6.5. I also downgrade systemd and cryptosetup but > > > > no > > > > changes > > > > > > I suspect this is related to changes around > > > https://git.kernel.org/linus/68cf01760bc0891074e813b9bb06d2696cac1c01 > > > (but not verified, nor tracked down). > > > > Actually after a more closer look on what is in the initrd: Bastian > > can be this due to switching to compressed modules? If this claim is > > correct then likely initramfs-tools would not copy them to the initrd. > > It looks that we only consider *.ko uncompressed in > debian/initramfs/hooks/cryptroot: > > add_modules() { > local glob="$1" found=n > shift > for mod in $(find -H "$@" -name "$glob.ko" -type f -printf '%f\n'); do > manual_add_modules "${mod%.ko}" > found=y > done > [ "$found" = y ] && return 0 || return 1 > } > > but various modules are now with 6.6.4-1~exp1 compressed: > > a relatively quick woraround would be to change the function to: > > add_modules() { > local glob="$1" found=n > shift > for mod in $(find -H "$@" -name "$glob.ko*" -type f -printf '%f\n'); do > manual_add_modules "${mod%.ko*}" > found=y > done > [ "$found" = y ] && return 0 || return 1 > } > > Is this the correct approach though? Which other hook functions might > be affected by the change in linux by switching to compressed modules?
And in fact this is the solution proposed in #1036049. Regards, Salvatore