Commit graph

268 commits

Author SHA1 Message Date
Andrew Osmond
86da16f9a5 Bug 1696071 - Add support for DMABuf to the blocklist. r=rmader
Differential Revision: https://phabricator.services.mozilla.com/D107019
2021-03-16 20:14:51 +00:00
Andrew Osmond
46ef42b1f0 Bug 1689464 - Add support for X11 EGL to the blocklist. r=rmader
Differential Revision: https://phabricator.services.mozilla.com/D106927
2021-03-02 15:49:06 +00:00
Jamie Nicol
2bc946d133 Bug 1689064 - Disable optimized shaders on Mali-T6xx. r=aosmond
Webrender's pre-optimized shaders result in completely broken
rendering on a Huawei MediaPad M2 (Mali-T628). As a precaution,
disable optimized shaders on all Mali-T6xx devices.

Differential Revision: https://phabricator.services.mozilla.com/D104752
2021-02-11 13:47:59 +00:00
Brindusan Cristian
8859fc3907 Backed out changeset e602ff8fea83 (bug 1689064) for assertion failures in gfxFeature.cpp. CLOSED TREE 2021-02-11 13:28:24 +02:00
Jamie Nicol
e97cf43b8c Bug 1689064 - Disable optimized shaders on Mali-T6xx. r=aosmond
Webrender's pre-optimized shaders result in completely broken
rendering on a Huawei MediaPad M2 (Mali-T628). As a precaution,
disable optimized shaders on all Mali-T6xx devices.

Differential Revision: https://phabricator.services.mozilla.com/D104752
2021-02-11 10:54:15 +00:00
Noemi Erli
06eb4d31ad Backed out changeset 5338c029ee7c (bug 1689064) for causing GTest failures CLOSED TREE 2021-02-11 02:02:45 +02:00
Jamie Nicol
6bd22ad430 Bug 1689064 - Disable optimized shaders on Mali-T6xx. r=aosmond
Webrender's pre-optimized shaders result in completely broken
rendering on a Huawei MediaPad M2 (Mali-T628). As a precaution,
disable optimized shaders on all Mali-T6xx devices.

Differential Revision: https://phabricator.services.mozilla.com/D104752
2021-02-10 23:09:19 +00:00
Matt Woodrow
f9e8884de8 Bug 1541472 - Remove Advanced Layers, since it's disabled everywhere now. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D104592
2021-02-10 02:04:41 +00:00
sotaro
ee841fc548 Bug 1689945 - Update display info when WM_DISPLAYCHANGE happens r=jrmuizel
GfxInfo::RefreshMonitors() could not be called in ScreenHelperWin::RefreshScreens(), since the RefreshScreens() is called within nsAppShell::Init(). Then GfxInfo::RefreshMonitors() is called during WM_DISPLAYCHANGE event handling.

Differential Revision: https://phabricator.services.mozilla.com/D103661
2021-02-04 23:25:35 +00:00
Butkovits Atila
ce8d6cba99 Backed out changeset 73210e7c7526 (bug 1689945) for causing failures on Hal.cpp. CLOSED TREE 2021-02-04 18:26:21 +02:00
sotaro
196f20caaa Bug 1689945 - Update display info when WM_DISPLAYCHANGE happens r=jrmuizel
GfxInfo::RefreshMonitors() could not be called in ScreenHelperWin::RefreshScreens(), since the RefreshScreens() is called within nsAppShell::Init(). Then GfxInfo::RefreshMonitors() is called during WM_DISPLAYCHANGE event handling.

