Commit Graph

113 Commits

Author SHA1 Message Date
sotaro
1dc0c1859e Bug 1546397 - Blacklist WebGL on some android devices r=jgilbert
Differential Revision: https://phabricator.services.mozilla.com/D36153

--HG--
extra : moz-landing-system : lando
2019-06-28 07:00:13 +00: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
Chris Pearce
54ffe8caca Bug 1551890 - Cache GFXInfo WebRTC HW encode/decode result on Android. r=snorp
Profiling shows that we're spending a lot of time on startup inside
android.media.MediaCodecList.getCodecCount when GfxInfo::GetFeatureStatus calls
over to Java to determine whether hardware accelerated video encoding is
supported.

Looking at the Java stacks in the profile, Android is spending most of our time
creating a list of codecs.  It doesn't look like there's a faster way to query
for hardware accelerated video support. So to speed this up we can cache the
value in the user's profile. We also store the OS version, which we can use to
detect when the OS is updated so we can invalidate the cache then.

Presumably an OS update is the only way a device can have its hardware acceleration
support status change.

With this change, the time we take figuring out the HW encode/decode status
goes from ~100ms on a cold run to ~0.01ms on a cache hit on my HD8 tablet.

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

--HG--
extra : moz-landing-system : lando
2019-05-16 22:42:00 +00: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
ef0bfc3822 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-03-31 15:12:55 +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
Sylvestre Ledru
265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
Gabriele Svelto
15adf94f4d Bug 1348273 - Convert crash annotations into a machine-readable list of constants; r=ted.mielczarek,njn,dholbert,mak,cpearce,mcmanus,froydnj,Dexter,jrmuizel,jchen,jimm,bz,surkov
This introduces the machinery needed to generate crash annotations from a YAML
file. The relevant C++ functions are updated to take a typed enum. JavaScript
calls are unaffected but they will throw if the string argument does not
correspond to one of the known entries in the C++ enum. The existing whitelists
and blacklists of annotations are also generated from the YAML file and all
duplicate code related to them has been consolidated. Once written out to the
.extra file the annotations are converted in string form and are no different
than the existing ones.

All existing annotations have been included in the list (and some obsolete ones
have been removed) and all call sites have been updated including tests where
appropriate.

--HG--
extra : source : 4f6c43f2830701ec5552e08e3f1b06fe6d045860
2018-07-05 15:42:11 +02:00
David Major
8c24450c7e Bug 1460699: Use an 's' rather than 'm' prefix for GfxInfo static variables. r=milan 2018-05-14 11:16:50 -04:00
David Major
a0c067cd0e Bug 1458270: Clean up in the shutdown observer. r=milan 2018-05-08 17:37:25 -04:00
Gabriele Svelto
cbb30621ec Bug 1402519 - Remove MOZ_CRASHREPORTER directives from widget; r=froydnj
--HG--
extra : rebase_source : 4472a8d6ce5edf1b5a4665d522a1816020308a43
2017-11-23 10:59:04 +01:00
shindli
fb855aa7ba Backed out 16 changesets (bug 1402519) for conflicts during merge r=backout on a CLOSED TREE
Backed out changeset 07fcf163241a (bug 1402519)
Backed out changeset c6d2ad45d8e2 (bug 1402519)
Backed out changeset 8a3caca61294 (bug 1402519)
Backed out changeset 01425eae2c48 (bug 1402519)
Backed out changeset cf298d3815de (bug 1402519)
Backed out changeset e1964f4389cd (bug 1402519)
Backed out changeset f405337f3569 (bug 1402519)
Backed out changeset a76356fd3359 (bug 1402519)
Backed out changeset d3bb350d1c34 (bug 1402519)
Backed out changeset 9d3bfd9f932c (bug 1402519)
Backed out changeset e3dd6e5b073f (bug 1402519)
Backed out changeset e801b0c00134 (bug 1402519)
Backed out changeset 8a4139fa5dca (bug 1402519)
Backed out changeset 8d01c14ac1ca (bug 1402519)
Backed out changeset 24e0dcd01898 (bug 1402519)
Backed out changeset f8fdf450613f (bug 1402519)
2017-11-23 00:11:44 +02:00
Gabriele Svelto
c60ce072a7 Bug 1402519 - Remove MOZ_CRASHREPORTER directives from widget; r=froydnj
This does not remove the directives in widget/ContentCache.cpp as those crash
annotations should be temporary and will be removed once bug 1405832 is fixed.

