* Nathan Chancellor <nathan@xxxxxxxxxx> wrote: > 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, so the underlying problem is that these two commits want to be a single commit: # Commit #117 headers/deps: Move task->thread_info to per_task() # Commit #106 headers/deps: Move thread_info APIs to <linux/sched/thread_info_api.h> As we can only switch ARM64's <asm/preempt.h> to use per_task() - which requires <linux/sched.h> - if we first fix & simplify <linux/sched.h>'s header dependencies, which is done to a sufficient level by: # Commit #556 headers/deps: Optimize <linux/sched.h> dependencies, remove <linux/sched/thread_info_api_lowlevel.h> inclusion So it's a catch-22, and quite a complication, and a bisection breakage distance of ~450 commits, with a lot of ordering assumptions & conflicts along the way, should we attempt to move the first two to later stages. :-/ But today I've restructured the tree, and the -v2-to-be tree is now fully bisectable on ARM64 too. :-) There's a single, late per_cpu() conversion commit, after the first phase of <linux/sched.h> simplifications: headers/deps: Move task->thread_info to per_task() I'd guess that either this one is that breaks SCS for you, or the ::thread conversion: headers/deps: per_task, arm64, x86: Convert task_struct::thread to a per_task() field I've pushed out these fixes to the sched/headers branch a couple of minutes ago, and this will be part of the -v2 release as well. Thanks, Ingo