You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Ken Giusti (Jira)" <ji...@apache.org> on 2021/08/10 21:45:00 UTC

[jira] [Resolved] (DISPATCH-2041) TSan data race reported from qd_connection_free in system_tests_edge_router

     [ https://issues.apache.org/jira/browse/DISPATCH-2041?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ken Giusti resolved DISPATCH-2041.
----------------------------------
    Resolution: Fixed

> TSan data race reported from qd_connection_free in system_tests_edge_router
> ---------------------------------------------------------------------------
>
>                 Key: DISPATCH-2041
>                 URL: https://issues.apache.org/jira/browse/DISPATCH-2041
>             Project: Qpid Dispatch
>          Issue Type: Bug
>    Affects Versions: 1.16.0
>         Environment: Ubuntu Focal TSan job on Travis CI
>            Reporter: Jiri Daněk
>            Priority: Major
>              Labels: race-condition, tsan
>             Fix For: 1.17.0
>
>
> https://travis-ci.com/github/apache/qpid-dispatch/jobs/497063184#L6464
> {noformat}
> 54: WARNING: ThreadSanitizer: data race (pid=15726)
> 54:   Read of size 8 at 0x7b7400082ac8 by thread T3:
> 54:     #0 qd_connection_free /home/travis/build/apache/qpid-dispatch/src/server.c:898 (libqpid-dispatch.so+0xebf8b)
> 54:     #1 thread_run /home/travis/build/apache/qpid-dispatch/src/server.c:1128 (libqpid-dispatch.so+0xec4ac)
> 54:     #2 _thread_init /home/travis/build/apache/qpid-dispatch/src/posix/threading.c:174 (libqpid-dispatch.so+0x94e86)
> 54:     #3 <null> <null> (libtsan.so.0+0x2d1af)
> 54: 
> 54:   Previous write of size 8 at 0x7b7400082ac8 by thread T4 (mutexes: write M5, write M101747775242347584):
> 54:     #0 qd_connector_decref /home/travis/build/apache/qpid-dispatch/src/server.c:1693 (libqpid-dispatch.so+0xee112)
> 54:     #1 qd_connector_decref /home/travis/build/apache/qpid-dispatch/src/server.c:1688 (libqpid-dispatch.so+0xee112)
> 54:     #2 qd_connection_manager_delete_connector /home/travis/build/apache/qpid-dispatch/src/connection_manager.c:1068 (libqpid-dispatch.so+0x70d67)
> 54:     #3 <null> <null> (libffi.so.7+0x6ff4)
> 54:     #4 qdr_forward_on_message /home/travis/build/apache/qpid-dispatch/src/router_core/forwarder.c:341 (libqpid-dispatch.so+0xb931f)
> 54:     #5 qdr_general_handler /home/travis/build/apache/qpid-dispatch/src/router_core/router_core.c:903 (libqpid-dispatch.so+0xc1f89)
> 54:     #6 qd_timer_visit /home/travis/build/apache/qpid-dispatch/src/timer.c:205 (libqpid-dispatch.so+0xefbd7)
> 54:     #7 handle /home/travis/build/apache/qpid-dispatch/src/server.c:1008 (libqpid-dispatch.so+0xea5de)
> 54:     #8 thread_run /home/travis/build/apache/qpid-dispatch/src/server.c:1122 (libqpid-dispatch.so+0xec477)
> 54:     #9 _thread_init /home/travis/build/apache/qpid-dispatch/src/posix/threading.c:174 (libqpid-dispatch.so+0x94e86)
> 54:     #10 <null> <null> (libtsan.so.0+0x2d1af)
> 54: 
> 54:   Location is heap block of size 2496 at 0x7b7400082a00 allocated by thread T2:
> 54:     #0 posix_memalign <null> (libtsan.so.0+0x3048d)
> 54:     #1 qd_alloc /home/travis/build/apache/qpid-dispatch/src/alloc_pool.c:395 (libqpid-dispatch.so+0x5f5d4)
> 54:     #2 new_qd_connection_t /home/travis/build/apache/qpid-dispatch/src/server.c:84 (libqpid-dispatch.so+0xe7f95)
> 54:     #3 qd_server_connection /home/travis/build/apache/qpid-dispatch/src/server.c:569 (libqpid-dispatch.so+0xe8cd8)
> 54:     #4 on_accept /home/travis/build/apache/qpid-dispatch/src/server.c:601 (libqpid-dispatch.so+0xedb7b)
> 54:     #5 handle_listener /home/travis/build/apache/qpid-dispatch/src/server.c:855 (libqpid-dispatch.so+0xedb7b)
> 54:     #6 handle_event_with_context /home/travis/build/apache/qpid-dispatch/src/server.c:804 (libqpid-dispatch.so+0xea569)
> 54:     #7 do_handle_raw_connection_event /home/travis/build/apache/qpid-dispatch/src/server.c:810 (libqpid-dispatch.so+0xea569)
> 54:     #8 handle /home/travis/build/apache/qpid-dispatch/src/server.c:1090 (libqpid-dispatch.so+0xea569)
> 54:     #9 thread_run /home/travis/build/apache/qpid-dispatch/src/server.c:1122 (libqpid-dispatch.so+0xec477)
> 54:     #10 _thread_init /home/travis/build/apache/qpid-dispatch/src/posix/threading.c:174 (libqpid-dispatch.so+0x94e86)
> 54:     #11 <null> <null> (libtsan.so.0+0x2d1af)
> 54: 
> 54:   Mutex M5 (0x7b1000000300) created at:
> 54:     #0 pthread_mutex_init <null> (libtsan.so.0+0x4a636)
> 54:     #1 sys_mutex /home/travis/build/apache/qpid-dispatch/src/posix/threading.c:45 (libqpid-dispatch.so+0x94eef)
> 54:     #2 qd_python_initialize /home/travis/build/apache/qpid-dispatch/src/python_embedded.c:56 (libqpid-dispatch.so+0x97847)
> 54:     #3 qd_dispatch /home/travis/build/apache/qpid-dispatch/src/dispatch.c:111 (libqpid-dispatch.so+0x762b9)
> 54:     #4 main_process /home/travis/build/apache/qpid-dispatch/router/src/main.c:92 (qdrouterd+0x2b39)
> 54:     #5 main /home/travis/build/apache/qpid-dispatch/router/src/main.c:369 (qdrouterd+0x2882)
> 54: 
> 54:   Mutex M101747775242347584 is already destroyed.
> 54: 
> 54:   Thread T3 (tid=15730, running) created by main thread at:
> 54:     #0 pthread_create <null> (libtsan.so.0+0x5ea99)
> 54:     #1 sys_thread /home/travis/build/apache/qpid-dispatch/src/posix/threading.c:183 (libqpid-dispatch.so+0x95442)
> 54:     #2 qd_server_run /home/travis/build/apache/qpid-dispatch/src/server.c:1485 (libqpid-dispatch.so+0xeceda)
> 54:     #3 main_process /home/travis/build/apache/qpid-dispatch/router/src/main.c:115 (qdrouterd+0x2c27)
> 54:     #4 main /home/travis/build/apache/qpid-dispatch/router/src/main.c:369 (qdrouterd+0x2882)
> 54: 
> 54:   Thread T4 (tid=15731, running) created by main thread at:
> 54:     #0 pthread_create <null> (libtsan.so.0+0x5ea99)
> 54:     #1 sys_thread /home/travis/build/apache/qpid-dispatch/src/posix/threading.c:183 (libqpid-dispatch.so+0x95442)
> 54:     #2 qd_server_run /home/travis/build/apache/qpid-dispatch/src/server.c:1485 (libqpid-dispatch.so+0xeceda)
> 54:     #3 main_process /home/travis/build/apache/qpid-dispatch/router/src/main.c:115 (qdrouterd+0x2c27)
> 54:     #4 main /home/travis/build/apache/qpid-dispatch/router/src/main.c:369 (qdrouterd+0x2882)
> 54: 
> 54:   Thread T2 (tid=15729, running) created by main thread at:
> 54:     #0 pthread_create <null> (libtsan.so.0+0x5ea99)
> 54:     #1 sys_thread /home/travis/build/apache/qpid-dispatch/src/posix/threading.c:183 (libqpid-dispatch.so+0x95442)
> 54:     #2 qd_server_run /home/travis/build/apache/qpid-dispatch/src/server.c:1485 (libqpid-dispatch.so+0xeceda)
> 54:     #3 main_process /home/travis/build/apache/qpid-dispatch/router/src/main.c:115 (qdrouterd+0x2c27)
> 54:     #4 main /home/travis/build/apache/qpid-dispatch/router/src/main.c:369 (qdrouterd+0x2882)
> 54: 
> 54: SUMMARY: ThreadSanitizer: data race /home/travis/build/apache/qpid-dispatch/src/server.c:898 in qd_connection_free
> {noformat}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org