Commit Graph

83 Commits

Author SHA1 Message Date
Lukas Bernhard
add789c413 Bug 1679076 - Recognize sway as desktop environment. r=gfx-reviewers,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D127986
2021-10-29 12:23:58 +00:00
Robert Mader
b9982073c9 Bug 1731480 - Stop reporting swrast as driver, r=aosmond
`swrast` is reported as fallback software driver. This happens with
unknown sw-drivers (e.g. zink on lavapipe), but also when `glxtest`
incorrectly detects software rendering. This can be confusing and
is basically always wrong - by now it even got removed from Mesa
and for years only has been used on niche setups.

Make this more clear by using "mesa/software-unknown" instead.
No functional change beyond reporting intended here.

Differential Revision: https://phabricator.services.mozilla.com/D126052
2021-09-20 14:38:22 +00:00
Andrew Osmond
896626e75a Bug 1715560 - Remove low powered NVIDIA blocklist rule on Windows. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D117328
2021-06-09 15:01:32 +00:00
Jeff Muizelaar
757fd965b3 Bug 1712144 - Block WebRender on Baytrail on Linux. r=aosmond
We're seeing glitching in bug 1708682 so lets block it now until upstream
figures out what's going on:
https://gitlab.freedesktop.org/mesa/mesa/-/issues/4804

Differential Revision: https://phabricator.services.mozilla.com/D115617
2021-05-20 18:52:00 +00:00
Csoregi Natalia
5464943802 Backed out changeset 34cf03d9341a (bug 1712144) for bustage on GfxInfo.cpp. CLOSED TREE 2021-05-20 21:40:01 +03:00
Jeff Muizelaar
05a10989ae Bug 1712144 - Block WebRender on Baytrail on Linux. r=aosmond
We're seeing glitching in bug 1708682 so lets block it now until upstream
figures out what's going on:
https://gitlab.freedesktop.org/mesa/mesa/-/issues/4804

Differential Revision: https://phabricator.services.mozilla.com/D115617
2021-05-20 18:00:19 +00:00
Andrew Osmond
811ef2965b Bug 1690568 - Block WebRender on Linux with Mesa r600 driver if older than 17.3.0. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D103907
2021-02-03 16:00:47 +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
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
Andrew Osmond
da33064dce Bug 1679998 - Part 1. Add Apple as a GPU vendor to GfxInfo. r=jrmuizel,mstange
Differential Revision: https://phabricator.services.mozilla.com/D98310
2020-12-01 16:26:43 +00:00
Andrew Osmond
d54e45522a Bug 1677293 - Enable Software WebRender on Linux nightly for small/medium screens. r=jrmuizel
This patch enables Software WebRender for all Linux users. If their
configuration is also allowlisted for (accelerated) WebRender, then they
will default to that over Software WebRender.

Differential Revision: https://phabricator.services.mozilla.com/D97156
2020-11-20 17:38:53 +00:00
Jeff Muizelaar
80315bfb0a Bug 1678408 - Rename IntelHD3000 to IntelSandyBridge. r=aosmond
By default, anything we do for one Sandy Bridge gpu
we should do for all of them. See bug 1678388 for an
example of how we screwed this up.

Differential Revision: https://phabricator.services.mozilla.com/D97649
2020-11-19 19:30:46 +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
Andrew Osmond
02ff8b6e97 Bug 1673939 - Block WebRender for AMD R600 GPUs with Mesa drivers due to garbled text. r=jrmuizel
Note R600 refers to the GPU generation, not the r600 Mesa driver.

Differential Revision: https://phabricator.services.mozilla.com/D96115
2020-11-06 15:50:54 +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
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
Andrew Osmond
4a645cb26a Bug 1653464 - Improve Linux desktop and window protocol detection. r=nical
This patch adds detection for XWayland, as that is sometimes an
important distinction when debugging WebRender bugs. For all intents and
purposes, it should work the same as X11, but sometimes does not.

This patch also fixes the desktop environment detection for a few corner
cases. Budgie, in particular, claims to be a GNOME variant, which is not
correct for our purposes, and DWM wasn't detected at all.

Differential Revision: https://phabricator.services.mozilla.com/D83876
2020-07-17 09:57:25 +00:00
Jeff Muizelaar
5ec0345f23 Bug 1648587 - Rename IntelHDGraphicsToHaswell to IntelHaswell. r=aosmond
IntelHDGraphicsToHaswell currently only includes Haswell and
not older hardware like IntelHDGraphicsToIvyBridge etc.

