celix icon indicating copy to clipboard operation
celix copied to clipboard

RSA Topology manager thread sanitizer output

Open Oipo opened this issue 5 years ago • 0 comments

==================
WARNING: ThreadSanitizer: data race (pid=35506)
  Write of size 4 at 0x7b6800000000 by thread T8:
    #0 mg_stop /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7685 (librsa_dfi.so.0+0x2c020)
    #1 remoteServiceAdmin_stop /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_dfi.c:326 (librsa_dfi.so.0+0xcbe3)
    #2 bundleActivator_stop /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_activator.c:101 (librsa_dfi.so.0+0xfd70)
    #3 fw_stopBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:1055 (libcelix_framework.so.2+0x28401)
    #4 framework_shutdown /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:1812 (libcelix_framework.so.2+0x2af94)
    #5 <null> <null> (libtsan.so.0+0x2b3c6)

  Previous read of size 4 at 0x7b6800000000 by thread T2:
    #0 master_thread_run /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7539 (librsa_dfi.so.0+0x2baf1)
    #1 master_thread /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7608 (librsa_dfi.so.0+0x2bcaa)
    #2 <null> <null> (libtsan.so.0+0x2b3c6)

  Location is heap block of size 1472 at 0x7b6800000000 allocated by main thread:
    #0 calloc <null> (libtsan.so.0+0x2cdbd)
    #1 mg_calloc /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:504 (librsa_dfi.so.0+0x130b6)
    #2 mg_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7751 (librsa_dfi.so.0+0x2c16d)
    #3 remoteServiceAdmin_create /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_dfi.c:238 (librsa_dfi.so.0+0xc44a)
    #4 bundleActivator_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_activator.c:59 (librsa_dfi.so.0+0xfa7f)
    #5 fw_startBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:884 (libcelix_framework.so.2+0x27815)
    #6 bundle_startWithOptions /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:267 (libcelix_framework.so.2+0x18373)
    #7 framework_autoStartConfiguredBundlesForList /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:603 (libcelix_framework.so.2+0x26467)
    #8 framework_autoStartConfiguredBundles /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:570 (libcelix_framework.so.2+0x2624d)
    #9 framework_start /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:549 (libcelix_framework.so.2+0x25f58)
    #10 celixLauncher_launchWithProperties /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:172 (libcelix_framework.so.2+0x47e55)
    #11 celixLauncher_launchWithConfigAndProps /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:157 (libcelix_framework.so.2+0x47dd3)
    #12 celixLauncher_launch /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:141 (libcelix_framework.so.2+0x47d22)
    #13 setupFm /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:91 (test_tm_scoped+0x1e71b)
    #14 TEST_GROUP_CppUTestGrouptopology_manager_scoped_export::setup() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:670 (test_tm_scoped+0x2a0f5)
    #15 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #16 __libc_start_main <null> (libc.so.6+0x271e2)

  Thread T8 (tid=35515, running) created by main thread at:
    #0 pthread_create <null> (libtsan.so.0+0x2dc82)
    #1 celixThread_create /home/oipo-unencrypted/Programming/celix/libs/utils/src/celix_threads.c:37 (libcelix_utils.so.2+0xff3d)
    #2 frameworkActivator_stop /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:2097 (libcelix_framework.so.2+0x2c302)
    #3 fw_stopBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:1055 (libcelix_framework.so.2+0x28401)
    #4 framework_stop /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:611 (libcelix_framework.so.2+0x26512)
    #5 bundle_stopWithOptions /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:307 (libcelix_framework.so.2+0x18608)
    #6 bundle_stop /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:297 (libcelix_framework.so.2+0x18557)
    #7 celixLauncher_stop /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:192 (libcelix_framework.so.2+0x47f3c)
    #8 teardownFm /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:156 (test_tm_scoped+0x20d59)
    #9 TEST_GROUP_CppUTestGrouptopology_manager_scoped_export::teardown() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:674 (test_tm_scoped+0x2a13d)
    #10 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #11 __libc_start_main <null> (libc.so.6+0x271e2)

  Thread T2 'civetweb-master' (tid=35509, running) created by main thread at:
    #0 pthread_create <null> (libtsan.so.0+0x2dc82)
    #1 mg_start_thread_with_id /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:2319 (librsa_dfi.so.0+0x17762)
    #2 mg_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7883 (librsa_dfi.so.0+0x2c966)
    #3 remoteServiceAdmin_create /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_dfi.c:238 (librsa_dfi.so.0+0xc44a)
    #4 bundleActivator_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_activator.c:59 (librsa_dfi.so.0+0xfa7f)
    #5 fw_startBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:884 (libcelix_framework.so.2+0x27815)
    #6 bundle_startWithOptions /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:267 (libcelix_framework.so.2+0x18373)
    #7 framework_autoStartConfiguredBundlesForList /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:603 (libcelix_framework.so.2+0x26467)
    #8 framework_autoStartConfiguredBundles /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:570 (libcelix_framework.so.2+0x2624d)
    #9 framework_start /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:549 (libcelix_framework.so.2+0x25f58)
    #10 celixLauncher_launchWithProperties /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:172 (libcelix_framework.so.2+0x47e55)
    #11 celixLauncher_launchWithConfigAndProps /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:157 (libcelix_framework.so.2+0x47dd3)
    #12 celixLauncher_launch /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:141 (libcelix_framework.so.2+0x47d22)
    #13 setupFm /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:91 (test_tm_scoped+0x1e71b)
    #14 TEST_GROUP_CppUTestGrouptopology_manager_scoped_export::setup() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:670 (test_tm_scoped+0x2a0f5)
    #15 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #16 __libc_start_main <null> (libc.so.6+0x271e2)

