This was brought to my attention by Chris; looking at the code in commit dc3f5aae0638 parsing of an individual parameter will terminate prematurely if it is more than 255 characters and it will not be recognised as expected, with the remaining characters being parsed as an additional parameter.
For aarch64 the default command-line length is 2048 characters. Having seem some examples of actual command-lines I'm not yet convinced this commit is the cause - I'm currently building a reproducer to test some ideas. One such is, looking at the Ubuntu 6.8 git commits, there's a patch from upstream that fixes a command-line overflow: commit 4e38935f02fa0 "init/main.c: Fix potential static_command_line memory overflow" ( upstream commit 46dad3c1e57897) We really need to see a complete kernel log capture using options "earlyprintk debug" to see at what stage it breaks (and what the kernel reports as the cmdline, and what exact kernel version it is); currently I'm not convinced its the kernel failing here, but rather, the initialramfs processing (since most of the kernel command-line arguments shown are not kernel parameters at all; root= is but the 'squash:' type prefix isn't handled by the kernel's init/ code.). I haven't looked at MAAS but the command lines indicate it may be adding scripts into the initialramfs that read the command-line. -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/2069534 Title: linux 6.8 fails to boot on arm64 if any param is more than 140 chars Status in linux package in Ubuntu: Fix Released Status in linux source package in Noble: Confirmed Bug description: Hi, Linux 6.8 kernel fails to boot on ARM64 when any Linux command line param is more than 140 characters. Test Machine ============= Rockchip RK3399 based RockPro64 with latest u-boot 2024.07-rc3 in EFI mode booting grubaa64.efi Reproduced on ============== Ubuntu 22.04.4 with Linux HWE Proposed 6.8 Ubuntu 24.04 with Linux 6.8 Works on ========= Ubuntu 22.04.4 with Linux 5.15, 6.6, 6.7, 6.9 Steps to reproduce ==================== 1. Install Ubuntu 24.04 which comes with Linux 6.8 by default or Ubuntu 22.04.4 install Linux HWE 6.8 from https://launchpad.net/~canonical-kernel- team/+archive/ubuntu/proposed?field.series_filter=jammy 2. Edit /boot/grub/grub.cfg and add the following param to any boot entry with Linux 6.8 testparam=f081c381e7b54edcba27e5f790d47911a4cc3e726d8d256878d3df9175c020e0f081c381e7b54edcba27e5f790d47911a4cc3e726d8d256878d3df9175c020e0f081c381e7b5 3. Reboot the machine and select the boot entry in grub with the testparam as above. 4. Observe kernel never boots. Cause ======== After bisecting the kernel, I found that the bug was introduced in Linux 6.8-rc1 ( and released in Linux 6.8 ) with commit commit dc3f5aae06381b43bc9d0d416bd15ee1682940e9 Author: Ard Biesheuvel <a...@kernel.org> Date: Wed Nov 29 12:16:12 2023 +0100 arm64: idreg-override: Avoid parameq() and parameqn() This got fixed with Linux 6.9-rc1 and released in Linux 6.9 as part of rework commit e223a449125571daa62debd8249fa4fc2da0a961 Author: Ard Biesheuvel <a...@kernel.org> Date: Wed Feb 14 13:28:50 2024 +0100 arm64: idreg-override: Move to early mini C runtime That got merged to Linux 6.9-rc1 with commit commit 6d75c6f40a03c97e1ecd683ae54e249abb9d922b Merge: fe46a7dd189e 1ef21fcd6a50 Author: Linus Torvalds <torva...@linux-foundation.org> Date: Thu Mar 14 15:35:42 2024 -0700 Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux Fix Options ============= Option 1. For Linux 6.8 the safest fix would be to revert commit dc3f5aae06381b43bc9d0d416bd15ee1682940e9 Author: Ard Biesheuvel <a...@kernel.org> Date: Wed Nov 29 12:16:12 2023 +0100 arm64: idreg-override: Avoid parameq() and parameqn() Option 2. Unless Ubuntu Team is interested in bringing the whole Mini C Runtime rework to Linux 6.8 with commit 6d75c6f40a03c97e1ecd683ae54e249abb9d922b Merge: fe46a7dd189e 1ef21fcd6a50 Author: Linus Torvalds <torva...@linux-foundation.org> Date: Thu Mar 14 15:35:42 2024 -0700 Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux Please revert the change in Linux 6.8 Thanks To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2069534/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp