Agree ozone Wayland is getting improved, but thanks to the team worked on this, i could run hardware accelerated hTML5 with this (in content shell),
regarding the issue, indeed i run both shell and chrome without sand box only (--no-sandbox) otherwise getting error as below (even thought the SUID sand boxing procedure followed)
[1:1:0101/005048:3048054588:FATAL:setuid_sandbox_client.cc(126)] Check failed: IsFileSystemAccessDenied().
i assume the drivers are intact because i could run other EGL wayland clients and as i mentioned the content shell is running fine here.
Indeed your assumption is correct, chrome gpu process crash, and exits as ozone wayland does not support software rendering mode,
root@salvator-x:/usr/bin# google-chrome --no-sandbox
[2831:2831:0101/011212:ERROR:renderer_main.cc(200)] Running without renderer sandbox
[2798:2798:0101/011213:FATAL:display.cc(296)] The browser process has attempted to start the GPU process in software rendering mode. Software rendering is not supported in Ozone-Wayland, so this is fatal. Usually this error occurs because the GPU process crashed in hardware rendering mode, often due to failure to initialize EGL. To debug the GPU process, start Chrome with --gpu-startup-dialog so that the GPU process pauses on startup, then attach to it with 'gdb -p' and run the command 'signal SIGUSR1' in order to unpause it. If you have xterm then it is easier to run 'chrome --no-sandbox --gpu-launcher='xterm -title renderer -e gdb --eval-command=run --args''
/usr/bin/google-chrome: line 12: 2798 Aborted /usr/bin/chromium/chrome ${CHROME_EXTRA_ARGS} $@
and there is kernel failure happen exactly when the GPU process trying to load the GPU drivers (EGL/ GLES etc.),
root@salvator-x:/usr/bin/chromium# [ 4623.065823] chrome[2908]: unhandled level 1 translation fault (11) at 0xffffff9a58c160, esr 0x92000005
[ 4623.075193] pgd = ffffffc4f510b000
[ 4623.078590] [ffffff9a58c160] *pgd=000000053d243003, *pud=000000053d243003, *pmd=0000000000000000
[ 4623.087563]
[ 4623.089086] CPU: 3 PID: 2908 Comm: chrome Tainted: G O 4.4.0-yocto-standard #1
[ 4623.097511] Hardware name: Renesas Salvator-X board based on r8a7795 (DT)
[ 4623.104327] task: ffffffc5bb866c00 ti: ffffffc5b82cc000 task.ti: ffffffc5b82cc000
[ 4623.111834] PC is at 0x7fa37ed78c
[ 4623.115146] LR is at 0x7fa37ed7f0
[ 4623.118481] pc : [<0000007fa37ed78c>] lr : [<0000007fa37ed7f0>] pstate: 60000000
[ 4623.125892] sp : 0000007ffc1bdc30
[ 4623.129224] x29: 0000007ffc1bdc30 x28: 00000055949f8000
[ 4623.134563] x27: 00000001138e2c3c x26: 00000055948ec000
[ 4623.139911] x25: 0000007ffc1bdcf0 x24: 00000055949f8000
later when a EGLgetDisplay call made by chrome (
gl_surface_egl.cc), EGL library fails to get the right reference for the window handle and crash, surprisingly it does not fail for content shell.
best regards,
Binoy