SUMMARY: ThreadSanitizer: data race /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7685 in mg_stop
==================
==================
WARNING: ThreadSanitizer: data race (pid=35506)
  Read of size 8 at 0x7b0c00000e30 by thread T2:
    #0 master_thread_run /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7577 (librsa_dfi.so.0+0x2bbea)
    #1 master_thread /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7608 (librsa_dfi.so.0+0x2bcaa)
    #2 <null> <null> (libtsan.so.0+0x2b3c6)

  Previous write of size 8 at 0x7b0c00000e30 by main thread:
    #0 mg_start_thread_with_id /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:2322 (librsa_dfi.so.0+0x1779a)
    #1 mg_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7890 (librsa_dfi.so.0+0x2ca0e)
    #2 remoteServiceAdmin_create /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_dfi.c:238 (librsa_dfi.so.0+0xc44a)
    #3 bundleActivator_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_activator.c:59 (librsa_dfi.so.0+0xfa7f)
    #4 fw_startBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:884 (libcelix_framework.so.2+0x27815)
    #5 bundle_startWithOptions /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:267 (libcelix_framework.so.2+0x18373)
    #6 framework_autoStartConfiguredBundlesForList /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:603 (libcelix_framework.so.2+0x26467)
    #7 framework_autoStartConfiguredBundles /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:570 (libcelix_framework.so.2+0x2624d)
    #8 framework_start /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:549 (libcelix_framework.so.2+0x25f58)
    #9 celixLauncher_launchWithProperties /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:172 (libcelix_framework.so.2+0x47e55)
    #10 celixLauncher_launchWithConfigAndProps /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:157 (libcelix_framework.so.2+0x47dd3)
    #11 celixLauncher_launch /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:141 (libcelix_framework.so.2+0x47d22)
    #12 setupFm /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:91 (test_tm_scoped+0x1e71b)
    #13 TEST_GROUP_CppUTestGrouptopology_manager_scoped_export::setup() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:670 (test_tm_scoped+0x2a0f5)
    #14 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #15 __libc_start_main <null> (libc.so.6+0x271e2)

  Location is heap block of size 40 at 0x7b0c00000e10 allocated by main thread:
    #0 calloc <null> (libtsan.so.0+0x2cdbd)
    #1 mg_calloc /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:504 (librsa_dfi.so.0+0x130b6)
    #2 mg_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7859 (librsa_dfi.so.0+0x2c847)
    #3 remoteServiceAdmin_create /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_dfi.c:238 (librsa_dfi.so.0+0xc44a)
    #4 bundleActivator_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_activator.c:59 (librsa_dfi.so.0+0xfa7f)
    #5 fw_startBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:884 (libcelix_framework.so.2+0x27815)
    #6 bundle_startWithOptions /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:267 (libcelix_framework.so.2+0x18373)
    #7 framework_autoStartConfiguredBundlesForList /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:603 (libcelix_framework.so.2+0x26467)
    #8 framework_autoStartConfiguredBundles /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:570 (libcelix_framework.so.2+0x2624d)
    #9 framework_start /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:549 (libcelix_framework.so.2+0x25f58)
    #10 celixLauncher_launchWithProperties /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:172 (libcelix_framework.so.2+0x47e55)
    #11 celixLauncher_launchWithConfigAndProps /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:157 (libcelix_framework.so.2+0x47dd3)
    #12 celixLauncher_launch /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:141 (libcelix_framework.so.2+0x47d22)
    #13 setupFm /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:91 (test_tm_scoped+0x1e71b)
    #14 TEST_GROUP_CppUTestGrouptopology_manager_scoped_export::setup() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:670 (test_tm_scoped+0x2a0f5)
    #15 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #16 __libc_start_main <null> (libc.so.6+0x271e2)

  Thread T2 'civetweb-master' (tid=35509, running) created by main thread at:
    #0 pthread_create <null> (libtsan.so.0+0x2dc82)
    #1 mg_start_thread_with_id /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:2319 (librsa_dfi.so.0+0x17762)
    #2 mg_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7883 (librsa_dfi.so.0+0x2c966)
    #3 remoteServiceAdmin_create /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_dfi.c:238 (librsa_dfi.so.0+0xc44a)
    #4 bundleActivator_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_activator.c:59 (librsa_dfi.so.0+0xfa7f)
    #5 fw_startBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:884 (libcelix_framework.so.2+0x27815)
    #6 bundle_startWithOptions /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:267 (libcelix_framework.so.2+0x18373)
    #7 framework_autoStartConfiguredBundlesForList /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:603 (libcelix_framework.so.2+0x26467)
    #8 framework_autoStartConfiguredBundles /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:570 (libcelix_framework.so.2+0x2624d)
    #9 framework_start /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:549 (libcelix_framework.so.2+0x25f58)
    #10 celixLauncher_launchWithProperties /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:172 (libcelix_framework.so.2+0x47e55)
    #11 celixLauncher_launchWithConfigAndProps /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:157 (libcelix_framework.so.2+0x47dd3)
    #12 celixLauncher_launch /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:141 (libcelix_framework.so.2+0x47d22)
    #13 setupFm /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:91 (test_tm_scoped+0x1e71b)
    #14 TEST_GROUP_CppUTestGrouptopology_manager_scoped_export::setup() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:670 (test_tm_scoped+0x2a0f5)
    #15 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #16 __libc_start_main <null> (libc.so.6+0x271e2)

