celix icon indicating copy to clipboard operation
celix copied to clipboard

Signal-unsafe functions calls inside signal handler

Open Oipo opened this issue 5 years ago • 0 comments

See this link for more info.

Tsan output:

==================
WARNING: ThreadSanitizer: signal-unsafe call inside of a signal (pid=52772)
    #0 calloc <null> (libtsan.so.0+0x2cdbd)
    #1 celix_private_dependencyManager_create /home/oipo-unencrypted/Programming/celix/libs/framework/src/dm_dependency_manager_impl.c:33 (libcelix_framework.so.2+0x485d2)
    #2 celix_bundleContext_getDependencyManager /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle_context.c:515 (libcelix_framework.so.2+0x20126)
    #3 fw_stopBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:1057 (libcelix_framework.so.2+0x28427)
    #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+0x47fbf)
    #8 shutdown_framework /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:132 (libcelix_framework.so.2+0x47d56)
    #9 shellSigHandler /home/oipo-unencrypted/Programming/celix/bundles/shell/shell_tui/private/src/shell_tui.c:159 (libshell_tui.so.1+0x3272)
    #10 <null> <null> (libtsan.so.0+0x2a226)
    #11 celixThreadCondition_wait /home/oipo-unencrypted/Programming/celix/libs/utils/src/celix_threads.c:156 (libcelix_utils.so.2+0x104b0)
    #12 framework_waitForStop /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:1771 (libcelix_framework.so.2+0x2ace8)
    #13 celixLauncher_waitForShutdown /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:178 (libcelix_framework.so.2+0x47f14)
    #14 celixLauncher_launchAndWaitForShutdown /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:116 (libcelix_framework.so.2+0x47c4d)
    #15 main /home/oipo-unencrypted/Programming/celix/build/celix/gen/containers/pubsub_zmq/main.c:16 (pubsub_zmq+0x1218)

SUMMARY: ThreadSanitizer: signal-unsafe call inside of a signal (/lib/x86_64-linux-gnu/libtsan.so.0+0x2cdbd) in calloc
==================
==================
WARNING: ThreadSanitizer: signal-unsafe call inside of a signal (pid=52772)
    #0 calloc <null> (libtsan.so.0+0x2cdbd)
    #1 celix_arrayList_createWithEquals /home/oipo-unencrypted/Programming/celix/libs/utils/src/array_list.c:365 (libcelix_utils.so.2+0xa0f6)
    #2 celix_arrayList_create /home/oipo-unencrypted/Programming/celix/libs/utils/src/array_list.c:361 (libcelix_utils.so.2+0xa0b8)
    #3 celix_private_dependencyManager_create /home/oipo-unencrypted/Programming/celix/libs/framework/src/dm_dependency_manager_impl.c:36 (libcelix_framework.so.2+0x485fe)
    #4 celix_bundleContext_getDependencyManager /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle_context.c:515 (libcelix_framework.so.2+0x20126)
    #5 fw_stopBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:1057 (libcelix_framework.so.2+0x28427)
    #6 framework_stop /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:611 (libcelix_framework.so.2+0x26512)
    #7 bundle_stopWithOptions /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:307 (libcelix_framework.so.2+0x18608)
    #8 bundle_stop /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:297 (libcelix_framework.so.2+0x18557)
    #9 celixLauncher_stop /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:192 (libcelix_framework.so.2+0x47fbf)
    #10 shutdown_framework /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:132 (libcelix_framework.so.2+0x47d56)
    #11 shellSigHandler /home/oipo-unencrypted/Programming/celix/bundles/shell/shell_tui/private/src/shell_tui.c:159 (libshell_tui.so.1+0x3272)
    #12 <null> <null> (libtsan.so.0+0x2a226)
    #13 celixThreadCondition_wait /home/oipo-unencrypted/Programming/celix/libs/utils/src/celix_threads.c:156 (libcelix_utils.so.2+0x104b0)
    #14 framework_waitForStop /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:1771 (libcelix_framework.so.2+0x2ace8)
    #15 celixLauncher_waitForShutdown /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:178 (libcelix_framework.so.2+0x47f14)
    #16 celixLauncher_launchAndWaitForShutdown /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:116 (libcelix_framework.so.2+0x47c4d)
    #17 main /home/oipo-unencrypted/Programming/celix/build/celix/gen/containers/pubsub_zmq/main.c:16 (pubsub_zmq+0x1218)

