accre / lstore

LStore - A fault-tolerant, performant distributed data storage framework.
http://www.lstore.org
Apache License 2.0
4 stars 5 forks source link

Race in tbx_ns_connect #134

Open PerilousApricot opened 7 years ago

PerilousApricot commented 7 years ago
WARNING: ThreadSanitizer: data race (pid=32271)
  Write of size 4 at 0x7d7c0003e200 by thread T37 (mutexes: write M2549, write M2550):
    #0 tbx_ns_connect /home/meloam/lstore/src/toolbox/network.c:465:12 (libtoolbox.so.0+0x000000032be0)
    #1 _ibp_connect /home/meloam/lstore/src/ibp/config.c:485:9 (libibp.so.0+0x00000000768a)
    #2 hc_send_thread /home/meloam/lstore/src/gop/hconnection.c:244:34 (libgop.so.0+0x000000016389)

  Previous read of size 4 at 0x7d7c0003e200 by thread T38:
    #0 tbx_ns_getid /home/meloam/lstore/src/toolbox/network.c:44:16 (libtoolbox.so.0+0x00000002fd22)
    #1 hc_recv_thread /home/meloam/lstore/src/gop/hconnection.c:495:17 (libgop.so.0+0x000000019810)

  Location is heap block of size 3512 at 0x7d7c0003e200 allocated by thread T3:
    #0 malloc /home/meloam/llvm/llvm-3.9.0.src/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:591 (globus-gridftp-server+0x00000044d5cf)
    #1 tbx_ns_new /home/meloam/lstore/src/toolbox/network.c:759:32 (libtoolbox.so.0+0x000000034e3f)
    #2 new_host_connection /home/meloam/lstore/src/gop/hconnection.c:60:14 (libgop.so.0+0x0000000149b2)
    #3 create_host_connection /home/meloam/lstore/src/gop/hconnection.c:651:10 (libgop.so.0+0x00000001b507)
    #4 spawn_new_connection /home/meloam/lstore/src/gop/hportal.c:682:12 (libgop.so.0+0x0000000204c9)
    #5 check_hportal_connections /home/meloam/lstore/src/gop/hportal.c:783:9 (libgop.so.0+0x0000000215f4)
    #6 gop_hp_submit /home/meloam/lstore/src/gop/hportal.c:892:5 (libgop.so.0+0x00000002250c)
    #7 gop_hp_que_op_submit /home/meloam/lstore/src/gop/hportal.c:935:12 (libgop.so.0+0x000000022a6b)
    #8 _ibp_submit_op /home/meloam/lstore/src/ibp/config.c:413:9 (libibp.so.0+0x00000000719f)
    #9 _opque_start_execution /home/meloam/lstore/src/gop/opque.c:443:13 (libgop.so.0+0x000000026193)
    #10 _gop_start_execution /home/meloam/lstore/src/gop/gop.c:217:9 (libgop.so.0+0x00000000ecb1)
    #11 gop_waitany /home/meloam/lstore/src/gop/gop.c:368:13 (libgop.so.0+0x000000010565)
    #12 seglun_rw_op /home/meloam/lstore/src/lio/segment/lun.c:1618:23 (liblio.so.0+0x0000001878ce)
    #13 seglun_rw_func /home/meloam/lstore/src/lio/segment/lun.c:1781:14 (liblio.so.0+0x00000018a12b)
    #14 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #15 gop_waitany /home/meloam/lstore/src/gop/gop.c:381:13 (libgop.so.0+0x000000010bf9)
    #16 gop_waitany /home/meloam/lstore/src/gop/gop.c:364:13 (libgop.so.0+0x0000000104e1)
    #17 segjerase_read_func /home/meloam/lstore/src/lio/segment/jerasure.c:1260:27 (liblio.so.0+0x00000014b1d5)
    #18 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #19 gop_waitany /home/meloam/lstore/src/gop/gop.c:381:13 (libgop.so.0+0x000000010bf9)
    #20 gop_waitany /home/meloam/lstore/src/gop/gop.c:364:13 (libgop.so.0+0x0000000104e1)
    #21 cache_rw_pages /home/meloam/lstore/src/lio/segment/cache.c:498:15 (liblio.so.0+0x000000110b0d)
    #22 cache_advise_fn /home/meloam/lstore/src/lio/segment/cache.c:746:9 (liblio.so.0+0x000000115a6b)
    #23 cache_advise /home/meloam/lstore/src/lio/segment/cache.c:808:9 (liblio.so.0+0x000000116e44)
    #24 cache_read_pages_get /home/meloam/lstore/src/lio/segment/cache.c:1214:9 (liblio.so.0+0x00000011c418)
    #25 cache_rw_func /home/meloam/lstore/src/lio/segment/cache.c:2568:22 (liblio.so.0+0x0000001286e9)
    #26 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #27 gop_sync_exec /home/meloam/lstore/src/gop/gop.c:607:13 (libgop.so.0+0x0000000136c4)
    #28 lio_read_ex_fn /home/meloam/lstore/src/lio/lio_core_io.c:770:11 (liblio.so.0+0x000000047e1e)
    #29 lio_read /home/meloam/lstore/src/lio/lio_core_io.c:970:18 (liblio.so.0+0x000000049997)
    #30 gfs_xfer_pump /home/meloam/lstore/binding/gridftp/src/lstore_dsi.c:575:26 (libglobus_gridftp_server_lstore.so+0x000000004c26)
    #31 globus_l_gfs_lstore_send /home/meloam/lstore/binding/gridftp/src/lstore_dsi.c:397:19 (libglobus_gridftp_server_lstore.so+0x0000000030b0)
    #32 globus_l_gfs_blocking_dispatch_kickout <null> (libglobus_gridftp_server.so.6+0x000000046efc)
    #33 globus_l_gfs_authorize_cb <null> (libglobus_gridftp_server.so.6+0x0000000340c8)
    #34 globus_l_gfs_acl_kickout <null> (libglobus_gridftp_server.so.6+0x00000002a911)
    #35 globus_l_callback_thread_poll <null> (libglobus_common.so.0+0x00000002517e)
    #36 globus_l_thread_pool_thread_start <null> (libglobus_common.so.0+0x000000062cf4)
    #37 thread_starter <null> (libglobus_thread_pthread.so+0x000000003b30)

  Mutex M2549 (0x7d900125a0a8) created at:
    #0 pthread_mutex_init /home/meloam/llvm/llvm-3.9.0.src/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:1119 (globus-gridftp-server+0x000000433f55)
    #1 apr_thread_mutex_create /home/meloam/lstore/vendor/apr-accre/locks/unix/thread_mutex.c:71:14 (liblio.so.0+0x0000001a8b26)
    #2 new_host_connection /home/meloam/lstore/src/gop/hconnection.c:60:14 (libgop.so.0+0x0000000149b2)
    #3 create_host_connection /home/meloam/lstore/src/gop/hconnection.c:651:10 (libgop.so.0+0x00000001b507)
    #4 spawn_new_connection /home/meloam/lstore/src/gop/hportal.c:682:12 (libgop.so.0+0x0000000204c9)
    #5 check_hportal_connections /home/meloam/lstore/src/gop/hportal.c:783:9 (libgop.so.0+0x0000000215f4)
    #6 gop_hp_submit /home/meloam/lstore/src/gop/hportal.c:892:5 (libgop.so.0+0x00000002250c)
    #7 gop_hp_que_op_submit /home/meloam/lstore/src/gop/hportal.c:935:12 (libgop.so.0+0x000000022a6b)
    #8 _ibp_submit_op /home/meloam/lstore/src/ibp/config.c:413:9 (libibp.so.0+0x00000000719f)
    #9 _opque_start_execution /home/meloam/lstore/src/gop/opque.c:443:13 (libgop.so.0+0x000000026193)
    #10 _gop_start_execution /home/meloam/lstore/src/gop/gop.c:217:9 (libgop.so.0+0x00000000ecb1)
    #11 gop_waitany /home/meloam/lstore/src/gop/gop.c:368:13 (libgop.so.0+0x000000010565)
    #12 seglun_rw_op /home/meloam/lstore/src/lio/segment/lun.c:1618:23 (liblio.so.0+0x0000001878ce)
    #13 seglun_rw_func /home/meloam/lstore/src/lio/segment/lun.c:1781:14 (liblio.so.0+0x00000018a12b)
    #14 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #15 gop_waitany /home/meloam/lstore/src/gop/gop.c:381:13 (libgop.so.0+0x000000010bf9)
    #16 gop_waitany /home/meloam/lstore/src/gop/gop.c:364:13 (libgop.so.0+0x0000000104e1)
    #17 segjerase_read_func /home/meloam/lstore/src/lio/segment/jerasure.c:1260:27 (liblio.so.0+0x00000014b1d5)
    #18 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #19 gop_waitany /home/meloam/lstore/src/gop/gop.c:381:13 (libgop.so.0+0x000000010bf9)
    #20 gop_waitany /home/meloam/lstore/src/gop/gop.c:364:13 (libgop.so.0+0x0000000104e1)
    #21 cache_rw_pages /home/meloam/lstore/src/lio/segment/cache.c:498:15 (liblio.so.0+0x000000110b0d)
    #22 cache_advise_fn /home/meloam/lstore/src/lio/segment/cache.c:746:9 (liblio.so.0+0x000000115a6b)
    #23 cache_advise /home/meloam/lstore/src/lio/segment/cache.c:808:9 (liblio.so.0+0x000000116e44)
    #24 cache_read_pages_get /home/meloam/lstore/src/lio/segment/cache.c:1214:9 (liblio.so.0+0x00000011c418)
    #25 cache_rw_func /home/meloam/lstore/src/lio/segment/cache.c:2568:22 (liblio.so.0+0x0000001286e9)
    #26 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #27 gop_sync_exec /home/meloam/lstore/src/gop/gop.c:607:13 (libgop.so.0+0x0000000136c4)
    #28 lio_read_ex_fn /home/meloam/lstore/src/lio/lio_core_io.c:770:11 (liblio.so.0+0x000000047e1e)
    #29 lio_read /home/meloam/lstore/src/lio/lio_core_io.c:970:18 (liblio.so.0+0x000000049997)
    #30 gfs_xfer_pump /home/meloam/lstore/binding/gridftp/src/lstore_dsi.c:575:26 (libglobus_gridftp_server_lstore.so+0x000000004c26)
    #31 globus_l_gfs_lstore_send /home/meloam/lstore/binding/gridftp/src/lstore_dsi.c:397:19 (libglobus_gridftp_server_lstore.so+0x0000000030b0)
    #32 globus_l_gfs_blocking_dispatch_kickout <null> (libglobus_gridftp_server.so.6+0x000000046efc)
    #33 globus_l_gfs_authorize_cb <null> (libglobus_gridftp_server.so.6+0x0000000340c8)
    #34 globus_l_gfs_acl_kickout <null> (libglobus_gridftp_server.so.6+0x00000002a911)
    #35 globus_l_callback_thread_poll <null> (libglobus_common.so.0+0x00000002517e)
    #36 globus_l_thread_pool_thread_start <null> (libglobus_common.so.0+0x000000062cf4)
    #37 thread_starter <null> (libglobus_thread_pthread.so+0x000000003b30)

  Mutex M2550 (0x7d900125a0f8) created at:
    #0 pthread_mutex_init /home/meloam/llvm/llvm-3.9.0.src/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:1119 (globus-gridftp-server+0x000000433f55)
    #1 apr_thread_mutex_create /home/meloam/lstore/vendor/apr-accre/locks/unix/thread_mutex.c:71:14 (liblio.so.0+0x0000001a8b26)
    #2 new_host_connection /home/meloam/lstore/src/gop/hconnection.c:60:14 (libgop.so.0+0x0000000149b2)
    #3 create_host_connection /home/meloam/lstore/src/gop/hconnection.c:651:10 (libgop.so.0+0x00000001b507)
    #4 spawn_new_connection /home/meloam/lstore/src/gop/hportal.c:682:12 (libgop.so.0+0x0000000204c9)
    #5 check_hportal_connections /home/meloam/lstore/src/gop/hportal.c:783:9 (libgop.so.0+0x0000000215f4)
    #6 gop_hp_submit /home/meloam/lstore/src/gop/hportal.c:892:5 (libgop.so.0+0x00000002250c)
    #7 gop_hp_que_op_submit /home/meloam/lstore/src/gop/hportal.c:935:12 (libgop.so.0+0x000000022a6b)
    #8 _ibp_submit_op /home/meloam/lstore/src/ibp/config.c:413:9 (libibp.so.0+0x00000000719f)
    #9 _opque_start_execution /home/meloam/lstore/src/gop/opque.c:443:13 (libgop.so.0+0x000000026193)
    #10 _gop_start_execution /home/meloam/lstore/src/gop/gop.c:217:9 (libgop.so.0+0x00000000ecb1)
    #11 gop_waitany /home/meloam/lstore/src/gop/gop.c:368:13 (libgop.so.0+0x000000010565)
    #12 seglun_rw_op /home/meloam/lstore/src/lio/segment/lun.c:1618:23 (liblio.so.0+0x0000001878ce)
    #13 seglun_rw_func /home/meloam/lstore/src/lio/segment/lun.c:1781:14 (liblio.so.0+0x00000018a12b)
    #14 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #15 gop_waitany /home/meloam/lstore/src/gop/gop.c:381:13 (libgop.so.0+0x000000010bf9)
    #16 gop_waitany /home/meloam/lstore/src/gop/gop.c:364:13 (libgop.so.0+0x0000000104e1)
    #17 segjerase_read_func /home/meloam/lstore/src/lio/segment/jerasure.c:1260:27 (liblio.so.0+0x00000014b1d5)
    #18 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #19 gop_waitany /home/meloam/lstore/src/gop/gop.c:381:13 (libgop.so.0+0x000000010bf9)
    #20 gop_waitany /home/meloam/lstore/src/gop/gop.c:364:13 (libgop.so.0+0x0000000104e1)
    #21 cache_rw_pages /home/meloam/lstore/src/lio/segment/cache.c:498:15 (liblio.so.0+0x000000110b0d)
    #22 cache_advise_fn /home/meloam/lstore/src/lio/segment/cache.c:746:9 (liblio.so.0+0x000000115a6b)
    #23 cache_advise /home/meloam/lstore/src/lio/segment/cache.c:808:9 (liblio.so.0+0x000000116e44)
    #24 cache_read_pages_get /home/meloam/lstore/src/lio/segment/cache.c:1214:9 (liblio.so.0+0x00000011c418)
    #25 cache_rw_func /home/meloam/lstore/src/lio/segment/cache.c:2568:22 (liblio.so.0+0x0000001286e9)
    #26 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #27 gop_sync_exec /home/meloam/lstore/src/gop/gop.c:607:13 (libgop.so.0+0x0000000136c4)
    #28 lio_read_ex_fn /home/meloam/lstore/src/lio/lio_core_io.c:770:11 (liblio.so.0+0x000000047e1e)
    #29 lio_read /home/meloam/lstore/src/lio/lio_core_io.c:970:18 (liblio.so.0+0x000000049997)
    #30 gfs_xfer_pump /home/meloam/lstore/binding/gridftp/src/lstore_dsi.c:575:26 (libglobus_gridftp_server_lstore.so+0x000000004c26)
    #31 globus_l_gfs_lstore_send /home/meloam/lstore/binding/gridftp/src/lstore_dsi.c:397:19 (libglobus_gridftp_server_lstore.so+0x0000000030b0)
    #32 globus_l_gfs_blocking_dispatch_kickout <null> (libglobus_gridftp_server.so.6+0x000000046efc)
    #33 globus_l_gfs_authorize_cb <null> (libglobus_gridftp_server.so.6+0x0000000340c8)
    #34 globus_l_gfs_acl_kickout <null> (libglobus_gridftp_server.so.6+0x00000002a911)
    #35 globus_l_callback_thread_poll <null> (libglobus_common.so.0+0x00000002517e)
    #36 globus_l_thread_pool_thread_start <null> (libglobus_common.so.0+0x000000062cf4)
    #37 thread_starter <null> (libglobus_thread_pthread.so+0x000000003b30)

  Thread T37 (tid=32523, running) created by thread T3 at:
    #0 pthread_create /home/meloam/llvm/llvm-3.9.0.src/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:902 (globus-gridftp-server+0x000000425266)
    #1 create_host_connection /home/meloam/lstore/src/gop/hconnection.c:658:5 (libgop.so.0+0x00000001b663)
    #2 spawn_new_connection /home/meloam/lstore/src/gop/hportal.c:682:12 (libgop.so.0+0x0000000204c9)
    #3 check_hportal_connections /home/meloam/lstore/src/gop/hportal.c:783:9 (libgop.so.0+0x0000000215f4)
    #4 gop_hp_submit /home/meloam/lstore/src/gop/hportal.c:892:5 (libgop.so.0+0x00000002250c)
    #5 gop_hp_que_op_submit /home/meloam/lstore/src/gop/hportal.c:935:12 (libgop.so.0+0x000000022a6b)
    #6 _ibp_submit_op /home/meloam/lstore/src/ibp/config.c:413:9 (libibp.so.0+0x00000000719f)
    #7 _opque_start_execution /home/meloam/lstore/src/gop/opque.c:443:13 (libgop.so.0+0x000000026193)
    #8 _gop_start_execution /home/meloam/lstore/src/gop/gop.c:217:9 (libgop.so.0+0x00000000ecb1)
    #9 gop_waitany /home/meloam/lstore/src/gop/gop.c:368:13 (libgop.so.0+0x000000010565)
    #10 seglun_rw_op /home/meloam/lstore/src/lio/segment/lun.c:1618:23 (liblio.so.0+0x0000001878ce)
    #11 seglun_rw_func /home/meloam/lstore/src/lio/segment/lun.c:1781:14 (liblio.so.0+0x00000018a12b)
    #12 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #13 gop_waitany /home/meloam/lstore/src/gop/gop.c:381:13 (libgop.so.0+0x000000010bf9)
    #14 gop_waitany /home/meloam/lstore/src/gop/gop.c:364:13 (libgop.so.0+0x0000000104e1)
    #15 segjerase_read_func /home/meloam/lstore/src/lio/segment/jerasure.c:1260:27 (liblio.so.0+0x00000014b1d5)
    #16 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #17 gop_waitany /home/meloam/lstore/src/gop/gop.c:381:13 (libgop.so.0+0x000000010bf9)
    #18 gop_waitany /home/meloam/lstore/src/gop/gop.c:364:13 (libgop.so.0+0x0000000104e1)
    #19 cache_rw_pages /home/meloam/lstore/src/lio/segment/cache.c:498:15 (liblio.so.0+0x000000110b0d)
    #20 cache_advise_fn /home/meloam/lstore/src/lio/segment/cache.c:746:9 (liblio.so.0+0x000000115a6b)
    #21 cache_advise /home/meloam/lstore/src/lio/segment/cache.c:808:9 (liblio.so.0+0x000000116e44)
    #22 cache_read_pages_get /home/meloam/lstore/src/lio/segment/cache.c:1214:9 (liblio.so.0+0x00000011c418)
    #23 cache_rw_func /home/meloam/lstore/src/lio/segment/cache.c:2568:22 (liblio.so.0+0x0000001286e9)
    #24 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #25 gop_sync_exec /home/meloam/lstore/src/gop/gop.c:607:13 (libgop.so.0+0x0000000136c4)
    #26 lio_read_ex_fn /home/meloam/lstore/src/lio/lio_core_io.c:770:11 (liblio.so.0+0x000000047e1e)
    #27 lio_read /home/meloam/lstore/src/lio/lio_core_io.c:970:18 (liblio.so.0+0x000000049997)
    #28 gfs_xfer_pump /home/meloam/lstore/binding/gridftp/src/lstore_dsi.c:575:26 (libglobus_gridftp_server_lstore.so+0x000000004c26)
    #29 globus_l_gfs_lstore_send /home/meloam/lstore/binding/gridftp/src/lstore_dsi.c:397:19 (libglobus_gridftp_server_lstore.so+0x0000000030b0)
    #30 globus_l_gfs_blocking_dispatch_kickout <null> (libglobus_gridftp_server.so.6+0x000000046efc)
    #31 globus_l_gfs_authorize_cb <null> (libglobus_gridftp_server.so.6+0x0000000340c8)
    #32 globus_l_gfs_acl_kickout <null> (libglobus_gridftp_server.so.6+0x00000002a911)
    #33 globus_l_callback_thread_poll <null> (libglobus_common.so.0+0x00000002517e)
    #34 globus_l_thread_pool_thread_start <null> (libglobus_common.so.0+0x000000062cf4)
    #35 thread_starter <null> (libglobus_thread_pthread.so+0x000000003b30)

  Thread T38 (tid=32524, running) created by thread T3 at:
    #0 pthread_create /home/meloam/llvm/llvm-3.9.0.src/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:902 (globus-gridftp-server+0x000000425266)
    #1 create_host_connection /home/meloam/lstore/src/gop/hconnection.c:661:9 (libgop.so.0+0x00000001b769)
    #2 spawn_new_connection /home/meloam/lstore/src/gop/hportal.c:682:12 (libgop.so.0+0x0000000204c9)
    #3 check_hportal_connections /home/meloam/lstore/src/gop/hportal.c:783:9 (libgop.so.0+0x0000000215f4)
    #4 gop_hp_submit /home/meloam/lstore/src/gop/hportal.c:892:5 (libgop.so.0+0x00000002250c)
    #5 gop_hp_que_op_submit /home/meloam/lstore/src/gop/hportal.c:935:12 (libgop.so.0+0x000000022a6b)
    #6 _ibp_submit_op /home/meloam/lstore/src/ibp/config.c:413:9 (libibp.so.0+0x00000000719f)
    #7 _opque_start_execution /home/meloam/lstore/src/gop/opque.c:443:13 (libgop.so.0+0x000000026193)
    #8 _gop_start_execution /home/meloam/lstore/src/gop/gop.c:217:9 (libgop.so.0+0x00000000ecb1)
    #9 gop_waitany /home/meloam/lstore/src/gop/gop.c:368:13 (libgop.so.0+0x000000010565)
    #10 seglun_rw_op /home/meloam/lstore/src/lio/segment/lun.c:1618:23 (liblio.so.0+0x0000001878ce)
    #11 seglun_rw_func /home/meloam/lstore/src/lio/segment/lun.c:1781:14 (liblio.so.0+0x00000018a12b)
    #12 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #13 gop_waitany /home/meloam/lstore/src/gop/gop.c:381:13 (libgop.so.0+0x000000010bf9)
    #14 gop_waitany /home/meloam/lstore/src/gop/gop.c:364:13 (libgop.so.0+0x0000000104e1)
    #15 segjerase_read_func /home/meloam/lstore/src/lio/segment/jerasure.c:1260:27 (liblio.so.0+0x00000014b1d5)
    #16 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #17 gop_waitany /home/meloam/lstore/src/gop/gop.c:381:13 (libgop.so.0+0x000000010bf9)
    #18 gop_waitany /home/meloam/lstore/src/gop/gop.c:364:13 (libgop.so.0+0x0000000104e1)
    #19 cache_rw_pages /home/meloam/lstore/src/lio/segment/cache.c:498:15 (liblio.so.0+0x000000110b0d)
    #20 cache_advise_fn /home/meloam/lstore/src/lio/segment/cache.c:746:9 (liblio.so.0+0x000000115a6b)
    #21 cache_advise /home/meloam/lstore/src/lio/segment/cache.c:808:9 (liblio.so.0+0x000000116e44)
    #22 cache_read_pages_get /home/meloam/lstore/src/lio/segment/cache.c:1214:9 (liblio.so.0+0x00000011c418)
    #23 cache_rw_func /home/meloam/lstore/src/lio/segment/cache.c:2568:22 (liblio.so.0+0x0000001286e9)
    #24 thread_pool_exec_fn /home/meloam/lstore/src/gop/thread_pool_op.c:232:14 (libgop.so.0+0x00000002a491)
    #25 gop_sync_exec /home/meloam/lstore/src/gop/gop.c:607:13 (libgop.so.0+0x0000000136c4)
    #26 lio_read_ex_fn /home/meloam/lstore/src/lio/lio_core_io.c:770:11 (liblio.so.0+0x000000047e1e)
    #27 lio_read /home/meloam/lstore/src/lio/lio_core_io.c:970:18 (liblio.so.0+0x000000049997)
    #28 gfs_xfer_pump /home/meloam/lstore/binding/gridftp/src/lstore_dsi.c:575:26 (libglobus_gridftp_server_lstore.so+0x000000004c26)
    #29 globus_l_gfs_lstore_send /home/meloam/lstore/binding/gridftp/src/lstore_dsi.c:397:19 (libglobus_gridftp_server_lstore.so+0x0000000030b0)
    #30 globus_l_gfs_blocking_dispatch_kickout <null> (libglobus_gridftp_server.so.6+0x000000046efc)
    #31 globus_l_gfs_authorize_cb <null> (libglobus_gridftp_server.so.6+0x0000000340c8)
    #32 globus_l_gfs_acl_kickout <null> (libglobus_gridftp_server.so.6+0x00000002a911)
    #33 globus_l_callback_thread_poll <null> (libglobus_common.so.0+0x00000002517e)
    #34 globus_l_thread_pool_thread_start <null> (libglobus_common.so.0+0x000000062cf4)
    #35 thread_starter <null> (libglobus_thread_pthread.so+0x000000003b30)

  Thread T3 (tid=32275, running) created by main thread at:
    #0 pthread_create /home/meloam/llvm/llvm-3.9.0.src/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:902 (globus-gridftp-server+0x000000425266)
    #1 globus_l_pthread_thread_create <null> (libglobus_thread_pthread.so+0x0000000032df)
    #2 globus_thread_create <null> (libglobus_common.so.0+0x000000060f71)
    #3 globus_i_thread_start <null> (libglobus_common.so.0+0x0000000633c9)
    #4 globus_l_callback_activate <null> (libglobus_common.so.0+0x0000000206cc)
    #5 globus_module_activate_proxy <null> (libglobus_common.so.0+0x000000047d96)
    #6 globus_module_activate <null> (libglobus_common.so.0+0x000000048782)
    #7 globus_l_callback_activate <null> (libglobus_common.so.0+0x00000001816d)
    #8 globus_module_activate_proxy <null> (libglobus_common.so.0+0x000000047d96)
    #9 globus_module_activate <null> (libglobus_common.so.0+0x000000048782)
    #10 globus_l_common_activate <null> (libglobus_common.so.0+0x00000002daa6)
    #11 globus_module_activate_proxy <null> (libglobus_common.so.0+0x000000047d96)
    #12 globus_module_activate <null> (libglobus_common.so.0+0x000000048782)
    #13 main <null> (globus-gridftp-server+0x0000004ac8f1)

SUMMARY: ThreadSanitizer: data race /home/meloam/lstore/src/toolbox/network.c:465:12 in tbx_ns_connect
tacketar commented 7 years ago

This should be fixed in PR133. It shouldn't have caused any aborts. I also found another bug in lio_get I fixed.