ami-iit / bipedal-locomotion-framework

Suite of libraries for achieving bipedal locomotion on humanoid robots

Home Page:https://ami-iit.github.io/bipedal-locomotion-framework/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

AdvanceableRunnerUnitTests fail when using ThreadSanitizer

traversaro opened this issue · comments

For another case I learned how to easily enable GCC's ThreadSanitizer. In a nutshell, you just to run the following in a clean build directory (CMake uses CXXFLAGS and CFLAGS only during the first configuration):

git clone https://github.com/ami-iit/bipedal-locomotion-framework
cd bipedal-locomotion-framework
mkdir build
# Do this once when you do the first configuration
export CFLAGS="$CFLAGS -fsanitize=thread"
export CXXFLAGS="$CXXFLAGS -fsanitize=thread"
cmake -DBUILD_TESTING:BOOL ..

running the test suite with the ThreadSanitizer enabled, the following tests fail:

         19 - AdvanceableRunnerUnitTests (Failed)
         21 - TimeVaryingDCMPlannerUnitTests (Failed)
         40 - ArucoDetectorTestUnitTests (Failed)
         51 - PythonBindingsUnitTest (Failed)

TimeVaryingDCMPlannerUnitTests, ArucoDetectorTestUnitTests and PythonBindingsUnitTest fail for problem that are not related to blf, while the failure in AdvanceableRunnerUnitTests seems to be valid errors (but I would need to check more in depth).

AdvanceableRunnerUnitTests

