New issue
Advanced search Search tips

Issue 787522 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2017
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 783519



Sign in to add a comment

content_shell crash fails

Project Member Reported by johannko...@google.com, Nov 21 2017

Issue description

What steps will reproduce the problem?
(1) "checkout_libaom": True
(2) ./out/Default/content_shell --run-layout-test chrome://crash --enable-crash-reporter --crash-dumps-dir=/tmp/crash

What happens instead?

https://logs.chromium.org/v/?s=chromium%2Fbb%2Ftryserver.chromium.linux%2Flinux_chromium_rel_ng%2F592106%2F%2B%2Frecipes%2Fsteps%2Fcontent_shell_crash_test__with_patch_%2F0%2Fstdout

[31170:31170:1121/101302.257775:FATAL:feature_list.cc(259)] Check failed: !g_initialized_from_accessor. 

Seems like it might be related to the feature check somehow? This might be something I broke setting up the flag, so I'll try to dig into it too.

Rest of stack trace:
#0 0x00000241888c base::debug::StackTrace::StackTrace()
#1 0x00000242e62c logging::LogMessage::~LogMessage()
#2 0x00000241bce8 base::FeatureList::InitializeInstance()
#3 0x000001e9ce16 content::BrowserMainLoop::PreCreateThreads()
#4 0x0000021cf2d7 content::StartupTaskRunner::RunAllTasksNow()
#5 0x000001e9d48c content::BrowserMainLoop::CreateStartupTasks()
#6 0x000001ea20c8 content::BrowserMainRunnerImpl::Initialize()
#7 0x0000023cf1ad LayoutTestBrowserMain()
#8 0x0000023ce702 content::ShellMainDelegate::RunProcess()
#9 0x000001de0040 content::RunNamedProcessTypeMain()
#10 0x000001de0a55 content::ContentMainRunnerImpl::Run()
#11 0x000003603bcf service_manager::Main()
#12 0x0000015ad861 content::ContentMain()
#13 0x000001040152 main
#14 0x7f71fc5362b1 __libc_start_main
#15 0x00000104002a _start

Failed to generate minidump.Received signal 6
#0 0x00000241888c base::debug::StackTrace::StackTrace()
#1 0x0000024183f1 base::debug::(anonymous namespace)::StackDumpSignalHandler()
#2 0x7f7200f7d0c0 <unknown>
#3 0x7f71fc548fcf gsignal
#4 0x7f71fc54a3fa abort
#5 0x000002417065 base::debug::BreakDebugger()
#6 0x00000242ea41 logging::LogMessage::~LogMessage()
#7 0x00000241bce8 base::FeatureList::InitializeInstance()
#8 0x000001e9ce16 content::BrowserMainLoop::PreCreateThreads()
#9 0x0000021cf2d7 content::StartupTaskRunner::RunAllTasksNow()
#10 0x000001e9d48c content::BrowserMainLoop::CreateStartupTasks()
#11 0x000001ea20c8 content::BrowserMainRunnerImpl::Initialize()
#12 0x0000023cf1ad LayoutTestBrowserMain()
#13 0x0000023ce702 content::ShellMainDelegate::RunProcess()
#14 0x000001de0040 content::RunNamedProcessTypeMain()
#15 0x000001de0a55 content::ContentMainRunnerImpl::Run()
#16 0x000003603bcf service_manager::Main()
#17 0x0000015ad861 content::ContentMain()
#18 0x000001040152 main
#19 0x7f71fc5362b1 __libc_start_main
#20 0x00000104002a _start
  r8: 0000000000000000  r9: 00007ffc44e6f660 r10: 0000000000000008 r11: 0000000000000246
 r12: 00007ffc44e6fd60 r13: 00007ffc44e6fd50 r14: 00007ffc44e6fd58 r15: 00007ffc44e6f910
  di: 0000000000000002  si: 00007ffc44e6f660  bp: 00007ffc44e6f8a0  bx: 0000000000000006
  dx: 0000000000000000  ax: 0000000000000000  cx: 00007f71fc548fcf  sp: 00007ffc44e6f6d8
  ip: 00007f71fc548fcf efl: 0000000000000246 cgf: 002b000000000033 erf: 0000000000000000
 trp: 0000000000000000 msk: 0000000000000000 cr2: 0000000000000000
[end of stack trace]
Calling _exit(1). Core file will not be generated.

 
Hmm, never seen this before. Does this happen when you build chrome or just content_shell?
OIC this is a bot run. Will see what I can find locally.
Probably this is due to mime util being initialized earlier on and accessing the feature list before its ready.
Not sure if there is an auto-crash test for chrome ... it came up in this change:
https://chromium-review.googlesource.com/c/chromium/src/+/780581
on this bot:
https://ci.chromium.org/buildbot/tryserver.chromium.linux/linux_chromium_rel_ng/592106

I can repro locally and after disabling av1 (enable_av1_decoder = false) the test passes.
Project Member

Comment 6 by bugdroid1@chromium.org, Nov 22 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d69958f1aa564e532d7edc7f57f7ba4e6dd77f43

commit d69958f1aa564e532d7edc7f57f7ba4e6dd77f43
Author: Dale Curtis <dalecurtis@chromium.org>
Date: Wed Nov 22 22:12:27 2017

Don't invoke base::FeatureList access before browser startup.

base::FeatureList is initialized in the PreCreateThreads() section
of browser startup, but when running layout tests we invoke
media::RemoveProprietaryMediaTypesAndCodecsForTests() prior to even
starting the browser client. Because this method checks a
base::Feature it thus implicitly sets up features ahead of the
source of truth in PreCreateThread()

In the near term we will be deleting the media method, but that
probably won't land for a couple weeks, so in the mean time so
that we're ready for the next dev release w/ AV1, move the call
into LayoutTestContentRendererClient::RenderThreadStarted();
this isn't needed in the browser anyways.

BUG= 787522 , 787575 
TEST=no content_shell crash w/ av1 enabled.

Change-Id: I4d97d181431862d41e8abbc0ea4c4e90758f3ed5
Reviewed-on: https://chromium-review.googlesource.com/783514
Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
Reviewed-by: Peter Beverloo <peter@chromium.org>
Cr-Commit-Position: refs/heads/master@{#518768}
[modify] https://crrev.com/d69958f1aa564e532d7edc7f57f7ba4e6dd77f43/content/shell/app/shell_main_delegate.cc
[modify] https://crrev.com/d69958f1aa564e532d7edc7f57f7ba4e6dd77f43/content/shell/renderer/layout_test/layout_test_content_renderer_client.cc

Status: Fixed (was: Assigned)

Sign in to add a comment