Source: linux Version: 7.2.11-1 Severity: wishlist X-Debbugs-Cc: [email protected], [email protected] User: [email protected] Usertags: arm64
Dear Maintainer, (self-reporting, I intent to create the necessary PRs in salsa) arm64 laptops that are using luks encryption need to set the deferred_probe_timeout=30 command-line option to avoid having a timeout while typing the LUKS password. Quoting the commit [1] that introduced DRIVER_DEFERRED_PROBE_TIMEOUT as a Kconfig option for the justification: > Code using driver_deferred_probe_check_state() differs from most > EPROBE_DEFER handling in the kernel. Where other EPROBE_DEFER handling > (e.g. clks, gpios and regulators) waits indefinitely for suppliers to > show up, code using driver_deferred_probe_check_state() will fail > after the deferred_probe_timeout. > > This is a problem for generic distro kernels which want to support many > boards using a single kernel build. These kernels want as much drivers to > be modular as possible. The initrd also should be as small as possible, > so the initrd will *not* have drivers not needing to get the rootfs. > > Combine this with waiting for a full-disk encryption password in > the initrd and it is pretty much guaranteed that the default 10s timeout > will be hit, causing probe() failures when drivers on the rootfs happen > to get modprobe-d before other rootfs modules providing their suppliers. > > Make the default timeout configurable from Kconfig to allow distro kernel > configs where many of the supplier drivers are modules to set the default > through Kconfig. > > Reviewed-by: Saravana Kannan <[email protected]> > Signed-off-by: Hans de Goede <[email protected]> > Link: > https://patch.msgid.link/[email protected] > [ Drop deferred_probe_timeout documentation change in > kernel-parameters.txt. - Danilo ] > Signed-off-by: Danilo Krummrich <[email protected]> Since this option now allows for distributions to change the default 10s value to something else, we can now tweak the Debian kernel to have a more generous timeout (eg. 30s) or even disable the timeout so that taking time to enter a LUKS decryption key does not lead to driver timeouts on arm64 laptops. Thanks, Agathe. [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/drivers/base/Kconfig?id=56e3ee721b33bdc4ce0765d370983aa4384f8a59