SUMMARY: ThreadSanitizer: data race /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7577 in master_thread_run
==================
==================
WARNING: ThreadSanitizer: lock-order-inversion (potential deadlock) (pid=35506)
  Cycle in lock order graph: M646 (0x7b3c000005a8) => M649 (0x7b3c000005e0) => M647 (0x7b3c00000640) => M646

  Mutex M649 acquired here while holding mutex M646 in main thread:
    #0 pthread_mutex_lock <null> (libtsan.so.0+0x42a4f)
    #1 celixThreadMutex_lock /home/oipo-unencrypted/Programming/celix/libs/utils/src/celix_threads.c:110 (libcelix_utils.so.2+0x10280)
    #2 topologyManager_notifyListenersEndpointAdded /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:752 (librsa_topology_manager.so.0+0x798d)
    #3 topologyManager_addExportedService /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:587 (librsa_topology_manager.so.0+0x7028)
    #4 topologyManager_exportScopeChanged /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:420 (librsa_topology_manager.so.0+0x651b)
    #5 tm_addExportScope /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/scope.c:83 (librsa_topology_manager.so.0+0x85c5)
    #6 scopeInit /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:343 (test_tm_scoped+0x24547)
    #7 testImportScope /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:507 (test_tm_scoped+0x263c8)
    #8 TEST_topology_manager_scoped_import_scope_import_Test::testBody() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:705 (test_tm_scoped+0x29ad5)
    #9 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #10 __libc_start_main <null> (libc.so.6+0x271e2)

    Hint: use TSAN_OPTIONS=second_deadlock_stack=1 to get more informative warning message

  Mutex M647 acquired here while holding mutex M649 in main thread:
    #0 pthread_mutex_lock <null> (libtsan.so.0+0x42a4f)
    #1 celixThreadMutex_lock /home/oipo-unencrypted/Programming/celix/libs/utils/src/celix_threads.c:110 (libcelix_utils.so.2+0x10280)
    #2 topologyManager_removeImportedService /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:518 (librsa_topology_manager.so.0+0x6ad2)
    #3 topologyManager_notifyListenersEndpointRemoved /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:812 (librsa_topology_manager.so.0+0x7db3)
    #4 topologyManager_removeExportedService /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:620 (librsa_topology_manager.so.0+0x71f9)
    #5 topologyManager_exportScopeChanged /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:415 (librsa_topology_manager.so.0+0x6465)
    #6 tm_addExportScope /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/scope.c:83 (librsa_topology_manager.so.0+0x85c5)
    #7 scopeInit /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:343 (test_tm_scoped+0x24547)
    #8 testImportScope /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:507 (test_tm_scoped+0x263c8)
    #9 TEST_topology_manager_scoped_import_scope_import_Test::testBody() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:705 (test_tm_scoped+0x29ad5)
    #10 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #11 __libc_start_main <null> (libc.so.6+0x271e2)

  Mutex M646 acquired here while holding mutex M647 in main thread:
    #0 pthread_mutex_lock <null> (libtsan.so.0+0x42a4f)
    #1 celixThreadMutex_lock /home/oipo-unencrypted/Programming/celix/libs/utils/src/celix_threads.c:110 (libcelix_utils.so.2+0x10280)
    #2 topologyManager_addImportedService /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:487 (librsa_topology_manager.so.0+0x68e2)
    #3 testImportScope /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:525 (test_tm_scoped+0x26813)
    #4 TEST_topology_manager_scoped_import_scope_import_Test::testBody() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:705 (test_tm_scoped+0x29ad5)
    #5 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #6 __libc_start_main <null> (libc.so.6+0x271e2)

SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) (/lib/x86_64-linux-gnu/libtsan.so.0+0x42a4f) in __interceptor_pthread_mutex_lock
==================
==================
WARNING: ThreadSanitizer: data race (pid=35506)
  Read of size 8 at 0x7b0c00000a10 by thread T6:
    #0 master_thread_run /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7577 (librsa_dfi.so.0+0x2bbea)
    #1 master_thread /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7608 (librsa_dfi.so.0+0x2bcaa)
    #2 <null> <null> (libtsan.so.0+0x2b3c6)

  Previous write of size 8 at 0x7b0c00000a10 by main thread (mutexes: write M18712846091158016, write M54178693156701152, write M93585189896193232, write M132428736682264000):
    #0 mg_start_thread_with_id /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:2322 (librsa_dfi.so.0+0x1779a)
    #1 mg_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7890 (librsa_dfi.so.0+0x2ca0e)
    #2 remoteServiceAdmin_create /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_dfi.c:238 (librsa_dfi.so.0+0xc44a)
    #3 bundleActivator_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_activator.c:59 (librsa_dfi.so.0+0xfa7f)
    #4 fw_startBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:884 (libcelix_framework.so.2+0x27815)
    #5 bundle_startWithOptions /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:267 (libcelix_framework.so.2+0x18373)
    #6 framework_autoStartConfiguredBundlesForList /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:603 (libcelix_framework.so.2+0x26467)
    #7 framework_autoStartConfiguredBundles /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:570 (libcelix_framework.so.2+0x2624d)
    #8 framework_start /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:549 (libcelix_framework.so.2+0x25f58)
    #9 celixLauncher_launchWithProperties /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:172 (libcelix_framework.so.2+0x47e55)
    #10 celixLauncher_launchWithConfigAndProps /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:157 (libcelix_framework.so.2+0x47dd3)
    #11 celixLauncher_launch /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:141 (libcelix_framework.so.2+0x47d22)
    #12 setupFmImport /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:182 (test_tm_scoped+0x21220)
    #13 TEST_GROUP_CppUTestGrouptopology_manager_scoped_import::setup() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:680 (test_tm_scoped+0x2a185)
    #14 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #15 __libc_start_main <null> (libc.so.6+0x271e2)

  Location is heap block of size 40 at 0x7b0c000009f0 allocated by main thread:
    #0 calloc <null> (libtsan.so.0+0x2cdbd)
    #1 mg_calloc /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:504 (librsa_dfi.so.0+0x130b6)
    #2 mg_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7859 (librsa_dfi.so.0+0x2c847)
    #3 remoteServiceAdmin_create /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_dfi.c:238 (librsa_dfi.so.0+0xc44a)
    #4 bundleActivator_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_activator.c:59 (librsa_dfi.so.0+0xfa7f)
    #5 fw_startBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:884 (libcelix_framework.so.2+0x27815)
    #6 bundle_startWithOptions /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:267 (libcelix_framework.so.2+0x18373)
    #7 framework_autoStartConfiguredBundlesForList /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:603 (libcelix_framework.so.2+0x26467)
    #8 framework_autoStartConfiguredBundles /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:570 (libcelix_framework.so.2+0x2624d)
    #9 framework_start /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:549 (libcelix_framework.so.2+0x25f58)
    #10 celixLauncher_launchWithProperties /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:172 (libcelix_framework.so.2+0x47e55)
    #11 celixLauncher_launchWithConfigAndProps /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:157 (libcelix_framework.so.2+0x47dd3)
    #12 celixLauncher_launch /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:141 (libcelix_framework.so.2+0x47d22)
    #13 setupFmImport /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:182 (test_tm_scoped+0x21220)
    #14 TEST_GROUP_CppUTestGrouptopology_manager_scoped_import::setup() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:680 (test_tm_scoped+0x2a185)
    #15 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #16 __libc_start_main <null> (libc.so.6+0x271e2)

  Mutex M18712846091158016 is already destroyed.

  Mutex M54178693156701152 is already destroyed.

  Mutex M93585189896193232 is already destroyed.

  Mutex M132428736682264000 is already destroyed.

  Thread T6 'civetweb-master' (tid=35575, running) created by main thread at:
    #0 pthread_create <null> (libtsan.so.0+0x2dc82)
    #1 mg_start_thread_with_id /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:2319 (librsa_dfi.so.0+0x17762)
    #2 mg_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7883 (librsa_dfi.so.0+0x2c966)
    #3 remoteServiceAdmin_create /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_dfi.c:238 (librsa_dfi.so.0+0xc44a)
    #4 bundleActivator_start /home/oipo-unencrypted/Programming/celix/bundles/remote_services/remote_service_admin_dfi/src/remote_service_admin_activator.c:59 (librsa_dfi.so.0+0xfa7f)
    #5 fw_startBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:884 (libcelix_framework.so.2+0x27815)
    #6 bundle_startWithOptions /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:267 (libcelix_framework.so.2+0x18373)
    #7 framework_autoStartConfiguredBundlesForList /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:603 (libcelix_framework.so.2+0x26467)
    #8 framework_autoStartConfiguredBundles /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:570 (libcelix_framework.so.2+0x2624d)
    #9 framework_start /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:549 (libcelix_framework.so.2+0x25f58)
    #10 celixLauncher_launchWithProperties /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:172 (libcelix_framework.so.2+0x47e55)
    #11 celixLauncher_launchWithConfigAndProps /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:157 (libcelix_framework.so.2+0x47dd3)
    #12 celixLauncher_launch /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:141 (libcelix_framework.so.2+0x47d22)
    #13 setupFmImport /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:182 (test_tm_scoped+0x21220)
    #14 TEST_GROUP_CppUTestGrouptopology_manager_scoped_import::setup() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:680 (test_tm_scoped+0x2a185)
    #15 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #16 __libc_start_main <null> (libc.so.6+0x271e2)

