Commit Graph

7948 Commits

Author SHA1 Message Date
Geoff Brown
06278cbfec Bug 1634603 - [tryselect] Fix 'mach try coverage'; r=marco
Use up-to-date URL for code-coverage information and fix miscellaneous bit-rot.

Differential Revision: https://phabricator.services.mozilla.com/D77270
2020-05-28 18:50:49 +00:00
Andrew McCreight
7482de916e Bug 1641090, part 5 - Make IDMap::Remove match nsTHashtable's behavior. r=nika
nsTHashtable::Remove doesn't assert if the item isn't present. Match that
behavior by removing the assert and putting it at all of the call sites.

This just turns IDMap::Remove into RemoveIfPresent, so merge them.

Differential Revision: https://phabricator.services.mozilla.com/D77166
2020-05-28 15:55:01 +00:00
Andrew McCreight
1fc2cdf98d Bug 1641090, part 4 - Make AddWithID compatible into Put. r=nika
This function is similar to the Put() method in nsTHashtable, but it lists the
key second and it asserts that the key is not already in the map. This patch
swaps the arguments and hoists the assertion out, where appropriate. Note that
there are a few places that were working around this assert, so for those places
don't include the assert.

Differential Revision: https://phabricator.services.mozilla.com/D77165
2020-05-28 15:54:59 +00:00
Csoregi Natalia
a90f898b91 Backed out changeset 14084268455c (bug 1639165) for multiple console related failures. CLOSED TREE 2020-05-28 17:08:41 +03:00
nchevobbe
64b135f38b Bug 1639165 - Don't log message from ContentChild when multiprocess browser toolbox is enabled. r=baku.
Differential Revision: https://phabricator.services.mozilla.com/D76792
2020-05-28 10:01:14 +00:00
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