Differential Revision: https://phabricator.services.mozilla.com/D81185
2020-06-25 20:49:50 +00:00
Jeff Muizelaar
5aa9d3df08 Bug 1641982 - Add some additional device vendors. r=aosmond
Some of the Microsoft ones aren't registered but it's probably
better for us to have something than nothing.

Differential Revision: https://phabricator.services.mozilla.com/D77532
2020-05-29 22:33:45 +00:00
Simon Giesecke
49eb05a114 Bug 1626570 - Improve handling of copying arrays in widget/. r=jhorak
Differential Revision: https://phabricator.services.mozilla.com/D72321
2020-04-30 09:38:38 +00:00
Botond Ballo
400b5015cc Bug 1627482 - Fix non-unified build errors in gfx/tests. r=tnikkel
Differential Revision: https://phabricator.services.mozilla.com/D69733

--HG--
extra : moz-landing-system : lando
2020-04-05 03:50:23 +00:00
Jessie Bonisteel
7a871da043 Bug 1615049 - Shipping WebRender to modern intel laptops with small screen. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D66643

--HG--
extra : moz-landing-system : lando
2020-03-13 19:59:43 +00:00
Andreea Pavel
ffe2fa6ae0 Backed out changeset 180f1350fdd3 (bug 1615049) for build bustages at /GfxDriverInfo.cpp on a CLOSED TREE 2020-03-13 21:23:56 +02:00
Jessie Bonisteel
37e2c5ab60 Bug 1615049 - Shipping WebRender to modern intel laptops with small screen. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D66643

--HG--
extra : moz-landing-system : lando
2020-03-13 18:35:55 +00:00
Jeff Muizelaar
a091f10bb0 Bug 1615420. Disable DirectComposition on AMD and older Intel drivers on beta & release. r=aosmond
This is similar to a change that landed directly into 74. We don't want to
roll-out to these users yet and we don't want to have to think about it every
release.

Differential Revision: https://phabricator.services.mozilla.com/D66453

--HG--
extra : moz-landing-system : lando
2020-03-13 15:43:46 +00:00
Andrew Osmond
7322e0dfc4 Bug 1618326 - Remove/replace AMD with ATI in our blocklist rules. r=jrmuizel
AMD does not release any graphics cards under the vendor ID 0x1022. That
appears to be reserved for their non-graphics hardware. Instead they
have chosen to continue releasing graphics hardware under the ATI vendor
ID 0x1002. This patch removes all of the AMD ID rules and replaces them,
if applicable, with ATI ID rules. This has meant that sometimes we
failed to block things in the past that we expected to.

Differential Revision: https://phabricator.services.mozilla.com/D64443

--HG--
extra : moz-landing-system : lando
2020-02-27 15:39:12 +00:00
Andrew Osmond
db39fa490d Bug 1614798 - Refactor the blocklist rules to hide more of the boilerplate. r=jrmuizel
We would like to get to a world where we compare/store enums instead of
strings, and this is a step towards.

Differential Revision: https://phabricator.services.mozilla.com/D62503

--HG--
extra : moz-landing-system : lando
2020-02-13 22:39:10 +00:00
Andrew Osmond
b96a8b6503 Bug 1614376 - Part 3. Add support for device ID ranges in blocklist rules. r=jrmuizel
Currently the blocklist can block groups of devices, called a
DeviceFamily. However this only allows us to check specific IDs and not
ranges of device IDs like we do currently for the WebRender allowlist.
This patch allows a device family to now specify start and end values
for device IDs we want to match in the blocklist rule.

Differential Revision: https://phabricator.services.mozilla.com/D62324

--HG--
extra : moz-landing-system : lando
2020-02-13 15:51:40 +00:00
Andrew Osmond
cbd1d387e2 Bug 1614376 - Part 2. Add blocklist support for battery/screen size filters. r=jrmuizel
As part of the WebRender rollout, we have been only allowing users
meeting particular platform, battery and screen size requirements (among
others) to get WebRender by default. This patch adds support for battery
and screen size filters in the blocklist rules to allow us to control
that more easily. It also adds kludgey support for checking for recent
Windows 10 build numbers for allowlist purposes; implementing this the
proper way would require an implementation like driver version checks,
which are much more complicated than most of the rules.

Differential Revision: https://phabricator.services.mozilla.com/D62323

