Граф коммитов

82 Коммитов

Автор SHA1 Сообщение Дата
Csoregi Natalia 708c2f0ad2 Backed out changeset d42dc1f995bb (bug 1669275) for gfx crashes. CLOSED TREE 2020-10-08 04:26:03 +03:00
Robert Mader 8a5c42d45a Bug 1669275 - [WR/EGL/X11] Use GLX features on mesa. r=stransky
This allows mesa to continue using the existing vsync implementation
and nvidia to use the new EGL xvisual logic.

It is an intermediate solution until the issues are fixed. However,
assuming it will take a while to do so, it's probably worth it.

Differential Revision: https://phabricator.services.mozilla.com/D92466
2020-10-07 21:21:20 +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
Michael Kaply ef06e673cd Bug 1645732 - Add telemetry for Linux window protocol. r=chutten,aosmond
Differential Revision: https://phabricator.services.mozilla.com/D88696
2020-09-01 19:41:20 +00:00
Andrew Osmond 67f4c8b777 Bug 1653612 - Enable WebRender on beta for Linux users on X11 and with recent Intel/AMD drivers. r=nical
Differential Revision: https://phabricator.services.mozilla.com/D83973
2020-07-23 11:56:21 +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
Daosheng Mu af1368e7aa Bug 1602072 - Add a gfxInfo flag determine Firefox is embedded by FxR for telemetry. r=thomasmo,chutten,froydnj,jrmuizel,geckoview-reviewers,rbarker,snorp
Differential Revision: https://phabricator.services.mozilla.com/D56233
2020-06-25 17:22:20 +00:00
Kartikaya Gupta f3ff31626e Bug 1647225 - Fix some comments. r=jrmuizel,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D80449
2020-06-23 15:21:36 +00:00
Martin Stransky 8fc11cb1ca Bug 1645734 [Wayland] Move gbm library interface from nsWaylandDisplay, r=jhorak
Differential Revision: https://phabricator.services.mozilla.com/D79695
2020-06-23 06:27:09 +00:00
Narcis Beleuzu 1f50773a6e Backed out 8 changesets (bug 1647225) for xpcshell failures on test_gfxBlacklist_Version.js CLOSED TREE
Backed out changeset b6f88195da61 (bug 1647225)
Backed out changeset a5b3f54cb5f2 (bug 1647225)
Backed out changeset 6a1025189b0e (bug 1647225)
Backed out changeset b95de94b444e (bug 1647225)
Backed out changeset ed2c7dfd8373 (bug 1647225)
Backed out changeset 1adc99494bcb (bug 1647225)
Backed out changeset 5d0cf22c335a (bug 1647225)
Backed out changeset 956b43a8636f (bug 1647225)
2020-06-23 04:34:12 +03:00
Kartikaya Gupta 015478ec51 Bug 1647225 - Fix some comments. r=jrmuizel,geckoview-reviewers,agi
Depends on D80448

Differential Revision: https://phabricator.services.mozilla.com/D80449
2020-06-22 22:54:00 +00:00
Emilio Cobos Álvarez 54fd961a29 Bug 1641245 - Make string comparators not virtual. r=froydnj,necko-reviewers,geckoview-reviewers,jgilbert,agi,valentin
There's no use case for stateful comparators, so they can be just plain
function pointers.

This is used in some hot places like CSS selector matching.

Differential Revision: https://phabricator.services.mozilla.com/D77084
2020-05-27 18:11:12 +00:00
Martin Stransky 3e8ae1409e Bug 1619270 [Wayland] Check we're really on Wayland and not on headless, r=jhorak
Differential Revision: https://phabricator.services.mozilla.com/D65489

--HG--
extra : moz-landing-system : lando
2020-03-05 10:20:48 +00:00
Andrew Osmond 759c48f75e Bug 1614377 - Switch the WebRender rollout to use allowlist rules. r=jrmuizel
Now that GfxInfo supports allowlisting, we can port our existing
configuration in gfxPlatform to using allowlist rules. This will
greatly increase maintainability and certainty that the expected
devices are getting WebRender.

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

