On Tue, Nov 15, 2022 at 02:46:17AM +0900, Masahiro Yamada wrote: > Prior to commit 5d45950dfbb1 ("kbuild: move vmlinux.o link to > scripts/Makefile.vmlinux_o"), jobserver-exec was invoked from the shell > script, link-vmlinux.sh. It can get access to the jobserver because > Makefile adds '+' prefix, as in: > > +$(call if_changed_dep,link_vmlinux) > > Since 5d45950dfbb1, jobserver-exec is invoked from Makefile, but the > '+' prefix is missing, hence jobserver-exec has no access to the > jobserver. > > Fixes: 5d45950dfbb1 ("kbuild: move vmlinux.o link to scripts/Makefile.vmlinux_o") > Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx> Reviewed-by: Nathan Chancellor <nathan@xxxxxxxxxx> At least it doesn't seem like compile times were majorly affected. I benchmarked arm64 allmodconfig (worst case scenario with ThinLTO): Benchmark 1: 094226ad94f4 ("Linux 6.1-rc5") Time (mean ± σ): 899.036 s ± 1.133 s [User: 49314.495 s, System: 3840.796 s] Range (min … max): 898.118 s … 900.302 s 3 runs Benchmark 2: 0f45cbb5399b ("kbuild: revive parallel execution for .tmp_initcalls.lds rule") Time (mean ± σ): 898.482 s ± 0.152 s [User: 49329.703 s, System: 3836.408 s] Range (min … max): 898.306 s … 898.584 s 3 runs Summary '0f45cbb5399b ("kbuild: revive parallel execution for .tmp_initcalls.lds rule")' ran 1.00 ± 0.00 times faster than '094226ad94f4 ("Linux 6.1-rc5")' > --- > > scripts/Makefile.vmlinux_o | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/scripts/Makefile.vmlinux_o b/scripts/Makefile.vmlinux_o > index 0edfdb40364b..ae52d3b3f063 100644 > --- a/scripts/Makefile.vmlinux_o > +++ b/scripts/Makefile.vmlinux_o > @@ -19,7 +19,7 @@ quiet_cmd_gen_initcalls_lds = GEN $@ > > .tmp_initcalls.lds: $(srctree)/scripts/generate_initcall_order.pl \ > vmlinux.a $(KBUILD_VMLINUX_LIBS) FORCE > - $(call if_changed,gen_initcalls_lds) > + +$(call if_changed,gen_initcalls_lds) > > targets := .tmp_initcalls.lds > > -- > 2.34.1 >