New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 732876 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

mushrome/mustash crash on device in CrosDBusServiceImpl::OnOwnership()

Project Member Reported by kylec...@chromium.org, Jun 13 2017

Issue description

Both mushrome and mustash crash on startup when running on link. All I get is a black screen and chrome restarting repeatedly. It looks like desktopui_MashLogin and desktopui_MusLogin autotests are failing on nearly every board as a result. 

I deployed the latest test image R61-9647.0.0 and got this behaviour with both --mus and --mash. In order to investigate I've build from ToT at 4dba2deb6ec2bbb6218fe51944657d2048a8a15a and deployed a binary with symbols. I got the following callstack in the logs:

[22019:22019:0613/134431.421332:FATAL:cros_dbus_service.cc(76)] Failed to own: org.chromium.NetworkProxyService
#0 0x7f98d9b9b4cc base::debug::StackTrace::StackTrace()
#1 0x7f98d9bb06be logging::LogMessage::~LogMessage()
#2 0x7f98da5a2506 chromeos::CrosDBusServiceImpl::OnOwnership()
#3 0x7f98d83b475d _ZN4base8internal7InvokerINS0_9BindStateINS_8CallbackIFvRKSsbELNS0_8CopyModeE1ELNS0_10RepeatModeE1EEEJSsbEEEFvvEE3RunEPNS0_13BindStateBaseE
#4 0x7f98d9c2d556 base::debug::TaskAnnotator::RunTask()
#5 0x7f98d9bb691e base::MessageLoop::RunTask()
#6 0x7f98d9bb6d0b base::MessageLoop::DeferOrRunPendingTask()
#7 0x7f98d9bb7164 base::MessageLoop::DoWork()
#8 0x7f98d9bb8899 base::MessagePumpLibevent::Run()
#9 0x7f98d9bd8c50 base::RunLoop::Run()
#10 0x7f98d98131f2 ChromeBrowserMainParts::MainMessageLoopRun()
#11 0x7f98d84746d4 content::BrowserMainLoop::RunMainMessageLoopParts()
#12 0x7f98d84770a2 content::BrowserMainRunnerImpl::Run()
#13 0x7f98d846fffc content::BrowserMain()
#14 0x7f98d97e91f4 content::ContentMainRunnerImpl::Run()
#15 0x7f98d9809579 service_manager::Main()
#16 0x7f98d97e80d1 content::ContentMain()
#17 0x7f98d7ef8a4c ChromeMain
#18 0x7f98d5963816 __libc_start_main
#19 0x7f98d7ef8869 _start

Assigning to derat for dbus triage.
 

Comment 1 by derat@chromium.org, Jun 13 2017

Labels: Needs-Feedback
Is there an error in the logs just before that stack trace? I'd expect to see either "Failed to get the ownership of ... " or "Failed to connect to the bus: ..." from dbus/bus.cc.

Also, is there any chance that the process that's trying to acquire the name (should the browser) is running as some user other than the "chronos" user? chromeos/dbus/services/org.chromium.NetworkProxyService.conf only permits chronos to own this name.

In any case, there should be an error message with more details.

I tried to repro this myself on a lumpy lab device running R60, but desktopui_MusLogin passed there.

I then tried it on one running R61-9647.0.0, but the test isn't completing. It doesn't look like the problem described here. Chrome is aborting per /var/log/messages, but the last message in the log under /var/log/chrome is:

[1:1:0100/000000.381275:FATAL:zygote_linux.cc(477)] Failed to synchronise with parent zygote process

Comment 2 by derat@chromium.org, Jun 13 2017

Cc: teravest@chromium.org
Yes, that error is a bit earler. Sorry about that, here is the full /var/log/chrome/chrome contents.

[1:1:0613/134431.220982:VERBOSE1:zygote_main_linux.cc(537)] ZygoteMain: initializing 2 fork delegates
[22019:22065:0613/134431.250448:ERROR:bus.cc(579)] Failed to get the ownership of org.chromium.NetworkProxyService: Connection ":1.748" is not allowed to own the service "org.chromium.NetworkProxyService" due to security policies in the configuration file
[22019:22065:0613/134431.250693:ERROR:bus.cc(579)] Failed to get the ownership of org.chromium.KioskAppService: Connection ":1.748" is not allowed to own the service "org.chromium.KioskAppService" due to security policies in the configuration file
[22019:22065:0613/134431.250904:ERROR:bus.cc(579)] Failed to get the ownership of org.chromium.LivenessService: Connection ":1.748" is not allowed to own the service "org.chromium.LivenessService" due to security policies in the configuration file
[22019:22065:0613/134431.253603:WARNING:exported_object.cc(215)] Unknown method: message_type: MESSAGE_METHOD_CALL
destination: org.chromium.LibCrosService
path: /org/chromium/LibCrosService
interface: org.chromium.LibCrosServiceInterface
member: SetDisplayPower
sender: :1.2
signature: i
serial: 1146