--HG--
extra : moz-landing-system : lando
2020-02-18 13:56:10 +00:00
Bogdan Tara e7e4a237f0 Backed out changeset de247892d14a (bug 1614377) for gfxPlatform.cpp related failures CLOSED TREE 2020-02-17 03:24:12 +02:00
Andrew Osmond 56e9347749 Bug 1614377 - Switch the WebRender rollout to use allowlist rules. r=jrmuizel
Now that GfxInfo supports allowlisting, we can port our existing
configuration in gfxPlatform to using allowlist rules. This will
greatly increase maintainability and certainty that the expected
devices are getting WebRender.

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

--HG--
extra : moz-landing-system : lando
2020-02-14 19:26:17 +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 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 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
Sylvestre Ledru cc2040bf21 Bug 1605934 - Use nested namespaces r=sg
Done with:
./mach static-analysis check --checks="-*, modernize-concat-nested-namespaces" --fix .
and then clang-format on the files

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

--HG--
extra : moz-landing-system : lando
2020-01-18 13:48:34 +00:00
Dorel Luca 506e65bcab Backed out changeset bbb39655cf71 (bug 1605934) for build bustage in widget/gtk/mozwayland/mozwayland.c 2020-01-18 15:39:55 +02:00
Sylvestre Ledru 6689a37527 Bug 1605934 - Use nested namespaces r=sg
Done with:
./mach static-analysis check --checks="-*, modernize-concat-nested-namespaces" --fix .
and then clang-format on the files

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

--HG--
extra : moz-landing-system : lando
2020-01-18 13:16:39 +00:00
Gabriele Svelto 5dc21d568c Bug 1600545 - Remove useless inclusions of header files generated from IDL files in modules/, netwerk/, parser/, security/, startupcache/, storage/, toolkit/, tools/, uriloader/, widget/, xpcom/ and xpfe/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

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

--HG--
extra : moz-landing-system : lando
2019-12-06 09:17:57 +00:00
Kris Taeleman 38b7d1873f Bug 1594145 - Add gfx telemetry scalars to geckoview_streaming. r=Dexter,jnicol
* Fix mochitest browser_Troubleshoot.js schema failure
* Fix mochitest browser_Troubleshoot.js schema failure on windows with
multiple adapters

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

--HG--
extra : moz-landing-system : lando
2019-11-26 19:42:06 +00:00
Coroiu Cristina 074f577ac7 Backed out changeset 91f3048cc58e (bug 1594145) for browser-chrome failures at toolkit/modules/tests/browser/browser_Troubleshoot.js on a CLOSED TREE 2019-11-26 04:49:17 +02:00
Kris Taeleman 92eb33ee8b Bug 1594145 - Add gfx telemetry scalars to geckoview_streaming. r=Dexter,jnicol
* Fix mochitest browser_Troubleshoot.js schema failure

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

--HG--
extra : moz-landing-system : lando
2019-11-25 20:50:33 +00:00
Mihai Alexandru Michis a033171524 Backed out changeset 270e007adcd2 (bug 1594145) for causing browser-chrome failures in browser_Troubleshoot.js 2019-11-25 14:51:07 +02:00
Kris Taeleman 25c223ac03 Bug 1594145 - Add gfx telemetry scalars to geckoview_streaming. r=Dexter,jnicol
Differential Revision: https://phabricator.services.mozilla.com/D52941

--HG--
extra : moz-landing-system : lando
2019-11-23 00:18:27 +00:00
Razvan Maries b908c8b469 Backed out changeset 0ae41aa8997b (bug 1594145) for build bustages on GfxInfo.cpp. CLOSED TREE 2019-11-22 14:52:04 +02:00
Kris Taeleman 90c12ab5c4 Bug 1594145 - Add gfx telemetry scalars to geckoview_streaming. r=Dexter,jnicol
Differential Revision: https://phabricator.services.mozilla.com/D52941

