In my debug trunk build, on starting Chrome, I hit a LOG(FATAL) with the following call stack:
base::ThreadRestrictions::AssertSingletonAllowed() Line 62
base::LazyInstance<WinsockInitSingleton>::Pointer() Line 158
base::LazyInstance<WinsockInitSingleton>::Get() Line 138
net::EnsureWinsockInit() Line 49
device::BluetoothTaskManagerWin::DiscoverServices() Line 616
device::BluetoothTaskManagerWin::SearchDevices() Line 512
device::BluetoothTaskManagerWin::GetKnownDevices() Line 499
device::BluetoothTaskManagerWin::PollAdapter() Line 401
device::BluetoothTaskManagerWin::StartPolling() Line 282
base::internal::FunctorTraits<>() Line 215
base::internal::InvokeHelper<>() Line 285
base::internal::Invoker<>::RunImpl<>() Line 350
base::internal::Invoker<>::Run() Line 328
base::Callback<>::Run() Line 390
base::SequencedWorkerPool::Inner::ThreadLoop() Line 844
base::SequencedWorkerPool::Worker::Run() Line 544
base::SimpleThread::ThreadMain() Line 76
base::`anonymous namespace'::ThreadFunc() Line 85
Here, BluetoothTaskManagerWin::DiscoverServices() calls net::EnsureWinsockInit(), which touches a singleton which is not allowed to be used on this thread.
WinsockInit() and the call to it in this function are both years old, so I presume the problem is elsewhere lower down the stack.
Comment 1 by jkarlin@chromium.org
, Aug 1 2016Status: Duplicate (was: Untriaged)