int32_t 0

[22019:22077:0613/134431.340169:WARNING:name_value_pairs_parser.cc(55)] Key block_devmode already has value (error), ignoring new value: 0
[22019:22077:0613/134431.340292:WARNING:name_value_pairs_parser.cc(55)] Key gbind_attribute already has value 94201d313ee320af8684eb806810c8fa9d1dc0cd4e469744ac9e612ce92e45dc8587b1aa, ignoring new value: 94201d313ee320af8684eb806810c8fa9d1dc0cd4e469744ac9e612ce92e45dc8587b1aa
[22019:22077:0613/134431.340316:WARNING:name_value_pairs_parser.cc(55)] Key ubind_attribute already has value 0c7608ac9357fb41436e185915629ad90a746073f978842916a261b5a880929ae4677596, ignoring new value: 0c7608ac9357fb41436e185915629ad90a746073f978842916a261b5a880929ae4677596
[22019:22077:0613/134431.340370:WARNING:name_value_pairs_parser.cc(55)] Key initial_locale already has value en-US, ignoring new value: en-US
[22019:22077:0613/134431.340390:WARNING:name_value_pairs_parser.cc(55)] Key initial_timezone already has value America/Los_Angeles, ignoring new value: America/Los_Angeles
[22019:22077:0613/134431.340407:WARNING:name_value_pairs_parser.cc(55)] Key keyboard_layout already has value xkb:us::eng, ignoring new value: xkb:us::eng
[22019:22077:0613/134431.340425:WARNING:name_value_pairs_parser.cc(55)] Key ActivateDate already has value 2013-42, ignoring new value: 2013-42
[22019:22077:0613/134431.340442:WARNING:name_value_pairs_parser.cc(55)] Key block_devmode already has value (error), ignoring new value: 0
[22019:22077:0613/134431.340458:WARNING:name_value_pairs_parser.cc(55)] Key check_enrollment already has value 0, ignoring new value: 0
[22019:22019:0613/134431.347259:WARNING:server.cc(4024)] Group 'wayland' not found
[22019:22019:0613/134431.384435:VERBOSE1:chrome_session_manager.cc(196)] Starting Chrome with login/oobe screen.
[22019:22019:0613/134431.384468:VERBOSE1:login_display_host_impl.cc(1279)] Showing OOBE screen: unknown
[22019:22019:0613/134431.385225:VERBOSE1:login_display_host_impl.cc(473)] Login WebUI >> zero_delay: 1 wait_for_wp_load_: 0 wait_for_pods_: 0 init_webui_hidden_: 0
[22019:22019:0613/134431.385257:ERROR:login_display_host_impl.cc(489)] Not implemented reached in chromeos::LoginDisplayHostImpl::LoginDisplayHostImpl(const gfx::Rect &)
[22019:22019:0613/134431.385335:VERBOSE1:login_display_host_impl.cc(1352)] Current locale: en-US
[22019:22019:0613/134431.385361:ERROR:input_events_blocker.cc(21)] Not implemented reached in chromeos::InputEventsBlocker::InputEventsBlocker()
[22019:22019:0613/134431.387734:VERBOSE1:login_display_host_impl.cc(716)] Login WebUI >> sign in
[22019:22019:0613/134431.388791:ERROR:webui_login_view.cc(125)] Not implemented reached in chromeos::WebUILoginView::WebUILoginView(const chromeos::WebUILoginView::WebViewSettings &)
[22019:22019:0613/134431.388859:ERROR:webui_login_view.cc(194)] Not implemented reached in chromeos::WebUILoginView::WebUILoginView(const chromeos::WebUILoginView::WebViewSettings &)
[22019:22019:0613/134431.390686:VERBOSE1:login_display_host_impl.cc(1187)] Login WebUI >> show login wnd on create
[22019:22019:0613/134431.408899:ERROR:core_oobe_handler.cc(73)] Not implemented reached in chromeos::CoreOobeHandler::CoreOobeHandler(chromeos::OobeUI *, chromeos::JSCallsContainer *)
[22019:22019:0613/134431.412790:ERROR:render_widget_host_view_aura.cc(1262)] Not implemented reached in virtual base::i18n::TextDirection content::RenderWidgetHostViewAura::GetTextDirection() const
[22019:22019:0613/134431.413232:ERROR:input_events_blocker.cc(30)] Not implemented reached in virtual chromeos::InputEventsBlocker::~InputEventsBlocker()
[22019:22019:0613/134431.421332:FATAL:cros_dbus_service.cc(76)] Failed to own: org.chromium.NetworkProxyService
#0 0x7f98d9b9b4cc base::debug::StackTrace::StackTrace()
#1 0x7f98d9bb06be logging::LogMessage::~LogMessage()
#2 0x7f98da5a2506 chromeos::CrosDBusServiceImpl::OnOwnership()
#3 0x7f98d83b475d _ZN4base8internal7InvokerINS0_9BindStateINS_8CallbackIFvRKSsbELNS0_8CopyModeE1ELNS0_10RepeatModeE1EEEJSsbEEEFvvEE3RunEPNS0_13BindStateBaseE
#4 0x7f98d9c2d556 base::debug::TaskAnnotator::RunTask()
#5 0x7f98d9bb691e base::MessageLoop::RunTask()
#6 0x7f98d9bb6d0b base::MessageLoop::DeferOrRunPendingTask()
#7 0x7f98d9bb7164 base::MessageLoop::DoWork()
#8 0x7f98d9bb8899 base::MessagePumpLibevent::Run()
#9 0x7f98d9bd8c50 base::RunLoop::Run()
#10 0x7f98d98131f2 ChromeBrowserMainParts::MainMessageLoopRun()
#11 0x7f98d84746d4 content::BrowserMainLoop::RunMainMessageLoopParts()
#12 0x7f98d84770a2 content::BrowserMainRunnerImpl::Run()
#13 0x7f98d846fffc content::BrowserMain()
#14 0x7f98d97e91f4 content::ContentMainRunnerImpl::Run()
#15 0x7f98d9809579 service_manager::Main()
#16 0x7f98d97e80d1 content::ContentMain()
#17 0x7f98d7ef8a4c ChromeMain
#18 0x7f98d5963816 __libc_start_main
#19 0x7f98d7ef8869 _start