SUMMARY: ThreadSanitizer: signal-unsafe call inside of a signal (/lib/x86_64-linux-gnu/libtsan.so.0+0x2cdbd) in calloc
==================
==================
WARNING: ThreadSanitizer: signal-unsafe call inside of a signal (pid=52772)
    #0 free <null> (libtsan.so.0+0x2cf6b)
    #1 fw_stopBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:1096 (libcelix_framework.so.2+0x2870c)
    #2 framework_stop /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:611 (libcelix_framework.so.2+0x26512)
    #3 bundle_stopWithOptions /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:307 (libcelix_framework.so.2+0x18608)
    #4 bundle_stop /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:297 (libcelix_framework.so.2+0x18557)
    #5 celixLauncher_stop /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:192 (libcelix_framework.so.2+0x47fbf)
    #6 shutdown_framework /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:132 (libcelix_framework.so.2+0x47d56)
    #7 shellSigHandler /home/oipo-unencrypted/Programming/celix/bundles/shell/shell_tui/private/src/shell_tui.c:159 (libshell_tui.so.1+0x3272)
    #8 <null> <null> (libtsan.so.0+0x2a226)
    #9 celixThreadCondition_wait /home/oipo-unencrypted/Programming/celix/libs/utils/src/celix_threads.c:156 (libcelix_utils.so.2+0x104b0)
    #10 framework_waitForStop /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:1771 (libcelix_framework.so.2+0x2ace8)
    #11 celixLauncher_waitForShutdown /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:178 (libcelix_framework.so.2+0x47f14)
    #12 celixLauncher_launchAndWaitForShutdown /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:116 (libcelix_framework.so.2+0x47c4d)
    #13 main /home/oipo-unencrypted/Programming/celix/build/celix/gen/containers/pubsub_zmq/main.c:16 (pubsub_zmq+0x1218)

SUMMARY: ThreadSanitizer: signal-unsafe call inside of a signal (/lib/x86_64-linux-gnu/libtsan.so.0+0x2cf6b) in free
==================
==================
WARNING: ThreadSanitizer: signal-unsafe call inside of a signal (pid=52772)
    #0 calloc <null> (libtsan.so.0+0x2cdbd)
    #1 fw_fireBundleEvent /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:1867 (libcelix_framework.so.2+0x2b253)
    #2 fw_stopBundle /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:1113 (libcelix_framework.so.2+0x288e2)
    #3 framework_stop /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:611 (libcelix_framework.so.2+0x26512)
    #4 bundle_stopWithOptions /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:307 (libcelix_framework.so.2+0x18608)
    #5 bundle_stop /home/oipo-unencrypted/Programming/celix/libs/framework/src/bundle.c:297 (libcelix_framework.so.2+0x18557)
    #6 celixLauncher_stop /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:192 (libcelix_framework.so.2+0x47fbf)
    #7 shutdown_framework /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:132 (libcelix_framework.so.2+0x47d56)
    #8 shellSigHandler /home/oipo-unencrypted/Programming/celix/bundles/shell/shell_tui/private/src/shell_tui.c:159 (libshell_tui.so.1+0x3272)
    #9 <null> <null> (libtsan.so.0+0x2a226)
    #10 celixThreadCondition_wait /home/oipo-unencrypted/Programming/celix/libs/utils/src/celix_threads.c:156 (libcelix_utils.so.2+0x104b0)
    #11 framework_waitForStop /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:1771 (libcelix_framework.so.2+0x2ace8)
    #12 celixLauncher_waitForShutdown /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:178 (libcelix_framework.so.2+0x47f14)
    #13 celixLauncher_launchAndWaitForShutdown /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:116 (libcelix_framework.so.2+0x47c4d)
    #14 main /home/oipo-unencrypted/Programming/celix/build/celix/gen/containers/pubsub_zmq/main.c:16 (pubsub_zmq+0x1218)

SUMMARY: ThreadSanitizer: signal-unsafe call inside of a signal (/lib/x86_64-linux-gnu/libtsan.so.0+0x2cdbd) in calloc
==================
==================
WARNING: ThreadSanitizer: signal handler spoils errno (pid=52772)
    #0 shellSigHandler /home/oipo-unencrypted/Programming/celix/bundles/shell/shell_tui/private/src/shell_tui.c:156 (libshell_tui.so.1+0x320e)
    #1 celixThreadCondition_wait /home/oipo-unencrypted/Programming/celix/libs/utils/src/celix_threads.c:156 (libcelix_utils.so.2+0x104b0)
    #2 framework_waitForStop /home/oipo-unencrypted/Programming/celix/libs/framework/src/framework.c:1771 (libcelix_framework.so.2+0x2ace8)
    #3 celixLauncher_waitForShutdown /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:178 (libcelix_framework.so.2+0x47f14)
    #4 celixLauncher_launchAndWaitForShutdown /home/oipo-unencrypted/Programming/celix/libs/framework/src/celix_launcher.c:116 (libcelix_framework.so.2+0x47c4d)
    #5 main /home/oipo-unencrypted/Programming/celix/build/celix/gen/containers/pubsub_zmq/main.c:16 (pubsub_zmq+0x1218)

SUMMARY: ThreadSanitizer: signal handler spoils errno /home/oipo-unencrypted/Programming/celix/bundles/shell/shell_tui/private/src/shell_tui.c:156 in shellSigHandler
==================

Oipo avatar May 05 '20 09:05 Oipo