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

Issue 882033 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Closed: Dec 7
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug
Build-Toolchain

Blocking:
issue 878565



Sign in to add a comment

kevin64 graphics issues

Project Member Reported by manojgupta@chromium.org, Sep 7

Issue description

(Spltting this from the main bug to make it easier to discuss)
I built a kevin64 image using the latest Chrome OS sources which also had VIDEO_CARDS=rockchip.

However, login screen still fails to come up.
I have disabled the sandbox as suggested:
https://bugs.chromium.org/p/chromium/issues/detail?id=878565#c20
"--disable-gpu-sandbox --no-sandbox" 

As p[er the logs in /var/logs/ui:

The failure is in loading the libGLESv2.so.2 library.

device-enumerator: scan all dirs
  device-enumerator: scanning /sys/bus
  device-enumerator: scanning /sys/class
[15782:15782:0907/155429.843324:ERROR:egl_util.cc(59)] Failed to load GLES library: libGLESv2.so.2: cannot open shared object file: Operation not permitted


I am sure that I have the library in /usr/lib64:

# ls /usr/lib64/libGLESv* -lt
lrwxrwxrwx 1 root root 22 Sep  7 15:29 /usr/lib64/libGLESv1_CM.so.1 -> libGLESv1_CM.so.1.1.20
lrwxrwxrwx 1 root root 19 Sep  7 15:29 /usr/lib64/libGLESv2.so -> libGLESv2.so.2.1.20
lrwxrwxrwx 1 root root 19 Sep  7 15:29 /usr/lib64/libGLESv2.so.2 -> libGLESv2.so.2.1.20
lrwxrwxrwx 1 root root 22 Sep  7 15:29 /usr/lib64/libGLESv1_CM.so -> libGLESv1_CM.so.1.1.20
lrwxrwxrwx 1 root root 17 Sep  7 15:29 /usr/lib64/libGLESv1_CM.so.1.1.20 -> libmali.so.0.1.20
lrwxrwxrwx 1 root root 17 Sep  7 15:29 /usr/lib64/libGLESv2.so.2.1.20 -> libmali.so.0.1.20

Same error is reported in /var/log/chrome/

[19915:19915:0907/155519.384285:ERROR:egl_util.cc(59)] Failed to load GLES library: libGLESv2.so.2: cannot open shared object file: Operation not permitted
[19380:19390:0907/155520.311714:WARNING:drm_device_handle.cc(83)] Failed to authenticate /dev/dri/card1 within 1000 ms
[19380:19380:0907/160118.800237:VERBOSE1:component_updater_service.cc(322)] CheckForUpdates: automatic updatecheck for components.

There is not much ins the /var/log/messages:

# dmesg -C
# stop ui; start ui
ui start/running, process 20190
# dmesg 
[  715.266353] audit: type=1326 audit(1536361408.947:4): auid=4294967295 uid=220 gid=220 ses=4294967295 subj=kernel pid=20010 comm="imageloader" exe="/usr/sbin/imageloader" sig=31 arch=c00000b7 syscall=73 compat=0 ip=0x70e08d0c08 code=0x0
[  715.337265] init: imageloader-shutdown main process (20010) killed by SYS signal
 
"Operation not permitted" sounds like a seccomp filter is denying you, not that the file doesn't exist
Just to make sure, how exactly did you edit chrome-dev.conf? You should add the arguments without quotation marks, and on separate lines, like this:

--disable-gpu-sandbox
--no-sandbox

Sorry if that wasn't clear.
This worked for me so far, but I'm also looking for a permanent solution to this problem.
Thanks Daniel,

I believe my issue was an incremental build (probably drivers were not built correctly). After a full clean build, and with the sandbox + gpu sandbox disabled, the login screen finally came up :-).
I've been trying to figure out the cause of this problem, but so far I haven't been able to get to the bottom of it. The issue is that the sandbox seccomp blocks the newfstatat and openat syscalls, but both of them are allowed in the seccomp policy that is in use, and I'm not sure what's going wrong here.

Until this is resolved, I've submitted a CL which disables the sandbox early initialization, so editing chrome-dev.conf won't be necessary any more.

https://chromium-review.googlesource.com/c/chromiumos/overlays/board-overlays/+/1224273
Project Member

Comment 5 by bugdroid1@chromium.org, Sep 13

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/board-overlays/+/cd9de4123656d922ba251e0f518b05a828c8991e

commit cd9de4123656d922ba251e0f518b05a828c8991e
Author: Dániel Bátyai <dbatyai@inf.u-szeged.hu>
Date: Thu Sep 13 16:59:34 2018

kevin64: Disable sandbox early init

The early initialization of the sandbox blocks the GPU process from
loading the GLES2 library. Disable it until the issue with the sandbox
is resolved.

BUG= chromium:882033 
BUG=chromium:878565
TEST=build image, ui starts

Change-Id: I2804c5629efd6f920b83728900d17e7673fee4ab
Reviewed-on: https://chromium-review.googlesource.com/1224273
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
Tested-by: Daniel Batyai <dbatyai@inf.u-szeged.hu>
Commit-Queue: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>

[modify] https://crrev.com/cd9de4123656d922ba251e0f518b05a828c8991e/overlay-kevin64/profiles/base/make.defaults

Project Member

Comment 6 by bugdroid1@chromium.org, Oct 1

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a2fe368b778e2e900eff10afed52a570d2d13875

commit a2fe368b778e2e900eff10afed52a570d2d13875
Author: Dániel Bátyai <dbatyai@inf.u-szeged.hu>
Date: Mon Oct 01 23:02:18 2018

sandbox: Whitelist 64bit libraries on arm64 ChromeOS

When using ChromeOS on ARM with a 64bit userspace, the early sandbox
blocks the Mali/GLES/EGL libraries from loading, because only the
32bit paths are allowed. Whitelist the 64bit paths when building for
aarch64 on ChromeOS.

BUG= 882033 
TEST=Device boots, GPU process is sandboxed

Change-Id: Iba2e696291b96c23aaaafc417d4eb96f084f4f46
Reviewed-on: https://chromium-review.googlesource.com/1230066
Commit-Queue: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Jorge Lucangeli Obes <jorgelo@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Cr-Commit-Position: refs/heads/master@{#595620}
[modify] https://crrev.com/a2fe368b778e2e900eff10afed52a570d2d13875/content/gpu/gpu_sandbox_hook_linux.cc

Project Member

Comment 7 by bugdroid1@chromium.org, Oct 10

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/board-overlays/+/7f3660b35ef29a9e6b065b0fee0f946a9f105711

commit 7f3660b35ef29a9e6b065b0fee0f946a9f105711
Author: Dániel Bátyai <dbatyai@inf.u-szeged.hu>
Date: Wed Oct 10 11:32:18 2018

kevin64: Re-enable sandbox early init

BUG= chromium:882033 
BUG=chromium:878565
TEST=ui starts, gpu process is sandboxed

Change-Id: I889291a1efebd6fe7dbf117dcb22c8aa835046d9
Reviewed-on: https://chromium-review.googlesource.com/c/1273017
Reviewed-by: Manoj Gupta <manojgupta@chromium.org>
Tested-by: Manoj Gupta <manojgupta@chromium.org>

[modify] https://crrev.com/7f3660b35ef29a9e6b065b0fee0f946a9f105711/overlay-kevin64/profiles/base/make.defaults

Status: Verified (was: Untriaged)
Owner: dbat...@inf.u-szeged.hu

Sign in to add a comment