Differential Revision: https://phabricator.services.mozilla.com/D103661
2021-02-04 13:53:03 +00:00
Andrew Osmond
f74165b411 Bug 1690256 - Ensure we check the driver version for gfx blocklisting in Wayland only builds. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D103771
2021-02-02 14:42:58 +00:00
Jamie Nicol
3f25321970 Bug 1687312 - Expose gfx.feature.webrender probe to geckoview_streaming telemetry. r=jrmuizel,aosmond
We have noticed that a sizeable number of Fenix users are not getting
webrender when they should be. On desktop the existing
gfx.feature.webrender telemetry probe is used to determine why
webrender is not enabled. Expose this to geckoview_streaming telemetry
so we can tell the same for Fenix users.

Differential Revision: https://phabricator.services.mozilla.com/D102213
2021-01-18 22:39:24 +00:00
Sylvestre Ledru
912aeb9ab5 Bug 1519636 - Reformat recent changes to the Google coding style r=andi
Updated with clang-format version 11.0.1 (taskcluster-B6bdwSKDRF-luRQWXBuzpA)

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D102084
2021-01-18 16:50:16 +00:00
Jeff Muizelaar
49e9f844bc Bug 1686802 - Expose OMTP status to telemetry. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D101858
2021-01-15 02:40:22 +00:00
Simon Giesecke
78678eab21 Bug 1679987 - Implement nsTSubstring::Split using nsTokenizedRange. r=xpcom-reviewers,necko-reviewers,nika
nsTSubstring::Split used to heap-allocate an array to store all tokens.
However, most uses of Split just use it to iterate in a range-based for loop.
The few remaining uses also don't need to iterate multiple times over all
tokens, so it's better to just use nsTokenizedRange, which tokenizes lazily.

Differential Revision: https://phabricator.services.mozilla.com/D99234
2020-12-17 12:36:47 +00:00
Andrew Osmond
284c6aa966 Bug 1682636 - Don't allow generic blocklist rules to block SW-WR. r=jrmuizel
Since Software WebRender is the replacement for Basic compositor, we
should not allow generic blocklist rules which block all features to
block Software WebRender. This feature must work under all
configurations, including safe mode, so it doesn't make sense to allow
blocking it.

This does not however prevent rules specifically targeting SW-WR from
blocking/allowing it.

Differential Revision: https://phabricator.services.mozilla.com/D99834
2020-12-16 21:32:28 +00:00
Dorel Luca
ea9d56d8fc Backed out changeset 12545700455b (bug 1682636) for Wd failures. CLOSED TREE 2020-12-16 03:43:18 +02:00
Andrew Osmond
2c4e6231c0 Bug 1682636 - Don't allow generic blocklist rules to block SW-WR. r=jrmuizel
Since Software WebRender is the replacement for Basic compositor, we
should not allow generic blocklist rules which block all features to
block Software WebRender. This feature must work under all
configurations, including safe mode, so it doesn't make sense to allow
blocking it.

This does not however prevent rules specifically targeting SW-WR from
blocking/allowing it.

Differential Revision: https://phabricator.services.mozilla.com/D99834
2020-12-15 20:50:12 +00:00
Andrew Osmond
d44b0fb763 Bug 1678474 - Add generic Darwin option for OSX for downloadable gfx blocklist. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D97688
2020-11-27 14:04:09 +00:00
Andrew Osmond
4afdd0de9f Bug 1678061 - Properly detect OSX 11.0 / 10.16 for blocklist purposes. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D97561
2020-11-19 17:34:25 +00:00
Matt Woodrow
ccd859ffae Bug 1674866 - Add gfx feature for WR software. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D96502
2020-11-10 23:36:43 +00:00
Jeff Gilbert
449098b7b4 Bug 1668144 - Add blocklisting for OOP WebGL. r=mattwoodrow
* Add FEATURE_THREADSAFE_GL and FEATURE_ALLOW_WEBGL_OUT_OF_PROCESS
* Add gfxVars::AllowWebglOop()
* Blocklist THREADSAFE_GL on mesa/nouveau

