On Wed, Jan 05, 2022 at 01:40:32AM +0100, Ingo Molnar wrote: > > * Nathan Chancellor <nathan@xxxxxxxxxx> wrote: > > > Unfortunately, while the kernel now builds, it does not boot in QEMU. I > > tried to checkout at 9006a48618cc0cacd3f59ff053e6509a9af5cc18 to see if I > > could reproduce that breakage there but the build errors out at that > > change (I do see notes of bisection breakage in some of the commits) so I > > assume that is expected. > > Yeah, there's a breakage window on ARM64, I'll track down that > bisectability bug. > > Decoupling thread_info and task_struct incrementally, so that it bisects > cleanly on all architectures, was always a big challenge. :-/ > > > There is no output, even with earlycon, so it seems like something is > > going wrong in early boot code. I am not very familiar with the SCS code > > so I will see if I can debug this with gdb later (I'll try to see if it > > is reproducible with GCC as well; as Nick mentions, there is support > > being added to it and I don't mind building from source). > > Just to make sure: with SCS disabled the same kernel boots fine? Correct (thank you for making sure, I have definitely not tested that before...). $ make -skj"$(nproc)" ARCH=arm64 LLVM=1 O=.build/arm64 defconfig Image.gz $ boot-qemu.sh -a arm64 -k .build/arm64 -t 30s ... [ 0.000000] Linux version 5.16.0-rc8-798083-g1755441e323b (nathan@archlinux-ax161) (ClangBuiltLinux clang version 14.0.0 (https://github.com/llvm/llvm-project 4602f4169a21e75b82261ba1599046b157d1d021), LLD 14.0.0) #1 SMP PREEMPT Wed Jan 5 21:51:29 UTC 2022 ... $ make -skj"$(nproc)" ARCH=arm64 LLVM=1 O=.build/arm64.scs defconfig $ scripts/config --file .build/arm64.scs/.config -e SHADOW_CALL_STACK $ make -skj"$(nproc)" ARCH=arm64 LLVM=1 O=.build/arm64.scs olddefconfig Image.gz ... qemu-system-aarch64: terminating on signal 15 from pid 690472 (timeout) + RET=124 + set +x Going back to v5.16-rc8, everything works fine. $ boot-qemu.sh -a arm64 -k .build/arm64 -t 30s ... [ 0.000000] Linux version 5.16.0-rc8-795784-gc9e6606c7fe9 (nathan@archlinux-ax161) (ClangBuiltLinux clang version 14.0.0 (https://github.com/llvm/llvm-project 4602f4169a21e75b82261ba1599046b157d1d021), LLD 14.0.0) #1 SMP PREEMPT Wed Jan 5 22:27:39 UTC 2022 ... I don't think I will have time to look at this today but I will try tomorrow. Having the bisectability bug fixed would help narrow things down but I am almost certain it is something up with the new per_task infrastructure but I'll have to dig around and see if I can understand that first. Cheers, Nathan