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

7943 Коммитов

Автор SHA1 Сообщение Дата
Gerald Squelart 315b834a0e Bug 1586939 - Remove "_BASE" from most Base Profiler env-vars - r=gregtatum a=reland CLOSED TREE
Now both profilers are controlled by the same environment variables, e.g.
"MOZ_PROFILER_STARTUP" to run both profilers at startup.

The only remaining Base Profiler-specific commands are:
- MOZ_BASE_PROFILER_HELP, because the Base Profiler doesn't have the same
  capabilities as Gecko, so it may display different available features.
- MOZ_BASE_PROFILER_LOGGING, because the Base Profiler doesn't have access to
  MOZ_LOG (both the env-var and the C++ macros).

Differential Revision: https://phabricator.services.mozilla.com/D54449
2020-05-28 03:39:32 +00:00
Razvan Maries cfc05656e9 Backed out 2 changesets (bug 1586939) for build bustages on ProtocolFuzzer.h. CLOSED TREE
Backed out changeset 1f66a6a498e5 (bug 1586939)
Backed out changeset 6e1337767992 (bug 1586939)
2020-05-28 07:38:04 +03:00
Gerald Squelart 3f2fbaa757 Bug 1586939 - Remove "_BASE" from most Base Profiler env-vars - r=gregtatum
Now both profilers are controlled by the same environment variables, e.g.
"MOZ_PROFILER_STARTUP" to run both profilers at startup.

The only remaining Base Profiler-specific commands are:
- MOZ_BASE_PROFILER_HELP, because the Base Profiler doesn't have the same
  capabilities as Gecko, so it may display different available features.
- MOZ_BASE_PROFILER_LOGGING, because the Base Profiler doesn't have access to
  MOZ_LOG (both the env-var and the C++ macros).

Differential Revision: https://phabricator.services.mozilla.com/D54449
2020-05-28 03:39:32 +00:00
Nicholas Nethercote 9404f0620e Bug 1636859 - Shut down the `fix-stacks` child process when `fix_stacks.py` exits. r=glandium
Hopefully this will avoid some intermittent failures that occur when
`fix-stacks` is deleted at the end of a test run.

Differential Revision: https://phabricator.services.mozilla.com/D76980
2020-05-28 00:34:30 +00:00
Greg Tatum 3802fc82a4 Bug 1640274 - Remove the unused TrackOptimizations profiler; r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D76854
2020-05-27 22:08:49 +00:00
Greg Tatum ca8ec92461 Bug 1571086 - Remove privacy feature from the profiler; r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D76853
2020-05-27 22:07:57 +00:00
Toshihito Kikuchi a2f2d585ea Bug 1509748 - Do not touch ntdll's PE header directly if EAF+ is enabled. r=mhowell,mstange
If EAF+ is enabled for firefox.exe, the process does not launch because we parse
the PE headers of ntdll.dll at startup, which is prohibited by EAF+.

With this patch, we skip two operations when EAF+ is enabled.

The first one is to cache ntdll's IAT at startup.  Because EAF+ is expected to
prevent an injected module from parsing PE headers and modifying IAT, we can skip
this caching safely.

The second one is to load ntdll's debug information for the profiler.  With this
patch, the profiler's callstack will not show a raw address instead of a symbol
name.  It's a bad side effect, but much better than startup crash.

Differential Revision: https://phabricator.services.mozilla.com/D76959
2020-05-27 21:48:35 +00:00
Gerald Squelart cf61fd1e10 Bug 1641122 - Fix 32-bit Android profiler buffer size default - r=canaltinova
Differential Revision: https://phabricator.services.mozilla.com/D77016
2020-05-27 19:41:46 +00:00
Dzmitry Malyshau abaaa872a5 Bug 1634425 - Integrate WebGPU API tracing r=jgilbert
This is the logic of tracing the WebGPU API calls at the level of wgpu-core,
serialized into a folder of choosing on the user drive. Traces are extremely portable,
they can be shared (on BugZilla) and then replayed on the developer machine,
which can have a different architecture from the users machine.

The standalone player is introduced in `gfx/wgpu/player`, similar to WebRender's Wrench.

The output dir is controlled by "dom.webgpu.traceDir" pref. No tracing happens if it's empty.

Differential Revision: https://phabricator.services.mozilla.com/D73333
2020-05-27 16:49:03 +00:00
Bogdan Tara 6ed3c943f7 Backed out changeset f4ed4d3e0e9e (bug 1634425) for hazard failure on WebGPUParent.cpp CLOSED TREE 2020-05-27 01:12:40 +03:00
Dzmitry Malyshau 67c0d914f3 Bug 1634425 - Integrate WebGPU API tracing r=jgilbert
This is the logic of tracing the WebGPU API calls at the level of wgpu-core,
serialized into a folder of choosing on the user drive. Traces are extremely portable,
they can be shared (on BugZilla) and then replayed on the developer machine,
which can have a different architecture from the users machine.

