Flaky deadlock in SubprocessMetricsProvider::BrowserChildProcessHostDisconnected |
|||
Issue descriptionTest: ExtensionDisabledGlobalErrorTest.HigherPermissionsFromSync From CQ on https://chromium-review.googlesource.com/c/578482/ https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Ftryserver.chromium.linux%2Flinux_chromium_rel_ng%2F510591%2F%2B%2Frecipes%2Fsteps%2Fsite_per_process_browser_tests__with_patch_%2F0%2Flogs%2FExtensionDisabledGlobalErrorTest.HigherPermissionsFromSync%2F0 """ [ RUN ] ExtensionDisabledGlobalErrorTest.HigherPermissionsFromSync Xlib: extension "RANDR" missing on display ":99". [27398:27398:0726/185626.283524:WARNING:password_store_factory.cc(255)] Using basic (unencrypted) store for password storage. See https://chromium.googlesource.com/chromium/src/+/master/docs/linux_password_storage.md for more information about password storage options. LaunchProcess: failed to execvp: xdg-desktop-menu BrowserTestBase received signal: Terminated. Backtrace: #0 0x000002cb3d47 base::debug::StackTrace::StackTrace() #1 0x00000333c141 content::(anonymous namespace)::DumpStackTraceSignalHandler() #2 0x7f284576ccb0 <unknown> #3 0x7f2845b0cf1a __lll_lock_wait #4 0x7f2845b08649 _L_lock_909 #5 0x7f2845b08470 __GI___pthread_mutex_lock #6 0x000002d10b5d base::internal::LockImpl::Lock() #7 0x000002ceba25 base::StatisticsRecorder::RegisterOrDeleteDuplicateRanges() #8 0x000002ce3f57 base::PersistentHistogramAllocator::CreateHistogram() #9 0x000002ce3c27 base::PersistentHistogramAllocator::GetHistogram() #10 0x000002ce6222 base::GlobalHistogramAllocator::ImportHistogramsToStatisticsRecorder() #11 0x000002cecb2d base::StatisticsRecorder::ValidateAllHistograms() #12 0x000002e3574c SubprocessMetricsProvider::MergeHistogramDeltasFromAllocator() #13 0x000002e356a2 SubprocessMetricsProvider::DeregisterSubprocessAllocator() #14 0x000002e36087 SubprocessMetricsProvider::BrowserChildProcessHostDisconnected() #15 0x0000019b52c4 content::(anonymous namespace)::NotifyProcessHostDisconnected() #16 0x000002cb447b base::debug::TaskAnnotator::RunTask() #17 0x000002cd3a5a base::MessageLoop::RunTask() #18 0x000002cd3d92 base::MessageLoop::DeferOrRunPendingTask() #19 0x000002cd4074 base::MessageLoop::DoWork() #20 0x000002cd5dda base::(anonymous namespace)::WorkSourceDispatch() #21 0x7f28446f9e04 g_main_context_dispatch #22 0x7f28446fa048 <unknown> #23 0x7f28446fa0ec g_main_context_iteration #24 0x000002cd5bb6 base::MessagePumpGlib::Run() #25 0x000002cd361f base::MessageLoop::Run() #26 0x000002cfd617 base::RunLoop::Run() #27 0x00000336ad8b content::MessageLoopRunner::Run() #28 0x00000336b2a0 content::WindowedNotificationObserver::Wait() #29 0x00000713c67d extensions::ExtensionTestNotificationObserver::Wait() #30 0x000000f823bf ExtensionBrowserTest::InstallOrUpdateExtension() #31 0x000000f829dd ExtensionBrowserTest::InstallOrUpdateExtension() #32 0x000000f919dd ExtensionDisabledGlobalErrorTest_HigherPermissionsFromSync_Test::RunTestOnMainThread() #33 0x00000333beb1 content::BrowserTestBase::ProxyRunTestOnMainThreadLoop() #34 0x00000315ad1d ChromeBrowserMainParts::PreMainMessageLoopRunImpl() #35 0x000003159a6a ChromeBrowserMainParts::PreMainMessageLoopRun() #36 0x0000019bef8d content::BrowserMainLoop::PreMainMessageLoopRun() #37 0x000001db5317 content::StartupTaskRunner::RunAllTasksNow() #38 0x0000019bd1ee content::BrowserMainLoop::CreateStartupTasks() #39 0x0000019c1ede content::BrowserMainRunnerImpl::Initialize() #40 0x0000019ba5a2 content::BrowserMain() #41 0x000002c92a2c content::RunNamedProcessTypeMain() #42 0x000002c93398 content::ContentMainRunnerImpl::Run() #43 0x00000493b646 service_manager::Main() #44 0x000002c91e42 content::ContentMain() #45 0x00000333bb37 content::BrowserTestBase::SetUp() #46 0x000002d8c3c2 InProcessBrowserTest::SetUp() #47 0x000001325b5e testing::Test::Run() #48 0x000001326680 testing::TestInfo::Run() #49 0x000001326b67 testing::TestCase::Run() #50 0x00000132cfd7 testing::internal::UnitTestImpl::RunAllTests() #51 0x00000132cc63 testing::UnitTest::Run() #52 0x000002d9f7d4 base::TestSuite::Run() #53 0x000002ca6e7a ChromeTestSuiteRunner::RunTestSuite() #54 0x000003364b6d content::LaunchTests() #55 0x000002ca6de7 main #56 0x7f2845757f45 __libc_start_main #57 0x000000559fe0 <unknown> """
,
Jul 27 2017
Eek! This is caused by my recent instrumentation CL that added the validate call. Let me try to fix this before tomorrow's canary.
,
Jul 27 2017
Fix sent to cq: https://chromium-review.googlesource.com/c/588271/ Hopefully it lands before canary is built.
,
Jul 27 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4e5bc10e2ea3c128fee236775da53fdf19ebc0e9 commit 4e5bc10e2ea3c128fee236775da53fdf19ebc0e9 Author: Alexei Svitkine <asvitkine@chromium.org> Date: Thu Jul 27 13:42:27 2017 Move ImportGlobalPersistentHistograms() outside lock. This function can create histograms which requires grabbing the lock, so should not be called under lock. In particular, previously we would call that function from begin(), but since that's being done under lock, this CL moves the call out of begin() and to the callers of begin() prior to locking. Hoping to land this before tomorrow's canary as it was made more likely by https://chromium-review.googlesource.com/586913 which I landed earlier today. BUG= 749390 Change-Id: I8f038180f6f54ff21f6b0e33a76747e914987843 Reviewed-on: https://chromium-review.googlesource.com/588271 Reviewed-by: Ilya Sherman <isherman@chromium.org> Commit-Queue: Alexei Svitkine (OOO July28-Aug6) <asvitkine@chromium.org> Cr-Commit-Position: refs/heads/master@{#489909} [modify] https://crrev.com/4e5bc10e2ea3c128fee236775da53fdf19ebc0e9/base/metrics/statistics_recorder.cc [modify] https://crrev.com/4e5bc10e2ea3c128fee236775da53fdf19ebc0e9/base/metrics/statistics_recorder_unittest.cc
,
Jul 27 2017
,
Jul 27 2017
Issue 749724 has been merged into this issue.
,
Jul 27 2017
Merging this to 3168 - today's canary branch, so it can be picked up in a respun canary. (We'll have one for Android at least, not sure about other platforms.)
,
Jul 27 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/39a81875d8f9e78ea93c2125111221b1511c7fd0 commit 39a81875d8f9e78ea93c2125111221b1511c7fd0 Author: Alexei Svitkine <asvitkine@chromium.org> Date: Thu Jul 27 18:11:55 2017 Move ImportGlobalPersistentHistograms() outside lock. This function can create histograms which requires grabbing the lock, so should not be called under lock. In particular, previously we would call that function from begin(), but since that's being done under lock, this CL moves the call out of begin() and to the callers of begin() prior to locking. Hoping to land this before tomorrow's canary as it was made more likely by https://chromium-review.googlesource.com/586913 which I landed earlier today. BUG= 749390 TBR=asvitkine@chromium.org (cherry picked from commit 4e5bc10e2ea3c128fee236775da53fdf19ebc0e9) Change-Id: I8f038180f6f54ff21f6b0e33a76747e914987843 Reviewed-on: https://chromium-review.googlesource.com/588271 Reviewed-by: Ilya Sherman <isherman@chromium.org> Commit-Queue: Alexei Svitkine (OOO July28-Aug6) <asvitkine@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#489909} Reviewed-on: https://chromium-review.googlesource.com/590357 Reviewed-by: Alexei Svitkine (OOO July28-Aug6) <asvitkine@chromium.org> Cr-Commit-Position: refs/branch-heads/3168@{#5} Cr-Branched-From: da2455bea333a5a4bfe61ba1fcfe9e325dc368e1-refs/heads/master@{#489803} [modify] https://crrev.com/39a81875d8f9e78ea93c2125111221b1511c7fd0/base/metrics/statistics_recorder.cc [modify] https://crrev.com/39a81875d8f9e78ea93c2125111221b1511c7fd0/base/metrics/statistics_recorder_unittest.cc |
|||
►
Sign in to add a comment |
|||
Comment 1 by asvitk...@chromium.org
, Jul 27 2017Owner: asvitk...@chromium.org
Status: Assigned (was: Untriaged)