Dear contributor,
Our automatic CI has detected problems related to your patch(es). Please find some details below.
In master-arm, after: | commit binutils-2_41-release-4788-gd5cbf916be4 | Author: Jan Beulich jbeulich@suse.com | Date: Mon Nov 18 11:35:57 2024 +0100 | | gas/ELF: also reject merge entity size being zero | | This won't have any useful effect, so is at best marginally less bogus | than a negative value. | | ... 2 lines of the commit log omitted.
Produces 14 regressions: | Running ld:ld-elf/compress.exp ... | FAIL: Build zlibbegin.o with zlib compressed debug sections | FAIL: Build gnubegin.o with zlib-gnu compressed debug sections | FAIL: Build gabiend.o with zlib-gabi compressed debug sections | FAIL: Link -r with zlib compressed debug output | ... and 10 more
Used configuration : *CI config* tcwg_gnu_cross_check_binutils master-arm *configure and test flags:* --target arm-linux-gnueabihf
We track this bug report under https://linaro.atlassian.net/browse/GNU-1427. Please let us know if you have a fix.
If you have any questions regarding this report, please ask on linaro-toolchain@lists.linaro.org mailing list.
-----------------8<--------------------------8<--------------------------8<--------------------------
The information below contains the details of the failures, and the ways to reproduce a debug environment:
You can find the failure logs in *.log.1.xz files in * https://ci.linaro.org/job/tcwg_gnu_cross_check_binutils--master-arm-build/86... The full lists of regressions and improvements as well as configure and make commands are in * https://ci.linaro.org/job/tcwg_gnu_cross_check_binutils--master-arm-build/86... The list of [ignored] baseline and flaky failures are in * https://ci.linaro.org/job/tcwg_gnu_cross_check_binutils--master-arm-build/86...
Current build : https://ci.linaro.org/job/tcwg_gnu_cross_check_binutils--master-arm-build/86... Reference build : https://ci.linaro.org/job/tcwg_gnu_cross_check_binutils--master-arm-build/86...
Instruction to reproduce the build : https://git-us.linaro.org/toolchain/ci/interesting-commits.git/plain/binutil...
Full commit : https://sourceware.org/git/?p=binutils-gdb.git%3Ba=commitdiff%3Bh=d5cbf916be...
On 19.11.2024 05:29, ci_notify@linaro.org wrote:
I can see how I would have missed those: They apparently depend upon a proper Arm (cross) compiler being made available / known to the "make check" invocation. While in principle I have such a compiler, it doesn't lend itself to passing via CC_FOR_TARGET, at least not with how the machinery currently works. Plus I question the usefulness of such tests, when in the common case people won't have cross compilers for _all_ the possible targets available.
Bottom line: This would better be investigated by someone having a ready-to- use environment to hand. Alternatively I could likely deal with some or even all of the observed regressions if not only the .sum files where provided among the artifacts, but also the .log ones.
Jan
On 19.11.2024 05:29, ci_notify@linaro.org wrote:
I've meanwhile arranged for the (cross) compiler to be found by dejagnu. These two tests succeed here. I won't be able to do anything without at least seeing the full ld.log.
To clarify, the compiler I have (and the target I test) is arm-linux-gnueabi, not arm-linux-gnueabihf. I hope it's not this detail which makes the difference.
| FAIL: Build gabiend.o with zlib-gabi compressed debug sections
This test fails here just because, for an unrelated reason, the compiler fails to find stdio.h.
| FAIL: Link -r with zlib compressed debug output | ... and 10 more
Most of the further failures are uncertain as to being genuine issues, or merely fallout from the failure to build said three objects.
Jan
Hi Jan,
On 19.11.2024 05:29, ci_notify@linaro.org wrote:
...
The ld.log for failed tests is at [1].
[1] https://ci.linaro.org/job/tcwg_gnu_cross_check_binutils--master-arm-build/86...
The error message seems to be: /home/tcwg-buildslave/workspace/tcwg_gnu_1/abe/builds/x86_64-pc-linux-gnu/arm-linux-gnueabihf/binutils-binutils.git~master/ld/tmpdir/ld/collect-ld: tmpdir/zlibbegin.o: final close failed: invalid operation collect2: error: ld returned 1 exit status
Does this help?
Kind regards,
-- Maxim Kuvyrkov https://www.linaro.org
Hi Jan,
Sorry, this has slipped through cracks.
The failures are reproducible and are still present in the latest test run.
Thiago, would you please investigate this? Start with confirming that the tests pass with current mainline with Jan's patch reverted.
Thank you!
-- Maxim Kuvyrkov https://www.linaro.org
Hello,
Maxim Kuvyrkov maxim.kuvyrkov@linaro.org writes:
Thiago, would you please investigate this?
Ok, on it.
Start with confirming that the tests pass with current mainline with Jan's patch reverted.
I just confirmed it: when reverting commit d5cbf916be4a ("gas/ELF: also reject merge entity size being zero") from today's trunk commit c672efba4229 ("[doc] Update gdb-add-index manpage"), the tests pass again.
It's interesting that the failures don't happen when running trunk binutils with Ubuntu 22.04's GCC. Just when using trunk GCC.
I'll see if I can find out more.
-- Thiago
Hi Thiago,
Thanks!
Hi Jan,
I also noticed that your patch increases code size of two SPEC CPU2017 benchmarks on 32-bit ARM. Is this expected?
• gnu-arm-master-Os • grew in size by 4% - 507.cactuBSSN_r • gnu-arm-master-Os_LTO • grew in size by 2% - 500.perlbench_r
Thanks,
-- Maxim Kuvyrkov https://www.linaro.org
Thiago Jung Bauermann thiago.bauermann@linaro.org writes:
doko has reported it at https://sourceware.org/bugzilla/show_bug.cgi?id=32491 too now.
Thiago Jung Bauermann thiago.bauermann@linaro.org writes:
It was a latent bug in GCC's configure, which became relevant because this patch made gas stricter about mergeable sections. I posted a fix here:
https://inbox.sourceware.org/gcc-patches/20241227214756.1059146-1-thiago.bau...
-- Thiago
Hi Thiago,
Great job tracking down such an obscure bug!
Thanks!
-- Maxim Kuvyrkov https://www.linaro.org
linaro-toolchain@lists.linaro.org