MozReview-Commit-ID: F0STyYDx8F4

--HG--
extra : rebase_source : 737d3e500e1dd066730660fede52226e832305e6
2017-10-10 16:04:47 +02:00
Tom Tromey
f8ab4ddf02 Bug 1060419 - remove unneeded includes of prprf.h, r=froydnj
MozReview-Commit-ID: JifhpA3oOeH

--HG--
extra : rebase_source : 08460997dc3fd91f3065c718e17b41bb4acf8bae
2016-12-09 10:00:01 -10:00
Makoto Kato
ec124dbfbd Bug 1299054 - Remove old Android support (API level < 15) from Gecko. r=snorp
MozReview-Commit-ID: K32YSqGsLf9

--HG--
extra : rebase_source : be0d3b3fc1146234efc75229171ea61258c46492
2016-08-30 14:11:55 +09:00
Jeff Gilbert
41c6dce417 Bug 1279657 - Fix missed callsites. - r=jrmuizel
MozReview-Commit-ID: 8RY2D5OTnZ5
2016-06-21 14:04:00 -07:00
Milan Sreckovic
d5f46d27b3 Bug 1274635: Have OperatingSystem an enum class, change All to mean All Windows. r=BenWa
MozReview-Commit-ID: ADe4EmPzTuc

--HG--
extra : rebase_source : c3a7ee2846935291297f51cb1898ec46543a6870
2016-06-03 16:13:08 -04:00
Benoit Girard
2586414710 Bug 1276732 - Report the GLContext error to WebGL for telemetry. r=jrmuizel
MozReview-Commit-ID: 24eb4FXMOiI

--HG--
extra : rebase_source : 391e44f4d4fdcf5782053fc6c3e9b17e651a9a1f
2016-06-06 16:52:42 -04:00
Benoit Girard
24a4187d15 Backed out changeset 4264b01fd313 (Bug 1276732) for causing build bustage
MozReview-Commit-ID: KnEpCcI9a13
2016-06-06 13:37:59 -04:00
Benoit Girard
c391acc0f7 Bug 1276732 - Report the GLContext error to WebGL for telemetry. r=jrmuizel
MozReview-Commit-ID: Am733GJkOSb

--HG--
extra : rebase_source : 1eaf4e281b2415f0adcae7e9585a29d912685358
2016-06-06 13:20:13 -04:00
Jamie Nicol
ee26b16cae Bug 1248183 - Block accelerated canvas2d on Vivante GC1000 GPUs; r=snorp
--HG--
extra : transplant_source : %16%0Av%C8%7F%1F%1E%F0p%D6%A0%E0p%83%C5%A0%EF%D3%16%E0
2016-04-25 14:49:29 +02:00
Benoit Girard
85ba14a3e5 Bug 1263249 - Bubble up unique failureId in GetFeatureStatus. r=mconley,milan
MozReview-Commit-ID: JveFLuIcbaN