Differential Revision: https://phabricator.services.mozilla.com/D91879
2020-10-01 08:14:12 +00:00
Jeff Gilbert
fe9cac8ce8 Bug 1664905 - Use gfxVars instead of GfxInfo in WebGL code. r=mattwoodrow
GfxInfo generally wants to be main-thread, so WebGL (especially
out-of-process) runs into problems sometimes.

Also rename to UNUSED_FEATURE_WEBGL_MSAA, pending removal.

Differential Revision: https://phabricator.services.mozilla.com/D91208
2020-09-27 22:18:23 +00:00
Andrew Osmond
754baa9793 Bug 1667380 - Grant each gfx feature instance level its own failure ID. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D91432
2020-09-25 14:11:52 +00:00
Csoregi Natalia
fd1e86b487 Backed out changeset 3dcacf3ae5a1 (bug 1664905) for assertion failures on GfxInfoBase.cpp. CLOSED TREE 2020-09-25 09:33:40 +03:00
Jeff Gilbert
3fd329a969 Bug 1664905 - Use gfxVars instead of GfxInfo in WebGL code. r=mattwoodrow
GfxInfo generally wants to be main-thread, so WebGL (especially
out-of-process) runs into problems sometimes.

Also remove obsolete FEATURE_WEBGL_MSAA.

Differential Revision: https://phabricator.services.mozilla.com/D91208
2020-09-25 05:43:24 +00:00
Razvan Maries
92ac0ffaa7 Backed out changeset 3ea0c63fe8b8 (bug 1664905) for build bustages on ClientWebGLContext.cpp. CLOSED TREE 2020-09-25 03:26:17 +03:00
Jeff Gilbert
98e2fea926 Bug 1664905 - Use gfxVars instead of GfxInfo in WebGL code. r=mattwoodrow
GfxInfo generally wants to be main-thread, so WebGL (especially
out-of-process) runs into problems sometimes.

Also remove obsolete FEATURE_WEBGL_MSAA.

Differential Revision: https://phabricator.services.mozilla.com/D91208
2020-09-24 23:46:12 +00:00
Andrew Osmond
92a899be07 Bug 1666272 - Use the HW ANGLE failure ID when disabled WebRender due to it. r=jrmuizel
We don't collect telemetry stats on why users don't get HW ANGLE,
however we can just share failure IDs with HW ANGLE when we disable
WebRender with UnavailableNoAngle.

Differential Revision: https://phabricator.services.mozilla.com/D90867
2020-09-21 20:43:20 +00:00
Andrew Osmond
fe2bf67e1b Bug 1654271 - Ship WebRender on < OSX 10.16 and Intel Gen 6 GT2 and Gen 7 to release. r=nical
Also ship to release if the Intel driver is 21.20.16.4550 or later.

Add Intel Gen 6 GT1 (Sandybridge) and allow it to ride to early beta.

Differential Revision: https://phabricator.services.mozilla.com/D89613
2020-09-09 15:54:18 +00:00
Sylvestre Ledru
c320561565 Bug 1519636 - Reformat recent changes to the Google coding style r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D89392
2020-09-08 04:32:00 +00:00
Nathan Froyd
3b58be4ab2 Bug 1662809 - don't copy entire blocklist entries during blocklist parsing; r=aosmond
Like an earlier patch in the series, this uses `Split()` to return dependent
substrings into the blocklist string, rather than copying each individual
entry out for parsing.  We also, in passing, eliminate a copy from the
converted UTF8 string into an entirely separate string.

Depends on D89169

Differential Revision: https://phabricator.services.mozilla.com/D89170
2020-09-02 17:04:51 +00:00
Nathan Froyd
b1a57a4701 Bug 1662809 - don't copy key-value pairs from blocklist entries during parsing; r=aosmond
Instead of splitting the entire entry into an `nsTArray`, we can use
`nsTSubstring::Split` to provide dependent strings into the entry.  We copy
the actual keys and values later, so this should be perfectly safe.

Depends on D89168

