New issue
Advanced search Search tips

Issue 892521 link

Starred by 2 users

Issue metadata

Status: Assigned
Owner:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

System crash terminating wl_display_dispatch loop on Mali devices

Reported by blu.d...@gmail.com, Oct 5

Issue description

UserAgent: Mozilla/5.0 (X11; CrOS aarch64 11021.34.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.41 Safari/537.36
Platform: 11021.34.0 (Official Build) beta-channel bob

Steps to reproduce the problem:
1. In a stand-alone app, set up a surfaceless EGL context using dma linux buffers for a double-buffered framebuffer, and pass those to wayland
2. Run a frame loop for an arbitrary number of frames
3. Terminate the loop and disconnect from wayland display

What is the expected behavior?
Clean exit of the app

What went wrong?
System crash, followed by a system reboot.

Did this work before? N/A 

Chrome version: 70.0.3538.41  Channel: beta
OS Version: 11021.34.0
Flash Version: 

See example code here: https://github.com/blu/hello-chromeos-gles2/blob/master/main_chromeos.cpp
 
Components: OS>Kernel>Graphics Internals>GPU
Clarification: crash happens on RK3399 with Mali-T860.
Owner: dcasta...@chromium.org
Status: Assigned (was: Unconfirmed)
dcastagna: can you investigate or triage to somebody else?
blu.dark@gmail.com: Can you please include logs? How do you run a binary that connects to exo? Is your chromebook in developer mode?
dcastagna: Yes, chromebook is in developer mode. Binary utilizes the DRM render-nodes support in ChromeOS and uses the following ChromeOS-supplied DSOs

/usr/lib/libdrm.so
/usr/lib/libEGL.so
/usr/lib/libGLESv2.so

to establish a surfaceless EGL context using dmabuf-based EGLImages which I then pass to wayland via the linux-dmabuf-clientprotocol for on-screen compositing.

I use libwayland-client, ver 1.14.91, originally built from sources in the Chromebrew repo: https://github.com/skycocker/chromebrew.

The full frameloop mechanism can be seen in the source code linked in the OP. It works as intended across all aarch64 and x86-64 chromebooks I've tried so far, save for RK3399-based Mali devices. I can provide a minimal repro code, if need be.

Re logs -- what logs would you like me to include? Please, consider that the system crash leaves the filesystem unflushed, so in order to see a log on next reboot a deliberate sync of the fs will be needed at moments of interest, and also those logs would need not be reset at reboot.

Sign in to add a comment