[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YdYctmnM6kdN5R5s@archlinux-ax161>
Date: Wed, 5 Jan 2022 15:33:26 -0700
From: Nathan Chancellor <nathan@...nel.org>
To: Ingo Molnar <mingo@...nel.org>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
linux-kernel@...r.kernel.org, linux-arch@...r.kernel.org,
Andrew Morton <akpm@...ux-foundation.org>,
Peter Zijlstra <peterz@...radead.org>,
Thomas Gleixner <tglx@...utronix.de>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
"David S. Miller" <davem@...emloft.net>,
Ard Biesheuvel <ardb@...nel.org>,
Josh Poimboeuf <jpoimboe@...hat.com>,
Jonathan Corbet <corbet@....net>,
Al Viro <viro@...iv.linux.org.uk>, llvm@...ts.linux.dev
Subject: Re: [PATCH 0000/2297] [ANNOUNCE, RFC] "Fast Kernel Headers" Tree
-v1: Eliminate the Linux kernel's "Dependency Hell"
On Wed, Jan 05, 2022 at 01:40:32AM +0100, Ingo Molnar wrote:
>
> * Nathan Chancellor <nathan@...nel.org> 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@...hlinux-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@...hlinux-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
Powered by blists - more mailing lists