DCHECK caused by chromeos::smb_client::TempFileManager::TempFileManager() |
|||
Issue description[166205:166205:0427/135243.432935:FATAL:thread_restrictions.cc(29)] Check failed: !g_blocking_disallowed.Get().Get(). Function marked as blocking was called from a scope that disallows blocking! If this task is running inside the TaskScheduler, it needs to have MayBlock() in its TaskTraits. Otherwise, consider making this blocking work asynchronous or, as a last resort, you may use ScopedAllowBlocking in a narrow scope. #0 0x7f6a2b7d6f4d base::debug::StackTrace::StackTrace() #1 0x7f6a2b506d7c base::debug::StackTrace::StackTrace() #2 0x7f6a2b57325d logging::LogMessage::~LogMessage() #3 0x7f6a2b6fef6b base::AssertBlockingAllowed() #4 0x7f6a2b7e67e5 base::CreateTemporaryDirInDirImpl() #5 0x7f6a2b7e6ed7 base::CreateNewTempDirectory() #6 0x7f6a2b5501fe base::ScopedTempDir::CreateUniqueTempDir() #7 0x55fab6f365eb chromeos::smb_client::TempFileManager::TempFileManager() #8 0x55fab6f3161c chromeos::smb_client::SmbService::SmbService() #9 0x55fab6f33e38 chromeos::smb_client::SmbServiceFactory::BuildServiceInstanceFor() #10 0x7f6a1c9e27cc BrowserContextKeyedServiceFactory::BuildServiceInstanceFor() #11 0x7f6a1e6a97b7 KeyedServiceFactory::GetServiceForContext() #12 0x7f6a1e6aaac2 KeyedServiceFactory::CreateServiceNow() #13 0x7f6a1e6a5a92 DependencyManager::CreateContextServices() #14 0x7f6a1c9df0d0 BrowserContextDependencyManager::DoCreateBrowserContextServices() #15 0x7f6a1c9def9f BrowserContextDependencyManager::CreateBrowserContextServices() #16 0x55fab7ea13df ProfileImpl::OnLocaleReady() #17 0x55fab48ec9ed _ZN4base8internal13FunctorTraitsIMN18OAuth2TokenService7FetcherEFvvEvE6InvokeIS5_PS3_JEEEvT_OT0_DpOT1_ #18 0x55fab48ec934 _ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKMN18OAuth2TokenService7FetcherEFvvEJPS5_EEEvOT_DpOT0_ #19 0x55fab7ea8f75 _ZN4base8internal7InvokerINS0_9BindStateIM11ProfileImplFvvEJNS0_17UnretainedWrapperIS3_EEEEEFvvEE7RunImplIRKS5_RKNSt3__15tupleIJS7_EEEJLm0EEEEvOT_OT0_NSE_16integer_sequenceImJXspT1_EEEE #20 0x55fab7ea8ebc _ZN4base8internal7InvokerINS0_9BindStateIM11ProfileImplFvvEJNS0_17UnretainedWrapperIS3_EEEEEFvvEE3RunEPNS0_13BindStateBaseE #21 0x55fab49238fd _ZNKR4base17RepeatingCallbackIFvvEE3RunEv #22 0x55fab6b4ee8d chromeos::UserSessionManager::RunCallbackOnLocaleLoaded() #23 0x55fab6b56ee0 _ZN4base8internal13FunctorTraitsIPFvRKNS_17RepeatingCallbackIFvvEEEPN8chromeos18InputEventsBlockerERKNS7_11locale_util20LanguageSwitchResultEEvE6InvokeIRKSF_JS6_S9_SD_EEEvOT_DpOT0_ #24 0x55fab6b56e7d _ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKPFvRKNS_17RepeatingCallbackIFvvEEEPN8chromeos18InputEventsBlockerERKNS9_11locale_util20LanguageSwitchResultEEJS8_SB_SF_EEEvOT_DpOT0_ #25 0x55fab6b56e25 _ZN4base8internal7InvokerINS0_9BindStateIPFvRKNS_17RepeatingCallbackIFvvEEEPN8chromeos18InputEventsBlockerERKNS8_11locale_util20LanguageSwitchResultEEJS5_NS0_12OwnedWrapperIS9_EEEEEFvSE_EE7RunImplIRKSG_RKNSt3__15tupleIJS5_SI_EEEJLm0ELm1EEEEvOT_OT0_NSP_16integer_sequenceImJXspT1_EEEESE_ #26 0x55fab6b56d24 _ZN4base8internal7InvokerINS0_9BindStateIPFvRKNS_17RepeatingCallbackIFvvEEEPN8chromeos18InputEventsBlockerERKNS8_11locale_util20LanguageSwitchResultEEJS5_NS0_12OwnedWrapperIS9_EEEEEFvSE_EE3RunEPNS0_13BindStateBaseESE_ #27 0x55fab49deded _ZNKR4base17RepeatingCallbackIFvRKNSt3__16vectorINS1_12basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEENS6_IS8_EEEEEE3RunESC_ #28 0x55fab67751e4 chromeos::(anonymous namespace)::FinishSwitchLanguage() #29 0x55fab6775d14 _ZN4base8internal13FunctorTraitsIPFvNSt3__110unique_ptrIN8chromeos12_GLOBAL__N_118SwitchLanguageDataENS2_14default_deleteIS6_EEEEEvE6InvokeIRKSB_JS9_EEEvOT_DpOT0_ #30 0x55fab6775b7d _ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKPFvNSt3__110unique_ptrIN8chromeos12_GLOBAL__N_118SwitchLanguageDataENS4_14default_deleteIS8_EEEEEJSB_EEEvOT_DpOT0_ #31 0x55fab6775a90 _ZN4base8internal7InvokerINS0_9BindStateIPFvNSt3__110unique_ptrIN8chromeos12_GLOBAL__N_118SwitchLanguageDataENS3_14default_deleteIS7_EEEEEJNS0_13PassedWrapperISA_EEEEEFvvEE7RunImplIRKSC_RKNS3_5tupleIJSE_EEEJLm0EEEEvOT_OT0_NS3_16integer_sequenceImJXspT1_EEEE #32 0x55fab67759bc _ZN4base8internal7InvokerINS0_9BindStateIPFvNSt3__110unique_ptrIN8chromeos12_GLOBAL__N_118SwitchLanguageDataENS3_14default_deleteIS7_EEEEEJNS0_13PassedWrapperISA_EEEEEFvvEE3RunEPNS0_13BindStateBaseE #33 0x7f6a2b4b7ec1 _ZNO4base12OnceCallbackIFvvEE3RunEv #34 0x7f6a2b6f006e base::(anonymous namespace)::PostTaskAndReplyRelay::RunReply() #35 0x7f6a2b6f03b0 _ZN4base8internal13FunctorTraitsIPFvNS_12_GLOBAL__N_121PostTaskAndReplyRelayEEvE6InvokeIS5_JS3_EEEvOT_DpOT0_ #36 0x7f6a2b6f031d _ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIPFvNS_12_GLOBAL__N_121PostTaskAndReplyRelayEEJS5_EEEvOT_DpOT0_ #37 0x7f6a2b6f02e0 _ZN4base8internal7InvokerINS0_9BindStateIPFvNS_12_GLOBAL__N_121PostTaskAndReplyRelayEEJS4_EEEFvvEE7RunImplIS6_NSt3__15tupleIJS4_EEEJLm0EEEEvOT_OT0_NSB_16integer_sequenceImJXspT1_EEEE #38 0x7f6a2b6f0239 _ZN4base8internal7InvokerINS0_9BindStateIPFvNS_12_GLOBAL__N_121PostTaskAndReplyRelayEEJS4_EEEFvvEE7RunOnceEPNS0_13BindStateBaseE #39 0x7f6a2b4b7ec1 _ZNO4base12OnceCallbackIFvvEE3RunEv #40 0x7f6a2b50817a base::debug::TaskAnnotator::RunTask() #41 0x7f6a2b59486a base::internal::IncomingTaskQueue::RunTask() #42 0x7f6a2b59cec1 base::MessageLoop::RunTask() #43 0x7f6a2b59d115 base::MessageLoop::DeferOrRunPendingTask() #44 0x7f6a2b59d3d3 base::MessageLoop::DoWork() #45 0x7f6a2b80cb1b base::MessagePumpLibevent::Run() #46 0x7f6a2b59c7ae base::MessageLoop::Run() #47 0x7f6a2b645f02 base::RunLoop::Run() #48 0x55fab771499c ChromeBrowserMainParts::MainMessageLoopRun() #49 0x7f6a2425090a content::BrowserMainLoop::RunMainMessageLoopParts() #50 0x7f6a24258360 content::BrowserMainRunnerImpl::Run() #51 0x7f6a24244ac3 content::BrowserMain() #52 0x7f6a26181d7e content::RunNamedProcessTypeMain() #53 0x7f6a2618542a content::ContentMainRunnerImpl::Run() #54 0x7f6a26178c05 content::ContentServiceManagerMainDelegate::RunEmbedderProcess() #55 0x7f6a2bd86583 service_manager::Main() #56 0x7f6a2617ed5b content::ContentMain() #57 0x55fab47abcf0 ChromeMain #58 0x55fab47abc02 main #59 0x7f6a079ba2b1 __libc_start_main #60 0x55fab47abada _start
,
May 2 2018
Allen found the problem yesterday. We will temporarily scope the call to prevent the DCHECK while refactoring to make this piece of the code happen on demand asynchronously.
,
May 2 2018
,
May 2 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d6e03f2b8ae7ac22a65dffcbebe979ec5eea5339 commit d6e03f2b8ae7ac22a65dffcbebe979ec5eea5339 Author: Allen Vicencio <allenvic@chromium.org> Date: Wed May 02 22:08:29 2018 Fix for DCHECK on SmbService initialization This removes the initialization of TempFileManager in SmbService. With this change, Mount will be in a broken state and will be fixed in a future CL. Bug: 837492 Change-Id: I07689fd5a19e2bf56aac5d2f6cd9085d2352dcad Reviewed-on: https://chromium-review.googlesource.com/1040678 Commit-Queue: Allen Vicencio <allenvic@chromium.org> Commit-Queue: Zentaro Kavanagh <zentaro@chromium.org> Reviewed-by: Zentaro Kavanagh <zentaro@chromium.org> Cr-Commit-Position: refs/heads/master@{#555570} [modify] https://crrev.com/d6e03f2b8ae7ac22a65dffcbebe979ec5eea5339/chrome/browser/chromeos/smb_client/smb_service.cc [modify] https://crrev.com/d6e03f2b8ae7ac22a65dffcbebe979ec5eea5339/chrome/browser/chromeos/smb_client/smb_service.h
,
May 2 2018
Note that the merged changed only stops the DCHECK from happening and doesn't fix the root problem, so this bug shouldn't be closed. A bit of background: The DCHECK was getting triggered since we were initializing TempFileManager's temp directory when SmbService gets initialized (which happens on the UI thread). I am working on a CL that will initialize TempFileManager asynchronously.
,
May 7 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/bdf0095711b039373cbdd8c70f16a9e488017157 commit bdf0095711b039373cbdd8c70f16a9e488017157 Author: Allen Vicencio <allenvic@chromium.org> Date: Mon May 07 19:08:11 2018 Change initialization of TempFileManager to async in SmbService Makes initialization of TempFileManager asynchronous in SmbService due to ScopedTempDir needing a blocking thread to initialize the temporary directory. CQ-DEPEND=CL:1043000 Bug: 837492 Change-Id: I91b2695c551267d18bca03fa9f0304eeb1aba95d Reviewed-on: https://chromium-review.googlesource.com/1042950 Reviewed-by: Zentaro Kavanagh <zentaro@chromium.org> Commit-Queue: Allen Vicencio <allenvic@chromium.org> Cr-Commit-Position: refs/heads/master@{#556519} [modify] https://crrev.com/bdf0095711b039373cbdd8c70f16a9e488017157/chrome/browser/chromeos/smb_client/smb_service.cc [modify] https://crrev.com/bdf0095711b039373cbdd8c70f16a9e488017157/chrome/browser/chromeos/smb_client/smb_service.h
,
May 7 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4bc42f6223d52c7e885761bd0b93f26763eb38b5 commit 4bc42f6223d52c7e885761bd0b93f26763eb38b5 Author: Allen Vicencio <allenvic@chromium.org> Date: Mon May 07 19:56:32 2018 Change initialization of TempFileManager to async in SmbFileSystem Makes initialization of TempFileManager asynchronous in SmbFileSystem due to ScopedTempDir needing a blocking thread to initialize its temporary directory. Bug: 837492 Change-Id: I1d19ede7bb566017cbb532af4cdf463946d631aa Reviewed-on: https://chromium-review.googlesource.com/1043000 Reviewed-by: Zentaro Kavanagh <zentaro@chromium.org> Commit-Queue: Allen Vicencio <allenvic@chromium.org> Cr-Commit-Position: refs/heads/master@{#556536} [modify] https://crrev.com/4bc42f6223d52c7e885761bd0b93f26763eb38b5/chrome/browser/chromeos/smb_client/smb_file_system.cc [modify] https://crrev.com/4bc42f6223d52c7e885761bd0b93f26763eb38b5/chrome/browser/chromeos/smb_client/smb_file_system.h
,
May 8 2018
|
|||
►
Sign in to add a comment |
|||
Comment 1 by rsorokin@chromium.org
, May 2 2018