New issue
Advanced search Search tips

Issue 769745 link

Starred by 1 user

Issue metadata

Status: Untriaged
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

desktopui_MashLogin crash in ui::DrmWindow::SetCursor

Project Member Reported by jamescook@chromium.org, Sep 28 2017

Issue description

Test: desktopui_MashLogin.
Suite: bvt-perbuild.
Chrome Version: 63.0.3223.0.
Build: banon-release/R63-9980.0.0.

Reason:
Unhandled TimeoutException: Timed out while waiting 30s for
py_utils.WaitFor(lambda: self.oobe_exists, 30)..
build artifacts:
https://storage.cloud.google.com/?arg=chromeos-image-archive/banon-release/R63-9980.0.0.
results log: http://ubercautotest.corp.google.com/tko/retrieve_logs.cgi?job=/results/145303437-chromeos-test/chromeos6-row1-rack18-host19/debug/.
status log: http://ubercautotest.corp.google.com/tko/retrieve_logs.cgi?job=/results/145303437-chromeos-test/chromeos6-row1-rack18-host19/status.log.
job link: http://cautotest-prod.corp.google.com/afe/#tab_id=view_job&object_id=145303437.

 0  chrome!std::vector<SkBitmap, std::allocator<SkBitmap> >::operator=(std::vector<SkBitmap, std::allocator<SkBitmap> > const&) [stl_vector.h : 815 + 0x0]
 1  chrome!ui::DrmWindow::SetCursor(std::vector<SkBitmap, std::allocator<SkBitmap> > const&, gfx::Point const&, int) [drm_window.cc : 87 + 0x5]
 2  chrome!ui::ozone::mojom::DeviceCursorStubDispatch::Accept(ui::ozone::mojom::DeviceCursor*, mojo::Message*) [device_cursor.mojom.cc : 179 + 0x6]
 3  chrome!mojo::InterfaceEndpointClient::HandleValidatedMessage(mojo::Message*) [interface_endpoint_client.cc : 418 + 0x9]
 4  chrome!mojo::internal::MultiplexRouter::ProcessIncomingMessage(mojo::internal::MultiplexRouter::MessageWrapper*, mojo::internal::MultiplexRouter::ClientCallBehavior, base::SequencedTaskRunner*) [multiplex_router.cc : 885 + 0x8]
 5  chrome!mojo::internal::MultiplexRouter::Accept(mojo::Message*) [multiplex_router.cc : 609 + 0xb]
 6  chrome!mojo::Connector::ReadSingleMessage(unsigned int*) [connector.cc : 440 + 0xd]
<snip>

Kyle, maybe the same as the other startup crash?

 
Cc: rjkroege@chromium.org
I don't think it's related to the other startup crash. Looking really quickly, there is no ordering guarantee between ozone::mojom::DeviceCursor and ozone::mojom::DrmDevice so it could be trying to change the cursor for a DrmWindow that doesn't exist yet? DrmThread::SetCursor() gets a DrmWindow* and calls DrmWindow::SetCursor() but that pointer would be null if the order was wrong.

Comment 2 by laforge@google.com, Nov 8 2017

Components: -Internals>Viz Internals>Services>Viz
Migrating from Internals>Viz to Internals>Services>Viz.
Components: -Internals>MUS Internals>Services>WindowService

Comment 4 by e...@chromium.org, Mar 9 2018

Cc: -e...@chromium.org
Un-cc-ing me from all bugs on my final day.
Components: -Internals>Services>WindowService Internals>Services>Ash
Labels: -Proj-Mustash-Mash

Comment 6 by afakhry@chromium.org, Jan 17 (5 days ago)

Cc: dnicoara@chromium.org spang@chromium.org
Labels: -Pri-2 Pri-1
This is still happening, most recent on eve-tot-chrome-pfq-informational [https://cros-goldeneye.corp.google.com/chromeos/healthmonitoring/buildDetails?buildbucketId=8924101005966780240] while running `desktopui_MashLogin` 


Operating system: Linux
                  0.0.0 Linux 4.4.169-15638-ged68314c7021 #1 SMP PREEMPT Thu Jan 17 01:06:14 PST 2019 x86_64
CPU: amd64
     family 6 model 142 stepping 9
     1 CPU

GPU: UNKNOWN

Crash reason:  SIGSEGV
Crash address: 0x0
Process uptime: not available

Thread 0 (crashed)
 0  chrome!std::__1::enable_if<(__is_forward_iterator<SkBitmap*>::value) && (is_constructible<SkBitmap, std::__1::iterator_traits<SkBitmap*>::reference>::value), void>::type std::__1::vector<SkBitmap, std::__1::allocator<SkBitmap> >::assign<SkBitmap*>(SkBitmap*, SkBitmap*) [vector : 367 + 0x0]
 1  chrome!ui::DrmWindow::SetCursor(std::__1::vector<SkBitmap, std::__1::allocator<SkBitmap> > const&, gfx::Point const&, int) [vector : 1392 + 0x8]
 2  chrome!ui::ozone::mojom::DeviceCursorStubDispatch::Accept(ui::ozone::mojom::DeviceCursor*, mojo::Message*) [device_cursor.mojom.cc : 204 + 0x8]
 3  chrome!mojo::InterfaceEndpointClient::HandleIncomingMessageThunk::Accept(mojo::Message*) [interface_endpoint_client.cc : 423 + 0x6]
 4  chrome!mojo::internal::MultiplexRouter::ProcessIncomingMessage(mojo::internal::MultiplexRouter::MessageWrapper*, mojo::internal::MultiplexRouter::ClientCallBehavior, base::SequencedTaskRunner*) [interface_endpoint_client.cc : 306 + 0xb]
 5  chrome!mojo::internal::MultiplexRouter::Accept(mojo::Message*) [multiplex_router.cc : 594 + 0xb]
 6  chrome!mojo::Connector::DispatchMessage(mojo::Message) [connector.cc : 509 + 0x6]
 7  chrome!mojo::Connector::ReadAllAvailableMessages() [connector.cc : 584 + 0xb]
 8  chrome!mojo::SimpleWatcher::OnHandleReady(int, unsigned int, mojo::HandleSignalsState const&) [callback.h : 129 + 0x9]
 9  chrome!base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) [callback.h : 99 + 0x6]
10  chrome!base::MessageLoopImpl::RunTask(base::PendingTask*) [message_loop_impl.cc : 352 + 0xf]
11  chrome!base::MessageLoopImpl::DoWork() [message_loop_impl.cc : 363 + 0x8]
12  chrome!base::MessagePumpLibevent::Run(base::MessagePump::Delegate*) [message_pump_libevent.cc : 210 + 0x5]
13  chrome!base::RunLoop::Run() [run_loop.cc : 150 + 0x6]
14  chrome!base::Thread::ThreadMain() [thread.cc : 333 + 0x6]
15  chrome!base::(anonymous namespace)::ThreadFunc(void*) [platform_thread_posix.cc : 81 + 0x5]
16  libpthread-2.27.so!start_thread [pthread_create.c : 463 + 0x12]
17  libc-2.27.so!clone + 0x3f

Sign in to add a comment