[Bug 2048768] Re: Autopkgtest failures on amd64
Launchpad Bug Tracker
2048768 at bugs.launchpad.net
Fri Apr 5 14:06:25 UTC 2024
This bug was fixed in the package gcc-12 - 12.3.0-17ubuntu1
---------------
gcc-12 (12.3.0-17ubuntu1) noble; urgency=medium
* Merge with Debian; remaining changes:
- Build from upstream sources.
gcc-12 (12.3.0-17) unstable; urgency=medium
* Fix typo in distro_defaults spec.
gcc-12 (12.3.0-16) unstable; urgency=medium
* Update to git 20240403 from the gcc-12 branch.
- Fix PR tree-optimization/111407, PR target/113233 (loong64),
PR sanitizer/97696, PR tree-optimization/110838,
PR tree-optimization/91838, PR target/108743 (Darwin),
PR target/101737 (SH), PR tree-optimization/110221, PR ada/113979,
PR d/112285, PR d/112290, PR d/114171, PR d/113758, PR d/113125,
PR fortran/107426, PR fortran/50410, PR fortran/103715,
PR libstdc++/40380, PR libstdc++/107376, PR libstdc++/112473,
PR libstdc++/111172, PR libstdc++/112089, PR libstdc++/113960,
PR libstdc++/108846, PR libstdc++/86419, PR libstdc++/109758,
PR libstdc++/110593, PR libstdc++/66146, PR libstdc++/107500,
PR libstdc++/114147, PR libstdc++/110167.
* ASan: move allocator base to avoid conflict with high-entropy ASLR
for x86-64 Linux. Patch taken from LLVM. LP: #2048768.
* Make vhdl known to the PPC backend.
* libsanitizer: Remove crypt and crypt_r interceptors for releases
with glibc (>= 2.31).
* d/p/gcc-distro-defaults: Make -fstack-protector-explicit known.
* Move the _FORTIFY_SOURCE setting from cc1 to the driver.
* Update the proposed patch to fix PR ada/114064.
* Apply proposed patch for PR libquadmath/114533 (Simon Chopin).
Addresses: #1064426. LP: #2052929.
* Refresh patches.
-- Matthias Klose <doko at ubuntu.com> Wed, 03 Apr 2024 14:27:33 +0200
** Changed in: gcc-12 (Ubuntu Noble)
Status: Confirmed => Fix Released
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to gcc-10 in Ubuntu.
https://bugs.launchpad.net/bugs/2048768
Title:
Autopkgtest failures on amd64
Status in gcc-10 package in Ubuntu:
Confirmed
Status in gcc-11 package in Ubuntu:
Confirmed
Status in gcc-12 package in Ubuntu:
Fix Released
Status in gcc-13 package in Ubuntu:
Fix Released
Status in gcc-8 package in Ubuntu:
Invalid
Status in gcc-9 package in Ubuntu:
Confirmed
Status in linux package in Ubuntu:
Fix Released
Status in llvm-toolchain-14 package in Ubuntu:
Confirmed
Status in llvm-toolchain-15 package in Ubuntu:
Confirmed
Status in llvm-toolchain-16 package in Ubuntu:
Confirmed
Status in gcc-10 source package in Noble:
Won't Fix
Status in gcc-11 source package in Noble:
Won't Fix
Status in gcc-12 source package in Noble:
Fix Released
Status in gcc-13 source package in Noble:
Fix Released
Status in gcc-8 source package in Noble:
Invalid
Status in gcc-9 source package in Noble:
Won't Fix
Status in linux source package in Noble:
Fix Released
Status in llvm-toolchain-14 source package in Noble:
Won't Fix
Status in llvm-toolchain-15 source package in Noble:
Won't Fix
Status in llvm-toolchain-16 source package in Noble:
Confirmed
Bug description:
Some tests related to the address sanitizer are occasionally failing
on amd64 (also for llvm-toolchain-15 and 16):
--------------
FAIL: LLVM regression suite :: test_leaksan.c (38 of 45)
746s ******************** TEST 'LLVM regression suite :: test_leaksan.c' FAILED ********************
746s Script:
746s --
746s : 'RUN: at line 4'; /usr/bin/clang-14 -o /tmp/autopkgtest.gHVujV/autopkgtest_tmp/build/tests/Output/test_leaksan.c.tmp -fsanitize=address -g /tmp/autopkgtest.gHVujV/autopkgtest_tmp/tests/test_leaksan.c
746s : 'RUN: at line 5'; env ASAN_OPTIONS="log_path=stdout:exitcode=0" /tmp/autopkgtest.gHVujV/autopkgtest_tmp/build/tests/Output/test_leaksan.c.tmp 2>&1 > /tmp/autopkgtest.gHVujV/autopkgtest_tmp/build/tests/Output/test_leaksan.c.tmp.out
746s : 'RUN: at line 6'; grep -q "detected memory leaks" /tmp/autopkgtest.gHVujV/autopkgtest_tmp/build/tests/Output/test_leaksan.c.tmp.out
746s --
746s Exit Code: 139
746s
746s Command Output (stderr):
746s --
746s /tmp/autopkgtest.gHVujV/autopkgtest_tmp/build/tests/Output/test_leaksan.c.script: line 3: 3335 Segmentation fault (core dumped) env ASAN_OPTIONS="log_path=stdout:exitcode=0" /tmp/autopkgtest.gHVujV/autopkgtest_tmp/build/tests/Output/test_leaksan.c.tmp 2>&1 > /tmp/autopkgtest.gHVujV/autopkgtest_tmp/build/tests/Output/test_leaksan.c.tmp.out
--------------
If you run the test manually you'll notice that it works but
eventually crashes:
--------------------
ubuntu at autopkgtest:/tmp/autopkgtest.oXC2FP/autopkgtest_tmp/build/tests/Output$ ./test_leaksan.c.tmp
=================================================================
==8631==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 7 byte(s) in 1 object(s) allocated from:
#0 0x5e9c3441ed12 in __interceptor_malloc (/tmp/autopkgtest.oXC2FP/autopkgtest_tmp/build/tests/Output/test_leaksan.c.tmp+0xa3d12) (BuildId: 6f71ac388125722ade1ea86ee3661c0d884dd193)
#1 0x5e9c3445acb8 in main /tmp/autopkgtest.oXC2FP/autopkgtest_tmp/tests/test_leaksan.c:13:7
#2 0x7e84e1e280cf (/lib/x86_64-linux-gnu/libc.so.6+0x280cf) (BuildId: f0b834daa3d05a80967e9ec2f990a1ea71c958fa)
SUMMARY: AddressSanitizer: 7 byte(s) leaked in 1 allocation(s).
ubuntu at autopkgtest:/tmp/autopkgtest.oXC2FP/autopkgtest_tmp/build/tests/Output$ ./test_leaksan.c.tmp
=================================================================
==8634==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 7 byte(s) in 1 object(s) allocated from:
#0 0x5f19be5f6d12 in __interceptor_malloc (/tmp/autopkgtest.oXC2FP/autopkgtest_tmp/build/tests/Output/test_leaksan.c.tmp+0xa3d12) (BuildId: 6f71ac388125722ade1ea86ee3661c0d884dd193)
#1 0x5f19be632cb8 in main /tmp/autopkgtest.oXC2FP/autopkgtest_tmp/tests/test_leaksan.c:13:7
#2 0x77c7d3c280cf (/lib/x86_64-linux-gnu/libc.so.6+0x280cf) (BuildId: f0b834daa3d05a80967e9ec2f990a1ea71c958fa)
SUMMARY: AddressSanitizer: 7 byte(s) leaked in 1 allocation(s).
ubuntu at autopkgtest:/tmp/autopkgtest.oXC2FP/autopkgtest_tmp/build/tests/Output$ ./test_leaksan.c.tmp
Segmentation fault (core dumped)
--------------------
After some investigation I found that it will not fail with ASLR
disabled:
sudo sysctl kernel.randomize_va_space=0
while : ; do env ASAN_OPTIONS="log_path=stdout:exitcode=0"
./test_leaksan.c.tmp >/dev/null; if [ $? -ne 0 ] ; then echo crashed ;
fi done
If you enable ASLR it will start to crash:
$ sudo sysctl kernel.randomize_va_space=2
$ while : ; do env ASAN_OPTIONS="log_path=stdout:exitcode=0" ./test_leaksan.c.tmp >/dev/null; if [ $? -ne 0 ] ; then echo crashed ; fi done
Segmentation fault (core dumped)
crashed
Segmentation fault (core dumped)
crashed
Segmentation fault (core dumped)
crashed
Segmentation fault (core dumped)
crashed
Segmentation fault (core dumped)
crashed
If you enable ASLR again and run it with "setarch -R" (to disable ASLR
for this binary), it will also not crash.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gcc-10/+bug/2048768/+subscriptions
More information about the foundations-bugs
mailing list