(blfdev) traversaro@IITICUBLAP257:~/bipedal-locomotion-framework/buildtsan$ ./bin/AdvanceableRunnerUnitTests
[2023-03-02 14:35:59.663] [thread: 43124] [blf] [info] DummyBlock i = 0
[2023-03-02 14:35:59.666] [thread: 43124] [blf] [info] DummyBlock i = 1
[2023-03-02 14:35:59.666] [thread: 43124] [blf] [info] DummyBlock i = 2
[2023-03-02 14:35:59.666] [thread: 43124] [blf] [info] DummyBlock i = 3
[2023-03-02 14:35:59.666] [thread: 43124] [blf] [info] DummyBlock i = 4
[2023-03-02 14:35:59.666] [thread: 43124] [blf] [info] DummyBlock i = 5
==================
WARNING: ThreadSanitizer: data race (pid=43122)
  Write of size 1 at 0x7f15f5ed9038 by thread T2:
    #0 BipedalLocomotion::clock() <null> (libBipedalLocomotionFrameworkSystem.so.0.11.200+0x34cc1)
    #1 BipedalLocomotion::System::AdvanceableRunner<DummyBlock>::run(std::optional<std::reference_wrapper<BipedalLocomotion::System::Barrier> >)::{lambda()#1}::operator()() const <null> (AdvanceableRunnerUnitTests+0x26ed5)
    #2 std::thread::_State_impl<std::thread::_Invoker<std::tuple<BipedalLocomotion::System::AdvanceableRunner<DummyBlock>::run(std::optional<std::reference_wrapper<BipedalLocomotion::System::Barrier> >)::{lambda()#1}> > >::_M_run() <null> (AdvanceableRunnerUnitTests+0x2893c)
    #3 execute_native_thread_routine ../../../../../libstdc++-v3/src/c++11/thread.cc:82 (libstdc++.so.6+0xcda92)

  Previous write of size 1 at 0x7f15f5ed9038 by thread T1:
    #0 BipedalLocomotion::clock() <null> (libBipedalLocomotionFrameworkSystem.so.0.11.200+0x34cc1)
    #1 BipedalLocomotion::System::AdvanceableRunner<DummyBlock>::run(std::optional<std::reference_wrapper<BipedalLocomotion::System::Barrier> >)::{lambda()#1}::operator()() const <null> (AdvanceableRunnerUnitTests+0x271a3)
    #2 std::thread::_State_impl<std::thread::_Invoker<std::tuple<BipedalLocomotion::System::AdvanceableRunner<DummyBlock>::run(std::optional<std::reference_wrapper<BipedalLocomotion::System::Barrier> >)::{lambda()#1}> > >::_M_run() <null> (AdvanceableRunnerUnitTests+0x2893c)
    #3 execute_native_thread_routine ../../../../../libstdc++-v3/src/c++11/thread.cc:82 (libstdc++.so.6+0xcda92)

  Location is global 'BipedalLocomotion::System::ClockBuilder::m_clockAlreadyCalledOnce' of size 1 at 0x7f15f5ed9038 (libBipedalLocomotionFrameworkSystem.so.0.11.200+0x000000040038)

  Thread T2 (tid=43125, running) created by main thread at:
    #0 pthread_create ../../../../libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x33eaa)
    #1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /home/conda/feedstock_root/build_artifacts/gcc_compilers_1666516830325/work/build/x86_64-conda-linux-gnu/libstdc++-v3/include/x86_64-conda-linux-gnu/bits/gthr-default.h:663 (libstdc++.so.6+0xcd9f1)
    #2 C_A_T_C_H_T_E_S_T_0() <null> (AdvanceableRunnerUnitTests+0x2cc8a)
    #3 Catch::TestCase::invoke() const <null> (libCatchTestMain.so+0x65549)
    #4 Catch::RunContext::invokeActiveTestCase() <null> (libCatchTestMain.so+0x655c5)
    #5 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) <null> (libCatchTestMain.so+0x96bf9)
    #6 Catch::RunContext::runTest(Catch::TestCase const&) <null> (libCatchTestMain.so+0xc4564)
    #7 Catch::Session::runInternal() <null> (libCatchTestMain.so+0xdcf89)
    #8 Catch::Session::run() <null> (libCatchTestMain.so+0xdd8b5)
    #9 main <null> (libCatchTestMain.so+0x43c61)

  Thread T1 (tid=43124, running) created by main thread at:
    #0 pthread_create ../../../../libsanitizer/tsan/tsan_interceptors_posix.cpp:969 (libtsan.so.0+0x33eaa)
    #1 std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /home/conda/feedstock_root/build_artifacts/gcc_compilers_1666516830325/work/build/x86_64-conda-linux-gnu/libstdc++-v3/include/x86_64-conda-linux-gnu/bits/gthr-default.h:663 (libstdc++.so.6+0xcd9f1)
    #2 C_A_T_C_H_T_E_S_T_0() <null> (AdvanceableRunnerUnitTests+0x2cc64)
    #3 Catch::TestCase::invoke() const <null> (libCatchTestMain.so+0x65549)
    #4 Catch::RunContext::invokeActiveTestCase() <null> (libCatchTestMain.so+0x655c5)
    #5 Catch::RunContext::runCurrentTest(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&) <null> (libCatchTestMain.so+0x96bf9)
    #6 Catch::RunContext::runTest(Catch::TestCase const&) <null> (libCatchTestMain.so+0xc4564)
    #7 Catch::Session::runInternal() <null> (libCatchTestMain.so+0xdcf89)
    #8 Catch::Session::run() <null> (libCatchTestMain.so+0xdd8b5)
    #9 main <null> (libCatchTestMain.so+0x43c61)

