Running with gitlab-ci-multi-runner 9.2.0 (adfc387) on rfhete607 (d0f8d5ee) Using Docker executor with image flofritz/ci-benchmark-hpx-embb ... Using docker image sha256:61dea5e03224bc70e92a1879e7f7babe869e447447c9f8a4574444a76804c4d5 for predefined container... Pulling docker image flofritz/ci-benchmark-hpx-embb ... Using docker image flofritz/ci-benchmark-hpx-embb ID=sha256:273cacc90321cf472a5de52f5c8aa7fdb83bd8ad80d75651eb63942e86de9dd2 for build container... Running on runner-d0f8d5ee-project-419-concurrent-0 via 869407bddacd... Fetching changes... Removing cmake-build-release/ Removing release/ HEAD is now at d16ad3e Add basic exponential backoff to our code. Checking out d16ad3eb as lock_free_task_stack... Skipping Git submodules setup Downloading artifacts for build_cmake (2892)... Downloading artifacts from coordinator... ok  id=2892 responseStatus=200 OK token=hpn9QjjD $ ./ci_scripts/run_thread_sanitizer.sh -- The C compiler identification is GNU 7.3.0 -- The CXX compiler identification is GNU 7.3.0 -- Check for working C compiler: /usr/bin/cc -- Check for working C compiler: /usr/bin/cc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Detecting C compile features -- Detecting C compile features - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Using Build Type: RELEASE -- Looking for pthread.h -- Looking for pthread.h - found -- Looking for pthread_create -- Looking for pthread_create - not found -- Check if compiler accepts -pthread -- Check if compiler accepts -pthread - yes -- Found Threads: TRUE -- Thread Sanitizer: ON -- Address Sanitizer: OFF -- Easy Profiler: OFF -- Debug Symbols: OFF -- Configuring done -- Generating done -- Build files have been written to: /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/cmake-build-release-thread-sanitizer Scanning dependencies of target pls [ 3%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/pls.cpp.o [ 6%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/base/tas_spin_lock.cpp.o [ 10%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/base/ttas_spin_lock.cpp.o [ 13%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/base/swmr_spin_lock.cpp.o [ 16%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/base/thread.cpp.o [ 20%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/base/barrier.cpp.o [ 23%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/base/alignment.cpp.o [ 26%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/data_structures/aligned_stack.cpp.o [ 30%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/data_structures/deque.cpp.o [ 33%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/scheduling/root_task.cpp.o [ 36%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/scheduling/thread_state.cpp.o [ 40%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/scheduling/abstract_task.cpp.o [ 43%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/scheduling/scheduler.cpp.o [ 46%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/scheduling/run_on_n_threads_task.cpp.o [ 50%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/scheduling/fork_join_task.cpp.o [ 53%] Building CXX object lib/pls/CMakeFiles/pls.dir/src/internal/scheduling/scheduler_memory.cpp.o [ 56%] Linking CXX static library ../libpls.a [ 56%] Built target pls Scanning dependencies of target playground [ 60%] Building CXX object app/playground/CMakeFiles/playground.dir/main.cpp.o [ 63%] Linking CXX executable ../../bin/playground [ 63%] Built target playground Scanning dependencies of target test_for_new [ 66%] Building CXX object app/test_for_new/CMakeFiles/test_for_new.dir/main.cpp.o [ 70%] Linking CXX executable ../../bin/test_for_new [ 70%] Built target test_for_new Scanning dependencies of target invoke_parallel [ 73%] Building CXX object app/invoke_parallel/CMakeFiles/invoke_parallel.dir/main.cpp.o [ 76%] Linking CXX executable ../../bin/invoke_parallel [ 76%] Built target invoke_parallel Scanning dependencies of target benchmark_fft [ 80%] Building CXX object app/benchmark_fft/CMakeFiles/benchmark_fft.dir/main.cpp.o [ 83%] Linking CXX executable ../../bin/benchmark_fft [ 83%] Built target benchmark_fft Scanning dependencies of target tests [ 86%] Building CXX object test/CMakeFiles/tests.dir/main.cpp.o [ 90%] Building CXX object test/CMakeFiles/tests.dir/base_tests.cpp.o [ 93%] Building CXX object test/CMakeFiles/tests.dir/scheduling_tests.cpp.o [ 96%] Building CXX object test/CMakeFiles/tests.dir/data_structures_test.cpp.o [100%] Linking CXX executable ../bin/tests [100%] Built target tests ================== WARNING: ThreadSanitizer: data race (pid=437) Write of size 8 at 0x7ffeabc5d748 by thread T5: #0 pls::internal::base::backoff::reset() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/backoff.h:42 (tests+0xb5575) #1 pls::internal::base::ttas_spin_lock::lock() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/src/internal/base/ttas_spin_lock.cpp:12 (tests+0xb5575) #2 operator() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/test/base_tests.cpp:54 (tests+0xa8507) #3 start_pthread_internal /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/thread_impl.h:41 (tests+0xa8507) #4 (libtsan.so.0+0x296bd) Previous write of size 8 at 0x7ffeabc5d748 by thread T4: #0 pls::internal::base::backoff::reset() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/backoff.h:42 (tests+0xb5575) #1 pls::internal::base::ttas_spin_lock::lock() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/src/internal/base/ttas_spin_lock.cpp:12 (tests+0xb5575) #2 operator() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/test/base_tests.cpp:47 (tests+0xa8447) #3 start_pthread_internal /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/thread_impl.h:41 (tests+0xa8447) #4 (libtsan.so.0+0x296bd) Location is stack of main thread. Location is global '' at 0x000000000000 ([stack]+0x00000001c748) Thread T5 (tid=443, running) created by main thread at: #0 pthread_create (libtsan.so.0+0x2bcfe) #1 thread /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/thread_impl.h:66 (tests+0xa98c2) #2 start_thread<____C_A_T_C_H____T_E_S_T____4():: > /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/thread_impl.h:82 (tests+0xa98c2) #3 ____C_A_T_C_H____T_E_S_T____4 /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/test/base_tests.cpp:58 (tests+0xa98c2) #4 Catch::TestInvokerAsFunction::invoke() const /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11841 (tests+0x1d2ec) #5 Catch::TestCase::invoke() const /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11742 (tests+0x1d2ec) #6 Catch::RunContext::invokeActiveTestCase() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10601 (tests+0x1d2ec) #7 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string, std::allocator >&, std::__cxx11::basic_string, std::allocator >&) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10574 (tests+0x37cb7) #8 Catch::RunContext::runTest(Catch::TestCase const&) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10344 (tests+0x5062c) #9 runTests /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10903 (tests+0x5130a) #10 Catch::Session::runInternal() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11098 (tests+0x5796e) #11 Catch::Session::run() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11055 (tests+0x57a33) #12 int Catch::Session::run(int, char const* const*) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10801 (tests+0x11274) #13 main /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:14554 (tests+0x11274) Thread T4 (tid=442, running) created by main thread at: #0 pthread_create (libtsan.so.0+0x2bcfe) #1 thread /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/thread_impl.h:66 (tests+0xa980c) #2 start_thread<____C_A_T_C_H____T_E_S_T____4():: > /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/thread_impl.h:82 (tests+0xa980c) #3 ____C_A_T_C_H____T_E_S_T____4 /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/test/base_tests.cpp:51 (tests+0xa980c) #4 Catch::TestInvokerAsFunction::invoke() const /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11841 (tests+0x1d2ec) #5 Catch::TestCase::invoke() const /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11742 (tests+0x1d2ec) #6 Catch::RunContext::invokeActiveTestCase() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10601 (tests+0x1d2ec) #7 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string, std::allocator >&, std::__cxx11::basic_string, std::allocator >&) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10574 (tests+0x37cb7) #8 Catch::RunContext::runTest(Catch::TestCase const&) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10344 (tests+0x5062c) #9 runTests /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10903 (tests+0x5130a) #10 Catch::Session::runInternal() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11098 (tests+0x5796e) #11 Catch::Session::run() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11055 (tests+0x57a33) #12 int Catch::Session::run(int, char const* const*) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10801 (tests+0x11274) #13 main /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:14554 (tests+0x11274) SUMMARY: ThreadSanitizer: data race /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/backoff.h:42 in pls::internal::base::backoff::reset() ================== ================== WARNING: ThreadSanitizer: data race (pid=437) Read of size 8 at 0x7ffeabc5d750 by thread T4: #0 std::linear_congruential_engine::operator()() /usr/include/c++/7/bits/random.h:332 (tests+0xb5740) #1 pls::internal::base::backoff::do_backoff() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/backoff.h:33 (tests+0xb5740) #2 pls::internal::base::ttas_spin_lock::lock() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/src/internal/base/ttas_spin_lock.cpp:22 (tests+0xb55f2) #3 operator() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/test/base_tests.cpp:47 (tests+0xa8447) #4 start_pthread_internal /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/thread_impl.h:41 (tests+0xa8447) #5 (libtsan.so.0+0x296bd) Previous write of size 8 at 0x7ffeabc5d750 by thread T5: #0 std::linear_congruential_engine::operator()() /usr/include/c++/7/bits/random.h:332 (tests+0xb5780) #1 pls::internal::base::backoff::do_backoff() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/backoff.h:33 (tests+0xb5780) #2 pls::internal::base::ttas_spin_lock::lock() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/src/internal/base/ttas_spin_lock.cpp:22 (tests+0xb55f2) #3 operator() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/test/base_tests.cpp:54 (tests+0xa8507) #4 start_pthread_internal /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/thread_impl.h:41 (tests+0xa8507) #5 (libtsan.so.0+0x296bd) Location is stack of main thread. Location is global '' at 0x000000000000 ([stack]+0x00000001c750) Thread T4 (tid=442, running) created by main thread at: #0 pthread_create (libtsan.so.0+0x2bcfe) #1 thread /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/thread_impl.h:66 (tests+0xa980c) #2 start_thread<____C_A_T_C_H____T_E_S_T____4():: > /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/thread_impl.h:82 (tests+0xa980c) #3 ____C_A_T_C_H____T_E_S_T____4 /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/test/base_tests.cpp:51 (tests+0xa980c) #4 Catch::TestInvokerAsFunction::invoke() const /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11841 (tests+0x1d2ec) #5 Catch::TestCase::invoke() const /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11742 (tests+0x1d2ec) #6 Catch::RunContext::invokeActiveTestCase() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10601 (tests+0x1d2ec) #7 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string, std::allocator >&, std::__cxx11::basic_string, std::allocator >&) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10574 (tests+0x37cb7) #8 Catch::RunContext::runTest(Catch::TestCase const&) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10344 (tests+0x5062c) #9 runTests /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10903 (tests+0x5130a) #10 Catch::Session::runInternal() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11098 (tests+0x5796e) #11 Catch::Session::run() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11055 (tests+0x57a33) #12 int Catch::Session::run(int, char const* const*) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10801 (tests+0x11274) #13 main /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:14554 (tests+0x11274) Thread T5 (tid=443, running) created by main thread at: #0 pthread_create (libtsan.so.0+0x2bcfe) #1 thread /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/thread_impl.h:66 (tests+0xa98c2) #2 start_thread<____C_A_T_C_H____T_E_S_T____4():: > /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/thread_impl.h:82 (tests+0xa98c2) #3 ____C_A_T_C_H____T_E_S_T____4 /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/test/base_tests.cpp:58 (tests+0xa98c2) #4 Catch::TestInvokerAsFunction::invoke() const /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11841 (tests+0x1d2ec) #5 Catch::TestCase::invoke() const /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11742 (tests+0x1d2ec) #6 Catch::RunContext::invokeActiveTestCase() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10601 (tests+0x1d2ec) #7 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string, std::allocator >&, std::__cxx11::basic_string, std::allocator >&) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10574 (tests+0x37cb7) #8 Catch::RunContext::runTest(Catch::TestCase const&) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10344 (tests+0x5062c) #9 runTests /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10903 (tests+0x5130a) #10 Catch::Session::runInternal() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11098 (tests+0x5796e) #11 Catch::Session::run() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:11055 (tests+0x57a33) #12 int Catch::Session::run(int, char const* const*) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:10801 (tests+0x11274) #13 main /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/extern/catch2/catch.hpp:14554 (tests+0x11274) SUMMARY: ThreadSanitizer: data race /usr/include/c++/7/bits/random.h:332 in std::linear_congruential_engine::operator()() ================== FATAL: ThreadSanitizer CHECK failed: ../../../../src/libsanitizer/tsan/tsan_interface_atomic.cc:259 "((IsStoreOrder(mo))) != (0)" (0x0, 0x0) #0 (libtsan.so.0+0x8386f) #1 __sanitizer::CheckFailed(char const*, int, char const*, unsigned long long, unsigned long long) (libtsan.so.0+0x9f4e9) #2 __tsan_atomic32_store (libtsan.so.0+0x664a6) #3 std::__atomic_base::store(int, std::memory_order) /usr/include/c++/7/bits/atomic_base.h:374 (tests+0xb5900) #4 pls::internal::base::swmr_spin_lock::writer_lock() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/src/internal/base/swmr_spin_lock.cpp:32 (tests+0xb5900) #5 void pls::internal::scheduling::scheduler::execute_task(pls::internal::scheduling::fork_join_task&, int) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/scheduling/scheduler_impl.h:52 (tests+0xad149) #6 operator() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/test/scheduling_tests.cpp:61 (tests+0xab191) #7 execute /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/scheduling/root_task.h:38 (tests+0xab191) #8 pls::internal::scheduling::worker_routine() /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/src/internal/scheduling/scheduler.cpp:41 (tests+0xb60c6) #9 pls::internal::base::thread::start_pthread_internal(void*) /builds/gitlab/las3/development/scheduling/predictable_parallel_patterns/lib/pls/include/pls/internal/base/thread_impl.h:41 (tests+0xb68cf) #10 (libtsan.so.0+0x296bd) #11 start_thread (libpthread.so.0+0x76da) #12 __clone (libc.so.6+0x12188e) ERROR: Job failed: exit code 1