AssertBaseSyncPrimitivesAllowed() crash at shutdown |
|||
Issue descriptionhttps://chromium-review.googlesource.com/c/chromium/src/+/1384646 introduced a shutdown crash on iOS. One way to repro is to kill the app while it is in the foreground, triggering a clean shutdown. ios_web_view_inttests is also crashing on the bots, for similar reasons. It seems like we need to add an additional exception somewhere. Thread 0 Crashed:: CrWebMain Dispatch queue: com.apple.main-thread 0 org.chromium.ChromeWebView 0x00000001159b9ad4 base::debug::BreakDebugger() + 20 1 org.chromium.ChromeWebView 0x00000001157ae15c logging::LogMessage::~LogMessage() + 1852 2 org.chromium.ChromeWebView 0x00000001157aca15 logging::LogMessage::~LogMessage() + 21 3 org.chromium.ChromeWebView 0x000000011592cb2c base::internal::AssertBaseSyncPrimitivesAllowed() + 188 4 org.chromium.ChromeWebView 0x000000011591a76d base::internal::ScopedBlockingCallWithBaseSyncPrimitives::ScopedBlockingCallWithBaseSyncPrimitives(base::BlockingType) + 237 5 org.chromium.ChromeWebView 0x000000011591a86b base::internal::ScopedBlockingCallWithBaseSyncPrimitives::ScopedBlockingCallWithBaseSyncPrimitives(base::BlockingType) + 27 6 org.chromium.ChromeWebView 0x00000001159d4d9e base::PlatformThread::Join(base::PlatformThreadHandle) + 62 7 org.chromium.ChromeWebView 0x0000000115920905 base::Thread::Stop() + 293 8 org.chromium.ChromeWebView 0x000000011456900d web::WebSubThread::~WebSubThread() + 45 9 org.chromium.ChromeWebView 0x0000000114569035 web::WebSubThread::~WebSubThread() + 21 10 org.chromium.ChromeWebView 0x0000000114569059 web::WebSubThread::~WebSubThread() + 25 11 org.chromium.ChromeWebView 0x00000001156797ff std::__1::default_delete<web::WebSubThread>::operator()(web::WebSubThread*) const + 47 12 org.chromium.ChromeWebView 0x0000000115677acf std::__1::unique_ptr<web::WebSubThread, std::__1::default_delete<web::WebSubThread> >::reset(web::WebSubThread*) + 95 13 org.chromium.ChromeWebView 0x0000000115677906 web::WebMainLoop::ShutdownThreadsAndCleanUp() + 358 14 org.chromium.ChromeWebView 0x000000011567a200 web::WebMainRunnerImpl::ShutDown() + 448 15 org.chromium.ChromeWebView 0x000000011567601d web::WebMain::~WebMain() + 45 16 org.chromium.ChromeWebView 0x0000000115676065 web::WebMain::~WebMain() + 21 17 org.chromium.ChromeWebView 0x00000001145ef9ab std::__1::default_delete<web::WebMain>::operator()(web::WebMain*) const + 43 18 org.chromium.ChromeWebView 0x00000001145ef92f std::__1::unique_ptr<web::WebMain, std::__1::default_delete<web::WebMain> >::reset(web::WebMain*) + 95 19 org.chromium.ChromeWebView 0x00000001145ef8c9 std::__1::unique_ptr<web::WebMain, std::__1::default_delete<web::WebMain> >::~unique_ptr() + 25 20 org.chromium.ChromeWebView 0x00000001145ef1e5 std::__1::unique_ptr<web::WebMain, std::__1::default_delete<web::WebMain> >::~unique_ptr() + 21 21 libsystem_c.dylib 0x00000001111a795d __cxa_finalize_ranges + 351 22 libsystem_c.dylib 0x00000001111a7c98 exit + 48 23 com.apple.UIKitCore 0x000000010dde8a12 -[UIApplication _terminateWithStatus:] + 276
,
Dec 27
Ah, thanks for the report. I was under the impression iOS never went through clean shutdown. I guess it's possible but we don't have CQ coverage for it?
,
Dec 27
,
Dec 27
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/be8e5da750961cdc67572a9c53ead47c5aa943d7 commit be8e5da750961cdc67572a9c53ead47c5aa943d7 Author: Rohit Rao <rohitrao@chromium.org> Date: Thu Dec 27 22:28:41 2018 [ios] Fixes an AssertBaseSyncPrimitivesAllowed() crash at shutdown. Adds calls to SetWaitAllowed() when shutdown is initiated, similar to the existing code in BrowserMainLoop. BUG= 917583 ,800808 Change-Id: I53ad0df9c28a0e14348f6c9ad5be97446732505b Reviewed-on: https://chromium-review.googlesource.com/c/1390912 Reviewed-by: Gabriel Charette <gab@chromium.org> Commit-Queue: Gabriel Charette <gab@chromium.org> Cr-Commit-Position: refs/heads/master@{#619077} [modify] https://crrev.com/be8e5da750961cdc67572a9c53ead47c5aa943d7/base/threading/thread_restrictions.h [modify] https://crrev.com/be8e5da750961cdc67572a9c53ead47c5aa943d7/ios/web/app/web_main_loop.mm
,
Dec 28
Should be fixed now, no link to problematic bot in OP but iOS waterfall is green AFAICT. |
|||
►
Sign in to add a comment |
|||
Comment 1 by rohitrao@chromium.org
, Dec 26