[Bug 2042710] Update Released
Brian Murray
2042710 at bugs.launchpad.net
Tue Nov 28 23:54:40 UTC 2023
The verification of the Stable Release Update for initramfs-tools has
completed successfully and the package is now being released to
-updates. Subsequently, the Ubuntu Stable Release Updates Team is being
unsubscribed and will not receive messages about this bug report. In
the event that you encounter a regression using the package from
-updates please report a new bug using ubuntu-bug and tag the bug report
regression-update so we can easily find any regressions.
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to initramfs-tools in Ubuntu.
https://bugs.launchpad.net/bugs/2042710
Title:
Can't enter cryptsetup password on MacBook Pro 2017 (MacBookPro14,1)
due to missing kernel modules in initramfs
Status in initramfs-tools package in Ubuntu:
Fix Released
Status in initramfs-tools source package in Mantic:
Fix Committed
Bug description:
[ Impact ]
I have a MacBook Pro 2017 (MacBookPro14,1) with an encrypted root
partition, which I decrypt via passphrase during boot, at the "Please
unlock disk nvme0n1p4_crypt" prompt.
Using 23.04 "Lunar" this worked fine. However after upgrading to 23.10
"Mantic", the built-in keyboard doesn't work for entering the
passphrase.
Quickest workaround: plug in a USB keyboard for entering the
passphrase.
Workaround: add the following modules to "/etc/initramfs-
tools/modules":
spi_pxa2xx_platform
intel_lpss_pci
... then "sudo update-initramfs -u".
I found that both kernel modules were required to get the keyboard
recognised in initramfs.
[ Test Plan ]
The -generic kernel and probably all kernel flavors contain the SPI and PCI driver (on amd64). On mantic systems, you can verify the current initrd doesn't contain these modules by decompressing the initramfs and listing its files:
$ lsinitramfs /boot/initrd.img-6.5.0-10-generic | grep 'spi-pxa2xx-platform\|intel-lpss-pci'
After installing the updated initramfs-tools package, your current initramfs should be automatically rebuilt and pick up the kernel modules:
$ lsinitramfs /boot/initrd.img-6.5.0-10-generic | grep 'spi-pxa2xx-platform\|intel-lpss-pci'
usr/lib/modules/6.5.0-10-generic/kernel/drivers/mfd/intel-lpss-pci.ko.zst
usr/lib/modules/6.5.0-10-generic/kernel/drivers/spi/spi-pxa2xx-platform.ko.zst
Test case on MacBook Pro 2017 laptops: Remove all previous
workarounds. Install the fixed initramfs-tools version. Then the
keyboard should work during boot to enter the passphrase.
[ Where problems could occur ]
This is making the initramfs slightly bigger. In my testing, both
added were 23,852 bytes in total (or 0.02 % on a 102 MB initramfs).
[ Remaining original report ]
I did a bit of digging into what changed for 23.10. It could
potentially (?) be commit 2df78bbb143884b9601a32608e12e43d40ccb0b0 "Do
not install ARM/RISCV specific modules on other architectures".
I had a look into how dracut handles it. Turns out that they
specifically include "spi_pxa2xx_platform" after reporting a similar
bug report in Fedora:
https://bugzilla.redhat.com/show_bug.cgi?id=2166209
I don't know how (if?) they handle the 2nd module, "intel_lpss_pci".
Anyway, I don't need an immediate fix since the workaround works for
me. Just posting this for further investigation, and for any other
MacBook Pro users in the same situation. Thanks for working on Ubuntu,
I think you're all amazing!
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/initramfs-tools/+bug/2042710/+subscriptions
More information about the foundations-bugs
mailing list