SUMMARY: ThreadSanitizer: data race /home/oipo-unencrypted/Programming/celix/bundles/remote_services/civetweb/src/civetweb.c:7577 in master_thread_run
==================
==================
WARNING: ThreadSanitizer: lock-order-inversion (potential deadlock) (pid=35506)
  Cycle in lock order graph: M805 (0x7b3c00000698) => M808 (0x7b3c000006d0) => M806 (0x7b3c00000730) => M805

  Mutex M808 acquired here while holding mutex M805 in main thread:
    #0 pthread_mutex_lock <null> (libtsan.so.0+0x42a4f)
    #1 celixThreadMutex_lock /home/oipo-unencrypted/Programming/celix/libs/utils/src/celix_threads.c:110 (libcelix_utils.so.2+0x10280)
    #2 topologyManager_notifyListenersEndpointAdded /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:752 (librsa_topology_manager.so.0+0x798d)
    #3 topologyManager_addExportedService /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:587 (librsa_topology_manager.so.0+0x7028)
    #4 topologyManager_exportScopeChanged /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:420 (librsa_topology_manager.so.0+0x651b)
    #5 tm_addExportScope /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/scope.c:83 (librsa_topology_manager.so.0+0x85c5)
    #6 scopeInit /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:343 (test_tm_scoped+0x24547)
    #7 testImportScopeMatch /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:550 (test_tm_scoped+0x2716c)
    #8 TEST_topology_manager_scoped_import_scope_import_match_Test::testBody() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:700 (test_tm_scoped+0x29a8d)
    #9 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #10 __libc_start_main <null> (libc.so.6+0x271e2)

    Hint: use TSAN_OPTIONS=second_deadlock_stack=1 to get more informative warning message

  Mutex M806 acquired here while holding mutex M808 in main thread:
    #0 pthread_mutex_lock <null> (libtsan.so.0+0x42a4f)
    #1 celixThreadMutex_lock /home/oipo-unencrypted/Programming/celix/libs/utils/src/celix_threads.c:110 (libcelix_utils.so.2+0x10280)
    #2 topologyManager_removeImportedService /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:518 (librsa_topology_manager.so.0+0x6ad2)
    #3 topologyManager_notifyListenersEndpointRemoved /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:812 (librsa_topology_manager.so.0+0x7db3)
    #4 topologyManager_removeExportedService /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:620 (librsa_topology_manager.so.0+0x71f9)
    #5 topologyManager_exportScopeChanged /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:415 (librsa_topology_manager.so.0+0x6465)
    #6 tm_addExportScope /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/scope.c:83 (librsa_topology_manager.so.0+0x85c5)
    #7 scopeInit /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:343 (test_tm_scoped+0x24547)
    #8 testImportScopeMatch /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:550 (test_tm_scoped+0x2716c)
    #9 TEST_topology_manager_scoped_import_scope_import_match_Test::testBody() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:700 (test_tm_scoped+0x29a8d)
    #10 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #11 __libc_start_main <null> (libc.so.6+0x271e2)

  Mutex M805 acquired here while holding mutex M806 in main thread:
    #0 pthread_mutex_lock <null> (libtsan.so.0+0x42a4f)
    #1 celixThreadMutex_lock /home/oipo-unencrypted/Programming/celix/libs/utils/src/celix_threads.c:110 (libcelix_utils.so.2+0x10280)
    #2 topologyManager_addImportedService /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/src/topology_manager.c:487 (librsa_topology_manager.so.0+0x68e2)
    #3 testImportScopeMatch /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:568 (test_tm_scoped+0x275b8)
    #4 TEST_topology_manager_scoped_import_scope_import_match_Test::testBody() /home/oipo-unencrypted/Programming/celix/bundles/remote_services/topology_manager/tms_tst/tms_tests.cpp:700 (test_tm_scoped+0x29a8d)
    #5 PlatformSpecificSetJmpImplementation <null> (test_tm_scoped+0x39c81)
    #6 __libc_start_main <null> (libc.so.6+0x271e2)

SUMMARY: ThreadSanitizer: lock-order-inversion (potential deadlock) (/lib/x86_64-linux-gnu/libtsan.so.0+0x42a4f) in __interceptor_pthread_mutex_lock
==================

Oipo avatar May 05 '20 10:05 Oipo