[PATCH v2 0/6] Fixes for the parallel make/make check support
Sam James
sam@gentoo.org
Thu Aug 6 18:06:52 GMT 2026
Adhemerval Zanella <adhemerval.zanella@linaro.org> writes:
> This series fixes fallouts from the parallel subdirectory recursion
> and parallel 'make check' changes that went into 2.44 (7cac99621e96
> and related commits).
>
> The first patch fixes gen-as-const-headers races where a generated
> header is consumed by a different subdirectory than the one that
> generates it (BZ 34438). The serial recursion hid the missing
> dependency because the sorted subdirectory order always ran the
> generating subdirectory first; the parallel fan-out does not provide
> that ordering. The headers are moved to the subdirectories that
> consume them.
>
> The second patch fixes a parallel 'make install' failure where
> install-others-nosubdir adds the ABI lib-names header as a
> prerequisite in subdirectories without $(headers), where no install
> rule for it exists (BZ 34439). This also only worked because
> .NOTPARALLEL previously guaranteed the top level installed the header
> first.
>
> The third patch fixes the two-pass 'make check' so the static checks
> (check-abi, conformtest, installed headers) run in the first
> build-only pass no longer abort the check before any built test runs,
> and the test summary is only merged and printed once at the end of
> the second pass, restoring the single complete summary.
>
> The fourth patch makes the .dt to .d dependency conversion safe
> against concurrent sub-makes.
>
> The last two patches fix the remaining races observed by Ross Burton.
> The fifth creates the top-level stamp files before the subdirectory
> fan-out, and the the sixth orders the arm rtld link after
> libgcc-stubs.a.
>
> Tested with builds and 'make check' on x86_64-linux-gnu, and builds
> for sh4-linux-gnu, i686-gnu, x86_64-gnu, and arm-linux-gnueabihf.
>
> I also run multiple builds on cfarm120, which has 192 cores and
> most likely to trigger concurrency issues (as Florian has also
> noticed).
Thanks for respinning with the extra fixes.
>
> Adhemerval Zanella (5):
> Fix gen-as-const-headers races with the parallel subdir recursion (BZ
> 34438)
> Makefile: Only print the test summary in the second pass of 'make
> check'
> Makerules: Make the .dt to .d conversion safe against concurrent
> sub-makes
> Makefile: Order the top-level stamp files before the subdirectory
> fan-out
> arm: Order the rtld link after libgcc-stubs.a
>
> Rudi Heitbaum (1):
> Makerules: Only install the ABI lib-names header from the top level
> (BZ 34439)
>
> Makefile | 15 ++++++++
> Makerules | 46 +++++++++++++++++++++----
> sysdeps/arm/Makefile | 5 +++
> sysdeps/mach/hurd/x86/Makefile | 6 +---
> sysdeps/unix/sysv/linux/sh/Makefile | 4 ++-
> sysdeps/unix/sysv/linux/x86_64/Makefile | 4 ++-
> sysdeps/x86/Makefile | 10 ++++--
> 7 files changed, 74 insertions(+), 16 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 418 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/libc-alpha/attachments/20260806/199d3c76/attachment.sig>
More information about the Libc-alpha
mailing list