Closed Bug 1565134 Opened 6 years ago Closed 6 years ago

Firefox 68 refuses to create WebGL context with "FEATURE_FAILURE_OLD_NVIDIA", whereas Firefox 60.7.2 works

Categories

(Core :: Graphics: CanvasWebGL, defect)

68 Branch
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 1563854

People

(Reporter: justin, Unassigned)

Details

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0

Steps to reproduce:

Visited the WebGL Fluid Simulation page:

https://paveldogreat.github.io/WebGL-Fluid-Simulation/

Actual results:

Nothing appeared in the window. Opening the developer console instead shows many errors like:

Error: WebGL warning: getContext: Disallowing antialiased backbuffers due to blacklisting. script.js:62:21
Error: WebGL warning: <SetDimensions>: Refused to create WebGL2 context because of blacklist entry: FEATURE_FAILURE_OLD_NVIDIA

Expected results:

The WebGL should have worked. I still have the CentOS 7 provided Firefox installed (v 60.7.2 ESR). Loading the page with that works fine. No weird errors on the console, and the WebGL displays as expected.

Tried this with both the stock GeForce 210 that was in this desktop (has been working fine for years), and after switching in an old GTX 560 Ti (ex gamer card) I had hanging around. Both exhibit the exact same problem.

How to change this "blacklist" to not include these two cards, and/or just disable it altogether?

Component: Untriaged → Canvas: WebGL
Product: Firefox → Core

Can you update your graphics driver to something newer than 257.21?

I'm using the stock driver on CentOS 7 x64, installed via the package manager.

Which graphics driver would you like me to install? :)

Just to be clear, the driver in use is (from dmesg):

[ 3.256179] [drm] Initialized nouveau 1.3.1 20120801 for 0000:1a:00.0 on minor 0

Does that mean FF 68 is misdetecting the driver, thinking it's an old Nvidia one or something?

Either way, how to disable the blacklist?

The cards work fine. ;)

Actually, this seems much, much more like a regression.

Even the WebGL basic triangle, which was working yesterday (FF 67) no longer works:

https://justinclift.github.io/tinygo-wasm-basic-triangle/

There is literally nothing wrong with the graphics card or driver. This is something new in FF 68, that breaks on stuff that used to work fine.

Pretty sure this is bug 1563854. If when that bug lands you test in a build with that fix and it still doesn't work for you please re-open.

Status: UNCONFIRMED → RESOLVED
Closed: 6 years ago
Resolution: --- → DUPLICATE

Hi, as a workaround you can open about:config and set webgl.force-enabled to true. It will make WebGL 1 work again, but it didn't seem to have effect on WebGL 2 for which I still wanted to file a bug.

Thanks Timothy, that does sound like the problem. :)

Thanks Jan too, that does get it working again. Can get back to Wasm WebGL development without needing to buy a new computer or changing to Chrome. :)

With that flag not working for WebGL 2, maybe there's a different one?

Took a quick look around, to see if FF source is online. Turns out it is, and there's even search tooling for finding things quickly that looks decent:

https://dxr.mozilla.org/mozilla-central/search?q=webgl.force-enabled&redirect=false

Looking at this:

https://dxr.mozilla.org/mozilla-central/source/devtools/client/shared/webgl-utils.js#12

It's showing only a test for "webgl.force-enabled". If there was a 2nd one, for WebGL2... I'd kind of expect to be be listed alongside that one.

With some further digging you could probably find out what's going on. :)

On a side note, weirdly Bugzilla doesn't show that (nor anything) when searching on "FEATURE_FAILURE_OLD_NVIDIA". Oh well. ;)

You need to log in before you can comment on or make changes to this bug.