Back to build
Raw log | Switch to full mode | Login

Test 'NetworkServiceTestWithService.AIAFetching' completed with the following status(es): 'FAILURE_ON_EXIT','SUCCESS' Test 'NetworkServiceTestWithService.AIAFetching' had the following logs when run: ================================================================================ [ RUN ] NetworkServiceTestWithService.AIAFetching [28318:28318:0521/113433.691989:16076128182:ERROR:local_test_server_posix.cc(142)] LaunchPython called with PYTHONPATH = /b/s/w/ir/third_party/tlslite:/b/s/w/ir/third_party/pywebsocket/src:/b/s/w/ir/out/Release/pyproto [28318:28318:0521/113433.692221:16076128405:ERROR:local_test_server_posix.cc(153)] Running: vpython -u /b/s/w/ir/net/tools/testserver/testserver.py --aia-intermediate --data-dir=/b/s/w/ir/services/test/data --host=127.0.0.1 --https --log-to-console --port=0 --https --startup-pipe=97 AIA server started on 127.0.0.1:41255... HTTPS server started on https://127.0.0.1:44607... sending server_data: {"host": "127.0.0.1", "port": 44607} (36 bytes) handling ca_issuers request [ OK ] NetworkServiceTestWithService.AIAFetching (1519 ms) [ RUN ] NetworkServiceTestWithService.DestroyingPrimaryNetworkContextDestroysOtherContexts [ OK ] NetworkServiceTestWithService.DestroyingPrimaryNetworkContextDestroysOtherContexts (34 ms) [ RUN ] NetworkServiceTestWithService.GetDnsConfigChangeManager ================== WARNING: ThreadSanitizer: data race (pid=28318) Write of size 8 at 0x7b1800006f98 by main thread: #0 reset buildtools/third_party/libc++/trunk/include/memory:2649:20 (services_unittests+0x4b609d0) #1 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609d0) #2 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609d0) #3 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #4 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #5 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #6 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #7 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #8 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #9 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #10 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #11 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #12 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #13 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #14 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #15 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #16 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #17 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #18 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #19 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #20 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #21 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #22 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #23 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #24 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #25 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #26 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #27 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #28 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #29 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #30 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #31 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #32 Run base/callback.h:97:12 (services_unittests+0x51f593d) #33 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #34 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #35 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous read of size 8 at 0x7b1800006f98 by thread T18: #0 operator-> buildtools/third_party/libc++/trunk/include/memory:2620:19 (services_unittests+0x4b5fc6b) #1 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc6b) #2 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #3 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #4 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #5 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #6 Run base/callback.h:136:12 (services_unittests+0x27301d3) #7 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #8 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #9 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #10 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #11 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #12 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #13 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #14 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #15 Run base/callback.h:97:12 (services_unittests+0x41846d8) #16 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #17 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #18 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #19 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #20 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #21 Run base/callback.h:97:12 (services_unittests+0x4144145) #22 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #23 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #24 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #25 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #26 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #27 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #28 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #29 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #30 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #31 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #32 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Location is heap block of size 96 at 0x7b1800006f60 allocated by main thread: #0 operator new(unsigned long) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:64:3 (services_unittests+0x1956fdb) #1 net::NetworkChangeNotifier::Create() net/base/network_change_notifier.cc:212:10 (services_unittests+0x4b5d94f) #2 CreateNetworkChangeNotifierIfNeeded services/network/network_service.cc:109:29 (services_unittests+0x534b58b) #3 network::NetworkService::Initialize(mojo::StructPtr<network::mojom::NetworkServiceParams>) services/network/network_service.cc:302 (services_unittests+0x534b58b) #4 network::NetworkService::NetworkService(std::__1::unique_ptr<service_manager::BinderRegistryWithArgs<>, std::__1::default_delete<service_manager::BinderRegistryWithArgs<> > >, mojo::InterfaceRequest<network::mojom::NetworkService>, net::NetLog*, mojo::InterfaceRequest<service_manager::mojom::Service>, bool) services/network/network_service.cc:262:5 (services_unittests+0x534aba2) #5 std::__1::__unique_if<network::NetworkService>::__unique_single std::__1::make_unique<network::NetworkService, std::__1::unique_ptr<service_manager::BinderRegistryWithArgs<>, std::__1::default_delete<service_manager::BinderRegistryWithArgs<> > >, std::nullptr_t, std::nullptr_t, mojo::InterfaceRequest<service_manager::mojom::Service> >(std::__1::unique_ptr<service_manager::BinderRegistryWithArgs<>, std::__1::default_delete<service_manager::BinderRegistryWithArgs<> > >&&, std::nullptr_t&&, std::nullptr_t&&, mojo::InterfaceRequest<service_manager::mojom::Service>&&) buildtools/third_party/libc++/trunk/include/memory:3131:32 (services_unittests+0x534c5e4) #6 network::NetworkService::CreateForTesting(mojo::InterfaceRequest<service_manager::mojom::Service>) services/network/network_service.cc:387:10 (services_unittests+0x534c4f5) #7 network::(anonymous namespace)::NetworkServiceTestWithService::SetUp() services/network/network_service_unittest.cc:615:16 (services_unittests+0x1b4fa70) #8 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1c8f2) #9 testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc:2517 (services_unittests+0x2a1c8f2) #10 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2698:11 (services_unittests+0x2a1dc98) #11 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #12 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #13 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #14 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #15 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #16 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #17 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #18 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #19 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #20 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #21 Run base/callback.h:97:12 (services_unittests+0x51f593d) #22 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #23 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #24 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race buildtools/third_party/libc++/trunk/include/memory:2649:20 in reset ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Read of size 8 at 0x7b3000000428 by main thread: #0 ~__hash_table buildtools/third_party/libc++/trunk/include/__hash_table:1539:37 (services_unittests+0x272ab8d) #1 ~unordered_map buildtools/third_party/libc++/trunk/include/unordered_map:968 (services_unittests+0x272ab8d) #2 net::DnsConfig::~DnsConfig() net/dns/dns_config.cc:29 (services_unittests+0x272ab8d) #3 ~NetworkState net/base/network_change_notifier.cc:68:27 (services_unittests+0x4b609e6) #4 operator() buildtools/third_party/libc++/trunk/include/memory:2338 (services_unittests+0x4b609e6) #5 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609e6) #6 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609e6) #7 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609e6) #8 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #9 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #10 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #11 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #12 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #13 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #14 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #15 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #16 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #17 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #18 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #19 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #20 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #21 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #22 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #23 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #24 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #25 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #26 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #27 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #28 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #29 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #30 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #31 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #32 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #33 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #34 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #35 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #36 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #37 Run base/callback.h:97:12 (services_unittests+0x51f593d) #38 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #39 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #40 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous write of size 8 at 0x7b3000000428 by thread T18 (mutexes: write M1036807785313993664): #0 __node_insert_multi_perform buildtools/third_party/libc++/trunk/include/__hash_table:2014:23 (services_unittests+0x272c8b9) #1 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__node_insert_multi(std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*) buildtools/third_party/libc++/trunk/include/__hash_table:2042 (services_unittests+0x272c8b9) #2 __emplace_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2187:20 (services_unittests+0x272c3fe) #3 __insert_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:1143 (services_unittests+0x272c3fe) #4 void std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__assign_multi<std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*> >(std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>, std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>) buildtools/third_party/libc++/trunk/include/__hash_table:1793 (services_unittests+0x272c3fe) #5 operator= buildtools/third_party/libc++/trunk/include/__hash_table:1570:9 (services_unittests+0x272adb3) #6 operator= buildtools/third_party/libc++/trunk/include/unordered_map:974 (services_unittests+0x272adb3) #7 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adb3) #8 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #9 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #10 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #11 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #12 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #13 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #14 Run base/callback.h:136:12 (services_unittests+0x27301d3) #15 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #16 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #17 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #18 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #19 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #20 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #21 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #22 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #23 Run base/callback.h:97:12 (services_unittests+0x41846d8) #24 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #25 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #26 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #27 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #28 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #29 Run base/callback.h:97:12 (services_unittests+0x4144145) #30 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #31 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #32 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #33 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #34 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #35 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #36 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #37 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #38 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #39 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #40 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Location is heap block of size 184 at 0x7b30000003c0 allocated by main thread: #0 operator new(unsigned long) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:64:3 (services_unittests+0x1956fdb) #1 net::NetworkChangeNotifier::NetworkChangeNotifier(net::NetworkChangeNotifier::NetworkChangeCalculatorParams const&) net/base/network_change_notifier.cc:643:22 (services_unittests+0x4b5f7af) #2 net::NetworkChangeNotifierLinux::NetworkChangeNotifierLinux(std::__1::unordered_set<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) net/base/network_change_notifier_linux.cc:92:7 (services_unittests+0x4b67c7c) #3 net::NetworkChangeNotifier::Create() net/base/network_change_notifier.cc:212:14 (services_unittests+0x4b5d977) #4 CreateNetworkChangeNotifierIfNeeded services/network/network_service.cc:109:29 (services_unittests+0x534b58b) #5 network::NetworkService::Initialize(mojo::StructPtr<network::mojom::NetworkServiceParams>) services/network/network_service.cc:302 (services_unittests+0x534b58b) #6 network::NetworkService::NetworkService(std::__1::unique_ptr<service_manager::BinderRegistryWithArgs<>, std::__1::default_delete<service_manager::BinderRegistryWithArgs<> > >, mojo::InterfaceRequest<network::mojom::NetworkService>, net::NetLog*, mojo::InterfaceRequest<service_manager::mojom::Service>, bool) services/network/network_service.cc:262:5 (services_unittests+0x534aba2) #7 std::__1::__unique_if<network::NetworkService>::__unique_single std::__1::make_unique<network::NetworkService, std::__1::unique_ptr<service_manager::BinderRegistryWithArgs<>, std::__1::default_delete<service_manager::BinderRegistryWithArgs<> > >, std::nullptr_t, std::nullptr_t, mojo::InterfaceRequest<service_manager::mojom::Service> >(std::__1::unique_ptr<service_manager::BinderRegistryWithArgs<>, std::__1::default_delete<service_manager::BinderRegistryWithArgs<> > >&&, std::nullptr_t&&, std::nullptr_t&&, mojo::InterfaceRequest<service_manager::mojom::Service>&&) buildtools/third_party/libc++/trunk/include/memory:3131:32 (services_unittests+0x534c5e4) #8 network::NetworkService::CreateForTesting(mojo::InterfaceRequest<service_manager::mojom::Service>) services/network/network_service.cc:387:10 (services_unittests+0x534c4f5) #9 network::(anonymous namespace)::NetworkServiceTestWithService::SetUp() services/network/network_service_unittest.cc:615:16 (services_unittests+0x1b4fa70) #10 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1c8f2) #11 testing::Test::Run() third_party/googletest/src/googletest/src/gtest.cc:2517 (services_unittests+0x2a1c8f2) #12 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2698:11 (services_unittests+0x2a1dc98) #13 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #14 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #15 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #16 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #17 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #18 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #19 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #20 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #21 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #22 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #23 Run base/callback.h:97:12 (services_unittests+0x51f593d) #24 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #25 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #26 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race buildtools/third_party/libc++/trunk/include/__hash_table:1539:37 in ~__hash_table ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Read of size 8 at 0x7b14000210c0 by main thread: #0 __deallocate_node buildtools/third_party/libc++/trunk/include/__hash_table:1583:39 (services_unittests+0x272aba7) #1 ~__hash_table buildtools/third_party/libc++/trunk/include/__hash_table:1539 (services_unittests+0x272aba7) #2 ~unordered_map buildtools/third_party/libc++/trunk/include/unordered_map:968 (services_unittests+0x272aba7) #3 net::DnsConfig::~DnsConfig() net/dns/dns_config.cc:29 (services_unittests+0x272aba7) #4 ~NetworkState net/base/network_change_notifier.cc:68:27 (services_unittests+0x4b609e6) #5 operator() buildtools/third_party/libc++/trunk/include/memory:2338 (services_unittests+0x4b609e6) #6 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609e6) #7 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609e6) #8 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609e6) #9 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #10 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #11 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #12 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #13 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #14 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #15 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #16 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #17 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #18 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #19 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #20 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #21 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #22 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #23 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #24 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #25 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #26 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #27 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #28 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #29 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #30 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #31 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #32 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #33 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #34 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #35 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #36 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #37 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #38 Run base/callback.h:97:12 (services_unittests+0x51f593d) #39 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #40 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #41 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous write of size 8 at 0x7b14000210c0 by thread T18 (mutexes: write M1036807785313993664): #0 operator new(unsigned long) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:64:3 (services_unittests+0x1956fdb) #1 __libcpp_allocate buildtools/third_party/libc++/trunk/include/new:238:10 (services_unittests+0x272c421) #2 allocate buildtools/third_party/libc++/trunk/include/memory:1813 (services_unittests+0x272c421) #3 allocate buildtools/third_party/libc++/trunk/include/memory:1546 (services_unittests+0x272c421) #4 __construct_node<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2524 (services_unittests+0x272c421) #5 __emplace_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2186 (services_unittests+0x272c421) #6 __insert_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:1143 (services_unittests+0x272c421) #7 void std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__assign_multi<std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*> >(std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>, std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>) buildtools/third_party/libc++/trunk/include/__hash_table:1793 (services_unittests+0x272c421) #8 operator= buildtools/third_party/libc++/trunk/include/__hash_table:1570:9 (services_unittests+0x272adb3) #9 operator= buildtools/third_party/libc++/trunk/include/unordered_map:974 (services_unittests+0x272adb3) #10 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adb3) #11 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #12 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #13 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #14 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #15 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #16 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #17 Run base/callback.h:136:12 (services_unittests+0x27301d3) #18 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #19 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #20 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #21 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #22 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #23 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #24 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #25 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #26 Run base/callback.h:97:12 (services_unittests+0x41846d8) #27 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #28 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #29 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #30 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #31 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #32 Run base/callback.h:97:12 (services_unittests+0x4144145) #33 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #34 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #35 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #36 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #37 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #38 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #39 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #40 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #41 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #42 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #43 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Location is heap block of size 72 at 0x7b14000210c0 allocated by thread T18: #0 operator new(unsigned long) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:64:3 (services_unittests+0x1956fdb) #1 __libcpp_allocate buildtools/third_party/libc++/trunk/include/new:238:10 (services_unittests+0x272c421) #2 allocate buildtools/third_party/libc++/trunk/include/memory:1813 (services_unittests+0x272c421) #3 allocate buildtools/third_party/libc++/trunk/include/memory:1546 (services_unittests+0x272c421) #4 __construct_node<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2524 (services_unittests+0x272c421) #5 __emplace_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2186 (services_unittests+0x272c421) #6 __insert_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:1143 (services_unittests+0x272c421) #7 void std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__assign_multi<std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*> >(std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>, std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>) buildtools/third_party/libc++/trunk/include/__hash_table:1793 (services_unittests+0x272c421) #8 operator= buildtools/third_party/libc++/trunk/include/__hash_table:1570:9 (services_unittests+0x272adb3) #9 operator= buildtools/third_party/libc++/trunk/include/unordered_map:974 (services_unittests+0x272adb3) #10 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adb3) #11 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #12 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #13 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #14 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #15 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #16 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #17 Run base/callback.h:136:12 (services_unittests+0x27301d3) #18 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #19 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #20 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #21 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #22 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #23 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #24 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #25 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #26 Run base/callback.h:97:12 (services_unittests+0x41846d8) #27 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #28 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #29 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #30 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #31 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #32 Run base/callback.h:97:12 (services_unittests+0x4144145) #33 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #34 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #35 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #36 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #37 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #38 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #39 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #40 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #41 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #42 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #43 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race buildtools/third_party/libc++/trunk/include/__hash_table:1583:39 in __deallocate_node ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Read of size 1 at 0x7b14000210e7 by main thread: #0 __is_long buildtools/third_party/libc++/trunk/include/string:1426:39 (services_unittests+0x272abbc) #1 ~basic_string buildtools/third_party/libc++/trunk/include/string:2137 (services_unittests+0x272abbc) #2 ~pair buildtools/third_party/libc++/trunk/include/utility:315 (services_unittests+0x272abbc) #3 ~pair buildtools/third_party/libc++/trunk/include/utility:315 (services_unittests+0x272abbc) #4 __destroy<std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> > buildtools/third_party/libc++/trunk/include/memory:1747 (services_unittests+0x272abbc) #5 destroy<std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> > buildtools/third_party/libc++/trunk/include/memory:1595 (services_unittests+0x272abbc) #6 __deallocate_node buildtools/third_party/libc++/trunk/include/__hash_table:1600 (services_unittests+0x272abbc) #7 ~__hash_table buildtools/third_party/libc++/trunk/include/__hash_table:1539 (services_unittests+0x272abbc) #8 ~unordered_map buildtools/third_party/libc++/trunk/include/unordered_map:968 (services_unittests+0x272abbc) #9 net::DnsConfig::~DnsConfig() net/dns/dns_config.cc:29 (services_unittests+0x272abbc) #10 ~NetworkState net/base/network_change_notifier.cc:68:27 (services_unittests+0x4b609e6) #11 operator() buildtools/third_party/libc++/trunk/include/memory:2338 (services_unittests+0x4b609e6) #12 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609e6) #13 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609e6) #14 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609e6) #15 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #16 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #17 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #18 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #19 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #20 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #21 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #22 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #23 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #24 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #25 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #26 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #27 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #28 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #29 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #30 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #31 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #32 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #33 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #34 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #35 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #36 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #37 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #38 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #39 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #40 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #41 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #42 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #43 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #44 Run base/callback.h:97:12 (services_unittests+0x51f593d) #45 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #46 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #47 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous write of size 8 at 0x7b14000210e0 by thread T18 (mutexes: write M1036807785313993664): #0 operator new(unsigned long) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:64:3 (services_unittests+0x1956fdb) #1 __libcpp_allocate buildtools/third_party/libc++/trunk/include/new:238:10 (services_unittests+0x272c421) #2 allocate buildtools/third_party/libc++/trunk/include/memory:1813 (services_unittests+0x272c421) #3 allocate buildtools/third_party/libc++/trunk/include/memory:1546 (services_unittests+0x272c421) #4 __construct_node<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2524 (services_unittests+0x272c421) #5 __emplace_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2186 (services_unittests+0x272c421) #6 __insert_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:1143 (services_unittests+0x272c421) #7 void std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__assign_multi<std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*> >(std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>, std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>) buildtools/third_party/libc++/trunk/include/__hash_table:1793 (services_unittests+0x272c421) #8 operator= buildtools/third_party/libc++/trunk/include/__hash_table:1570:9 (services_unittests+0x272adb3) #9 operator= buildtools/third_party/libc++/trunk/include/unordered_map:974 (services_unittests+0x272adb3) #10 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adb3) #11 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #12 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #13 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #14 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #15 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #16 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #17 Run base/callback.h:136:12 (services_unittests+0x27301d3) #18 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #19 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #20 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #21 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #22 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #23 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #24 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #25 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #26 Run base/callback.h:97:12 (services_unittests+0x41846d8) #27 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #28 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #29 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #30 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #31 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #32 Run base/callback.h:97:12 (services_unittests+0x4144145) #33 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #34 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #35 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #36 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #37 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #38 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #39 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #40 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #41 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #42 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #43 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Location is heap block of size 72 at 0x7b14000210c0 allocated by thread T18: #0 operator new(unsigned long) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:64:3 (services_unittests+0x1956fdb) #1 __libcpp_allocate buildtools/third_party/libc++/trunk/include/new:238:10 (services_unittests+0x272c421) #2 allocate buildtools/third_party/libc++/trunk/include/memory:1813 (services_unittests+0x272c421) #3 allocate buildtools/third_party/libc++/trunk/include/memory:1546 (services_unittests+0x272c421) #4 __construct_node<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2524 (services_unittests+0x272c421) #5 __emplace_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2186 (services_unittests+0x272c421) #6 __insert_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:1143 (services_unittests+0x272c421) #7 void std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__assign_multi<std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*> >(std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>, std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>) buildtools/third_party/libc++/trunk/include/__hash_table:1793 (services_unittests+0x272c421) #8 operator= buildtools/third_party/libc++/trunk/include/__hash_table:1570:9 (services_unittests+0x272adb3) #9 operator= buildtools/third_party/libc++/trunk/include/unordered_map:974 (services_unittests+0x272adb3) #10 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adb3) #11 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #12 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #13 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #14 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #15 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #16 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #17 Run base/callback.h:136:12 (services_unittests+0x27301d3) #18 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #19 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #20 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #21 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #22 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #23 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #24 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #25 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #26 Run base/callback.h:97:12 (services_unittests+0x41846d8) #27 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #28 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #29 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #30 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #31 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #32 Run base/callback.h:97:12 (services_unittests+0x4144145) #33 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #34 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #35 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #36 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #37 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #38 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #39 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #40 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #41 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #42 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #43 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race buildtools/third_party/libc++/trunk/include/string:1426:39 in __is_long ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Write of size 8 at 0x7b14000210d0 by main thread: #0 operator delete(void*) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 (services_unittests+0x195772e) #1 __do_call buildtools/third_party/libc++/trunk/include/new:319:12 (services_unittests+0x272abde) #2 __do_deallocate_handle_size buildtools/third_party/libc++/trunk/include/new:277 (services_unittests+0x272abde) #3 __do_deallocate_handle_size_align buildtools/third_party/libc++/trunk/include/new:247 (services_unittests+0x272abde) #4 __libcpp_deallocate buildtools/third_party/libc++/trunk/include/new:325 (services_unittests+0x272abde) #5 deallocate buildtools/third_party/libc++/trunk/include/memory:1816 (services_unittests+0x272abde) #6 deallocate buildtools/third_party/libc++/trunk/include/memory:1554 (services_unittests+0x272abde) #7 __deallocate_node buildtools/third_party/libc++/trunk/include/__hash_table:1601 (services_unittests+0x272abde) #8 ~__hash_table buildtools/third_party/libc++/trunk/include/__hash_table:1539 (services_unittests+0x272abde) #9 ~unordered_map buildtools/third_party/libc++/trunk/include/unordered_map:968 (services_unittests+0x272abde) #10 net::DnsConfig::~DnsConfig() net/dns/dns_config.cc:29 (services_unittests+0x272abde) #11 ~NetworkState net/base/network_change_notifier.cc:68:27 (services_unittests+0x4b609e6) #12 operator() buildtools/third_party/libc++/trunk/include/memory:2338 (services_unittests+0x4b609e6) #13 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609e6) #14 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609e6) #15 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609e6) #16 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #17 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #18 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #19 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #20 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #21 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #22 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #23 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #24 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #25 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #26 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #27 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #28 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #29 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #30 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #31 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #32 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #33 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #34 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #35 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #36 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #37 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #38 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #39 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #40 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #41 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #42 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #43 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #44 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #45 Run base/callback.h:97:12 (services_unittests+0x51f593d) #46 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #47 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #48 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous read of size 1 at 0x7b14000210d7 by thread T18 (mutexes: write M1036807785313993664): #0 operator() base/strings/string_piece.h:536:17 (services_unittests+0x272c74e) #1 operator() net/dns/dns_hosts.h:28 (services_unittests+0x272c74e) #2 operator() buildtools/third_party/libc++/trunk/include/unordered_map:440 (services_unittests+0x272c74e) #3 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__node_insert_multi(std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*) buildtools/third_party/libc++/trunk/include/__hash_table:2040 (services_unittests+0x272c74e) #4 __emplace_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2187:20 (services_unittests+0x272c3fe) #5 __insert_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:1143 (services_unittests+0x272c3fe) #6 void std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__assign_multi<std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*> >(std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>, std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>) buildtools/third_party/libc++/trunk/include/__hash_table:1793 (services_unittests+0x272c3fe) #7 operator= buildtools/third_party/libc++/trunk/include/__hash_table:1570:9 (services_unittests+0x272adb3) #8 operator= buildtools/third_party/libc++/trunk/include/unordered_map:974 (services_unittests+0x272adb3) #9 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adb3) #10 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #11 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #12 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #13 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #14 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #15 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #16 Run base/callback.h:136:12 (services_unittests+0x27301d3) #17 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #18 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #19 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #20 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #21 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #22 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #23 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #24 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #25 Run base/callback.h:97:12 (services_unittests+0x41846d8) #26 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #27 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #28 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #29 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #30 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #31 Run base/callback.h:97:12 (services_unittests+0x4144145) #32 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #33 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #34 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #35 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #36 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #37 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #38 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #39 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #40 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #41 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #42 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 in operator delete(void*) ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Read of size 8 at 0x7b1400020770 by main thread: #0 __get_long_pointer buildtools/third_party/libc++/trunk/include/string:1505:34 (services_unittests+0x272abce) #1 ~basic_string buildtools/third_party/libc++/trunk/include/string:2138 (services_unittests+0x272abce) #2 ~pair buildtools/third_party/libc++/trunk/include/utility:315 (services_unittests+0x272abce) #3 ~pair buildtools/third_party/libc++/trunk/include/utility:315 (services_unittests+0x272abce) #4 __destroy<std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> > buildtools/third_party/libc++/trunk/include/memory:1747 (services_unittests+0x272abce) #5 destroy<std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> > buildtools/third_party/libc++/trunk/include/memory:1595 (services_unittests+0x272abce) #6 __deallocate_node buildtools/third_party/libc++/trunk/include/__hash_table:1600 (services_unittests+0x272abce) #7 ~__hash_table buildtools/third_party/libc++/trunk/include/__hash_table:1539 (services_unittests+0x272abce) #8 ~unordered_map buildtools/third_party/libc++/trunk/include/unordered_map:968 (services_unittests+0x272abce) #9 net::DnsConfig::~DnsConfig() net/dns/dns_config.cc:29 (services_unittests+0x272abce) #10 ~NetworkState net/base/network_change_notifier.cc:68:27 (services_unittests+0x4b609e6) #11 operator() buildtools/third_party/libc++/trunk/include/memory:2338 (services_unittests+0x4b609e6) #12 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609e6) #13 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609e6) #14 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609e6) #15 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #16 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #17 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #18 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #19 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #20 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #21 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #22 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #23 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #24 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #25 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #26 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #27 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #28 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #29 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #30 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #31 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #32 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #33 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #34 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #35 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #36 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #37 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #38 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #39 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #40 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #41 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #42 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #43 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #44 Run base/callback.h:97:12 (services_unittests+0x51f593d) #45 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #46 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #47 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous write of size 8 at 0x7b1400020770 by thread T18 (mutexes: write M1036807785313993664): #0 operator new(unsigned long) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:64:3 (services_unittests+0x1956fdb) #1 __libcpp_allocate buildtools/third_party/libc++/trunk/include/new:238:10 (services_unittests+0x272c421) #2 allocate buildtools/third_party/libc++/trunk/include/memory:1813 (services_unittests+0x272c421) #3 allocate buildtools/third_party/libc++/trunk/include/memory:1546 (services_unittests+0x272c421) #4 __construct_node<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2524 (services_unittests+0x272c421) #5 __emplace_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2186 (services_unittests+0x272c421) #6 __insert_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:1143 (services_unittests+0x272c421) #7 void std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__assign_multi<std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*> >(std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>, std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>) buildtools/third_party/libc++/trunk/include/__hash_table:1793 (services_unittests+0x272c421) #8 operator= buildtools/third_party/libc++/trunk/include/__hash_table:1570:9 (services_unittests+0x272adb3) #9 operator= buildtools/third_party/libc++/trunk/include/unordered_map:974 (services_unittests+0x272adb3) #10 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adb3) #11 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #12 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #13 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #14 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #15 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #16 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #17 Run base/callback.h:136:12 (services_unittests+0x27301d3) #18 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #19 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #20 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #21 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #22 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #23 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #24 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #25 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #26 Run base/callback.h:97:12 (services_unittests+0x41846d8) #27 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #28 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #29 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #30 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #31 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #32 Run base/callback.h:97:12 (services_unittests+0x4144145) #33 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #34 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #35 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #36 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #37 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #38 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #39 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #40 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #41 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #42 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #43 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Location is heap block of size 72 at 0x7b1400020760 allocated by thread T18: #0 operator new(unsigned long) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:64:3 (services_unittests+0x1956fdb) #1 __libcpp_allocate buildtools/third_party/libc++/trunk/include/new:238:10 (services_unittests+0x272c421) #2 allocate buildtools/third_party/libc++/trunk/include/memory:1813 (services_unittests+0x272c421) #3 allocate buildtools/third_party/libc++/trunk/include/memory:1546 (services_unittests+0x272c421) #4 __construct_node<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2524 (services_unittests+0x272c421) #5 __emplace_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2186 (services_unittests+0x272c421) #6 __insert_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:1143 (services_unittests+0x272c421) #7 void std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__assign_multi<std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*> >(std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>, std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>) buildtools/third_party/libc++/trunk/include/__hash_table:1793 (services_unittests+0x272c421) #8 operator= buildtools/third_party/libc++/trunk/include/__hash_table:1570:9 (services_unittests+0x272adb3) #9 operator= buildtools/third_party/libc++/trunk/include/unordered_map:974 (services_unittests+0x272adb3) #10 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adb3) #11 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #12 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #13 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #14 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #15 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #16 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #17 Run base/callback.h:136:12 (services_unittests+0x27301d3) #18 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #19 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #20 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #21 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #22 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #23 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #24 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #25 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #26 Run base/callback.h:97:12 (services_unittests+0x41846d8) #27 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #28 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #29 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #30 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #31 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #32 Run base/callback.h:97:12 (services_unittests+0x4144145) #33 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #34 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #35 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #36 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #37 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #38 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #39 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #40 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #41 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #42 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #43 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race buildtools/third_party/libc++/trunk/include/string:1505:34 in __get_long_pointer ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Write of size 8 at 0x7b08000218c0 by main thread: #0 operator delete(void*) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 (services_unittests+0x195772e) #1 __do_call buildtools/third_party/libc++/trunk/include/new:319:12 (services_unittests+0x272abd6) #2 __do_deallocate_handle_size buildtools/third_party/libc++/trunk/include/new:277 (services_unittests+0x272abd6) #3 __do_deallocate_handle_size_align buildtools/third_party/libc++/trunk/include/new:247 (services_unittests+0x272abd6) #4 __libcpp_deallocate buildtools/third_party/libc++/trunk/include/new:325 (services_unittests+0x272abd6) #5 deallocate buildtools/third_party/libc++/trunk/include/memory:1816 (services_unittests+0x272abd6) #6 deallocate buildtools/third_party/libc++/trunk/include/memory:1554 (services_unittests+0x272abd6) #7 ~basic_string buildtools/third_party/libc++/trunk/include/string:2138 (services_unittests+0x272abd6) #8 ~pair buildtools/third_party/libc++/trunk/include/utility:315 (services_unittests+0x272abd6) #9 ~pair buildtools/third_party/libc++/trunk/include/utility:315 (services_unittests+0x272abd6) #10 __destroy<std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> > buildtools/third_party/libc++/trunk/include/memory:1747 (services_unittests+0x272abd6) #11 destroy<std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> > buildtools/third_party/libc++/trunk/include/memory:1595 (services_unittests+0x272abd6) #12 __deallocate_node buildtools/third_party/libc++/trunk/include/__hash_table:1600 (services_unittests+0x272abd6) #13 ~__hash_table buildtools/third_party/libc++/trunk/include/__hash_table:1539 (services_unittests+0x272abd6) #14 ~unordered_map buildtools/third_party/libc++/trunk/include/unordered_map:968 (services_unittests+0x272abd6) #15 net::DnsConfig::~DnsConfig() net/dns/dns_config.cc:29 (services_unittests+0x272abd6) #16 ~NetworkState net/base/network_change_notifier.cc:68:27 (services_unittests+0x4b609e6) #17 operator() buildtools/third_party/libc++/trunk/include/memory:2338 (services_unittests+0x4b609e6) #18 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609e6) #19 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609e6) #20 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609e6) #21 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #22 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #23 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #24 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #25 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #26 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #27 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #28 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #29 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #30 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #31 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #32 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #33 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #34 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #35 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #36 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #37 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #38 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #39 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #40 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #41 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #42 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #43 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #44 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #45 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #46 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #47 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #48 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #49 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #50 Run base/callback.h:97:12 (services_unittests+0x51f593d) #51 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #52 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #53 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous read of size 1 at 0x7b08000218c6 by thread T18 (mutexes: write M1036807785313993664): #0 operator() base/strings/string_piece.h:536:17 (services_unittests+0x272c736) #1 operator() net/dns/dns_hosts.h:28 (services_unittests+0x272c736) #2 operator() buildtools/third_party/libc++/trunk/include/unordered_map:440 (services_unittests+0x272c736) #3 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__node_insert_multi(std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*) buildtools/third_party/libc++/trunk/include/__hash_table:2040 (services_unittests+0x272c736) #4 __emplace_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2187:20 (services_unittests+0x272c3fe) #5 __insert_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:1143 (services_unittests+0x272c3fe) #6 void std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__assign_multi<std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*> >(std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>, std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>) buildtools/third_party/libc++/trunk/include/__hash_table:1793 (services_unittests+0x272c3fe) #7 operator= buildtools/third_party/libc++/trunk/include/__hash_table:1570:9 (services_unittests+0x272adb3) #8 operator= buildtools/third_party/libc++/trunk/include/unordered_map:974 (services_unittests+0x272adb3) #9 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adb3) #10 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #11 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #12 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #13 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #14 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1:: <truncated (759929 bytes)> ed long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race base/synchronization/lock_impl_posix.cc:79:12 in base::internal::LockImpl::~LockImpl() ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Write of size 8 at 0x7b30000003f8 by main thread: #0 operator delete(void*) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 (services_unittests+0x195772e) #1 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x4b609f6) #2 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609f6) #3 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609f6) #4 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609f6) #5 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #6 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #7 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #8 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #9 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #10 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #11 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #12 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #13 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #14 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #15 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #16 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #17 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #18 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #19 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #20 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #21 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #22 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #23 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #24 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #25 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #26 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #27 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #28 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #29 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #30 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #31 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #32 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #33 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #34 Run base/callback.h:97:12 (services_unittests+0x51f593d) #35 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #36 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #37 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous write of size 8 at 0x7b30000003f8 by thread T18 (mutexes: write M1036807785313993664): #0 __vallocate buildtools/third_party/libc++/trunk/include/vector:982:23 (services_unittests+0x1a4ff73) #1 std::__1::enable_if<(__is_forward_iterator<net::IPEndPoint*>::value) && (is_constructible<net::IPEndPoint, std::__1::iterator_traits<net::IPEndPoint*>::reference>::value), void>::type std::__1::vector<net::IPEndPoint, std::__1::allocator<net::IPEndPoint> >::assign<net::IPEndPoint*>(net::IPEndPoint*, net::IPEndPoint*) buildtools/third_party/libc++/trunk/include/vector:1458 (services_unittests+0x1a4ff73) #2 operator= buildtools/third_party/libc++/trunk/include/vector:1403:9 (services_unittests+0x272ad55) #3 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272ad55) #4 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #5 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #6 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #7 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #8 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #9 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #10 Run base/callback.h:136:12 (services_unittests+0x27301d3) #11 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #12 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #13 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #14 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #15 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #16 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #17 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #18 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #19 Run base/callback.h:97:12 (services_unittests+0x41846d8) #20 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #21 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #22 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #23 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #24 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #25 Run base/callback.h:97:12 (services_unittests+0x4144145) #26 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #27 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #28 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #29 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #30 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #31 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #32 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #33 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #34 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #35 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #36 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 in operator delete(void*) ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Write of size 8 at 0x7b3000000410 by main thread: #0 operator delete(void*) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 (services_unittests+0x195772e) #1 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x4b609f6) #2 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609f6) #3 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609f6) #4 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609f6) #5 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #6 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #7 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #8 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #9 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #10 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #11 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #12 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #13 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #14 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #15 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #16 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #17 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #18 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #19 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #20 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #21 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #22 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #23 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #24 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #25 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #26 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #27 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #28 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #29 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #30 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #31 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #32 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #33 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #34 Run base/callback.h:97:12 (services_unittests+0x51f593d) #35 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #36 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #37 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous write of size 8 at 0x7b3000000410 by thread T18 (mutexes: write M1036807785313993664): #0 __vallocate buildtools/third_party/libc++/trunk/include/vector:982:23 (services_unittests+0x19e25f6) #1 std::__1::enable_if<(__is_forward_iterator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*>::value) && (is_constructible<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::iterator_traits<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*>::reference>::value), void>::type std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >::assign<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >*) buildtools/third_party/libc++/trunk/include/vector:1458 (services_unittests+0x19e25f6) #2 operator= buildtools/third_party/libc++/trunk/include/vector:1403:9 (services_unittests+0x272ad7e) #3 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272ad7e) #4 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #5 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #6 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #7 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #8 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #9 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #10 Run base/callback.h:136:12 (services_unittests+0x27301d3) #11 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #12 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #13 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #14 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #15 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #16 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #17 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #18 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #19 Run base/callback.h:97:12 (services_unittests+0x41846d8) #20 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #21 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #22 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #23 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #24 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #25 Run base/callback.h:97:12 (services_unittests+0x4144145) #26 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #27 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #28 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #29 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #30 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #31 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #32 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #33 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #34 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #35 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #36 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 in operator delete(void*) ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Write of size 8 at 0x7b3000000420 by main thread: #0 operator delete(void*) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 (services_unittests+0x195772e) #1 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x4b609f6) #2 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609f6) #3 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609f6) #4 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609f6) #5 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #6 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #7 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #8 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #9 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #10 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #11 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #12 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #13 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #14 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #15 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #16 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #17 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #18 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #19 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #20 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #21 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #22 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #23 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #24 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #25 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #26 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #27 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #28 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #29 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #30 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #31 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #32 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #33 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #34 Run base/callback.h:97:12 (services_unittests+0x51f593d) #35 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #36 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #37 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous write of size 8 at 0x7b3000000420 by thread T18 (mutexes: write M1036807785313993664): #0 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__rehash(unsigned long) buildtools/third_party/libc++/trunk/include/__hash_table:2406:41 (services_unittests+0x1d4d43c) #1 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::rehash(unsigned long) buildtools/third_party/libc++/trunk/include/__hash_table (services_unittests+0x1d4d2cf) #2 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__node_insert_multi_prepare(unsigned long, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>&) buildtools/third_party/libc++/trunk/include/__hash_table:1968:9 (services_unittests+0x272caa9) #3 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__node_insert_multi(std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*) buildtools/third_party/libc++/trunk/include/__hash_table:2041:27 (services_unittests+0x272c7d6) #4 __emplace_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2187:20 (services_unittests+0x272c3fe) #5 __insert_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:1143 (services_unittests+0x272c3fe) #6 void std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__assign_multi<std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*> >(std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>, std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>) buildtools/third_party/libc++/trunk/include/__hash_table:1793 (services_unittests+0x272c3fe) #7 operator= buildtools/third_party/libc++/trunk/include/__hash_table:1570:9 (services_unittests+0x272adb3) #8 operator= buildtools/third_party/libc++/trunk/include/unordered_map:974 (services_unittests+0x272adb3) #9 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adb3) #10 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #11 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #12 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #13 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #14 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #15 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #16 Run base/callback.h:136:12 (services_unittests+0x27301d3) #17 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #18 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #19 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #20 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #21 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #22 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #23 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #24 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #25 Run base/callback.h:97:12 (services_unittests+0x41846d8) #26 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #27 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #28 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #29 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #30 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #31 Run base/callback.h:97:12 (services_unittests+0x4144145) #32 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #33 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #34 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #35 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #36 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #37 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #38 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #39 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #40 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #41 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #42 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 in operator delete(void*) ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Write of size 8 at 0x7b3000000430 by main thread: #0 operator delete(void*) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 (services_unittests+0x195772e) #1 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x4b609f6) #2 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609f6) #3 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609f6) #4 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609f6) #5 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #6 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #7 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #8 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #9 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #10 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #11 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #12 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #13 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #14 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #15 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #16 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #17 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #18 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #19 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #20 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #21 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #22 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #23 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #24 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #25 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #26 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #27 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #28 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #29 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #30 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #31 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #32 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #33 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #34 Run base/callback.h:97:12 (services_unittests+0x51f593d) #35 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #36 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #37 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous write of size 8 at 0x7b3000000430 by thread T18 (mutexes: write M1036807785313993664): #0 __node_insert_multi_perform buildtools/third_party/libc++/trunk/include/__hash_table:2032:5 (services_unittests+0x272c968) #1 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__node_insert_multi(std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*) buildtools/third_party/libc++/trunk/include/__hash_table:2042 (services_unittests+0x272c968) #2 __emplace_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:2187:20 (services_unittests+0x272c3fe) #3 __insert_multi<const std::__1::pair<const std::__1::pair<std::__1::basic_string<char>, net::AddressFamily>, net::IPAddress> &> buildtools/third_party/libc++/trunk/include/__hash_table:1143 (services_unittests+0x272c3fe) #4 void std::__1::__hash_table<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::__unordered_map_hasher<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, net::DnsHostsKeyHash, true>, std::__1::__unordered_map_equal<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress> > >::__assign_multi<std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*> >(std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>, std::__1::__hash_const_iterator<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress>, void*>*>) buildtools/third_party/libc++/trunk/include/__hash_table:1793 (services_unittests+0x272c3fe) #5 operator= buildtools/third_party/libc++/trunk/include/__hash_table:1570:9 (services_unittests+0x272adb3) #6 operator= buildtools/third_party/libc++/trunk/include/unordered_map:974 (services_unittests+0x272adb3) #7 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adb3) #8 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #9 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #10 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #11 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #12 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #13 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #14 Run base/callback.h:136:12 (services_unittests+0x27301d3) #15 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #16 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #17 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #18 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #19 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #20 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #21 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #22 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #23 Run base/callback.h:97:12 (services_unittests+0x41846d8) #24 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #25 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #26 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #27 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #28 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #29 Run base/callback.h:97:12 (services_unittests+0x4144145) #30 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #31 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #32 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #33 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #34 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #35 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #36 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #37 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #38 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #39 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #40 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 in operator delete(void*) ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Write of size 8 at 0x7b3000000438 by main thread: #0 operator delete(void*) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 (services_unittests+0x195772e) #1 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x4b609f6) #2 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609f6) #3 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609f6) #4 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609f6) #5 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #6 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #7 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #8 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #9 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #10 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #11 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #12 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #13 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #14 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #15 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #16 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #17 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #18 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #19 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #20 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #21 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #22 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #23 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #24 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #25 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #26 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #27 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #28 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #29 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #30 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #31 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #32 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #33 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #34 Run base/callback.h:97:12 (services_unittests+0x51f593d) #35 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #36 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #37 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous write of size 4 at 0x7b3000000438 by thread T18 (mutexes: write M1036807785313993664): #0 operator= buildtools/third_party/libc++/trunk/include/__hash_table:1569:27 (services_unittests+0x272ad98) #1 operator= buildtools/third_party/libc++/trunk/include/unordered_map:974 (services_unittests+0x272ad98) #2 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272ad98) #3 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #4 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #5 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #6 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #7 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #8 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #9 Run base/callback.h:136:12 (services_unittests+0x27301d3) #10 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #11 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #12 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #13 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #14 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #15 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #16 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #17 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #18 Run base/callback.h:97:12 (services_unittests+0x41846d8) #19 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #20 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #21 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #22 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #23 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #24 Run base/callback.h:97:12 (services_unittests+0x4144145) #25 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #26 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #27 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #28 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #29 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #30 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #31 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #32 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #33 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #34 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #35 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 in operator delete(void*) ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Write of size 8 at 0x7b3000000440 by main thread: #0 operator delete(void*) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 (services_unittests+0x195772e) #1 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x4b609f6) #2 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609f6) #3 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609f6) #4 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609f6) #5 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #6 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #7 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #8 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #9 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #10 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #11 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #12 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #13 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #14 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #15 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #16 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #17 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #18 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #19 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #20 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #21 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #22 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #23 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #24 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #25 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #26 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #27 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #28 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #29 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #30 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #31 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #32 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #33 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #34 Run base/callback.h:97:12 (services_unittests+0x51f593d) #35 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #36 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #37 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous write of size 8 at 0x7b3000000440 by thread T18 (mutexes: write M1036807785313993664): #0 memcpy /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/../sanitizer_common/sanitizer_common_interceptors.inc:801:5 (services_unittests+0x18f1f07) #1 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31:55 (services_unittests+0x272adc5) #2 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #3 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #4 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #5 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #6 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #7 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #8 Run base/callback.h:136:12 (services_unittests+0x27301d3) #9 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #10 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #11 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #12 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #13 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #14 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #15 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #16 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #17 Run base/callback.h:97:12 (services_unittests+0x41846d8) #18 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #19 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #20 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #21 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #22 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #23 Run base/callback.h:97:12 (services_unittests+0x4144145) #24 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #25 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #26 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #27 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #28 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #29 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #30 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #31 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #32 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #33 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #34 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 in operator delete(void*) ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Write of size 8 at 0x7b3000000458 by main thread: #0 operator delete(void*) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 (services_unittests+0x195772e) #1 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x4b609f6) #2 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609f6) #3 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609f6) #4 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609f6) #5 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #6 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #7 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #8 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #9 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #10 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #11 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #12 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #13 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #14 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #15 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #16 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #17 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #18 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #19 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #20 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #21 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #22 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #23 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #24 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #25 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #26 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #27 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #28 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #29 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #30 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #31 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #32 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #33 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #34 Run base/callback.h:97:12 (services_unittests+0x51f593d) #35 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #36 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #37 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous read of size 8 at 0x7b3000000458 by thread T18 (mutexes: write M1036807785313993664): #0 capacity buildtools/third_party/libc++/trunk/include/vector:372:54 (services_unittests+0x272cd86) #1 capacity buildtools/third_party/libc++/trunk/include/vector:659 (services_unittests+0x272cd86) #2 std::__1::enable_if<(__is_forward_iterator<net::DnsConfig::DnsOverHttpsServerConfig*>::value) && (is_constructible<net::DnsConfig::DnsOverHttpsServerConfig, std::__1::iterator_traits<net::DnsConfig::DnsOverHttpsServerConfig*>::reference>::value), void>::type std::__1::vector<net::DnsConfig::DnsOverHttpsServerConfig, std::__1::allocator<net::DnsConfig::DnsOverHttpsServerConfig> >::assign<net::DnsConfig::DnsOverHttpsServerConfig*>(net::DnsConfig::DnsOverHttpsServerConfig*, net::DnsConfig::DnsOverHttpsServerConfig*) buildtools/third_party/libc++/trunk/include/vector:1439 (services_unittests+0x272cd86) #3 operator= buildtools/third_party/libc++/trunk/include/vector:1403:9 (services_unittests+0x272adee) #4 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adee) #5 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #6 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #7 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #8 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #9 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #10 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #11 Run base/callback.h:136:12 (services_unittests+0x27301d3) #12 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #13 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #14 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #15 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #16 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #17 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #18 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #19 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #20 Run base/callback.h:97:12 (services_unittests+0x41846d8) #21 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #22 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #23 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #24 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #25 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #26 Run base/callback.h:97:12 (services_unittests+0x4144145) #27 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #28 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #29 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #30 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #31 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #32 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #33 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #34 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #35 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #36 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #37 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 in operator delete(void*) ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Write of size 8 at 0x7b3000000460 by main thread: #0 operator delete(void*) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 (services_unittests+0x195772e) #1 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x4b609f6) #2 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609f6) #3 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609f6) #4 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609f6) #5 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #6 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #7 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #8 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #9 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #10 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #11 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #12 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #13 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #14 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #15 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #16 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #17 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #18 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #19 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #20 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #21 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #22 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #23 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #24 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #25 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #26 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #27 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #28 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #29 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #30 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #31 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #32 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #33 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #34 Run base/callback.h:97:12 (services_unittests+0x51f593d) #35 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #36 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #37 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous write of size 8 at 0x7b3000000460 by thread T18 (mutexes: write M1036807785313993664): #0 __destruct_at_end buildtools/third_party/libc++/trunk/include/vector:427:12 (services_unittests+0x272cf34) #1 __destruct_at_end buildtools/third_party/libc++/trunk/include/vector:833 (services_unittests+0x272cf34) #2 std::__1::enable_if<(__is_forward_iterator<net::DnsConfig::DnsOverHttpsServerConfig*>::value) && (is_constructible<net::DnsConfig::DnsOverHttpsServerConfig, std::__1::iterator_traits<net::DnsConfig::DnsOverHttpsServerConfig*>::reference>::value), void>::type std::__1::vector<net::DnsConfig::DnsOverHttpsServerConfig, std::__1::allocator<net::DnsConfig::DnsOverHttpsServerConfig> >::assign<net::DnsConfig::DnsOverHttpsServerConfig*>(net::DnsConfig::DnsOverHttpsServerConfig*, net::DnsConfig::DnsOverHttpsServerConfig*) buildtools/third_party/libc++/trunk/include/vector:1453 (services_unittests+0x272cf34) #3 operator= buildtools/third_party/libc++/trunk/include/vector:1403:9 (services_unittests+0x272adee) #4 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adee) #5 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #6 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #7 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #8 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #9 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #10 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #11 Run base/callback.h:136:12 (services_unittests+0x27301d3) #12 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #13 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #14 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #15 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #16 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #17 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #18 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #19 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #20 Run base/callback.h:97:12 (services_unittests+0x41846d8) #21 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #22 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #23 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #24 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #25 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #26 Run base/callback.h:97:12 (services_unittests+0x4144145) #27 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #28 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #29 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #30 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #31 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #32 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #33 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #34 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #35 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #36 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #37 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 in operator delete(void*) ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Write of size 8 at 0x7b3000000468 by main thread: #0 operator delete(void*) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 (services_unittests+0x195772e) #1 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x4b609f6) #2 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609f6) #3 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609f6) #4 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609f6) #5 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #6 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #7 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #8 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #9 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #10 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #11 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #12 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #13 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #14 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #15 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #16 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #17 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #18 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #19 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #20 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #21 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #22 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #23 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #24 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #25 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #26 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #27 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #28 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #29 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #30 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #31 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #32 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #33 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #34 Run base/callback.h:97:12 (services_unittests+0x51f593d) #35 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #36 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #37 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous read of size 8 at 0x7b3000000468 by thread T18 (mutexes: write M1036807785313993664): #0 capacity buildtools/third_party/libc++/trunk/include/vector:372:40 (services_unittests+0x272cd7a) #1 capacity buildtools/third_party/libc++/trunk/include/vector:659 (services_unittests+0x272cd7a) #2 std::__1::enable_if<(__is_forward_iterator<net::DnsConfig::DnsOverHttpsServerConfig*>::value) && (is_constructible<net::DnsConfig::DnsOverHttpsServerConfig, std::__1::iterator_traits<net::DnsConfig::DnsOverHttpsServerConfig*>::reference>::value), void>::type std::__1::vector<net::DnsConfig::DnsOverHttpsServerConfig, std::__1::allocator<net::DnsConfig::DnsOverHttpsServerConfig> >::assign<net::DnsConfig::DnsOverHttpsServerConfig*>(net::DnsConfig::DnsOverHttpsServerConfig*, net::DnsConfig::DnsOverHttpsServerConfig*) buildtools/third_party/libc++/trunk/include/vector:1439 (services_unittests+0x272cd7a) #3 operator= buildtools/third_party/libc++/trunk/include/vector:1403:9 (services_unittests+0x272adee) #4 net::DnsConfig::operator=(net::DnsConfig const&) net/dns/dns_config.cc:31 (services_unittests+0x272adee) #5 SetDnsConfig net/base/network_change_notifier.cc:77:17 (services_unittests+0x4b5fc83) #6 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc83) #7 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #8 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #9 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #10 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #11 Run base/callback.h:136:12 (services_unittests+0x27301d3) #12 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #13 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #14 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #15 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #16 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #17 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #18 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #19 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #20 Run base/callback.h:97:12 (services_unittests+0x41846d8) #21 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #22 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #23 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #24 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #25 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #26 Run base/callback.h:97:12 (services_unittests+0x4144145) #27 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #28 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #29 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #30 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #31 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #32 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #33 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #34 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #35 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #36 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #37 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 in operator delete(void*) ================== ================== WARNING: ThreadSanitizer: data race (pid=28318) Write of size 8 at 0x7b3000000470 by main thread: #0 operator delete(void*) /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 (services_unittests+0x195772e) #1 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x4b609f6) #2 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x4b609f6) #3 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x4b609f6) #4 net::NetworkChangeNotifier::~NetworkChangeNotifier() net/base/network_change_notifier.cc:181 (services_unittests+0x4b609f6) #5 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67ed4) #6 net::NetworkChangeNotifierLinux::~NetworkChangeNotifierLinux() net/base/network_change_notifier_linux.cc:110:57 (services_unittests+0x4b67f09) #7 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x530ffef) #8 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x530ffef) #9 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x530ffef) #10 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:27 (services_unittests+0x530ffef) #11 network::NetworkChangeManager::~NetworkChangeManager() services/network/network_change_manager.cc:25:47 (services_unittests+0x5310059) #12 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x534be0d) #13 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x534be0d) #14 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x534be0d) #15 network::NetworkService::~NetworkService() services/network/network_service.cc:353 (services_unittests+0x534be0d) #16 network::NetworkService::~NetworkService() services/network/network_service.cc:336:35 (services_unittests+0x534c219) #17 operator() buildtools/third_party/libc++/trunk/include/memory:2338:5 (services_unittests+0x1b55547) #18 reset buildtools/third_party/libc++/trunk/include/memory:2651 (services_unittests+0x1b55547) #19 ~unique_ptr buildtools/third_party/libc++/trunk/include/memory:2605 (services_unittests+0x1b55547) #20 network::(anonymous namespace)::NetworkServiceTestWithService::~NetworkServiceTestWithService() services/network/network_service_unittest.cc:610 (services_unittests+0x1b55547) #21 network::(anonymous namespace)::NetworkServiceTestWithService_GetDnsConfigChangeManager_Test::~NetworkServiceTestWithService_GetDnsConfigChangeManager_Test() services/network/network_service_unittest.cc:1171:1 (services_unittests+0x1b5adb9) #22 HandleExceptionsInMethodIfSupported<testing::Test, void> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a1dd2e) #23 testing::TestInfo::Run() third_party/googletest/src/googletest/src/gtest.cc:2704 (services_unittests+0x2a1dd2e) #24 testing::TestSuite::Run() third_party/googletest/src/googletest/src/gtest.cc:2828:28 (services_unittests+0x2a1e876) #25 testing::internal::UnitTestImpl::RunAllTests() third_party/googletest/src/googletest/src/gtest.cc:5285:44 (services_unittests+0x2a30c66) #26 HandleExceptionsInMethodIfSupported<testing::internal::UnitTestImpl, bool> third_party/googletest/src/googletest/src/gtest.cc (services_unittests+0x2a300c9) #27 testing::UnitTest::Run() third_party/googletest/src/googletest/src/gtest.cc:4873 (services_unittests+0x2a300c9) #28 RUN_ALL_TESTS third_party/googletest/src/googletest/include/gtest/gtest.h:2453:46 (services_unittests+0x51ec3a2) #29 base::TestSuite::Run() base/test/test_suite.cc:316 (services_unittests+0x51ec3a2) #30 Invoke<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:499:12 (services_unittests+0x1dd0818) #31 MakeItSo<int (base::TestSuite::*)(), (anonymous namespace)::ServiceTestSuite *> base/bind_internal.h:599 (services_unittests+0x1dd0818) #32 RunImpl<int (base::TestSuite::*)(), std::__1::tuple<base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, 0> base/bind_internal.h:672 (services_unittests+0x1dd0818) #33 base::internal::Invoker<base::internal::BindState<int (base::TestSuite::*)(), base::internal::UnretainedWrapper<(anonymous namespace)::ServiceTestSuite> >, int ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x1dd0818) #34 Run base/callback.h:97:12 (services_unittests+0x51f593d) #35 base::(anonymous namespace)::LaunchUnitTestsInternal(base::OnceCallback<int ()>, unsigned long, int, bool, base::OnceCallback<void ()>) base/test/launcher/unit_test_launcher.cc:158 (services_unittests+0x51f593d) #36 base::LaunchUnitTests(int, char**, base::OnceCallback<int ()>) base/test/launcher/unit_test_launcher.cc:508:10 (services_unittests+0x51f57a0) #37 main services/test/run_all_unittests.cc:97:10 (services_unittests+0x1dd044f) Previous write of size 1 at 0x7b3000000470 by thread T18 (mutexes: write M1036807785313993664): #0 SetDnsConfig net/base/network_change_notifier.cc:79:10 (services_unittests+0x4b5fc96) #1 net::NetworkChangeNotifier::SetDnsConfig(net::DnsConfig const&) net/base/network_change_notifier.cc:763 (services_unittests+0x4b5fc96) #2 Invoke<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:399:12 (services_unittests+0x4b68074) #3 MakeItSo<void (*const &)(const net::DnsConfig &), const net::DnsConfig &> base/bind_internal.h:599 (services_unittests+0x4b68074) #4 RunImpl<void (*const &)(const net::DnsConfig &), const std::__1::tuple<> &> base/bind_internal.h:672 (services_unittests+0x4b68074) #5 base::internal::Invoker<base::internal::BindState<void (*)(net::DnsConfig const&)>, void (net::DnsConfig const&)>::Run(base::internal::BindStateBase*, net::DnsConfig const&) base/bind_internal.h:654 (services_unittests+0x4b68074) #6 Run base/callback.h:136:12 (services_unittests+0x27301d3) #7 OnCompleteConfig net/dns/dns_config_service.cc:158 (services_unittests+0x27301d3) #8 net::DnsConfigService::OnHostsRead(std::__1::unordered_map<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily>, net::IPAddress, net::DnsHostsKeyHash, std::__1::equal_to<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> >, std::__1::allocator<std::__1::pair<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, net::AddressFamily> const, net::IPAddress> > > const&) net/dns/dns_config_service.cc:108 (services_unittests+0x27301d3) #9 net::internal::DnsConfigServicePosix::HostsReader::OnWorkFinished() net/dns/dns_config_service_posix.cc:385:17 (services_unittests+0x2764d2c) #10 net::SerialWorker::OnWorkJobFinished() net/dns/serial_worker.cc:63:13 (services_unittests+0x27629fb) #11 Invoke<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:499:12 (services_unittests+0x2762caa) #12 MakeItSo<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker>> base/bind_internal.h:619 (services_unittests+0x2762caa) #13 RunImpl<void (net::SerialWorker::*)(), std::__1::tuple<base::WeakPtr<net::SerialWorker> >, 0> base/bind_internal.h:672 (services_unittests+0x2762caa) #14 base::internal::Invoker<base::internal::BindState<void (net::SerialWorker::*)(), base::WeakPtr<net::SerialWorker> >, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x2762caa) #15 Run base/callback.h:97:12 (services_unittests+0x41846d8) #16 base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply(base::(anonymous namespace)::PostTaskAndReplyRelay) base/threading/post_task_and_reply_impl.cc:114 (services_unittests+0x41846d8) #17 Invoke<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:399:12 (services_unittests+0x41847c7) #18 MakeItSo<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay> base/bind_internal.h:599 (services_unittests+0x41847c7) #19 RunImpl<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), std::__1::tuple<base::(anonymous namespace)::PostTaskAndReplyRelay>, 0> base/bind_internal.h:672 (services_unittests+0x41847c7) #20 base::internal::Invoker<base::internal::BindState<void (*)(base::(anonymous namespace)::PostTaskAndReplyRelay), base::(anonymous namespace)::PostTaskAndReplyRelay>, void ()>::RunOnce(base::internal::BindStateBase*) base/bind_internal.h:641 (services_unittests+0x41847c7) #21 Run base/callback.h:97:12 (services_unittests+0x4144145) #22 base::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/task/common/task_annotator.cc:143 (services_unittests+0x4144145) #23 base::internal::TaskTracker::RunSkipOnShutdown(base::internal::Task*) base/task/thread_pool/task_tracker.cc:744:19 (services_unittests+0x4167561) #24 RunTaskWithShutdownBehavior base/task/thread_pool/task_tracker.cc:762:7 (services_unittests+0x41670de) #25 base::internal::TaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker.cc:593 (services_unittests+0x41670de) #26 base::internal::TaskTrackerPosix::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/task/thread_pool/task_tracker_posix.cc:24:16 (services_unittests+0x41da00f) #27 base::test::ScopedTaskEnvironment::TestTaskTracker::RunOrSkipTask(base::internal::Task, base::internal::TaskSource*, base::TaskTraits const&, bool) base/test/scoped_task_environment.cc:689:46 (services_unittests+0x51e7c58) #28 base::internal::TaskTracker::RunAndPopNextTask(scoped_refptr<base::internal::TaskSource>) base/task/thread_pool/task_tracker.cc:454:5 (services_unittests+0x41668f2) #29 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:320:34 (services_unittests+0x41769d0) #30 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #31 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #32 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) Mutex M1036807785313993664 is already destroyed. Thread T18 'ThreadPoolForeg' (tid=28802, running) created by thread T12 at: #0 pthread_create /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors.cc:989:3 (services_unittests+0x18e7c5b) #1 base::(anonymous namespace)::CreateThread(unsigned long, bool, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:120:13 (services_unittests+0x41da567) #2 base::PlatformThread::CreateWithPriority(unsigned long, base::PlatformThread::Delegate*, base::PlatformThreadHandle*, base::ThreadPriority) base/threading/platform_thread_posix.cc:246:10 (services_unittests+0x41da465) #3 base::internal::WorkerThread::Start(base::WorkerThreadObserver*) base/task/thread_pool/worker_thread.cc:68:3 (services_unittests+0x417600d) #4 operator() base/task/thread_pool/thread_group_impl.cc:185:15 (services_unittests+0x416e15b) #5 ForEachWorker<(lambda at ../../base/task/thread_pool/thread_group_impl.cc:184:37)> base/task/thread_pool/thread_group_impl.cc:150 (services_unittests+0x416e15b) #6 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::FlushImpl() base/task/thread_pool/thread_group_impl.cc:184 (services_unittests+0x416e15b) #7 base::internal::ThreadGroupImpl::ScopedWorkersExecutor::Flush(base::internal::CheckedLock*) base/task/thread_pool/thread_group_impl.cc:122:5 (services_unittests+0x416bdfe) #8 base::internal::ThreadGroupImpl::WorkerThreadDelegateImpl::GetWork(base::internal::WorkerThread*) base/task/thread_pool/thread_group_impl.cc:599:12 (services_unittests+0x416bb09) #9 base::internal::WorkerThread::RunWorker() base/task/thread_pool/worker_thread.cc:308:56 (services_unittests+0x417699e) #10 base::internal::WorkerThread::RunPooledWorker() base/task/thread_pool/worker_thread.cc:222:3 (services_unittests+0x4176601) #11 base::internal::WorkerThread::ThreadMain() base/task/thread_pool/worker_thread.cc:201:7 (services_unittests+0x417646f) #12 base::(anonymous namespace)::ThreadFunc(void*) base/threading/platform_thread_posix.cc:81:13 (services_unittests+0x41daa74) SUMMARY: ThreadSanitizer: data race /b/swarming/w/ir/k/src/third_party/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_new_delete.cc:126:3 in operator delete(void*) ================== [ OK ] NetworkServiceTestWithService.GetDnsConfigChangeManager (1977 ms) [ RUN ] NetworkServiceTestWithService.GetNetworkList [ OK ] NetworkServiceTestWithService.GetNetworkList (79 ms) [----------] 10 tests from NetworkServiceTestWithService (4410 ms total) [----------] Global test environment tear-down [==========] 10 tests from 1 test suite ran. (4412 ms total) [ PASSED ] 10 tests. ThreadSanitizer: reported 39 warnings ThreadSanitizer: Matched 2 suppressions (pid=28318): 2 race:net::(anonymous namespace)::g_network_change_notifier [ RUN ] NetworkServiceTestWithService.AIAFetching [2948:2948:0521/113644.954220:16207390409:ERROR:local_test_server_posix.cc(142)] LaunchPython called with PYTHONPATH = /b/s/w/ir/third_party/tlslite:/b/s/w/ir/third_party/pywebsocket/src:/b/s/w/ir/out/Release/pyproto [2948:2948:0521/113644.954428:16207390598:ERROR:local_test_server_posix.cc(153)] Running: vpython -u /b/s/w/ir/net/tools/testserver/testserver.py --aia-intermediate --data-dir=/b/s/w/ir/services/test/data --host=127.0.0.1 --https --log-to-console --port=0 --https --startup-pipe=95 AIA server started on 127.0.0.1:45229... HTTPS server started on https://127.0.0.1:40199... sending server_data: {"host": "127.0.0.1", "port": 40199} (36 bytes) handling ca_issuers request [ OK ] NetworkServiceTestWithService.AIAFetching (1015 ms) ================================================================================