v4_store destructor running on IO thread, causing DCHECK to fire |
|
Issue description
This is from a checkout of M67 trunk at 6192373ec47ae3e19c8eadc40830f. I'm *sometimes* getting a DHECK in shutdown with the following stacktrace:
[29292:10484:0409/111322.360:FATAL:v4_store.cc(215)] Check failed: task_runner_->RunsTasksInCurrentSequence().
Backtrace:
base::debug::StackTrace::StackTrace [0x6885A606+102] (C:\src\chrome\src\base\debug\stack_trace_win.cc:286)
base::debug::StackTrace::StackTrace [0x688596AB+27] (C:\src\chrome\src\base\debug\stack_trace.cc:199)
logging::LogMessage::~LogMessage [0x688B91D4+148] (C:\src\chrome\src\base\logging.cc:595)
safe_browsing::V4Store::~V4Store [0x5F00EBAF+207] (C:\src\chrome\src\components\safe_browsing\db\v4_store.cc:216)
safe_browsing::V4Store::~V4Store [0x5F014FC5+37] (C:\src\chrome\src\components\safe_browsing\db\v4_store.cc:214)
std::default_delete<safe_browsing::V4Store>::operator() [0x5F017384+52] (C:\src\chrome\src\third_party\depot_tools\win_toolchain\vs_files\1180cb75833ea365097e279efb2d5d7a42dee4b0\VC\Tools\MSVC\14.11.25503\include\memory:1999)
std::unique_ptr<safe_browsing::V4Store,std::default_delete<safe_browsing::V4Store> >::~unique_ptr [0x5F00E36D+61] (C:\src\chrome\src\third_party\depot_tools\win_toolchain\vs_files\1180cb75833ea365097e279efb2d5d7a42dee4b0\VC\Tools\MSVC\14.11.25503\include\memory:2203)
std::_Tuple_val<std::unique_ptr<safe_browsing::V4Store,std::default_delete<safe_browsing::V4Store> > >::~_Tuple_val [0x5F01CDFF+15] (C:\src\chrome\src\third_party\depot_tools\win_toolchain\vs_files\1180cb75833ea365097e279efb2d5d7a42dee4b0\VC\Tools\MSVC\14.11.25503\include\tuple:148)
std::tuple<std::unique_ptr<safe_browsing::V4Store,std::default_delete<safe_browsing::V4Store> > >::~tuple [0x5F01CDDF+15] (C:\src\chrome\src\third_party\depot_tools\win_toolchain\vs_files\1180cb75833ea365097e279efb2d5d7a42dee4b0\VC\Tools\MSVC\14.11.25503\include\tuple:262)
base::internal::BindState<base::RepeatingCallback<void (std::unique_ptr<safe_browsing::V4Store,std::default_delete<safe_browsing::V4Store> >)>,std::unique_ptr<safe_browsing::V4Store,std::default_delete<safe_browsing::V4Store> > >::~BindState [0x5F01CDAB+27] (C:\src\chrome\src\base\bind_internal.h:723)
base::internal::BindState<base::RepeatingCallback<void (std::unique_ptr<safe_browsing::V4Store,std::default_delete<safe_browsing::V4Store> >)>,std::unique_ptr<safe_browsing::V4Store,std::default_delete<safe_browsing::V4Store> > >::Destroy [0x5F01CC23+35] (C:\src\chrome\src\base\bind_internal.h:726)
base::internal::BindStateBaseRefCountTraits::Destruct [0x688020FA+26] (C:\src\chrome\src\base\callback_internal.cc:22)
base::RefCountedThreadSafe<base::internal::BindStateBase,base::internal::BindStateBaseRefCountTraits>::Release [0x687FA7E0+48] (C:\src\chrome\src\base\memory\ref_counted.h:389)
scoped_refptr<base::internal::BindStateBase>::Release [0x68802A62+18] (C:\src\chrome\src\base\memory\scoped_refptr.h:281)
scoped_refptr<base::internal::BindStateBase>::~scoped_refptr [0x688028B5+37] (C:\src\chrome\src\base\memory\scoped_refptr.h:209)
base::internal::CallbackBase::~CallbackBase [0x688020CF+15] (C:\src\chrome\src\base\callback_internal.cc:74)
base::OnceCallback<void ()>::~OnceCallback [0x687FEA6F+15] (C:\src\chrome\src\base\callback_forward.h:11)
base::PendingTask::~PendingTask [0x6898B30F+15] (C:\src\chrome\src\base\pending_task.cc:22)
base::MessageLoop::DoWork [0x688F2E70+496] (C:\src\chrome\src\base\message_loop\message_loop.cc:411)
base::MessagePumpForIO::DoRunLoop [0x688FDFDC+28] (C:\src\chrome\src\base\message_loop\message_pump_win.cc:481)
base::MessagePumpWin::Run [0x688FC3A9+185] (C:\src\chrome\src\base\message_loop\message_pump_win.cc:59)
base::MessageLoop::Run [0x688F1CD8+504] (C:\src\chrome\src\base\message_loop\message_loop.cc:306)
base::RunLoop::Run [0x689B61C8+488] (C:\src\chrome\src\base\run_loop.cc:130)
base::Thread::Run [0x68A72257+375] (C:\src\chrome\src\base\threading\thread.cc:255)
content::BrowserProcessSubThread::IOThreadRun [0x5947A7F0+48] (C:\src\chrome\src\content\browser\browser_process_sub_thread.cc:155)
content::BrowserProcessSubThread::Run [0x5947A6D9+313] (C:\src\chrome\src\content\browser\browser_process_sub_thread.cc:105)
base::Thread::ThreadMain [0x68A72A65+1221] (C:\src\chrome\src\base\threading\thread.cc:338)
base::`anonymous namespace'::ThreadFunc [0x68A65C96+310] (C:\src\chrome\src\base\threading\platform_thread_win.cc:93)
BaseThreadInitThunk [0x76CF62C4+36]
RtlSubscribeWnfStateChangeNotification [0x76EF0F79+1081]
RtlSubscribeWnfStateChangeNotification [0x76EF0F44+1028]
,
Jun 13 2018
(This is still happening in M69, FWIW) |
|
►
Sign in to add a comment |
|
Comment 1 by vakh@chromium.org
, Apr 13 2018Status: Assigned (was: Untriaged)