[Bug 2048768] Re: Autopkgtest failures on amd64
Launchpad Bug Tracker
2048768 at bugs.launchpad.net
Sat Mar 16 18:21:45 UTC 2024
Status changed to 'Confirmed' because the bug affects multiple users.
** Changed in: gcc-9 (Ubuntu)
Status: New => Confirmed
--
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:
Confirmed
Status in gcc-13 package in Ubuntu:
Fix Committed
Status in gcc-8 package in Ubuntu:
Invalid
Status in gcc-9 package in Ubuntu:
Confirmed
Status in linux package in Ubuntu:
Confirmed
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:
Confirmed
Status in gcc-11 source package in Noble:
Confirmed
Status in gcc-12 source package in Noble:
Confirmed
Status in gcc-13 source package in Noble:
Fix Committed
Status in gcc-8 source package in Noble:
Invalid
Status in gcc-9 source package in Noble:
Confirmed
Status in linux source package in Noble:
Confirmed
Status in llvm-toolchain-14 source package in Noble:
Confirmed
Status in llvm-toolchain-15 source package in Noble:
Confirmed
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