{"action":"created","issue":{"url":"https://api.github.com/repos/grpc/grpc/issues/16009","repository_url":"https://api.github.com/repos/grpc/grpc","labels_url":"https://api.github.com/repos/grpc/grpc/issues/16009/labels{/name}","comments_url":"https://api.github.com/repos/grpc/grpc/issues/16009/comments","events_url":"https://api.github.com/repos/grpc/grpc/issues/16009/events","html_url":"https://github.com/grpc/grpc/issues/16009","id":340836886,"node_id":"MDU6SXNzdWUzNDA4MzY4ODY=","number":16009,"title":"TSAN failure in handshake_verify_peer_options ","user":{"login":"sreecha","id":2754995,"node_id":"MDQ6VXNlcjI3NTQ5OTU=","avatar_url":"https://avatars1.githubusercontent.com/u/2754995?v=4","gravatar_id":"","url":"https://api.github.com/users/sreecha","html_url":"https://github.com/sreecha","followers_url":"https://api.github.com/users/sreecha/followers","following_url":"https://api.github.com/users/sreecha/following{/other_user}","gists_url":"https://api.github.com/users/sreecha/gists{/gist_id}","starred_url":"https://api.github.com/users/sreecha/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sreecha/subscriptions","organizations_url":"https://api.github.com/users/sreecha/orgs","repos_url":"https://api.github.com/users/sreecha/repos","events_url":"https://api.github.com/users/sreecha/events{/privacy}","received_events_url":"https://api.github.com/users/sreecha/received_events","type":"User","site_admin":false},"labels":[{"id":166332702,"node_id":"MDU6TGFiZWwxNjYzMzI3MDI=","url":"https://api.github.com/repos/grpc/grpc/labels/area/core","name":"area/core","color":"efdb40","default":false},{"id":267192735,"node_id":"MDU6TGFiZWwyNjcxOTI3MzU=","url":"https://api.github.com/repos/grpc/grpc/labels/infra/BUILDPONY","name":"infra/BUILDPONY","color":"a36cd1","default":false},{"id":155504842,"node_id":"MDU6TGFiZWwxNTU1MDQ4NDI=","url":"https://api.github.com/repos/grpc/grpc/labels/kind/bug","name":"kind/bug","color":"93732c","default":false},{"id":168275588,"node_id":"MDU6TGFiZWwxNjgyNzU1ODg=","url":"https://api.github.com/repos/grpc/grpc/labels/priority/P1","name":"priority/P1","color":"ff0000","default":false}],"state":"open","locked":false,"assignee":{"login":"markdroth","id":18664614,"node_id":"MDQ6VXNlcjE4NjY0NjE0","avatar_url":"https://avatars2.githubusercontent.com/u/18664614?v=4","gravatar_id":"","url":"https://api.github.com/users/markdroth","html_url":"https://github.com/markdroth","followers_url":"https://api.github.com/users/markdroth/followers","following_url":"https://api.github.com/users/markdroth/following{/other_user}","gists_url":"https://api.github.com/users/markdroth/gists{/gist_id}","starred_url":"https://api.github.com/users/markdroth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/markdroth/subscriptions","organizations_url":"https://api.github.com/users/markdroth/orgs","repos_url":"https://api.github.com/users/markdroth/repos","events_url":"https://api.github.com/users/markdroth/events{/privacy}","received_events_url":"https://api.github.com/users/markdroth/received_events","type":"User","site_admin":false},"assignees":[{"login":"markdroth","id":18664614,"node_id":"MDQ6VXNlcjE4NjY0NjE0","avatar_url":"https://avatars2.githubusercontent.com/u/18664614?v=4","gravatar_id":"","url":"https://api.github.com/users/markdroth","html_url":"https://github.com/markdroth","followers_url":"https://api.github.com/users/markdroth/followers","following_url":"https://api.github.com/users/markdroth/following{/other_user}","gists_url":"https://api.github.com/users/markdroth/gists{/gist_id}","starred_url":"https://api.github.com/users/markdroth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/markdroth/subscriptions","organizations_url":"https://api.github.com/users/markdroth/orgs","repos_url":"https://api.github.com/users/markdroth/repos","events_url":"https://api.github.com/users/markdroth/events{/privacy}","received_events_url":"https://api.github.com/users/markdroth/received_events","type":"User","site_admin":false}],"milestone":null,"comments":6,"created_at":"2018-07-12T23:58:10Z","updated_at":"2018-07-18T21:48:55Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"Repro: \r\n```\r\n$ tools/run_tests/run_tests.py -lc -ctsan -r handshake_verify_peer_options -ninf -S --force_use_pollers=epoll1\r\n```\r\n\r\nYou will see the following failure:\r\n```\r\n==================\r\nWARNING: ThreadSanitizer: data race (pid=195564)\r\n  Atomic write of size 8 at 0x7b2c00000210 by thread T11:\r\n    #0 __tsan_atomic64_fetch_add <null> (handshake_verify_peer_options+0x46d5f0)\r\n    #1 gpr_ref /usr/local/google/home/sreek/workspace/grpc/src/core/lib/gpr/sync.cc:88:33 (handshake_verify_peer_options+0x5bf086)\r\n    #2 grpc_error_ref(grpc_error*, char const*, int) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/error.cc:137:3 (handshake_verify_peer_options+0x4c60af)\r\n    #3 grpc_error_create(char const*, int, grpc_slice, grpc_error**, unsigned long) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/error.cc:364:9 (handshake_verify_peer_options+0x4c67ba)\r\n    #4 grpc_core::LockfreeEvent::NotifyOn(grpc_closure*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/lockfree_event.cc:136:11 (handshake_verify_peer_options+0x593bf3)\r\n    #5 fd_notify_on_read(grpc_fd*, grpc_closure*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/ev_epoll1_linux.cc:389:21 (handshake_verify_peer_options+0x571fa4)\r\n    #6 grpc_fd_notify_on_read(grpc_fd*, grpc_closure*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/ev_posix.cc:231:3 (handshake_verify_peer_options+0x551cc1)\r\n    #7 notify_on_read((anonymous namespace)::grpc_tcp*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/tcp_posix.cc:220:3 (handshake_verify_peer_options+0x4d9ee1)\r\n    #8 tcp_do_read((anonymous namespace)::grpc_tcp*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/tcp_posix.cc:412:7 (handshake_verify_peer_options+0x4daf2e)\r\n    #9 tcp_read_allocation_done(void*, grpc_error*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/tcp_posix.cc:454:5 (handshake_verify_peer_options+0x4d8f3e)\r\n    #10 exec_ctx_run(grpc_closure*, grpc_error*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/exec_ctx.cc:40:3 (handshake_verify_peer_options+0x4cb1a9)\r\n    #11 grpc_closure_run(char const*, int, grpc_closure*, grpc_error*) /usr/local/google/home/sreek/workspace/grpc/./src/core/lib/iomgr/closure.h:258:5 (handshake_verify_peer_options+0x4d3bad)\r\n    #12 ru_allocated_slices(void*, grpc_error*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/resource_quota.cc:552:3 (handshake_verify_peer_options+0x4d10e5)\r\n    #13 exec_ctx_run(grpc_closure*, grpc_error*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/exec_ctx.cc:40:3 (handshake_verify_peer_options+0x4cb1a9)\r\n    #14 grpc_core::ExecCtx::Flush() /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/exec_ctx.cc:128:9 (handshake_verify_peer_options+0x4caf33)\r\n    #15 end_worker(grpc_pollset*, grpc_pollset_worker*, grpc_pollset_worker**) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/ev_epoll1_linux.cc:936:34 (handshake_verify_peer_options+0x57688f)\r\n    #16 pollset_work(grpc_pollset*, grpc_pollset_worker**, long) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/ev_epoll1_linux.cc:1005:3 (handshake_verify_peer_options+0x572c9b)\r\n    #17 pollset_work(grpc_pollset*, grpc_pollset_worker**, long) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/ev_posix.cc:264:21 (handshake_verify_peer_options+0x5521ae)\r\n    #18 grpc_pollset_work(grpc_pollset*, grpc_pollset_worker**, long) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/pollset.cc:48:10 (handshake_verify_peer_options+0x4cd0d4)\r\n    #19 cq_next(grpc_completion_queue*, gpr_timespec, void*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/surface/completion_queue.cc:927:23 (handshake_verify_peer_options+0x4fab2e)\r\n    #20 grpc_completion_queue_next /usr/local/google/home/sreek/workspace/grpc/src/core/lib/surface/completion_queue.cc:1003:10 (handshake_verify_peer_options+0x4f9676)\r\n    #21 server_thread(void*) /usr/local/google/home/sreek/workspace/grpc/test/core/handshake/verify_peer_options.cc:90:21 (handshake_verify_peer_options+0x4bd571)\r\n    #22 grpc_core::(anonymous namespace)::ThreadInternalsPosix::ThreadInternalsPosix(char const*, void (*)(void*), void*, bool*)::{lambda(void*)#1}::operator()(void*) const /usr/local/google/home/sreek/workspace/grpc/src/core/lib/gprpp/thd_posix.cc:100:27 (handshake_verify_peer_options+0x5c300c)\r\n    #23 grpc_core::(anonymous namespace)::ThreadInternalsPosix::ThreadInternalsPosix(char const*, void (*)(void*), void*, bool*)::{lambda(void*)#1}::__invoke(void*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/gprpp/thd_posix.cc:74:25 (handshake_verify_peer_options+0x5c2ea8)\r\n\r\n  Previous write of size 8 at 0x7b2c00000210 by main thread (mutexes: write M2052):\r\n    #0 malloc <null> (handshake_verify_peer_options+0x42a29b)\r\n    #1 gpr_malloc /usr/local/google/home/sreek/workspace/grpc/src/core/lib/gpr/alloc.cc:57:7 (handshake_verify_peer_options+0x5b9f08)\r\n    #2 grpc_error_create(char const*, int, grpc_slice, grpc_error**, unsigned long) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/error.cc:330:7 (handshake_verify_peer_options+0x4c642d)\r\n    #3 disconnect(grpc_subchannel*) /usr/local/google/home/sreek/workspace/grpc/src/core/ext/filters/client_channel/subchannel.cc:243:41 (handshake_verify_peer_options+0x533df2)\r\n    #4 grpc_subchannel_unref(grpc_subchannel*, char const*, int, char const*) /usr/local/google/home/sreek/workspace/grpc/src/core/ext/filters/client_channel/subchannel.cc:256:5 (handshake_verify_peer_options+0x533c71)\r\n    #5 grpc_core::SubchannelData<grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelList, grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelData>::UnrefSubchannelLocked(char const*) /usr/local/google/home/sreek/workspace/grpc/./src/core/ext/filters/client_channel/lb_policy/subchannel_list.h:282:5 (handshake_verify_peer_options+0x7d9353)\r\n    #6 grpc_core::SubchannelData<grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelList, grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelData>::OnConnectivityChangedLocked(void*, grpc_error*) /usr/local/google/home/sreek/workspace/grpc/./src/core/ext/filters/client_channel/lb_policy/subchannel_list.h:416:9 (handshake_verify_peer_options+0x7daf05)\r\n    #7 grpc_combiner_continue_exec_ctx() /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/combiner.cc:260:5 (handshake_verify_peer_options+0x54fd11)\r\n    #8 grpc_core::ExecCtx::Flush() /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/exec_ctx.cc:131:17 (handshake_verify_peer_options+0x4caf4a)\r\n    #9 grpc_core::ExecCtx::~ExecCtx() /usr/local/google/home/sreek/workspace/grpc/./src/core/lib/iomgr/exec_ctx.h:108:5 (handshake_verify_peer_options+0x4bf932)\r\n    #10 grpc_channel_destroy /usr/local/google/home/sreek/workspace/grpc/src/core/lib/surface/channel.cc:442:1 (handshake_verify_peer_options+0x4f67a0)\r\n    #11 verify_peer_options_test(verify_peer_options*) /usr/local/google/home/sreek/workspace/grpc/test/core/handshake/verify_peer_options.cc:188:3 (handshake_verify_peer_options+0x4bce58)\r\n    #12 main /usr/local/google/home/sreek/workspace/grpc/test/core/handshake/verify_peer_options.cc:264:3 (handshake_verify_peer_options+0x4bc744)\r\n\r\n  Location is heap block of size 168 at 0x7b2c00000210 allocated by main thread:\r\n    #0 malloc <null> (handshake_verify_peer_options+0x42a29b)\r\n    #1 gpr_malloc /usr/local/google/home/sreek/workspace/grpc/src/core/lib/gpr/alloc.cc:57:7 (handshake_verify_peer_options+0x5b9f08)\r\n    #2 grpc_error_create(char const*, int, grpc_slice, grpc_error**, unsigned long) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/error.cc:330:7 (handshake_verify_peer_options+0x4c642d)\r\n    #3 disconnect(grpc_subchannel*) /usr/local/google/home/sreek/workspace/grpc/src/core/ext/filters/client_channel/subchannel.cc:243:41 (handshake_verify_peer_options+0x533df2)\r\n    #4 grpc_subchannel_unref(grpc_subchannel*, char const*, int, char const*) /usr/local/google/home/sreek/workspace/grpc/src/core/ext/filters/client_channel/subchannel.cc:256:5 (handshake_verify_peer_options+0x533c71)\r\n    #5 grpc_core::SubchannelData<grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelList, grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelData>::UnrefSubchannelLocked(char const*) /usr/local/google/home/sreek/workspace/grpc/./src/core/ext/filters/client_channel/lb_policy/subchannel_list.h:282:5 (handshake_verify_peer_options+0x7d9353)\r\n    #6 grpc_core::SubchannelData<grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelList, grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelData>::OnConnectivityChangedLocked(void*, grpc_error*) /usr/local/google/home/sreek/workspace/grpc/./src/core/ext/filters/client_channel/lb_policy/subchannel_list.h:416:9 (handshake_verify_peer_options+0x7daf05)\r\n    #7 grpc_combiner_continue_exec_ctx() /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/combiner.cc:260:5 (handshake_verify_peer_options+0x54fd11)\r\n    #8 grpc_core::ExecCtx::Flush() /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/exec_ctx.cc:131:17 (handshake_verify_peer_options+0x4caf4a)\r\n    #9 grpc_core::ExecCtx::~ExecCtx() /usr/local/google/home/sreek/workspace/grpc/./src/core/lib/iomgr/exec_ctx.h:108:5 (handshake_verify_peer_options+0x4bf932)\r\n    #10 grpc_channel_destroy /usr/local/google/home/sreek/workspace/grpc/src/core/lib/surface/channel.cc:442:1 (handshake_verify_peer_options+0x4f67a0)\r\n    #11 verify_peer_options_test(verify_peer_options*) /usr/local/google/home/sreek/workspace/grpc/test/core/handshake/verify_peer_options.cc:188:3 (handshake_verify_peer_options+0x4bce58)\r\n    #12 main /usr/local/google/home/sreek/workspace/grpc/test/core/handshake/verify_peer_options.cc:264:3 (handshake_verify_peer_options+0x4bc744)\r\n\r\n  Mutex M2052 (0x7b54000113e8) created at:\r\n    #0 pthread_mutex_init <null> (handshake_verify_peer_options+0x42af0a)\r\n    #1 gpr_mu_init /usr/local/google/home/sreek/workspace/grpc/src/core/lib/gpr/sync_posix.cc:37:3 (handshake_verify_peer_options+0x5bf3dc)\r\n    #2 grpc_subchannel_create(grpc_connector*, grpc_subchannel_args const*) /usr/local/google/home/sreek/workspace/grpc/src/core/ext/filters/client_channel/subchannel.cc:375:3 (handshake_verify_peer_options+0x5348c4)\r\n    #3 client_channel_factory_create_subchannel(grpc_client_channel_factory*, grpc_subchannel_args const*) /usr/local/google/home/sreek/workspace/grpc/src/core/ext/transport/chttp2/client/secure/secure_channel_create.cc:159:24 (handshake_verify_peer_options+0x5b8fd5)\r\n    #4 grpc_client_channel_factory_create_subchannel(grpc_client_channel_factory*, grpc_subchannel_args const*) /usr/local/google/home/sreek/workspace/grpc/src/core/ext/filters/client_channel/client_channel_factory.cc:34:10 (handshake_verify_peer_options+0x52b7fa)\r\n    #5 grpc_core::SubchannelList<grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelList, grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelData>::SubchannelList(grpc_core::LoadBalancingPolicy*, grpc_core::TraceFlag*, grpc_lb_addresses const*, grpc_combiner*, grpc_client_channel_factory*, grpc_channel_args const&) /usr/local/google/home/sreek/workspace/grpc/./src/core/ext/filters/client_channel/lb_policy/subchannel_list.h:479:35 (handshake_verify_peer_options+0x7d8286)\r\n    #6 grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelList::PickFirstSubchannelList(grpc_core::(anonymous namespace)::PickFirst*, grpc_core::TraceFlag*, grpc_lb_addresses const*, grpc_combiner*, grpc_client_channel_factory*, grpc_channel_args const&) /usr/local/google/home/sreek/workspace/grpc/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc:92:11 (handshake_verify_peer_options+0x7d7d98)\r\n    #7 grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelList* grpc_core::New<grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelList, grpc_core::(anonymous namespace)::PickFirst*, grpc_core::TraceFlag*, grpc_lb_addresses const*&, grpc_combiner*, grpc_client_channel_factory*, grpc_channel_args const&>(grpc_core::(anonymous namespace)::PickFirst*&&, grpc_core::TraceFlag*&&, grpc_lb_addresses const*&, grpc_combiner*&&, grpc_client_channel_factory*&&, grpc_channel_args const&) /usr/local/google/home/sreek/workspace/grpc/./src/core/lib/gprpp/memory.h:52:18 (handshake_verify_peer_options+0x7d7c3a)\r\n    #8 std::unique_ptr<grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelList, grpc_core::OrphanableDelete<grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelList> > grpc_core::MakeOrphanable<grpc_core::(anonymous namespace)::PickFirst::PickFirstSubchannelList, grpc_core::(anonymous namespace)::PickFirst*, grpc_core::TraceFlag*, grpc_lb_addresses const*&, grpc_combiner*, grpc_client_channel_factory*, grpc_channel_args const&>(grpc_core::(anonymous namespace)::PickFirst*&&, grpc_core::TraceFlag*&&, grpc_lb_addresses const*&, grpc_combiner*&&, grpc_client_channel_factory*&&, grpc_channel_args const&) /usr/local/google/home/sreek/workspace/grpc/./src/core/lib/gprpp/orphanable.h:72:27 (handshake_verify_peer_options+0x7d7305)\r\n    #9 grpc_core::(anonymous namespace)::PickFirst::UpdateLocked(grpc_channel_args const&) /usr/local/google/home/sreek/workspace/grpc/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc:308:26 (handshake_verify_peer_options+0x7d5976)\r\n    #10 grpc_core::(anonymous namespace)::PickFirst::PickFirst(grpc_core::LoadBalancingPolicy::Args const&) /usr/local/google/home/sreek/workspace/grpc/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc:134:3 (handshake_verify_peer_options+0x7d53f3)\r\n    #11 grpc_core::(anonymous namespace)::PickFirst* grpc_core::New<grpc_core::(anonymous namespace)::PickFirst, grpc_core::LoadBalancingPolicy::Args const&>(grpc_core::LoadBalancingPolicy::Args const&) /usr/local/google/home/sreek/workspace/grpc/./src/core/lib/gprpp/memory.h:52:18 (handshake_verify_peer_options+0x7d51fc)\r\n    #12 grpc_core::(anonymous namespace)::PickFirstFactory::CreateLoadBalancingPolicy(grpc_core::LoadBalancingPolicy::Args const&) const /usr/local/google/home/sreek/workspace/grpc/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.cc:545:47 (handshake_verify_peer_options+0x7d50bf)\r\n    #13 grpc_core::LoadBalancingPolicyRegistry::CreateLoadBalancingPolicy(char const*, grpc_core::LoadBalancingPolicy::Args const&) /usr/local/google/home/sreek/workspace/grpc/src/core/ext/filters/client_channel/lb_policy_registry.cc:94:19 (handshake_verify_peer_options+0x52be2b)\r\n    #14 on_resolver_result_changed_locked(void*, grpc_error*) /usr/local/google/home/sreek/workspace/grpc/src/core/ext/filters/client_channel/client_channel.cc:380:13 (handshake_verify_peer_options+0x520edc)\r\n    #15 grpc_combiner_continue_exec_ctx() /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/combiner.cc:260:5 (handshake_verify_peer_options+0x54fd11)\r\n    #16 grpc_core::ExecCtx::Flush() /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/exec_ctx.cc:131:17 (handshake_verify_peer_options+0x4caf4a)\r\n    #17 GrpcExecutor::RunClosures(grpc_closure_list) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/executor.cc:73:32 (handshake_verify_peer_options+0x55387c)\r\n    #18 GrpcExecutor::ThreadMain(void*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/iomgr/executor.cc:175:22 (handshake_verify_peer_options+0x553d7a)\r\n    #19 grpc_core::(anonymous namespace)::ThreadInternalsPosix::ThreadInternalsPosix(char const*, void (*)(void*), void*, bool*)::{lambda(void*)#1}::operator()(void*) const /usr/local/google/home/sreek/workspace/grpc/src/core/lib/gprpp/thd_posix.cc:100:27 (handshake_verify_peer_options+0x5c300c)\r\n    #20 grpc_core::(anonymous namespace)::ThreadInternalsPosix::ThreadInternalsPosix(char const*, void (*)(void*), void*, bool*)::{lambda(void*)#1}::__invoke(void*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/gprpp/thd_posix.cc:74:25 (handshake_verify_peer_options+0x5c2ea8)\r\n\r\n  Thread T11 'grpc_client_ssl' (tid=195788, running) created by main thread at:\r\n    #0 pthread_create <null> (handshake_verify_peer_options+0x42ac16)\r\n    #1 grpc_core::(anonymous namespace)::ThreadInternalsPosix::ThreadInternalsPosix(char const*, void (*)(void*), void*, bool*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/gprpp/thd_posix.cc:73:10 (handshake_verify_peer_options+0x5c2bb6)\r\n    #2 grpc_core::(anonymous namespace)::ThreadInternalsPosix* grpc_core::New<grpc_core::(anonymous namespace)::ThreadInternalsPosix, char const*&, void (*&)(void*), void*&, bool*>(char const*&, void (*&)(void*), void*&, bool*&&) /usr/local/google/home/sreek/workspace/grpc/./src/core/lib/gprpp/memory.h:52:18 (handshake_verify_peer_options+0x5c2873)\r\n    #3 grpc_core::Thread::Thread(char const*, void (*)(void*), void*, bool*) /usr/local/google/home/sreek/workspace/grpc/src/core/lib/gprpp/thd_posix.cc:142:7 (handshake_verify_peer_options+0x5c2694)\r\n    #4 verify_peer_options_test(verify_peer_options*) /usr/local/google/home/sreek/workspace/grpc/test/core/handshake/verify_peer_options.cc:123:21 (handshake_verify_peer_options+0x4bc869)\r\n    #5 main /usr/local/google/home/sreek/workspace/grpc/test/core/handshake/verify_peer_options.cc:264:3 (handshake_verify_peer_options+0x4bc744)\r\n\r\nSUMMARY: ThreadSanitizer: data race (/usr/local/google/home/sreek/workspace/grpc/bins/tsan/handshake_verify_peer_options+0x46d5f0) in __tsan_atomic64_fetch_add\r\n==================\r\nFAILED: bins/tsan/handshake_verify_peer_options GRPC_POLL_STRATEGY=epoll1 [ret=66, pid=195564, \r\n```"},"comment":{"url":"https://api.github.com/repos/grpc/grpc/issues/comments/406085105","html_url":"https://github.com/grpc/grpc/issues/16009#issuecomment-406085105","issue_url":"https://api.github.com/repos/grpc/grpc/issues/16009","id":406085105,"node_id":"MDEyOklzc3VlQ29tbWVudDQwNjA4NTEwNQ==","user":{"login":"yashykt","id":4181124,"node_id":"MDQ6VXNlcjQxODExMjQ=","avatar_url":"https://avatars2.githubusercontent.com/u/4181124?v=4","gravatar_id":"","url":"https://api.github.com/users/yashykt","html_url":"https://github.com/yashykt","followers_url":"https://api.github.com/users/yashykt/followers","following_url":"https://api.github.com/users/yashykt/following{/other_user}","gists_url":"https://api.github.com/users/yashykt/gists{/gist_id}","starred_url":"https://api.github.com/users/yashykt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/yashykt/subscriptions","organizations_url":"https://api.github.com/users/yashykt/orgs","repos_url":"https://api.github.com/users/yashykt/repos","events_url":"https://api.github.com/users/yashykt/events{/privacy}","received_events_url":"https://api.github.com/users/yashykt/received_events","type":"User","site_admin":false},"created_at":"2018-07-18T21:48:55Z","updated_at":"2018-07-18T21:48:55Z","author_association":"CONTRIBUTOR","body":"@JackOfMostTrades is right. I had seen this issue once much earlier but I wasn't able to reproduce it and never saw it again. It seems that we are now able to see it much more often.\r\n\r\n@sreecha I already have a fix for this :)\r\nhttps://github.com/grpc/grpc/pull/16053 "}}
{"actor":{"display_login":"yashykt"}}