[2024-04-10 07:34] Borislav Petkov:
On Tue, Apr 09, 2024 at 06:38:53PM +0200, Pascal Ernster wrote:
Just to make sure this doesn't get lost: This patch causes the kernel to not boot on several x86_64 VMs of mine (I haven't tested it on a bare metal machine). For details and a kernel config to reproduce the issue, see https://lore.kernel.org/stable/fd186a2b-0c62-4942-bed3-a27d72930310@hardfalc...
I see your .config there. How are you booting the VMs? qemu cmdline?
I've seen the issue on both a Hetzner VM (UEFI mode, classical video screen, no access to a serial terminal) and on libvirt VMs (passthrough of the host systems Kaby Lake CPU, libvirt devices whereever possible, no GPU, serial console, kernel, initrd and boot cmdline configured directly in libvirt, without using a bootloader). I can't easily switch between BIOS and UEFI on my Hetzner VM, but at least on my libvirt VMs, the issue occurs regardless of whether I configure the libvirt VMs to start in UEFI or in BIOS mode.
I haven't tried manually calling qemu, and I haven't tried the broken kernel on bare metal, but I suspect that the issue occur there as well if I tested it.
One important aspect I should have mentioned: The config that I've posted is a localmodconfig from a libvirt VM that I used for bisecting this, so it is possible that a kernel built with that exact it might not be able to boot on a Hetzner VM, and it probably wouldn't be able to boot on a bare metal machine. It is sufficient to reproduce the issue on a libvirt VM, though.
I've attached a simplified but sufficient version of my original libvirt VM definition that you can use to reproduce the issue. With this VM defintion, the "working" kernel (from the 0.2 PKGBUILD that reverts your patch) will complain about a missing rootfs, but besides from not finding a rootfs, it will boot, show messages and eventually settle on a low CPU load. With the broken kernel (from the 0.1 PKGBUILD that includes your patch), it won't output even a single message, and it will remain at 100% CPU from the moment you boot the VM to the moment you kill the VM.
Regards Pascal