--HG--
extra : moz-landing-system : lando
2020-02-13 15:51:32 +00:00
Csoregi Natalia
743b1f8b4b Backed out 3 changesets (bug 1614376) for assertion failures on GfxInfoBase.cpp. CLOSED TREE
Backed out changeset b239f4b49722 (bug 1614376)
Backed out changeset c5ac550f4966 (bug 1614376)
Backed out changeset e11c62eba5f1 (bug 1614376)
2020-02-13 14:35:26 +02:00
Andrew Osmond
6a274e995e Bug 1614376 - Part 3. Add support for device ID ranges in blocklist rules. r=jrmuizel
Currently the blocklist can block groups of devices, called a
DeviceFamily. However this only allows us to check specific IDs and not
ranges of device IDs like we do currently for the WebRender allowlist.
This patch allows a device family to now specify start and end values
for device IDs we want to match in the blocklist rule.

Differential Revision: https://phabricator.services.mozilla.com/D62324

--HG--
extra : moz-landing-system : lando
2020-02-11 22:36:41 +00:00
Andrew Osmond
1374c13c07 Bug 1614376 - Part 2. Add blocklist support for battery/screen size filters. r=jrmuizel
As part of the WebRender rollout, we have been only allowing users
meeting particular platform, battery and screen size requirements (among
others) to get WebRender by default. This patch adds support for battery
and screen size filters in the blocklist rules to allow us to control
that more easily. It also adds kludgey support for checking for recent
Windows 10 build numbers for allowlist purposes; implementing this the
proper way would require an implementation like driver version checks,
which are much more complicated than most of the rules.

Differential Revision: https://phabricator.services.mozilla.com/D62323

--HG--
extra : moz-landing-system : lando
2020-02-11 22:36:39 +00:00
Andrew Osmond
215f13488a Bug 1602819 - Expose desktop environment (e.g. GNOME, KDE) on Linux. r=jrmuizel,fluent-reviewers
This patch also exposes the desktop environment and window protocol on
the gfx blocklist, allowing us more control over feature deployment.
This will help with the slow rollout of WebRender to release channels.

Differential Revision: https://phabricator.services.mozilla.com/D56563

--HG--
extra : moz-landing-system : lando
2020-02-10 14:21:30 +00:00
Razvan Maries
23b0b10a14 Backed out changeset 8ddc0a160da1 (bug 1602819) for Mochitest perma failures on Linux. CLOSED TREE 2020-02-10 14:52:27 +02:00
Andrew Osmond
b2a444ebe9 Bug 1602819 - Expose desktop environment (e.g. GNOME, KDE) on Linux. r=jrmuizel,fluent-reviewers
This patch also exposes the desktop environment and window protocol on
the gfx blocklist, allowing us more control over feature deployment.
This will help with the slow rollout of WebRender to release channels.

Differential Revision: https://phabricator.services.mozilla.com/D56563

--HG--
extra : moz-landing-system : lando
2020-02-07 18:57:51 +00:00
sotaro
37617ede78 Bug 1599981 - Blacklist old drivers on AMD Caicos GPU on Windows10 r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D58180

--HG--
extra : moz-landing-system : lando
2020-01-05 19:25:36 +00:00
sotaro
4dfa97eb9f Bug 1603015 - Backout r=gw
Backout a patch since it disables WR compositor usage during try tests.

Differential Revision: https://phabricator.services.mozilla.com/D56673

--HG--
extra : moz-landing-system : lando
2019-12-13 00:46:18 +00:00
sotaro
b6830af239 Bug 1603015 - Block WebRender compositor on all Intel devices with <= 6293 driver r=gw
Differential Revision: https://phabricator.services.mozilla.com/D56673

--HG--
extra : moz-landing-system : lando
2019-12-11 06:19:48 +00:00
sotaro
111038667c Bug 1602511 - Blacklist webrender compositor on Intel HD 520 r=gw
Differential Revision: https://phabricator.services.mozilla.com/D56535

--HG--
extra : moz-landing-system : lando
2019-12-10 19:16:13 +00:00
Dzmitry Malyshau
2db3c22a35 Bug 1570736 - Blocklist WR swizzling on HD3000 r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D50813

--HG--
extra : moz-landing-system : lando
2019-10-28 21:38:11 +00:00
Dzmitry Malyshau
0cd3e9c400 Bug 1558167 - Disable swizzling on macOS 10.15 AMD devices r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D48591

--HG--
extra : moz-landing-system : lando
2019-10-08 21:09:58 +00:00
Dzmitry Malyshau
005edf80aa Bug 1570736 - Force disable WR swizzling on Intel 4000 on Mac r=aosmond
Investigation showed that on this platform the texture unit state becomes
corrupted whenever we set the non-identity swizzling (getting garbage from textureSize()).
Given no easy workaround, we disable swizzling for this GPU family on Mac, for now.