The standalone player is introduced in `gfx/wgpu/player`, similar to WebRender's Wrench.

The output dir is controlled by "dom.webgpu.traceDir" pref. No tracing happens if it's empty.

Differential Revision: https://phabricator.services.mozilla.com/D73333
2020-05-26 21:15:40 +00:00
Bogdan Tara 51e7c8bf84 Backed out changeset 20488827b581 (bug 1640532) for docker bustages complaining about codespell CLOSED TREE 2020-05-26 22:17:15 +03:00
Sylvestre Ledru 0c646a1f51 Bug 1640532 - Update codespell to 1.17.1 r=linter-reviewers,ahal
Depends on D76637

Differential Revision: https://phabricator.services.mozilla.com/D76638
2020-05-26 14:40:52 +00:00
Markus Stange d069f4cc74 Bug 1635567 - Remove HAVE_UNSORTED_EXIDX code, which worked around a bug in Android ICS which is no longer supported. r=jld
This code was not being built any more.
GeckoView requires Android OS version 4.3 (API Level 18). I'm not sure what the
corresponding ANDROID_VERSION macro constant for API Level 18 is, but it's
definitely higher than 16.

Differential Revision: https://phabricator.services.mozilla.com/D73940
2020-05-23 00:57:58 +00:00
Kershaw Chang 104bf647be Bug 1602832 - P3: Skip failed tests r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D67448
2020-05-26 14:30:26 +00:00
Butkovits Atila f167b5c275 Backed out 6 changesets (bug 1602832) for causing perma failure at test_trr_case_sensitivity.js. CLOSED TREE
Backed out changeset 0e9c378df995 (bug 1602832)
Backed out changeset 534fedb3836e (bug 1602832)
Backed out changeset db012c05d64e (bug 1602832)
Backed out changeset ca0c207dca21 (bug 1602832)
Backed out changeset bea1f3aeea49 (bug 1602832)
Backed out changeset 2d54acd78124 (bug 1602832)
2020-05-26 13:09:07 +03:00
Kershaw Chang 52a180d403 Bug 1602832 - P3: Skip failed tests r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D67448
2020-05-26 08:35:32 +00:00
Nicholas Nethercote 61f2f5aef8 Bug 1638976 - Convert 'mach power' to run with Python 3. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D76273
2020-05-25 23:50:19 +00:00
Nicholas Nethercote 60ecbac3b2 Bug 1639785 - Update `rapl` for new processors. r=erahm
Also change the processor IDs to hex, because that's what the Linux kernel
source code uses. And reorder the cases a little.

Differential Revision: https://phabricator.services.mozilla.com/D76272
2020-05-22 02:29:54 +00:00
Gerald Squelart e953217142 Bug 1638506 - Destroy ProfilerParentTracker before threads are shut down - r=jya,canaltinova
When the tracker is destroyed, any extant channel is closed, this can trigger the rejection of pending promises, which dispatch tasks to promise handlers. So we need to ensure that this happens before threads cannot service dispatches anymore.

Differential Revision: https://phabricator.services.mozilla.com/D76436
2020-05-25 10:20:03 +00:00
Myeongjun Go efefeaee98 Bug 1637058 - Move raptor-specific code out of the core perfdocs code r=sparky
Differential Revision: https://phabricator.services.mozilla.com/D75807
2020-05-25 16:14:50 +00:00
Sylvestre Ledru de03967deb Bug 1640532 - docs - fix some typos DONTBUILD r=webdriver-reviewers,whimboo
Depends on D76636

Differential Revision: https://phabricator.services.mozilla.com/D76637
2020-05-25 11:30:05 +00:00
Gerald Squelart f2401ecda3 Bug 1464506 - Record FileIO markers on all threads - r=canaltinova
In addition to the existing "mainthreadio" feature, we now have:
- "fileio" to also capture file I/O from other profiled threads.
- "fileioall" to also capture file I/O from all threads (even unregistered threads).
- "noiostacks" to prevent capturing stack traces for "io" markers.
These are all off by default, except for `MOZ_PROFILER_STARTUP=1`.

Differential Revision: https://phabricator.services.mozilla.com/D75764
2020-05-25 08:58:47 +00:00
Gerald Squelart 6fdf365051 Bug 1464506 - profiler_is_active_and_thread_is_registered - r=canaltinova
This can be used while the profiler is running, to know if the current thread is registered -- regardless of whether it is actively profiled.
This will help distinguish registered but non-profiled threads from threads that are not even registered (e.g., OS-generated threads).

