[libc-commits] [libc] [libc] fix pthread build issue for full-build mode (PR #100912)

LLVM Continuous Integration via libc-commits libc-commits at lists.llvm.org
Sat Jul 27 20:59:09 PDT 2024


llvm-ci wrote:

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

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

Here is the relevant piece of the build log for the reference:
```
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[       OK ] LlvmLibcStrtoimaxTest.MessyBaseSixteenDecode (9 us)
[ RUN      ] LlvmLibcStrtoimaxTest.AutomaticBaseSelection
[       OK ] LlvmLibcStrtoimaxTest.AutomaticBaseSelection (14 us)
Ran 7 tests.  PASS: 7  FAIL: 0
[897/899] Running unit test libc.test.src.time.nanosleep_test.__unit__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcNanosleep.SmokeTest
[       OK ] LlvmLibcNanosleep.SmokeTest (85 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[898/899] Linking CXX executable projects/libc/test/src/unistd/libc.test.src.unistd.gettid_test.__build__
FAILED: projects/libc/test/src/unistd/libc.test.src.unistd.gettid_test.__build__ 
: && /usr/bin/clang++ -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -g  projects/libc/test/src/unistd/CMakeFiles/libc.test.src.unistd.gettid_test.__build__.dir/gettid_test.cpp.o -o projects/libc/test/src/unistd/libc.test.src.unistd.gettid_test.__build__  projects/libc/src/errno/CMakeFiles/libc.src.errno.errno.__internal__.dir/./libc_errno.cpp.o  projects/libc/src/__support/OSUtil/linux/CMakeFiles/libc.src.__support.OSUtil.linux.linux_util.dir/./exit.cpp.o  projects/libc/src/__support/OSUtil/linux/CMakeFiles/libc.src.__support.OSUtil.linux.linux_util.dir/./fcntl.cpp.o  projects/libc/src/__support/threads/linux/CMakeFiles/libc.src.__support.threads.linux.thread.dir/./thread.cpp.o  projects/libc/src/__support/threads/CMakeFiles/libc.src.__support.threads.thread.dir/./thread.cpp.o  projects/libc/src/unistd/CMakeFiles/libc.src.unistd.gettid.__internal__.dir/./gettid.cpp.o  projects/libc/src/__support/StringUtil/CMakeFiles/libc.src.__support.StringUtil.error_to_string.dir/./error_to_string.cpp.o  lib/libLibcDeathTestExecutors.unit.a  lib/libLibcTest.unit.a && :
/usr/bin/ld: projects/libc/src/__support/threads/linux/CMakeFiles/libc.src.__support.threads.linux.thread.dir/./thread.cpp.o: in function `__llvm_libc_18_0_0_git::thread_exit(__llvm_libc_18_0_0_git::ThreadReturnValue, __llvm_libc_18_0_0_git::ThreadStyle)':
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/threads/linux/thread.cpp:(.text+0xc6): undefined reference to `__llvm_libc_18_0_0_git::cleanup_tls(unsigned long, unsigned long)'
/usr/bin/ld: projects/libc/src/__support/threads/linux/CMakeFiles/libc.src.__support.threads.linux.thread.dir/./thread.cpp.o: in function `__llvm_libc_18_0_0_git::add_no_overflow(unsigned long, unsigned long)':
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/threads/linux/thread.cpp:69: undefined reference to `__llvm_libc_18_0_0_git::init_tls(__llvm_libc_18_0_0_git::TLSDescriptor&)'
/usr/bin/ld: projects/libc/src/__support/threads/linux/CMakeFiles/libc.src.__support.threads.linux.thread.dir/./thread.cpp.o: in function `__llvm_libc_18_0_0_git::Thread::run(__llvm_libc_18_0_0_git::ThreadStyle, __llvm_libc_18_0_0_git::ThreadRunner, void*, void*, unsigned long, unsigned long, bool)':
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/threads/linux/thread.cpp:237: undefined reference to `__llvm_libc_18_0_0_git::cleanup_tls(unsigned long, unsigned long)'
/usr/bin/ld: /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/threads/linux/thread.cpp:312: undefined reference to `__llvm_libc_18_0_0_git::cleanup_tls(unsigned long, unsigned long)'
/usr/bin/ld: projects/libc/src/__support/threads/linux/CMakeFiles/libc.src.__support.threads.linux.thread.dir/./thread.cpp.o: in function `__llvm_libc_18_0_0_git::cpp::optional<__llvm_libc_18_0_0_git::internal::AbsTimeout>::operator bool() const':
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/CPP/optional.h:(.text+0x40c): undefined reference to `__llvm_libc_18_0_0_git::cleanup_tls(unsigned long, unsigned long)'
/usr/bin/ld: projects/libc/src/__support/threads/linux/CMakeFiles/libc.src.__support.threads.linux.thread.dir/./thread.cpp.o: in function `OptionalStorage':
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/CPP/optional.h:64: undefined reference to `__llvm_libc_18_0_0_git::cleanup_tls(unsigned long, unsigned long)'
/usr/bin/ld: projects/libc/test/src/unistd/libc.test.src.unistd.gettid_test.__build__: hidden symbol `_ZN22__llvm_libc_18_0_0_git11cleanup_tlsEmm' isn't defined
/usr/bin/ld: final link failed: bad value
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.
['ninja', 'libc-unit-tests'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 164, in step
    yield
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 132, in main
    run_command(['ninja', 'libc-unit-tests'])
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 179, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.10/subprocess.py", line 369, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc-unit-tests']' returned non-zero exit status 1.
@@@STEP_FAILURE@@@
@@@BUILD_STEP libc-api-test@@@
Running: ninja libc-api-test
Step 8 (libc-unit-tests) failure: libc-unit-tests (failure)
...
[       OK ] LlvmLibcStrtoimaxTest.MessyBaseSixteenDecode (9 us)
[ RUN      ] LlvmLibcStrtoimaxTest.AutomaticBaseSelection
[       OK ] LlvmLibcStrtoimaxTest.AutomaticBaseSelection (14 us)
Ran 7 tests.  PASS: 7  FAIL: 0
[897/899] Running unit test libc.test.src.time.nanosleep_test.__unit__
[==========] Running 1 test from 1 test suite.
[ RUN      ] LlvmLibcNanosleep.SmokeTest
[       OK ] LlvmLibcNanosleep.SmokeTest (85 us)
Ran 1 tests.  PASS: 1  FAIL: 0
[898/899] Linking CXX executable projects/libc/test/src/unistd/libc.test.src.unistd.gettid_test.__build__
FAILED: projects/libc/test/src/unistd/libc.test.src.unistd.gettid_test.__build__ 
: && /usr/bin/clang++ -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -g  projects/libc/test/src/unistd/CMakeFiles/libc.test.src.unistd.gettid_test.__build__.dir/gettid_test.cpp.o -o projects/libc/test/src/unistd/libc.test.src.unistd.gettid_test.__build__  projects/libc/src/errno/CMakeFiles/libc.src.errno.errno.__internal__.dir/./libc_errno.cpp.o  projects/libc/src/__support/OSUtil/linux/CMakeFiles/libc.src.__support.OSUtil.linux.linux_util.dir/./exit.cpp.o  projects/libc/src/__support/OSUtil/linux/CMakeFiles/libc.src.__support.OSUtil.linux.linux_util.dir/./fcntl.cpp.o  projects/libc/src/__support/threads/linux/CMakeFiles/libc.src.__support.threads.linux.thread.dir/./thread.cpp.o  projects/libc/src/__support/threads/CMakeFiles/libc.src.__support.threads.thread.dir/./thread.cpp.o  projects/libc/src/unistd/CMakeFiles/libc.src.unistd.gettid.__internal__.dir/./gettid.cpp.o  projects/libc/src/__support/StringUtil/CMakeFiles/libc.src.__support.StringUtil.error_to_string.dir/./error_to_string.cpp.o  lib/libLibcDeathTestExecutors.unit.a  lib/libLibcTest.unit.a && :
/usr/bin/ld: projects/libc/src/__support/threads/linux/CMakeFiles/libc.src.__support.threads.linux.thread.dir/./thread.cpp.o: in function `__llvm_libc_18_0_0_git::thread_exit(__llvm_libc_18_0_0_git::ThreadReturnValue, __llvm_libc_18_0_0_git::ThreadStyle)':
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/threads/linux/thread.cpp:(.text+0xc6): undefined reference to `__llvm_libc_18_0_0_git::cleanup_tls(unsigned long, unsigned long)'
/usr/bin/ld: projects/libc/src/__support/threads/linux/CMakeFiles/libc.src.__support.threads.linux.thread.dir/./thread.cpp.o: in function `__llvm_libc_18_0_0_git::add_no_overflow(unsigned long, unsigned long)':
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/threads/linux/thread.cpp:69: undefined reference to `__llvm_libc_18_0_0_git::init_tls(__llvm_libc_18_0_0_git::TLSDescriptor&)'
/usr/bin/ld: projects/libc/src/__support/threads/linux/CMakeFiles/libc.src.__support.threads.linux.thread.dir/./thread.cpp.o: in function `__llvm_libc_18_0_0_git::Thread::run(__llvm_libc_18_0_0_git::ThreadStyle, __llvm_libc_18_0_0_git::ThreadRunner, void*, void*, unsigned long, unsigned long, bool)':
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/threads/linux/thread.cpp:237: undefined reference to `__llvm_libc_18_0_0_git::cleanup_tls(unsigned long, unsigned long)'
/usr/bin/ld: /home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/threads/linux/thread.cpp:312: undefined reference to `__llvm_libc_18_0_0_git::cleanup_tls(unsigned long, unsigned long)'
/usr/bin/ld: projects/libc/src/__support/threads/linux/CMakeFiles/libc.src.__support.threads.linux.thread.dir/./thread.cpp.o: in function `__llvm_libc_18_0_0_git::cpp::optional<__llvm_libc_18_0_0_git::internal::AbsTimeout>::operator bool() const':
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/CPP/optional.h:(.text+0x40c): undefined reference to `__llvm_libc_18_0_0_git::cleanup_tls(unsigned long, unsigned long)'
/usr/bin/ld: projects/libc/src/__support/threads/linux/CMakeFiles/libc.src.__support.threads.linux.thread.dir/./thread.cpp.o: in function `OptionalStorage':
/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-project/libc/src/__support/CPP/optional.h:64: undefined reference to `__llvm_libc_18_0_0_git::cleanup_tls(unsigned long, unsigned long)'
/usr/bin/ld: projects/libc/test/src/unistd/libc.test.src.unistd.gettid_test.__build__: hidden symbol `_ZN22__llvm_libc_18_0_0_git11cleanup_tlsEmm' isn't defined
/usr/bin/ld: final link failed: bad value
clang: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.
['ninja', 'libc-unit-tests'] exited with return code 1.
The build step threw an exception...
Traceback (most recent call last):
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 164, in step
    yield
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 132, in main
    run_command(['ninja', 'libc-unit-tests'])
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/build/../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py", line 179, in run_command
    util.report_run_cmd(cmd, cwd=directory)
  File "/home/libc_worker/libc-riscv64-debian/libc-riscv64-debian-fullbuild-dbg/llvm-zorg/zorg/buildbot/builders/annotated/util.py", line 49, in report_run_cmd
    subprocess.check_call(cmd, shell=shell, *args, **kwargs)
  File "/usr/lib/python3.10/subprocess.py", line 369, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['ninja', 'libc-unit-tests']' returned non-zero exit status 1.

```

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


More information about the libc-commits mailing list