On Fri, Dec 2, 2016 at 8:00 PM, Colin Blundell <
blun...@chromium.org> wrote:
> - Have you rebased your CL to ToT and then verified that you get the same
> failure?
>
> - If so: Is the failure consistent, i.e., if you run "git cl try" multiple
> times on the patch at ToT does it always give that same failure?
Yeah, the failure has been consistent for some weeks now. I'm
relatively new to the Chromium workflow, so I haven't run "git cl try"
per se, but there's a half-dozen patch sets uploaded to
https://codereview.chromium.org/2453313004/ over the course of the
last few weeks and each one has been re-based to ToT before uploading,
with no other substantive changes. I have 3 LGTMs, so I've tried
hitting the "Commit" checkbox a half-dozen times, over two weeks, and
the chromeos trybots never seem happy.
(In addition to those LGTMs, rockot, the Mojo TL, said "As far as I
can tell the mash failures you see are purely coincidental. Nothing in
your CL is relevant to their behavior." on
https://codereview.chromium.org/2453313004/#msg63)
> - If so: If you build your patch locally against ToT (using Ben's
> instructions), does it give the same failure?
Yes? No? I really don't know. I run:
----
$ cat out/cros/
args.gn
# Build arguments go here. Examples:
# is_component_build = true
# is_debug = false
# See "gn args <out_dir> --list" for available build arguments.
use_goma = true
target_os="chromeos"
enable_package_mash_services=true
----
and then running browser_tests with the args that ben suggested:
----
$ out/cros/browser_tests --run-in-mash
--service-overrides=chrome/app/mash/mash_service_overrides.json
--gtest_filter=BrowserTest.Title
[lots of output]
$ echo $?
0
----
Does browser_tests returning 0 mean that the tests passed? The "lots
of output" contains this fragment:
----
[ OK ] BrowserTest.Title (25338 ms)
[----------] 1 test from BrowserTest (25338 ms total)
[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (25341 ms total)
[ PASSED ] 1 test.
----
But it also ends with a stack trace:
----
[1204/115342.921660:ERROR:surface_manager.cc(131)] No reference from
SurfaceId(FrameSinkId(0, 0), LocalFrameId(0,
(F76390E54B5EF3319FE4EF45B206A825)lu)) to SurfaceId(FrameSinkId(2, 1),
LocalFrameId(1, (A12AEF2F4023B0EA455DA38CEDFC2DDA)lu))
[1204/115342.979445:FATAL:surface_manager.cc(49)] Check failed:
frame_sink_source_map_.size() == 0u (1 vs. 0)
#0 0x7f4e0f397e9e base::debug::StackTrace::StackTrace()
#1 0x7f4e0f3fd89c logging::LogMessage::~LogMessage()
#2 0x7f4e048a0405 cc::SurfaceManager::~SurfaceManager()
#3 0x0000036a3af5 ui::DisplayCompositor::~DisplayCompositor()
#4 0x0000036a3b59 ui::DisplayCompositor::~DisplayCompositor()
#5 0x00000093502f std::default_delete<>::operator()()
#6 0x0000036c839c std::unique_ptr<>::reset()
#7 0x0000036c61c7 ui::GpuMain::TearDownOnCompositorThread()
#8 0x0000008e0095
_ZN4base8internal13FunctorTraitsIM25RenderViewContextMenuBaseFvvEvE6InvokeIP21RenderViewContextMenuJEEEvS4_OT_DpOT0_
#9 0x0000008dffb1
_ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKM25RenderViewContextMenuBaseFvvEJP21RenderViewContextMenuEEEvOT_DpOT0_
#10 0x0000036c9947
_ZN4base8internal7InvokerINS0_9BindStateIMN2ui7GpuMainEFvvEJNS0_17UnretainedWrapperIS4_EEEEEFvvEE7RunImplIRKS6_RKSt5tupleIJS8_EEJLm0EEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEE
#11 0x0000036c988c
_ZN4base8internal7InvokerINS0_9BindStateIMN2ui7GpuMainEFvvEJNS0_17UnretainedWrapperIS4_EEEEEFvvEE3RunEPNS0_13BindStateBaseE
#12 0x7f4e0f39d441
_ZNO4base8internal8RunMixinINS_8CallbackIFvvELNS0_8CopyModeE0ELNS0_10RepeatModeE0EEEE3RunEv
#13 0x7f4e0f39ce29 base::debug::TaskAnnotator::RunTask()
#14 0x7f4e0f424acf base::MessageLoop::RunTask()
#15 0x7f4e0f424d34 base::MessageLoop::DeferOrRunPendingTask()
#16 0x7f4e0f42501e base::MessageLoop::DoWork()
#17 0x7f4e0f439bb4 base::MessagePumpDefault::Run()
#18 0x7f4e0f424695 base::MessageLoop::RunHandler()
#19 0x7f4e0f4c5233 base::RunLoop::Run()
#20 0x7f4e0f563109 base::Thread::Run()
#21 0x7f4e0f5639e1 base::Thread::ThreadMain()
#22 0x7f4e0f54ca3a base::(anonymous namespace)::ThreadFunc()
#23 0x7f4e0f7b2184 start_thread
#24 0x7f4df3db937d clone
Received signal 6
#0 0x7f4e0f397e9e base::debug::StackTrace::StackTrace()
#1 0x7f4e0f3979df base::debug::(anonymous namespace)::StackDumpSignalHandler()
#2 0x7f4e0f7ba330 <unknown>
#3 0x7f4df3cf5c37 gsignal
#4 0x7f4df3cf9028 abort
#5 0x7f4e0f394476 base::debug::(anonymous namespace)::DebugBreak()
#6 0x7f4e0f394458 base::debug::BreakDebugger()
#7 0x7f4e0f3fdc3f logging::LogMessage::~LogMessage()
#8 0x7f4e048a0405 cc::SurfaceManager::~SurfaceManager()
#9 0x0000036a3af5 ui::DisplayCompositor::~DisplayCompositor()
#10 0x0000036a3b59 ui::DisplayCompositor::~DisplayCompositor()
#11 0x00000093502f std::default_delete<>::operator()()
#12 0x0000036c839c std::unique_ptr<>::reset()
#13 0x0000036c61c7 ui::GpuMain::TearDownOnCompositorThread()
#14 0x0000008e0095
_ZN4base8internal13FunctorTraitsIM25RenderViewContextMenuBaseFvvEvE6InvokeIP21RenderViewContextMenuJEEEvS4_OT_DpOT0_
#15 0x0000008dffb1
_ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKM25RenderViewContextMenuBaseFvvEJP21RenderViewContextMenuEEEvOT_DpOT0_
#16 0x0000036c9947
_ZN4base8internal7InvokerINS0_9BindStateIMN2ui7GpuMainEFvvEJNS0_17UnretainedWrapperIS4_EEEEEFvvEE7RunImplIRKS6_RKSt5tupleIJS8_EEJLm0EEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEE
#17 0x0000036c988c
_ZN4base8internal7InvokerINS0_9BindStateIMN2ui7GpuMainEFvvEJNS0_17UnretainedWrapperIS4_EEEEEFvvEE3RunEPNS0_13BindStateBaseE
#18 0x7f4e0f39d441
_ZNO4base8internal8RunMixinINS_8CallbackIFvvELNS0_8CopyModeE0ELNS0_10RepeatModeE0EEEE3RunEv
#19 0x7f4e0f39ce29 base::debug::TaskAnnotator::RunTask()
#20 0x7f4e0f424acf base::MessageLoop::RunTask()
#21 0x7f4e0f424d34 base::MessageLoop::DeferOrRunPendingTask()
#22 0x7f4e0f42501e base::MessageLoop::DoWork()
#23 0x7f4e0f439bb4 base::MessagePumpDefault::Run()
#24 0x7f4e0f424695 base::MessageLoop::RunHandler()
#25 0x7f4e0f4c5233 base::RunLoop::Run()
#26 0x7f4e0f563109 base::Thread::Run()
#27 0x7f4e0f5639e1 base::Thread::ThreadMain()
#28 0x7f4e0f54ca3a base::(anonymous namespace)::ThreadFunc()
#29 0x7f4e0f7b2184 start_thread
#30 0x7f4df3db937d clone
r8: fffffffffffffed8 r9: fffffffffffffec8 r10: 0000000000000008
r11: 0000000000000202
r12: 0000000000000000 r13: 0000000000000000 r14: 00007f4ded9589c0
r15: 00007f4ded958700
di: 0000000000004fad si: 0000000000004fc6 bp: 00007f4ded955060
bx: 0000000000000000
dx: 0000000000000006 ax: 0000000000000000 cx: ffffffffffffffff
sp: 00007f4ded954f28
ip: 00007f4df3cf5c37 efl: 0000000000000202 cgf: 0000000000000033
erf: 0000000000000000
trp: 0000000000000000 msk: 0000000000000000 cr2: 0000000000000000
[end of stack trace]
----
but that stack trace looks graphics-related, and therefore unrelated??
If I re-run the test (locally) and capture the stdout / stderr:
----
$ out/cros/browser_tests --run-in-mash
--service-overrides=chrome/app/mash/mash_service_overrides.json
--gtest_filter=BrowserTest.Title > /tmp/stdout 2> /tmp/stderr
----
The stdout says "SUCCESS: all tests passed." and grepping stderr for
"prevented service" gives nothing.
In comparison, on the commit queue,
https://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_rel_ng/builds/325123/steps/mash_browser_tests%20%28with%20patch%29/logs/stdio
contains a bunch of lines that look like:
----
[30947:31003:1130/234642.899124:ERROR:interface_registry.cc(218)]
InterfaceProviderSpec "service_manager:connector" prevented service:
content_renderer from binding interface:
chrome::mojom::FieldTrialRecorder exposed by: content_browser
...
[30947:31003:1130/234642.899056:ERROR:interface_registry.cc(218)]
InterfaceProviderSpec "service_manager:connector" prevented service:
content_renderer from binding interface:
startup_metric_utils::mojom::StartupMetricHost exposed by:
content_browser
----
FieldTrialRecorder is the new mojom interface introduced by my CL.
StartupMetricHost is unrelated to my CL.
Also, on the commit queue,
https://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_rel_ng/builds/325123/steps/mash_browser_tests%20%28with%20patch%29/logs/stdio
says
----
../../chrome/browser/ui/browser_browsertest.cc:461: Failure
Value of: browser()->GetWindowTitleForCurrentTab( true )
Actual: Chromium - about:blank
Expected: LocaleWindowCaptionFromPageTitle(test_title)
Which is: Chromium - Title Of Awesomeness
../../chrome/browser/ui/browser_browsertest.cc:464: Failure
Value of: tab_title
Actual: title2.html
Expected: test_title
Which is: Title Of Awesomeness
[31206:31206:1130/234650.067149:ERROR:native_widget_mus.cc(863)] Not
implemented reached in virtual void
views::NativeWidgetMus::ViewRemoved(views::View *)
[31206:31206:1130/234650.770454:WARNING:url_request_context_getter.cc(43)]
URLRequestContextGetter leaking due to no owning thread.
[31206:31206:1130/234650.770494:WARNING:url_request_context_getter.cc(43)]
URLRequestContextGetter leaking due to no owning thread.
[ FAILED ] BrowserTest.Title, where TypeParam = and GetParam() = (1531 ms)
[4/4] BrowserTest.Title (1832 ms)
1 test failed:
BrowserTest.Title (../../chrome/browser/ui/browser_browsertest.cc:453)
----
but as I mailed two weeks ago, an earlier CQ run
https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Ftryserver.chromium.linux%2Flinux_chromium_chromeos_ozone_rel_ng%2F276466%2F%2B%2Frecipes%2Fsteps%2Fmash_browser_tests__with_patch_%2F0%2Fstdout
ended with:
----
[2/2] BrowserTest.Title (1309 ms)
SUCCESS: all tests passed.
----
yet
https://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_chromeos_ozone_rel_ng/builds/276466
still ended with red.
> If the answer to all of these is "yes", I'd be happy to try to repro locally
> and add another pair of debugging eyes.
Well, two yesses but then one maybe??