SUMMARY: ThreadSanitizer: data race (/home/traversaro/bipedal-locomotion-framework/buildtsan/lib/libBipedalLocomotionFrameworkSystem.so.0.11.200+0x34cc1) in BipedalLocomotion::clock()
==================
[2023-03-02 14:35:59.964] [thread: 43124] [blf] [info] DummyBlock i = 6
[2023-03-02 14:35:59.964] [thread: 43124] [blf] [info] DummyBlock i = 7
[2023-03-02 14:35:59.964] [thread: 43124] [blf] [info] DummyBlock i = 8
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 9
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 10
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 11
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 12
[2023-03-02 14:35:59.965] [thread: 43125] [blf] [info] DummyBlock i = 0
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 13
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 14
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 15
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 16
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 17
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 18
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 19
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 20
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 21
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 22
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 23
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 24
[2023-03-02 14:35:59.965] [thread: 43124] [blf] [info] DummyBlock i = 25
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 26
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 27
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 28
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 29
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 30
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 31
[2023-03-02 14:35:59.966] [thread: 43125] [blf] [info] DummyBlock i = 1
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 32
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 33
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 34
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 35
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 36
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 37
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 38
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 39
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 40
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 41
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 42
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 43
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 44
[2023-03-02 14:35:59.966] [thread: 43124] [blf] [info] DummyBlock i = 45
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 46
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 47
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 48
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 49
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 50
[2023-03-02 14:35:59.967] [thread: 43125] [blf] [info] DummyBlock i = 2
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 51
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 52
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 53
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 54
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 55
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 56
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 57
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 58
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 59
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 60
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 61
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 62
[2023-03-02 14:35:59.967] [thread: 43124] [blf] [info] DummyBlock i = 63
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 64
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 65
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 66
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 67
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 68
[2023-03-02 14:35:59.968] [thread: 43125] [blf] [info] DummyBlock i = 3
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 69
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 70
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 71
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 72
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 73
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 74
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 75
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 76
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 77
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 78
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 79
[2023-03-02 14:35:59.968] [thread: 43124] [blf] [info] DummyBlock i = 80
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 81
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 82
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 83
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 84
[2023-03-02 14:35:59.969] [thread: 43125] [blf] [info] DummyBlock i = 4
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 85
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 86
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 87
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 88
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 89
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 90
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 91
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 92
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 93
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 94
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 95
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 96
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 97
[2023-03-02 14:35:59.969] [thread: 43124] [blf] [info] DummyBlock i = 98
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 99
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 100
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 101
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 102
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 103
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 104
[2023-03-02 14:35:59.970] [thread: 43125] [blf] [info] DummyBlock i = 5
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 105
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 106
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 107
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 108
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 109
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 110
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 111
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 112
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 113
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 114
[2023-03-02 14:35:59.970] [thread: 43124] [blf] [info] DummyBlock i = 115
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 116
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 117
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 118
[2023-03-02 14:35:59.971] [thread: 43125] [blf] [info] DummyBlock i = 6
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 119
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 120
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 121
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 122
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 123
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 124
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 125
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 126
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 127
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 128
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 129
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 130
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 131
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 132
[2023-03-02 14:35:59.971] [thread: 43124] [blf] [info] DummyBlock i = 133
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 134
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 135
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 136
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 137
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 138
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 139
[2023-03-02 14:35:59.972] [thread: 43125] [blf] [info] DummyBlock i = 7
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 140
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 141
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 142
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 143
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 144
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 145
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 146
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 147
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 148
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 149
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 150
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 151
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 152
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 153
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 154
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 155
[2023-03-02 14:35:59.972] [thread: 43124] [blf] [info] DummyBlock i = 156
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 157
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 158
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 159
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 160
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 161
[2023-03-02 14:35:59.973] [thread: 43125] [blf] [info] DummyBlock i = 8
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 162
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 163
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 164
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 165
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 166
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 167
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 168
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 169
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 170
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 171
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 172
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 173
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 174
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 175
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 176
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 177
[2023-03-02 14:35:59.973] [thread: 43124] [blf] [info] DummyBlock i = 178
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 179
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 180
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 181
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 182
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 183
[2023-03-02 14:35:59.974] [thread: 43125] [blf] [info] DummyBlock i = 9
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 184
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 185
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 186
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 187
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 188
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 189
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 190
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 191
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 192
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 193
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 194
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 195
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 196
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 197
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 198
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] DummyBlock i = 199
[2023-03-02 14:35:59.974] [thread: 43124] [blf] [info] [AdvanceableRunner::run] - Runner: Closing the AdvanceableRunner.
[2023-03-02 14:35:59.974] [thread: 43122] [blf] [info] Runner0 : Number of deadline miss 199
[2023-03-02 14:35:59.975] [thread: 43122] [blf] [info] Runner1 : Number of deadline miss 0
[2023-03-02 14:35:59.975] [thread: 43124] [blf] [info] [AdvanceableRunner::run] - Runner: Number of deadline miss 199.
[2023-03-02 14:35:59.975] [thread: 43125] [blf] [info] [AdvanceableRunner::run] - Runner: Closing the AdvanceableRunner.
[2023-03-02 14:35:59.975] [thread: 43125] [blf] [info] [AdvanceableRunner::run] - Runner: Number of deadline miss 0.
[2023-03-02 14:35:59.976] [thread: 43126] [blf] [info] DummyBlock i = 0
[2023-03-02 14:35:59.977] [thread: 43127] [blf] [info] DummyBlock i = 0
[2023-03-02 14:35:59.977] [thread: 43126] [blf] [info] DummyBlock i = 1
[2023-03-02 14:35:59.978] [thread: 43127] [blf] [info] DummyBlock i = 1
[2023-03-02 14:35:59.978] [thread: 43126] [blf] [info] DummyBlock i = 2
[2023-03-02 14:35:59.979] [thread: 43127] [blf] [info] DummyBlock i = 2
[2023-03-02 14:35:59.979] [thread: 43126] [blf] [info] DummyBlock i = 3
[2023-03-02 14:35:59.980] [thread: 43127] [blf] [info] DummyBlock i = 3
[2023-03-02 14:35:59.980] [thread: 43126] [blf] [info] DummyBlock i = 4
[2023-03-02 14:35:59.981] [thread: 43127] [blf] [info] DummyBlock i = 4
[2023-03-02 14:35:59.981] [thread: 43126] [blf] [info] DummyBlock i = 5
[2023-03-02 14:35:59.982] [thread: 43127] [blf] [info] DummyBlock i = 5
[2023-03-02 14:35:59.982] [thread: 43126] [blf] [info] DummyBlock i = 6
[2023-03-02 14:35:59.983] [thread: 43127] [blf] [info] DummyBlock i = 6
[2023-03-02 14:35:59.983] [thread: 43126] [blf] [info] DummyBlock i = 7
[2023-03-02 14:35:59.984] [thread: 43127] [blf] [info] DummyBlock i = 7
[2023-03-02 14:35:59.984] [thread: 43126] [blf] [info] DummyBlock i = 8
[2023-03-02 14:35:59.985] [thread: 43127] [blf] [info] DummyBlock i = 8
[2023-03-02 14:35:59.985] [thread: 43126] [blf] [info] DummyBlock i = 9
[2023-03-02 14:35:59.986] [thread: 43127] [blf] [info] DummyBlock i = 9
[2023-03-02 14:35:59.986] [thread: 43126] [blf] [info] DummyBlock i = 10
[2023-03-02 14:35:59.987] [thread: 43127] [blf] [info] DummyBlock i = 10
[2023-03-02 14:35:59.987] [thread: 43122] [blf] [info] Runner0 : Number of deadline miss 0
[2023-03-02 14:35:59.987] [thread: 43122] [blf] [info] Runner1 : Number of deadline miss 0
[2023-03-02 14:35:59.987] [thread: 43126] [blf] [info] [AdvanceableRunner::run] - Runner: Closing the AdvanceableRunner.
[2023-03-02 14:35:59.987] [thread: 43126] [blf] [info] [AdvanceableRunner::run] - Runner: Number of deadline miss 0.
[2023-03-02 14:35:59.988] [thread: 43127] [blf] [info] [AdvanceableRunner::run] - Runner: Closing the AdvanceableRunner.
[2023-03-02 14:35:59.988] [thread: 43127] [blf] [info] [AdvanceableRunner::run] - Runner: Number of deadline miss 0.
===============================================================================
All tests passed (20 assertions in 1 test case)

ThreadSanitizer: reported 1 warnings

Duplicate of #617 .