--HG--
extra : moz-landing-system : lando
2019-11-21 21:09:33 +00:00
Sylvestre Ledru 7c309095ea Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
Please note that it is the first reformat with clang-format 9
I only saw a fix in the .mm file

# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-10-21 14:13:44 +00:00
Kris Taeleman 3bd0cbdc09 Bug 1578506 - Add better monitor information to about:support. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D47110

--HG--
extra : moz-landing-system : lando
2019-10-03 23:43:35 +00:00
Jan Andre Ikenmeyer c4f6b66520 Bug 1563859 - Enable WebRender on Linux with Nvidia hardware and Mesa drivers. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D37924

--HG--
extra : moz-landing-system : lando
2019-07-12 20:46:03 +00:00
Jan Andre Ikenmeyer 74caabe3e3 Bug 1563854 - Restrict Nvidia blocklist entry to the proprietary driver. r=aosmond
Differential Revision: https://phabricator.services.mozilla.com/D37672

--HG--
extra : moz-landing-system : lando
2019-07-11 13:34:09 +00:00
Martin Stransky 14cac6b6f3 Bug 1561859 - [Wayland] Expose active DRM on Wayland in about:support & telemetry, r=kats
Differential Revision: https://phabricator.services.mozilla.com/D36248

--HG--
extra : moz-landing-system : lando
2019-07-02 09:17:22 +00:00
shindli 8152cee1b1 Backed out changeset 6e378fbef555 (bug 1561859) for gtest crashes on libwayland-client.so.0.3.0 CLOSED TREE 2019-07-01 18:57:33 +03:00
Martin Stransky f785fa7021 Bug 1561859 - [Wayland] Expose active DRM on Wayland in about:support & telemetry, r=kats
Differential Revision: https://phabricator.services.mozilla.com/D36248

--HG--
extra : moz-landing-system : lando
2019-07-01 13:44:14 +00:00
Sylvestre Ledru f1fbd2ff00 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-06-08 08:26:37 +00:00
Andrew Osmond 3da3ee0aa1 Bug 1548911 - Add support for EGL_MESA_query_driver to detect Mesa driver. r=kats
If Wayland is in use, then glXGetScreenDriver doesn't return the Mesa
driver name. There is a new API, eglGetDisplayDriverName, which was
added in Mesa 19 that works with Wayland.

Also expire the driver vendor is supplied for the proprietary NVIDIA and
ATI chipsets.

Differential Revision: https://phabricator.services.mozilla.com/D32631
2019-05-29 06:25:14 -04:00
Andrew Osmond fd0fefd13a Bug 1554540 - Expose window protocol (X11, Wayland) in nsIGfxInfo and about:support. r=kats,stransky,flod
Differential Revision: https://phabricator.services.mozilla.com/D32651
2019-05-28 06:40:34 -04: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 3a7c78906a Bug 1544105 - Part 2. Add new gfx driver vendor field to telemetry and about:support. r=jrmuizel,chutten,flod data-r=bmiroglio
Expose the driver vendor information (applies to Linux only at this
moment) to crash report telemetry and about:support. This will be useful
when debugging issues to know specifically what driver is in use.

Also expose the monitor information for Linux. Part 1 provides an
implementation to get the monitor information on said platform.

Differential Revision: https://phabricator.services.mozilla.com/D29472
2019-05-03 18:26:06 -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 580726465f Bug 1544105 - Part 2. Add new gfx driver vendor field to telemetry and about:support. r=jrmuizel,chutten,flod data-r=bmiroglio
Expose the driver vendor information (applies to Linux only at this
moment) to crash report telemetry and about:support. This will be useful
when debugging issues to know specifically what driver is in use.

Also expose the monitor information for Linux. Part 1 provides an
implementation to get the monitor information on said platform.

Differential Revision: https://phabricator.services.mozilla.com/D29472
2019-05-03 15:03:28 -04: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