[llvm] Analysis: Add RuntimeLibcall analysis pass (PR #165196)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Wed Nov 5 14:52:45 PST 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `libc-x86_64-debian-fullbuild-dbg-asan` running on `libc-x86_64-debian-fullbuild` while building `llvm` at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/171/builds/33980

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcSignbitTest.SpecialNumbers
[       OK ] LlvmLibcSignbitTest.SpecialNumbers (6 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[1364/1403] Running unit test libc.test.include.isnanl_test.__unit__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcIsNanTest.SpecialNumbers
[       OK ] LlvmLibcIsNanTest.SpecialNumbers (6 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[1365/1403] Running unit test libc.test.src.fcntl.fcntl_test
FAILED: libc/test/src/fcntl/CMakeFiles/libc.test.src.fcntl.fcntl_test /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/libc/test/src/fcntl/CMakeFiles/libc.test.src.fcntl.fcntl_test 
cd /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/libc/test/src/fcntl && /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/libc/test/src/fcntl/libc.test.src.fcntl.fcntl_test.__build__
[==========] Running 10 tests from 1 test suite.
[ RUN      ] LlvmLibcFcntlTest.FcntlDupfd
[       OK ] LlvmLibcFcntlTest.FcntlDupfd (205 us)
[ RUN      ] LlvmLibcFcntlTest.FcntlGetFl
[       OK ] LlvmLibcFcntlTest.FcntlGetFl (51 us)
[ RUN      ] LlvmLibcFcntlTest.FcntlSetFl
[       OK ] LlvmLibcFcntlTest.FcntlSetFl (81 us)
[ RUN      ] LlvmLibcFcntlProcessAssociatedLockTest.GetLkRead
[       OK ] LlvmLibcFcntlProcessAssociatedLockTest.GetLkRead (76 us)
[ RUN      ] LlvmLibcFcntlProcessAssociatedLockTest.GetLkWrite
[       OK ] LlvmLibcFcntlProcessAssociatedLockTest.GetLkWrite (58 us)
[ RUN      ] LlvmLibcFcntlProcessAssociatedLockTest.UseAfterClose
[       OK ] LlvmLibcFcntlProcessAssociatedLockTest.UseAfterClose (133 us)
[ RUN      ] LlvmLibcFcntlOpenFileDescriptionLockTest.GetLkRead
[       OK ] LlvmLibcFcntlOpenFileDescriptionLockTest.GetLkRead (64 us)
[ RUN      ] LlvmLibcFcntlOpenFileDescriptionLockTest.GetLkWrite
[       OK ] LlvmLibcFcntlOpenFileDescriptionLockTest.GetLkWrite (62 us)
[ RUN      ] LlvmLibcFcntlOpenFileDescriptionLockTest.UseAfterClose
=================================================================
==3414108==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7fff6124f301 at pc 0x55afce1b3f02 bp 0x7fff6124ebf0 sp 0x7fff6124ebe8
READ of size 2 at 0x7fff6124f301 thread T0
    #0 0x55afce1b3f01 in __llvm_libc_20_0_0_git::internal::fcntl(int, int, void*) /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/__support/OSUtil/linux/fcntl.cpp:59:25
    #1 0x55afce1b5f59 in __llvm_libc_20_0_0_git::fcntl(int, int, ...) /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/fcntl/linux/fcntl.cpp:27:17
    #2 0x55afce1b1247 in LibcFcntlCommonLockTests<36, 37>::UseAfterClose() /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/test/src/fcntl/fcntl_test.cpp:175:5
    #3 0x55afce1aaaa4 in LlvmLibcFcntlOpenFileDescriptionLockTest_UseAfterClose::Run() /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/test/src/fcntl/fcntl_test.cpp:188:1
    #4 0x55afce1be417 in __llvm_libc_20_0_0_git::testing::Test::runTests(__llvm_libc_20_0_0_git::testing::TestOptions const&) /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/test/UnitTest/LibcTest.cpp:165:8
    #5 0x55afce1f9cc8 in main /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/test/UnitTest/LibcTestMain.cpp:59:10
    #6 0x7f798fa45249 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16

Address 0x7fff6124f301 is located in stack of thread T0 at offset 65 in frame
    #0 0x55afce1b0ebf in LibcFcntlCommonLockTests<36, 37>::UseAfterClose() /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/test/src/fcntl/fcntl_test.cpp:167

  This frame has 8 object(s):
    [32, 56) 'TEST_FILE' (line 171) <== Memory access at offset 65 overflows this variable
    [96, 128) 'ref.tmp' (line 174)
    [160, 176) 'agg.tmp'
    [192, 193) 'ref.tmp6' (line 174)
Step 8 (libc-unit-tests) failure: libc-unit-tests (failure)
...
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcSignbitTest.SpecialNumbers
[       OK ] LlvmLibcSignbitTest.SpecialNumbers (6 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[1364/1403] Running unit test libc.test.include.isnanl_test.__unit__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcIsNanTest.SpecialNumbers
[       OK ] LlvmLibcIsNanTest.SpecialNumbers (6 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[1365/1403] Running unit test libc.test.src.fcntl.fcntl_test
FAILED: libc/test/src/fcntl/CMakeFiles/libc.test.src.fcntl.fcntl_test /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/libc/test/src/fcntl/CMakeFiles/libc.test.src.fcntl.fcntl_test 
cd /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/libc/test/src/fcntl && /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/build/libc/test/src/fcntl/libc.test.src.fcntl.fcntl_test.__build__
[==========] Running 10 tests from 1 test suite.
[ RUN      ] LlvmLibcFcntlTest.FcntlDupfd
[       OK ] LlvmLibcFcntlTest.FcntlDupfd (205 us)
[ RUN      ] LlvmLibcFcntlTest.FcntlGetFl
[       OK ] LlvmLibcFcntlTest.FcntlGetFl (51 us)
[ RUN      ] LlvmLibcFcntlTest.FcntlSetFl
[       OK ] LlvmLibcFcntlTest.FcntlSetFl (81 us)
[ RUN      ] LlvmLibcFcntlProcessAssociatedLockTest.GetLkRead
[       OK ] LlvmLibcFcntlProcessAssociatedLockTest.GetLkRead (76 us)
[ RUN      ] LlvmLibcFcntlProcessAssociatedLockTest.GetLkWrite
[       OK ] LlvmLibcFcntlProcessAssociatedLockTest.GetLkWrite (58 us)
[ RUN      ] LlvmLibcFcntlProcessAssociatedLockTest.UseAfterClose
[       OK ] LlvmLibcFcntlProcessAssociatedLockTest.UseAfterClose (133 us)
[ RUN      ] LlvmLibcFcntlOpenFileDescriptionLockTest.GetLkRead
[       OK ] LlvmLibcFcntlOpenFileDescriptionLockTest.GetLkRead (64 us)
[ RUN      ] LlvmLibcFcntlOpenFileDescriptionLockTest.GetLkWrite
[       OK ] LlvmLibcFcntlOpenFileDescriptionLockTest.GetLkWrite (62 us)
[ RUN      ] LlvmLibcFcntlOpenFileDescriptionLockTest.UseAfterClose
=================================================================
==3414108==ERROR: AddressSanitizer: stack-buffer-overflow on address 0x7fff6124f301 at pc 0x55afce1b3f02 bp 0x7fff6124ebf0 sp 0x7fff6124ebe8
READ of size 2 at 0x7fff6124f301 thread T0
    #0 0x55afce1b3f01 in __llvm_libc_20_0_0_git::internal::fcntl(int, int, void*) /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/__support/OSUtil/linux/fcntl.cpp:59:25
    #1 0x55afce1b5f59 in __llvm_libc_20_0_0_git::fcntl(int, int, ...) /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/src/fcntl/linux/fcntl.cpp:27:17
    #2 0x55afce1b1247 in LibcFcntlCommonLockTests<36, 37>::UseAfterClose() /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/test/src/fcntl/fcntl_test.cpp:175:5
    #3 0x55afce1aaaa4 in LlvmLibcFcntlOpenFileDescriptionLockTest_UseAfterClose::Run() /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/test/src/fcntl/fcntl_test.cpp:188:1
    #4 0x55afce1be417 in __llvm_libc_20_0_0_git::testing::Test::runTests(__llvm_libc_20_0_0_git::testing::TestOptions const&) /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/test/UnitTest/LibcTest.cpp:165:8
    #5 0x55afce1f9cc8 in main /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/test/UnitTest/LibcTestMain.cpp:59:10
    #6 0x7f798fa45249 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16

Address 0x7fff6124f301 is located in stack of thread T0 at offset 65 in frame
    #0 0x55afce1b0ebf in LibcFcntlCommonLockTests<36, 37>::UseAfterClose() /home/llvm-libc-buildbot/buildbot-worker/libc-x86_64-debian-fullbuild/libc-x86_64-debian-fullbuild-dbg-asan/llvm-project/libc/test/src/fcntl/fcntl_test.cpp:167

  This frame has 8 object(s):
    [32, 56) 'TEST_FILE' (line 171) <== Memory access at offset 65 overflows this variable
    [96, 128) 'ref.tmp' (line 174)
    [160, 176) 'agg.tmp'
    [192, 193) 'ref.tmp6' (line 174)

```

</details>

https://github.com/llvm/llvm-project/pull/165196


More information about the llvm-commits mailing list