Firefox 91 Linux - WebGL stopped working
WebGL has stopped working. I think this has happened with Firefox 91.
For example, http://webglsamples.org/aquarium/aquarium.html gives the error Status: WebGL creation failed: * tryNativeGL () * Exhausted GL driver options. (FEATURE_FAILURE_WEBGL_EXHAUSTED_DRIVERS)
I'm running Firefox on Debian on ChromeOS.
On about:support, WebGL 1 Driver Renderer: Red Hat -- virgl WebGL 2 Driver Rendered: Red Hat -- virgl
There are no WebGL errors in about:support
I've tried the Troubleshoot Mode but that made no difference.
Изабрано решење
I'm using Debian on ChromeOS, which I discovered is using the Wayland protocol, not X11.
My solution was to set the environment variable MOZ_ENABLE_WAYLAND=1 then Firefox uses Wayland and not xwayland. This has fixed the webgl issue, or at least sidestepped it - as webgl now works. It's also fixed some other cosmetic issues with Firefox itself.
Прочитајте овај одговор са објашњењем 👍 0Сви одговори (14)
You can try to force WebGL and set this pref to true on the about:config page.
- webgl.force-enabled
You can open the about:config page via the location/address bar. You can click the button to "Accept the Risk and Continue".
cor-el said
You can try to force WebGL and set this pref to true on the about:config page.
Confirming I've got webgl.force-enabled set to true, but the WebGL errors still occurs.
It works for me either way. see screenshot Can you try downloading a separate copy of Firefox and run it from the folder to see what happens?
Измењено
I downloaded a fresh copy of Firefox and ran that, it had the same problem.
I did notice than when started from the command line there's an error - `[GFX1-]: glxtest: libpci missing` . I installed the libpci3 package using apt, and this seemed to fix the missing libpci error, but doesn't fix the overall problem of webgl not working.
On Firefox 92 now, this still an issue.
I found this bug, so it seems it's not just me.. https://bugzilla.mozilla.org/show_bug.cgi?id=1725148
Измењено
Одабрано решење
I'm using Debian on ChromeOS, which I discovered is using the Wayland protocol, not X11.
My solution was to set the environment variable MOZ_ENABLE_WAYLAND=1 then Firefox uses Wayland and not xwayland. This has fixed the webgl issue, or at least sidestepped it - as webgl now works. It's also fixed some other cosmetic issues with Firefox itself.
Sorry, didn't help here. I am not using Wayland at all. This should definitely also work on standard X11 with GLX as it does for Google Chrome.
You can try to force WebGL and set this pref to true on the about:config page.
- about:config => webgl.force-enabled = true
You can check whether WebGL errors are reported in the Graphics section on the "Help -> Troubleshooting Information" (about:support) page.
cor-el said
You can try to force WebGL and set this pref to true on the about:config page.You can check whether WebGL errors are reported in the Graphics section on the "Help -> Troubleshooting Information" (about:support) page.
- about:config => webgl.force-enabled = true
Sorry, did all that already. Forcing WebGL on doesn't help. Neither does forcing Webrender on or off, but I suspect a connection with Webrender because WebGL broke in Firefox 91 which is when the switch to Webrender took place.
For the records, about:support doesn't show any issues whatsoever. It reports WebGL as supported (so do webglreport.com etc but with the caveat that it's "disabled".
The only indication that anything is wrong is in the web console which says:
Failed to create WebGL context: WebGL creation failed:
- tryNativeGL ()
- Exhausted GL driver options. (FEATURE_FAILURE_WEBGL_EXHAUSTED_DRIVERS)
After spending most of my weekend on this annoying issue, I have finally got WebGL working again.
None of the webrender related options in about:config helped, neither did forcing EGL enabled (only added FEATURE_FAILURE_NO_DISPLAY to the error message above).
Going back to earlier versions of Firefox didn't work either because i) it would not accept my existing profile and ii) it simply didn't show any websites but instead made the tabs crash. Presumably an incompatibility with some newer library versions.
So, what did finally work? Enabling webgl.out-of-process did! Why? Good question. I was reluctant to even try it because all I found about it on Google seemed to say that it is unstable and will crash your tabs. That may still be true, I haven't tested more than a few minutes. But at least WebGL is back for me.
Update: after enabling webgl.out-of-process as described above, my widevine plugin is now crashing every time, so no more video streaming for me ...
Update: the most straightforward solution to the problem is setting dom.ipc.avoid-gtk=false See https://bugzilla.mozilla.org/show_bug.cgi?id=1725148
manfred.kitzbichler said
Update: the most straightforward solution to the problem is setting dom.ipc.avoid-gtk=false See https://bugzilla.mozilla.org/show_bug.cgi?id=1725148
Thanks, this worked for me too. I can't change the 'chosen solution' from the wayland one. (Whilst the Wayland one fixed webgl (on my system) it made copying/pasting unreliable.)
Измењено
For the record, this works too and is probably the least intrusive solution:
XAUTHORITY=$HOME/.Xauthority firefox
If XAUTHORITY is set on your system, you should be good.