Differential Revision: https://phabricator.services.mozilla.com/D89169
2020-09-02 16:58:33 +00:00
Nathan Froyd
61491490cb Bug 1662809 - don't copy split values when parsing gfx blocklists; r=aosmond
There's a lot of string splitting here, which needlessly copies, and then
there's a lot of copies out of the split arrays.  This patch at least
addresses the latter by using references where possible.

Differential Revision: https://phabricator.services.mozilla.com/D89168
2020-09-02 16:58:10 +00:00
Jed Davis
dc948b0c6a Bug 1654957 - Enable the GfxInfo component in the GPU process on Linux. r=jgilbert
Out-of-process WebGL needs GfxInfo to exist in the composition
process (which is the GPU process if it exists and the parent process
otherwise).  This patch enables the Linux version of that component in
the GPU process; the IPC currently used to give content processes copies
of the parent's GPU info is extended to also send it to the GPU process.

Differential Revision: https://phabricator.services.mozilla.com/D85443
2020-08-07 21:31:53 +00:00
Jed Davis
38615bc134 Bug 1654957 - Don't leak GfxInfoBase::sFeatureStatus even if GfxInfo is never created. r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D86117
2020-08-07 21:38:18 +00:00
Jed Davis
0e7115ba35 Bug 1654957 - Prelude: move GfxInfoFeatureStatus from dom to gfx. r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D85488
2020-08-07 21:31:48 +00:00
Mihai Alexandru Michis
9fa46e7850 Backed out 2 changesets (bug 1654957) for causing leaks.
CLOSED TREE

Backed out changeset 14761127f6bb (bug 1654957)
Backed out changeset 49a529a1cc20 (bug 1654957)
2020-08-04 19:31:06 +03:00
Jed Davis
24b6995b46 Bug 1654957 - Enable the GfxInfo component in the GPU process on Linux. r=jgilbert
Out-of-process WebGL needs GfxInfo to exist in the composition
process (which is the GPU process if it exists and the parent process
otherwise).  This patch enables the Linux version of that component in
the GPU process; the IPC currently used to give content processes copies
of the parent's GPU info is extended to also send it to the GPU process.

Differential Revision: https://phabricator.services.mozilla.com/D85443
2020-07-30 22:08:15 +00:00
Jed Davis
e0230397f6 Bug 1654957 - Prelude: move GfxInfoFeatureStatus from dom to gfx. r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D85488
2020-07-30 22:07:24 +00:00
Sylvestre Ledru
caf785c695 Bug 1519636 - Reformat recent changes to the Google coding style r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D82178
2020-07-04 09:38:43 +00:00
Simon Giesecke
cd8b8939b9 Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80860
2020-07-01 08:29:29 +00:00
Jeff Muizelaar
718859233a Bug 1649215 - Expose OpenGL Compositing status. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D81573
2020-06-29 21:21:40 +00:00
Jeff Muizelaar
a177765070 Bug 1648579 - Add failure id for Disabled instead of Denied. r=aosmond
Denied is always the result of the allow list.

Differential Revision: https://phabricator.services.mozilla.com/D81172
2020-06-25 20:49:04 +00:00
Jeff Muizelaar
9dd8f51e82 Bug 1648304 - Record WebRender compositor status in telemetry. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D80994
2020-06-25 00:59:29 +00:00
Kartikaya Gupta
d61fdfeed8 Bug 1647225 - Change some failure IDs and strings. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D80450
2020-06-23 15:23:11 +00:00
Kartikaya Gupta
11ab3b57b8 Bug 1647225 - Rename some local functions and variables. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D80448
2020-06-23 15:20:33 +00:00
Kartikaya Gupta
f7b1476df6 Bug 1647225 - Rename a define and removed another unused define. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D80447
2020-06-23 15:14:04 +00:00
Kartikaya Gupta
837a027ab6 Bug 1647225 - Consistently use blocklist terminology for gfxFeature. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D80425
2020-06-23 15:13:57 +00:00