Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Desktop] WebGL & OpenGL has been disabled in stable 1.13.82 and beta 1.14.65 #11504

Closed
themew opened this issue Aug 28, 2020 · 14 comments · Fixed by brave/brave-core#6600
Closed

Comments

@themew
Copy link

themew commented Aug 28, 2020

Description

WebGL has been disabled in Stable 1.13.82 and Beta 1.14.65 (haven't tested nightly). WebGL works in Chromium/85.0.4183.83

Steps to Reproduce

  1. Update Brave Linux from 1.12.114 to 1.13.82
  2. Goto brave://gpu
  3. WebGL and OpenGL listed as disabled

Actual result:

Graphics Feature Status
Canvas: Software only. Hardware acceleration disabled
Flash: Software only. Hardware acceleration disabled
Flash Stage3D: Software only. Hardware acceleration disabled
Flash Stage3D Baseline profile: Software only. Hardware acceleration disabled
Compositing: Software only. Hardware acceleration disabled
Multiple Raster Threads: Disabled
Out-of-process Rasterization: Disabled
OpenGL: Disabled
Hardware Protected Video Decode: Disabled
Rasterization: Software only. Hardware acceleration disabled
Skia Renderer: Enabled
Video Decode: Software only. Hardware acceleration disabled
Vulkan: Disabled
WebGL: Disabled
WebGL2: Disabled

Log Messages
[1038:1038:0828/124330.685442:ERROR:gl_implementation.cc(286)] : Failed to load /usr/lib/brave-bin/libGLESv2.so: /usr/lib/brave-bin/libGLESv2.so: cannot open shared object file: No such file or directory
[1038:1038:0828/124331.094799:ERROR:viz_main_impl.cc(150)] : Exiting GPU process due to errors during initialization
[1053:1053:0828/124331.144998:ERROR:gl_implementation.cc(286)] : Failed to load /usr/lib/brave-bin/swiftshader/libGLESv2.so: /usr/lib/brave-bin/swiftshader/libGLESv2.so: cannot open shared object file: No such file or directory
[1053:1053:0828/124331.147073:ERROR:viz_main_impl.cc(150)] : Exiting GPU process due to errors during initialization
[1060:1060:0828/124331.382257:WARNING:vaapi_wrapper.cc(416)] : VAAPI video acceleration not available for disabled
GpuProcessHost: The GPU process exited normally. Everything is okay.
GpuProcessHost: The GPU process exited normally. Everything is okay.
[1060:1069:0828/143301.516696:ERROR:x11_software_bitmap_presenter.cc(136)] : XGetWindowAttributes failed for window 56623188
[1060:1069:0828/143301.517427:WARNING:xproto_util.cc(51)] : X error received: serial 9211, error_code 9 (BadDrawable), request_code 55, minor_code 0 (Unknown)
[1060:1069:0828/143301.517704:WARNING:xproto_util.cc(51)] : X error received: serial 9212, error_code 3 (BadWindow), request_code 3, minor_code 0 (Unknown)
[1060:1069:0828/150231.867296:WARNING:xproto_util.cc(51)] : X error received: serial 9214, error_code 13 (BadGC), request_code 60, minor_code 0 (Unknown)
[1060:1069:0828/153449.354879:ERROR:x11_software_bitmap_presenter.cc(136)] : XGetWindowAttributes failed for window 56623292
[1060:1069:0828/153449.355291:WARNING:xproto_util.cc(51)] : X error received: serial 28870, error_code 9 (BadDrawable), request_code 55, minor_code 0 (Unknown)
[1060:1069:0828/153449.355535:WARNING:xproto_util.cc(51)] : X error received: serial 28871, error_code 3 (BadWindow), request_code 3, minor_code 0 (Unknown)
[1060:1069:0828/153631.656771:WARNING:xproto_util.cc(51)] : X error received: serial 28873, error_code 13 (BadGC), request_code 60, minor_code 0 (Unknown)

Expected result:

Reproduces how often:

Consistent

Brave version (brave://version info)

Brave 1.13.82 Chromium: 85.0.4183.83 (Official Build) unknown (64-bit)
Revision 94abc2237ae0c9a4cb5f035431c8adfb94324633-refs/branch-heads/4183@{#1658}
OS Linux

Version/Channel Information:

Stable 1.13.82 and Beta 1.14.65

  • Can you reproduce this issue with the current release? Yes
  • Can you reproduce this issue with the beta channel? Yes
  • Can you reproduce this issue with the nightly channel? Haven't tested

Other Additional Information:

  • Does the issue resolve itself when disabling Brave Shields? No
  • Does the issue resolve itself when disabling Brave Rewards? No
  • Is the issue reproducible on the latest version of Chrome? No

Miscellaneous Information:

Temporarily fixed by copying libEGL.so, libGLESSv2.so and the swiftshader directory from the usr/lib/chromium directory to the brave-bin directory as these files seem to be missing resulting in the WebGL and OpenGL errors.

@whnr
Copy link

whnr commented Aug 31, 2020

I can confirm this issue.

@urbenlegend
Copy link

I can confirm this issue as well. This drastically reduces the performance of Brave on Linux platforms and also prevents it from painting to the screen at higher than 60hz according to vsynctester.com.

@bsclifton
Copy link
Member

Might be the same root cause as #9824

@antonok-edm
Copy link
Collaborator

It looks like our .zip packages from https://github.com/brave/brave-browser/releases are missing a few files as compared to the .deb packages. In particular, ./opt/brave.com/brave/libGLESv2.so, ./opt/brave.com/brave/libEGL.so, ./opt/brave.com/brave/swiftshader/libGLESv2.so, ./opt/brave.com/brave/swiftshader/libEGL.so are only present in the .deb. That would cause issues like seen above:

[1038:1038:0828/124330.685442:ERROR:gl_implementation.cc(286)] : Failed to load /usr/lib/brave-bin/libGLESv2.so: > /usr/lib/brave-bin/libGLESv2.so: cannot open shared object file: No such file or directory
[1053:1053:0828/124331.144998:ERROR:gl_implementation.cc(286)] : Failed to load /usr/lib/brave-bin/swiftshader/libGLESv2.so: /usr/lib/brave-bin/swiftshader/libGLESv2.so: cannot open shared object file: No such file or directory

I've been able to reproduce this on Arch Linux, which installs from the .zip releases. @fmarier was unable to reproduce on Ubuntu 18.04 or Debian unstable, which both use the .deb releases.

@urbenlegend @whnr @themew are you all using Arch, Manjaro, or some other distribution which uses the .zip release?

@urbenlegend
Copy link

@antonok-edm That's a great observation! Yes I am on Arch (well technically EndeavourOS), and I am using the brave-bin AUR package.

@themew
Copy link
Author

themew commented Sep 1, 2020

@antonok-edm Yes, using Arch Linux and installing from AUR using yay. The files you noticed were missing are the files I suggested in the 'fix' at the bottom of my original post. Glad to know I wasn't imagining it :) Issues are in the brave-bin and brave-beta-bin.

@whnr
Copy link

whnr commented Sep 2, 2020 via email

@bsclifton bsclifton added the priority/P2 A bad problem. We might uplift this to the next planned release. label Sep 2, 2020
@jorgicio
Copy link

jorgicio commented Sep 2, 2020

I confirm the issue. Using brave-bin in Gentoo Linux.
Before 1.13.x, WebGL was working. Tried with 1.12.114.

EDIT: only the .deb file provides the missing libraries in order to run *GL, so I had to repackage Brave from the .deb in order to make it work.

@bsclifton
Copy link
Member

Might be related to https://bugs.chromium.org/p/chromium/issues/detail?id=1121782 - just shared this issue there. Will need to look into this

@themew
Copy link
Author

themew commented Sep 3, 2020

Might be related to https://bugs.chromium.org/p/chromium/issues/detail?id=1121782 - just shared this issue there. Will need to look into this

Appears to be a debian bug. The issue described here seems to only affect arch-based distros.

@bsclifton
Copy link
Member

bsclifton commented Sep 3, 2020

Good call, @themew - maybe that is related to #9824 or #8436. Either way, definitely of interest to us 😄

We should be able to have someone look at this soon. Thanks for your patience 😄

@jorgicio
Copy link

jorgicio commented Sep 3, 2020

Might be related to https://bugs.chromium.org/p/chromium/issues/detail?id=1121782 - just shared this issue there. Will need to look into this

Appears to be a debian bug. The issue described here seems to only affect arch-based distros.

Or any distro who uses the zip-packaged prebuilt Brave.

@antonok-edm
Copy link
Collaborator

We're working to get this fixed, but in the meantime I've had success with the following workaround:

  1. Download the corresponding .deb file for your Brave version from https://github.com/brave/brave-browser/releases

  2. Extract the contents of the .deb file using the ar utility - e.g. ar x brave-browser_1.13.82_amd64.deb

  3. Extract the contents of the newly extracted data.tar.xz file using the tar utility - tar xvJf data.tar.xz

  4. Check the "Log Messages" section at the bottom of brave://gpu and take note of the directory in the following error:

    Failed to load <DIRECTORY>/libGLESv2.so: <DIRECTORY>/libGLESv2.so: cannot open shared object file: No such file or directory
    

    On my machine and in the original report, <DIRECTORY> is /usr/lib/brave-bin.

  5. Copy the newly extracted files opt/brave.com/brave/libGLESv2.so and opt/brave.com/brave/libEGL.so into <DIRECTORY>.

  6. Restart Brave.

@btlechowski
Copy link

btlechowski commented Sep 24, 2020

Verification passed on

Brave 1.15.60 Chromium: 86.0.4240.42 (Official Build) dev (64-bit)
Revision 418ccfc2b69112bd79d5ffb38b533642e64e6af8-refs/branch-heads/4240@{#773}
OS Ubuntu 18.04 LTS

Verified test plan from brave/brave-core#6600

Verified libEGL.so and libGLESv2.so are part of the package
image

Verified WebGL and OpenGL are not disabled under brave://gpu
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

10 participants