Differential Revision: https://phabricator.services.mozilla.com/D76281
2020-05-25 08:58:14 +00:00
Gerald Squelart 1c13f92ad4 Bug 1464506 - profiler_features_if_active{,_and_unpaused}() returns all features bits - r=canaltinova
Some functions may want to examine more than one feature at once, these function return everything (if the profiler is active, and optionally unpaused) so that only one call is needed.

Differential Revision: https://phabricator.services.mozilla.com/D76280
2020-05-25 08:57:56 +00:00
Gerald Squelart 271f2b32ae Bug 1464506 - Statically check profiler feature numbers - r=canaltinova
This is a simple compile-time check that the feature numbers go from 0 to N-1, to prevent some mistakes when updating feature lists.

Differential Revision: https://phabricator.services.mozilla.com/D75763
2020-05-25 08:57:44 +00:00
Gerald Squelart ae37f20b88 Bug 1464506 - Output the thread id where the file IO happened - r=canaltinova
The thread id (if present) is output in a new "threadId" field.

Differential Revision: https://phabricator.services.mozilla.com/D75762
2020-05-25 08:57:36 +00:00
Gerald Squelart 7e583a4107 Bug 1464506 - Optionally record the thread id where each FileIO happened - r=canaltinova
The FileIO marker may be recorded into the main thread, so we need to keep track of the thread in which the IO really happened (which may be a thread that's not even selected for profiling).

There is not JSON output for it yet.

Differential Revision: https://phabricator.services.mozilla.com/D75761
2020-05-25 08:57:34 +00:00
Gerald Squelart 3147b9d1d6 Bug 1464506 - profiler_add_marker_for_mainthread records markers from any thread into the main thread track - r=canaltinova
Some markers may be more useful when gathered into a single track, and the main thread is ideal because it's almost always present.

Differential Revision: https://phabricator.services.mozilla.com/D75760
2020-05-25 08:57:31 +00:00
Gerald Squelart 2502f01aa8 Bug 1464506 - CorePS records the main thread id - r=canaltinova
Differential Revision: https://phabricator.services.mozilla.com/D75759
2020-05-25 08:57:29 +00:00
Greg Tatum 593ab0604f Bug 1628073 - Move gecko profiler testing files to mozgeckoprofiler; r=sparky,perftest-reviewers,gbrown
I need to add symbolication support for the mochitest Gecko Profiler command line
option. These profiles also need to be symbolicated. Unfortunately, there is not
a common place where I could use these files. Talos and Raptor each had their
own copy of the snappy symbolication server.

This commit consolidates these packages into a re-usable mozbase package that can
be used in mochitests, and eventually in other places like xpcshell tests.

I stubbed out a test file, but it doesn't do anything quite yet. This commit makes
it so that the tests still work in Raptor and Talos, but doesn't add any features.
It also doesn't try too hard to make the files look like a mozbase package.

Differential Revision: https://phabricator.services.mozilla.com/D74289
2020-05-22 13:18:44 +00:00
Tilden Windsor 3a9676792b Bug 1639483 - Remove "mach search". r=rstewart
Differential Revision: https://phabricator.services.mozilla.com/D76305
2020-05-21 15:49:57 +00:00
Tom Prince ca0e268b05 No bug: Rename list of labels to ignore on try to UNCOMMON_TRY_TASK_LABELS; r=ahal
Give it a more descriptive name, and avoid using `blacklist` in the name.

Differential Revision: https://phabricator.services.mozilla.com/D76031
2020-05-20 13:18:19 +00:00
championshuttler cce153f70e Bug 1639044 - Update the sphinxhcontrib-mermaid package for firefox docs.r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D75861
2020-05-20 12:27:26 +00:00
Gerald Squelart a88e6ae204 Bug 1594268 - profiler_add_marker_for_thread takes payload by const& - r=canaltinova
Instead of accepting a `UniquePtr<ProfilerMarkerPayload>`, `profiler_add_marker_for_thread` now takes it by `const ProfilerMarkerPayload&`.
All callers can now create the payload on the stack, or as a temporary object. This saves a memory alloc+free for each call.

Differential Revision: https://phabricator.services.mozilla.com/D75912
2020-05-19 23:07:54 +00:00
Coroiu Cristina 44c378a7fb Backed out 5 changesets (bug 1602832) for browser-chrome failures at toolkit/mozapps/extensions/test/xpinstall/browser_doorhanger_installs.js on a CLOSED TREE
Backed out changeset 059a7f44d1a9 (bug 1602832)
Backed out changeset 2f3cc391b48a (bug 1602832)
Backed out changeset 24d1ce1b0ac9 (bug 1602832)
Backed out changeset 5ea85726cc48 (bug 1602832)
Backed out changeset ee00e846104e (bug 1602832)
2020-05-19 23:05:26 +03:00
Marco Castelluccio 50d3ac79ff Bug 1638945 - Switch default 'mach try auto' strategy from bugbug_reduced to bugbug_debug_disperse. r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D75969
2020-05-19 16:02:53 +00:00
Kershaw Chang 0e9baa4d27 Bug 1602832 - P3: Skip failed tests r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D67448
2020-05-19 12:56:52 +00:00
Kris Maglione 58a72e8979 Bug 1638988: Add SpecialPowers.spawnChrome. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D75832
2020-05-18 21:00:51 +00:00
alwu fd606724bc Bug 1612557 - part4 : use `Media` category for markers r=bryce,gerald,canaltinova
This patch will do :
- add `Media` markers in related codes
- implement `MediaSampleMarkerPayload` to record the media sample

The advantage of doing so :
- using markers can help us know what happens on the media by a glance without expanding the call stack
- adding sample markers allows us compare the speed of decoding sample in `MediaDecoderStataMachine` and rendering sample in `VideoSink`

Differential Revision: https://phabricator.services.mozilla.com/D74174
2020-05-16 19:58:25 +00:00
Aaron Klotz 03589b97f3 Bug 1637452: Part 5 - Fix JNI includes in tools/profiler; r=mstange
In this bug we're moving away from monolithic JNI headers to class-specific
headers so that we don't have to rebuild the world every time we make a change
to a JNI interface.

Differential Revision: https://phabricator.services.mozilla.com/D75368
2020-05-15 17:04:19 +00:00
Simon Fraser 7223242d99 Bug 1635321 update-packaging race condition fixes r=nthomas
conflicts with D75072, we should choose which we prefer based on bash version availability

Differential Revision: https://phabricator.services.mozilla.com/D75285
2020-05-15 03:22:08 +00:00
Sylvestre Ledru 64eef91a05 no bug - remove old references to inbound r=glob DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D75280
2020-05-14 14:03:43 +00:00
Edouard Oger afc16c8277 Bug 1628068 p2 - Implement viaduct gecko backend. r=tcsc,dragana,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D70257
2020-05-12 21:36:19 +00:00
Tarek Ziadé 080870795e Bug 1635136 - add a --push-to-try option r=aerickson
This patch is adding an option to push a perftest run in the CI.

It's based on :
- sparse profiles
- push_to_try
- options passed through try_task_config.json

Differential Revision: https://phabricator.services.mozilla.com/D74115
2020-05-12 21:19:48 +00:00
Mitchell Hentges 08bd72ca2b Bug 1637354: Don't show time estimates for |./mach try release| r=ahal
Mach doesn't know which tasks are part of a release - that's decided in the decision task. Instead of
showing a bogus estimation, we shouldn't show one at all.

Differential Revision: https://phabricator.services.mozilla.com/D74904
2020-05-12 20:10:58 +00:00
Kartikaya Gupta 2e8b0e3383 Bug 1637271 - Avoid passing a bytes obj to json.loads with Python3. r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D74898
2020-05-12 20:00:48 +00:00
Mitchell Hentges c23cde122b Bug 1637041: fix test_presets.py on windows r=rstewart
In some NT-specific code, a list of "items()" was being updated. In python 3, to modify the result
of "items()", you have to gain ownership first by explicitly converting it into a list().

Also resolves some flaky failures that were seen locally by marking test_presets.py as sequential.

Differential Revision: https://phabricator.services.mozilla.com/D74793
2020-05-12 17:52:00 +00:00
Nazım Can Altınova 2490316019 Bug 1464983 - Lower the java sampling rate to 1ms and increase the java buffer. r=gerald
We had to increase the java buffer limit to 64MiB because it was a bottleneck
and 8MiB wasn't enough for 1ms sampling rate. It was getting full pretty quick.
Even though we increased that limit, we are not going to allocate all of this
at the start. Since we are allocating the buffer chunk by chunk, we are going
to allocate only when we need.

Differential Revision: https://phabricator.services.mozilla.com/D74715
2020-05-12 10:54:13 +00:00
Gerald Squelart e1d51db19a Bug 1635570 - Cut too-long label dynamic strings and add ellipsis - r=canaltinova
If a label contains a dynamic string that's too long (512 characters or more), instead of just replacing it with "(too long)", we now cut it down to the maximum size, with an ellipsis at the end.

Added test for that in gtest. Also added nearby test for empty strings.

Differential Revision: https://phabricator.services.mozilla.com/D74378
2020-05-12 01:13:17 +00:00