[1:1:0100/000000.726199:ERROR:broker_posix.cc(41)] Invalid node channel message

Comment 4 by derat@chromium.org, Jun 13 2017

Thanks! Can you attach the contents of /etc/dbus-1/system.d/chrome.conf and /opt/google/chrome/dbus/org.chromium.NetworkProxyService.conf on the device where you're seeing this?
See below. The user should (hopefully) be chronos as this is normal device startup just with /etc/chrome_dev.conf with an extra flag.

$ cat /etc/dbus-1/system.d/chrome.conf
<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-Bus Bus Configuration 1.0//EN"
 "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
  <!-- Config files are placed here that among other things, punch
       holes in the policy for specific services. -->
  <includedir>/opt/google/chrome/dbus</includedir>
</busconfig>
$ cat /opt/google/chrome/dbus/org.chromium.NetworkProxyService.conf
<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
  "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<!--
  Copyright 2017 The Chromium Authors. All rights reserved.
  Use of this source code is governed by a BSD-style license that can be
  found in the LICENSE file.
-->
<busconfig>
  <policy user="chronos">
    <allow own="org.chromium.NetworkProxyService"/>
  </policy>
  <policy context="default">
    <allow send_destination="org.chromium.NetworkProxyService"/>
  </policy>
</busconfig>

Comment 6 by derat@chromium.org, Jun 14 2017

Those config files contain what I'd expect, so I don't have any good ideas. ToT Chrome segfaults on startup when I run it with --mus or --mash, so I can't repro this at the moment. Happy to try again when things are in better shape, though. I don't see any problems without those flags, so presumably mus/mash is doing something it shouldn't.
Dan, are you saying chrome ToT segfaults on startup with a different stack than the one in the bug description?

If so, would you happen to have a backtrace? If not, what device / chrome revision / chrome os revision?

Comment 8 by derat@chromium.org, Jun 15 2017

This bug is about a SIGABRT. I was seeing a segfault today, so I assume the cause was different, although I didn't have time to get a symbolized binary. I was using a ToT OS build from Monday and Chrome from today at r479487.

If you aren't able to repro the problem with a ToT build, I can probably rebuild tomorrow and try again.
Status: WontFix (was: Assigned)
I loaded ToT Chrome today and the issue no longer reproduces. I'm also not seeing the "Failed to get the ownership of org.chromium.NetworkProxyService" in the logs anymore. I'm not sure what changed but it's no longer an issue. Thanks derat!
Components: -Internals>MUS Internals>Services>WindowService

Sign in to add a comment