Differential Revision: https://phabricator.services.mozilla.com/D41274

--HG--
extra : moz-landing-system : lando
2019-08-09 18:57:35 +00:00
Andrew Osmond
25e394458a Bug 1554251 - Enable WebRender on nightly for AMD hardware with Linux and Mesa drivers. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D32506
2019-05-27 12:35:53 -04:00
Andrew Osmond
17c3cc5d39 Bug 1544105 - Part 1. Expose new driver vendor field for the graphics blocklist. r=jrmuizel
This reunifies the behaviour changed in bug 1294232 to ensure that the
vendor ID of GfxInfo is the same between graphics hardware. Vendor ID
should always represent Intel, Nvidia, ATI, etc such that callers can
reason about the performance characteristics without being exposed to
the driver implementation for that platform. Now we split off the more
detailed driver information into the "driver vendor" which will contain
more information, such as what implementation is being used (e.g.
mesa/i965 for modern Intel graphics cards). This field is exposed to the
blocklist and will be useful for allowing different rules for different
driver implementations.

We also now provide a default implementation for
GfxInfoBase::FindMonitors for platforms missing support. This will just
list the primary screen size used without listing secondary monitors,
refresh rate, and such.

Differential Revision: https://phabricator.services.mozilla.com/D29471
2019-05-03 18:26:06 -04:00
Mihai Alexandru Michis
25a6b02677 Backed out 2 changesets (bug 1544105) for leaks in mda tests and failing browser_Troubleshoot.js CLOSED TREE
Backed out changeset eca7ee42af96 (bug 1544105)
Backed out changeset a8cd879f02ce (bug 1544105)
2019-05-03 23:19:03 +03:00
Andrew Osmond
f289a95270 Bug 1544105 - Part 1. Expose new driver vendor field for the graphics blocklist. r=jrmuizel
This reunifies the behaviour changed in bug 1294232 to ensure that the
vendor ID of GfxInfo is the same between graphics hardware. Vendor ID
should always represent Intel, Nvidia, ATI, etc such that callers can
reason about the performance characteristics without being exposed to
the driver implementation for that platform. Now we split off the more
detailed driver information into the "driver vendor" which will contain
more information, such as what implementation is being used (e.g.
mesa/i965 for modern Intel graphics cards). This field is exposed to the
blocklist and will be useful for allowing different rules for different
driver implementations.

We also now provide a default implementation for
GfxInfoBase::FindMonitors for platforms missing support. This will just
list the primary screen size used without listing secondary monitors,
refresh rate, and such.

Differential Revision: https://phabricator.services.mozilla.com/D29471
2019-05-03 14:57:58 -04:00
Daniel Varga
2b81f4d301 Backed out 2 changesets (bug 1544105) for build bustages. On a CLOSED TREE
Backed out changeset 215c2693d281 (bug 1544105)
Backed out changeset 16d5af6fd55c (bug 1544105)
2019-05-03 19:12:48 +03:00
Andrew Osmond
c4dec73816 Bug 1544105 - Part 1. Expose new driver vendor field for the graphics blocklist. r=jrmuizel
This reunifies the behaviour changed in bug 1294232 to ensure that the
vendor ID of GfxInfo is the same between graphics hardware. Vendor ID
should always represent Intel, Nvidia, ATI, etc such that callers can
reason about the performance characteristics without being exposed to
the driver implementation for that platform. Now we split off the more
detailed driver information into the "driver vendor" which will contain
more information, such as what implementation is being used (e.g.
mesa/i965 for modern Intel graphics cards). This field is exposed to the
blocklist and will be useful for allowing different rules for different
driver implementations.

We also now provide a default implementation for
GfxInfoBase::FindMonitors for platforms missing support. This will just
list the primary screen size used without listing secondary monitors,
refresh rate, and such.

Differential Revision: https://phabricator.services.mozilla.com/D29471
2019-05-03 11:13:26 -04:00
Sylvestre Ledru
e226046cb8 Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan
# ignore-this-changeset

Depends on D28954

Differential Revision: https://phabricator.services.mozilla.com/D28956

--HG--
extra : moz-landing-system : lando
2019-05-01 08:47:10 +00:00
Andrew Comminos
6828eee6b1 Bug 1294232 - Refactor blocklisting on Linux to support the downloadable blocklist. r=jrmuizel
MozReview-Commit-ID: ESJY9kkqXR8

Differential Revision: https://phabricator.services.mozilla.com/D19190
2019-03-18 07:50:02 -04:00