id = 2470 title = "qemu-system-mipsel regression, Linux generated with Buildroot does not boot anymore" state = "closed" created_at = "2024-08-01T01:10:57.740Z" closed_at = "2024-08-20T06:50:14.461Z" labels = ["accel: TCG", "target: mips", "workflow::Patch available"] url = "https://gitlab.com/qemu-project/qemu/-/issues/2470" host-os = "Debian/GNU Linux 11" host-arch = "MIPS Little Endian" qemu-version = "9.0.2" guest-os = "Linux" guest-arch = "MIPS Little Endian r5 (mips32r5el)" description = """Buildroot Toolchain Builders try to release a new version. See a message from Thomas Petazzoni with the remaining issues: https://lore.kernel.org/buildroot/20240730223542.273693e5@windsurf/T/#u All toolchains generate a system that fails to boot: Run /sbin/init as init process process '/bin/busybox' started with executable stack Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004 The interesting thing is that those images boot fine with Qemu v8.2.6, but they fail to boot with Qemu v9.0.2. I tracked it down to this commit: commit 4e999bf4197ae3dc58b7092260f98146920a7469 Author: Richard Henderson Date: Sun Jan 28 15:58:52 2024 +1000 target/mips: Pass ptw_mmu_idx down from mips_cpu_tlb_fill Rather than adjust env->hflags so that the value computed by cpu_mmu_index() changes, compute the mmu_idx that we want directly and pass it down. Introduce symbolic constants for MMU_{KERNEL,ERL}_IDX. Reviewed-by: Philippe Mathieu-Daudé Signed-off-by: Richard Henderson Unfortunately just reverting this commit in 9.0.2 does not help, Qemu segfaults on Linux Kernel boot then.""" reproduce = "n/a" additional = "n/a"