--HG--
extra : rebase_source : 3f583b44c30495b237fd263e4818430443bf5513
2016-04-13 17:12:47 -04:00
Eugen Sawin
0715884307 Bug 1232911 - [2.2] Add VPX decoding blocking support. r=snorp 2016-03-30 13:19:33 +02:00
Milan Sreckovic
548b45eaca Bug 1249640: Part 4 Android to use new blocking. r=snorp 2016-02-22 14:23:00 +01:00
Sebastian Hengst
61814a3698 Backed out changeset 21222476d9d9 (bug 1249640) 2016-02-24 19:01:29 +01:00
Milan Sreckovic
2a65d9908f Bug 1249640: Part 4 Android to use new blocking. r=snorp 2016-02-22 14:23:00 +01:00
Nathan Froyd
01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Birunthan Mohanathas
7315345693 Bug 1191100 - Remove XPIDL signature comments in .cpp files. r=ehsan
Comment-only so DONTBUILD.
2015-08-04 16:17:36 -07:00
Matt Woodrow
d2d5e5b9a3 Bug 1150944 - Add a flags parameter to GLContextProvider functions instead of a bool. r=jgilbert 2015-07-29 16:35:55 -04:00
Wes Kocher
ec1078c65a Backed out 6 changesets (bug 1150944, bug 1034370) for build failures in WebGLContext.cpp CLOSED TREE
Backed out changeset e2a6160242e5 (bug 1150944)
Backed out changeset 1c510537d20b (bug 1150944)
Backed out changeset 7ae813666ed5 (bug 1150944)
Backed out changeset 2f29ac2e31cd (bug 1150944)
Backed out changeset bf7681b1567e (bug 1150944)
Backed out changeset 79c6b8d014d2 (bug 1034370)
2015-07-29 14:16:17 -07:00
Matt Woodrow
501c8bec02 Bug 1150944 - Add a flags parameter to GLContextProvider functions instead of a bool. r=jgilbert 2015-07-29 16:35:55 -04:00
Qiang Lu
b3eee8c12c Bug 1178069 - Check devices capability before enable use of vp8 hardware acceleration using android.media.MediaCodecList and android.media.MediaCodecInfo r=jrmuizel
--HG--
extra : amend_source : f7d209e2dd0bdb9a67c563b5bd2d51da4af56ba8
extra : histedit_source : d8226f7240c5d19d9d2f08f9fc07a83e158505a2%2Cde0d48144261c643fcb23c0f7756906aeded1708
2015-07-24 12:45:55 -07:00
Milan Sreckovic
e3e474039d Bug 1019209 - Allow GL initialization without Android bridge, delay some GL string initialization, clean up some AndroidBridge code. r=snorp 2015-02-18 16:50:31 -05:00
Jeff Gilbert
d3813c406b Bug 1124394 - Support Core profiles for GLContext. - r=kamidphish 2015-02-12 19:00:41 -08:00
Jeff Gilbert
56b00391c3 Backout 80a88a3badba for causing bug 1130086. 2015-02-06 11:37:04 -08:00
Jeff Gilbert
680ae080b6 Bug 1124394 - Support WebGL 2 with Core Profiles on Mac. - r=kamidphish 2015-02-04 16:34:55 -08:00
Wes Kocher
d7313c3320 Backed out changeset 176166c0bae9 (bug 1124394) for b2g device bustage on a CLOSED TREE 2015-01-29 14:23:37 -08:00
Jeff Gilbert
95f269cb3f Bug 1124394 - Support WebGL on Core Profiles on Mac. - r=kamidphish 2015-01-29 00:44:19 -08:00
Jim Chen
3dcbdea53a Bug 1056941 - Fix dangerous destructors in Fennec code; r=blassey 2014-08-26 15:07:59 -04:00
Jeff Gilbert
f032a2a672 Bug 1037151 - Merge SharedSurface_GL into SharedSurface. - r=mattwoodrow 2014-07-11 15:10:49 -07:00
Milan Sreckovic
50b7a495b6 Bug 918386 - Add webidl for adapter subsys. Only relevant on Windows. r=vvukicevic. 2014-07-09 14:21:49 -04:00
Carsten "Tomcat" Book
31145f4c87 Backed out changeset 9f4b2ff029e3 (bug 918386) for breaking emulator tests on a CLOSED TREE 2014-07-09 14:07:52 +02:00
Milan Sreckovic
f50d227be7 Bug 918386: Add webidl for adapter subsys. Only relevant on Windows. r=vvukicevic. 2014-06-30 14:26:39 -04:00
Ryan VanderMeulen
1faa299871 Backed out changeset 9f1c312a85ee (bug 918386) for crashes. 2014-07-03 14:37:10 -04:00
Milan Sreckovic
8b27a0b4d2 Bug 918386: Add webidl for adapter subsys. Only relevant on Windows. r=vvukicevic. 2014-06-30 14:26:39 -04:00
Walter Litwinczyk
cfa586e393 Bug 701948 - Rename nsIGfxInfo::FEATURE_NO_INFO to nsIGfxInfo::FEATURE_STATUS_OK. r=jgilbert 2014-07-01 14:44:09 -07:00