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

8187 Коммитов

Автор SHA1 Сообщение Дата
Gerald Squelart b7307aabfe Bug 1648972 - Fix profiler non-unified build - r=canaltinova
Mostly missing includes, and missing namespace qualifiers.

Differential Revision: https://phabricator.services.mozilla.com/D81451
2020-06-30 01:43:24 +00:00
Jean-Yves Avenard 35101e741b Bug 1634846 - P2. Make ipc's MessageChannel works with TaskQueue, r=nika
We no longer rely of having a message loop for the worker thread.

Differential Revision: https://phabricator.services.mozilla.com/D80655
2020-06-26 09:34:47 +00:00
Kris Maglione 59b6d97296 Bug 1648270: Follow-up: Fix botched rebase.
Differential Revision: https://phabricator.services.mozilla.com/D81360
2020-06-26 16:41:39 +00:00
Kris Maglione c04b0a1b46 Bug 1648270: Get rid of unused ContentParent 'opener' field. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D80971
2020-06-26 16:26:50 +00:00
Simon Fraser e75d5918a7 Bug 1392914 Remove updatev2.manifest r=mhowell
I've left the mention of updatev2.manifest in list_files and list_dirs for now, similar to how v1 has been left.

Differential Revision: https://phabricator.services.mozilla.com/D80011
2020-06-18 07:42:21 +00:00
Mike Hommey 77976c2cc1 Bug 1463035 - Remove MOZ_SIGNAL_TRAMPOLINE. r=gerald
This was previously r=jchen and landed, but was backed out because some
Android tests were running on an unrealistically old Linux kernel. These
tests have been retired, so this can reland.

Differential Revision: https://phabricator.services.mozilla.com/D81278
2020-06-26 03:48:49 +00:00
Mike Hommey 219d10e7ce Bug 1648654 - Remove AutoObjectMapperFaultyLib. r=gerald
Bug 1486524 disabled the features from the custom linker that required
AutoObjectMapperFaultyLib. We can now rely on AutoObjectMapperPOSIX
instead.

Differential Revision: https://phabricator.services.mozilla.com/D81264
2020-06-26 01:26:56 +00:00
Mike Hommey a1386ca439 Bug 1648340 - Set LOCAL_INCLUDES properly for AutoObjectMapper.h. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D81023
2020-06-25 10:59:32 +00:00
Nazım Can Altınova 8e7aefa97e Bug 1624993 - Transfer all the Android markers to platform side while capturing the profile r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D79124
2020-06-25 14:29:29 +00:00
Nazım Can Altınova 738659e709 Bug 1624993 - Add StoreMarker function to unify the marker insertion points. r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D79423
2020-06-25 14:28:54 +00:00
Nazım Can Altınova a74d238798 Bug 1624993 - Add PutObjects method inside the ProfilerBuffer class as well. r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D79122
2020-06-25 14:28:41 +00:00
Gerald Squelart 665b0d71d2 Bug 1630448 - MOZ_PROFILER_STARTUP_NO_BASE=1 prevents Base Profiler from running when MOZ_PROFILER_STARTUP is set - r=canaltinova
The Base Profiler is still recent and barely used, so it may contain some bugs.
With bug 1586939, the Base Profiler is now used more often because it is controlled the same way as the Gecko Profiler.
This has surfaced some intermittent issues, which pollute existing tests.

Until the root cause is found (see bug 1648325), setting `MOZ_PROFILER_STARTUP_NO_BASE=1` prevents the Base Profiler from running. This may be used where problems are visible, to diagnostic them and/or reduce them where needed.

Differential Revision: https://phabricator.services.mozilla.com/D81018
2020-06-25 07:13:43 +00:00
Matt Woodrow ea21b3dd8e Bug 1646582 - Remove RemoteWebProgressManager. r=nika,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D80129
2020-06-24 19:59:04 +00:00
Jared Wein 7639e4f712 Bug 1643093 - Remove references to 'whitelist' in browser/components/urlbar. r=jaws
Depends on D78124

Differential Revision: https://phabricator.services.mozilla.com/D78122
2020-06-24 15:59:04 +00:00
Gijs Kruitbosch b4623ffd8b Bug 1647787 - remove use of whitelist/blacklist from front-end performance tests, r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D80697
2020-06-24 14:23:49 +00:00
Kartikaya Gupta 6c36ed2c70 Bug 1647265 - Follow-up to fix merge error with bug 1647225. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D80872
2020-06-24 13:32:30 +00:00
Dorel Luca 90a64f0da1 Backed out 4 changesets (bug 1646582) for Browser-chrome failures on nsIWebProgress.addProgressListener. CLOSED TREE
Backed out changeset 2111dd0d6dc0 (bug 1646582)
Backed out changeset e6c496c5a4b1 (bug 1646582)
Backed out changeset 49b4ae8c8be0 (bug 1646582)
Backed out changeset 9d42ec89240c (bug 1646582)
2020-06-24 07:50:07 +03:00
Matt Woodrow acd97f7b2c Bug 1646582 - Remove RemoteWebProgressManager. r=nika,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D80129
2020-06-24 03:25:09 +00:00
Sylvestre Ledru c0c079aa46 Bug 1647265 - mozlint/rejected-word - refresh the exclude list ignore-case: true r=Gijs
and update the list with this change

Depends on D80477

Differential Revision: https://phabricator.services.mozilla.com/D80478
2020-06-23 21:18:49 +00:00
Sylvestre Ledru 56fbafd822 Bug 1647265 - mozlint: when type is 'regex', add the capability to ignore the case r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D80477
2020-06-23 21:45:16 +00:00
Sonia Singla 2d8647fd24 Bug 1643819 - Prevent Firefox Docs to copy $ while copying using copy button.r=championshuttler,ahal
Differential Revision: https://phabricator.services.mozilla.com/D80643
2020-06-23 15:03:30 +00:00
Kartikaya Gupta ba550838cd Bug 1647225 - Update exclude list in rejected-words filter. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D80453
2020-06-23 15:14:34 +00:00
Narcis Beleuzu b894acb874 Backed out 4 changesets (bug 1646582) for mochitest failures on test_ext_tabs_create.html . CLOSED TREE
Backed out changeset ce5cdfc5d7cf (bug 1646582)
Backed out changeset 2ac69a2b6708 (bug 1646582)
Backed out changeset 74d89cb24414 (bug 1646582)
Backed out changeset 7de0ff1af560 (bug 1646582)
2020-06-23 06:30:03 +03:00
Matt Woodrow f851c6be5b Bug 1646582 - Remove RemoteWebProgressManager. r=nika,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D80129
2020-06-23 01:23:59 +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
Gerald Squelart 8b62df9f8d Bug 1642726 - Abort profiler_add_native_allocation_marker if profiler mutex is already locked - r=gregtatum
To avoid deadlocks between the profiler mutex and another mutex that may be locked when an allocation is intercepted, we now abort this interception if the profiler mutex is already locked.

Differential Revision: https://phabricator.services.mozilla.com/D79413
2020-06-22 21:30:10 +00:00
Gerald Squelart 8c64fc6990 Bug 1642726 - maybelocked_profiler_add_marker_for_thread - r=gregtatum
This function can be called whether the profiler mutex is locked or not. If locked, the provided pointer to the profiler mutex is used internally, otherwise the mutex will be locked as needed.

Differential Revision: https://phabricator.services.mozilla.com/D79412
2020-06-22 14:36:18 +00:00
Gerald Squelart b834db3337 Bug 1642726 - locked_profiler_get_backtrace - r=gregtatum
`locked_profiler_get_backtrace` can be used internally from places that already hold the profiler lock.

Differential Revision: https://phabricator.services.mozilla.com/D79411
2020-06-22 14:36:16 +00:00
Gerald Squelart ddbeeb188c Bug 1642726 - PSAutoTryLock - r=gregtatum
PSAutoTryLock attempts to lock the mutex, but gives up immediately if it's already locked.
This can be used in profiler functions that may be called from unknown code, to avoid deadlocks involving the profiler mutex and another mutex that could be indirectly used by the profiler itself.

Differential Revision: https://phabricator.services.mozilla.com/D79410
2020-06-22 21:30:06 +00:00
Kartikaya Gupta 7bf3988124 Bug 1647225 - Update exclude list in rejected-words filter. r=jrmuizel
Depends on D80452

Differential Revision: https://phabricator.services.mozilla.com/D80453
2020-06-22 14:06:33 +00:00
Sylvestre Ledru 46af48052b Bug 1646421 - flake8 Fix a bunch of actual errors r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D80078
2020-06-20 09:46:45 +00:00
Sylvestre Ledru 3ff66789b4 Bug 1646421 - Update to flake8 3.8.3 (requires toml now) r=linter-reviewers,ahal
Differential Revision: https://phabricator.services.mozilla.com/D80076
2020-06-20 10:24:29 +00:00
Sylvestre Ledru 45c363c275 Bug 1646421 - mozlint/flake8 remove the force-removal of the exclude list r=linter-reviewers,ahal
Differential Revision: https://phabricator.services.mozilla.com/D80075
2020-06-20 09:45:59 +00:00
Matthew Gregan 943cc5de15 Bug 1646579 - media/audioipc/client/src/ missing from rustfmt exclude list. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D80126
2020-06-19 06:22:28 +00:00
Ricky Stewart 09750d5dab Bug 1646190 - Remove pymake from tree r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D79920
2020-06-18 21:06:32 +00:00
Sylvestre Ledru f47f1968a4 Bug 1623024 - mozlint: Add pylint as new linter r=linter-reviewers,ahal
Differential Revision: https://phabricator.services.mozilla.com/D79076
2020-06-18 20:04:50 +00:00
Simon Sapin 7c14e4e23e Bug 1633410 - Back out bug 1631721.
Rebased and squashed.

Differential Revision: https://phabricator.services.mozilla.com/D78174
2020-06-18 15:25:33 +00:00
Gijs Kruitbosch 272fe15123 Bug 1644863 - include CSS, HTML and localization (ftl, properties, dtd) files in the whitespace linter, r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D79204
2020-06-17 22:46:42 +00:00
Chris AtLee 212d6bc5f7 Bug 1643810: Use -T1 -7e for update generation r=sfraser
Differential Revision: https://phabricator.services.mozilla.com/D78808
2020-06-16 13:58:47 +00:00
Sylvestre Ledru d4f3e2487a Bug 1646299 - Display the yamllint version in verbose mode r=Callek
Depends on D79992

Differential Revision: https://phabricator.services.mozilla.com/D79993
2020-06-17 13:32:47 +00:00
Ricky Stewart ce17cf368b Bug 1645179 - Squash remaining dead code after removal of IMPACTED_TESTS r=ahal,froydnj
There is some remaining code in central originating from bug 1184405, which sought to associate source files with their "affected" test files. That ended up not panning out, and bug 1644228 removed a lot of that code, but left some remnants in the `Files` object which are still referenced in a couple different places. I'm deleting all of that code in `context.py` plus everything that references it for the following reasons:

1. Right now, `Files.{test_files,test_tags,test_flavors}` do get populated, but only ever with "default" values -- namely `moz.build` files that are above the files in question in the directory hierarchy. This is a heuristic that doesn't actually have anything to do with mapping source files to their corresponding test files, which is misleading.

2. Those attributes are accessed in two places. The first is in the `mach file-info dep-tests` command. This command isn't referenced anywhere else in tree and I don't have any evidence anyone ever uses it. Even if they do, I would claim that doing so is a mistake (because the results of the command aren't meaningful and are just populated by the "defaults" described above), and that person's workflow should be migrated to something else that *is* meaningful.

3. The second place where this metadata is accessed is in `testing/mozbase/moztest/moztest/resolve.py`; that method is invoked in `tools/tryselect/selectors/syntax.py`, but only if you pass `--detect-paths` to `mach try syntax`. This is [entirely broken](https://bugzilla.mozilla.org/show_bug.cgi?id=1614614), and even if we made an effort to fix it, it wouldn't do anything resembling what the documentation of `--detect-paths` suggests it would do (again, because the data isn't populated meaningfully). So I'm deleting the command line option entirely.

Differential Revision: https://phabricator.services.mozilla.com/D79711
2020-06-17 13:30:49 +00:00
Ted Campbell 4b5638af5a Bug 1642708 - Remove BinAST Rust modules r=arai,emilio
Differential Revision: https://phabricator.services.mozilla.com/D77947
2020-06-17 13:57:07 +00:00
Csoregi Natalia e722c196bc Backed out 5 changesets (bug 1642708) for build bustages. CLOSED TREE
Backed out changeset d307b00c7e1b (bug 1642708)
Backed out changeset d210a60ad435 (bug 1642708)
Backed out changeset bcc2728b5ca5 (bug 1642708)
Backed out changeset 1c245d4e8244 (bug 1642708)
Backed out changeset ad613fa94a83 (bug 1642708)
2020-06-17 16:51:16 +03:00
Ted Campbell b08256508e Bug 1642708 - Remove BinAST Rust modules r=arai,emilio
Differential Revision: https://phabricator.services.mozilla.com/D77947
2020-06-17 13:22:41 +00:00
Sylvestre Ledru fc28509901 Bug 1645869 - mozlint/rustfmt: make the check relevant r=undef1nd
The version check is done above. So, it will fail there.
Move the binary check earlier to have a better error message

+ simplify the code

Differential Revision: https://phabricator.services.mozilla.com/D79725
2020-06-17 07:16:09 +00:00
Sylvestre Ledru 67acf10354 Bug 1646162 - gfx/wgpu/player/ can be removed from the clippy exclude list r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D79887
2020-06-16 21:50:11 +00:00
Sylvestre Ledru 1f78f06a5c Bug 1645829 - Add a check for the clippy version r=linter-reviewers,ahal
Differential Revision: https://phabricator.services.mozilla.com/D79726
2020-06-16 18:54:54 +00:00
Sylvestre Ledru a2cbf5b473 Bug 1645066 - mozlint/clippy: update of the test to reflect the new output r=marco
Differential Revision: https://phabricator.services.mozilla.com/D79436
2020-06-16 18:54:54 +00:00
Sylvestre Ledru 47b3629cd9 Bug 1642825 - mozlint: Add a linter to prevent further use of black/whitelist r=Gijs,linter-reviewers,mossop,ahal
Note that I cannot do unit test because of it doesn't support regex payload
''Failed: could not resolve a lint function from''

Differential Revision: https://phabricator.services.mozilla.com/D78158
2020-06-16 17:02:59 +00:00
Henri Sivonen d5b9be12ce Bug 1603712 - Remove intl.charset.detector.ng.enabled pref and resulting dead code. r=Gijs,fluent-reviewers,valentin,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D79101
2020-06-15 15:32:21 +00:00
Ted Campbell 5f98fae13b Bug 1645469 - Add profiler subcategories for SpiderMonkey JITs. r=jandem,gerald
In the JIT frame sampler, we apply the appropriate category in addition to
the "implementation" field. For JS frames (IS_JS_FRAME), we identify as
either BaselineInterpreter or Interpreter. Note that JS_Other still applies
to various places we enter SpiderMonkey outside of RunScript.

Differential Revision: https://phabricator.services.mozilla.com/D79524
2020-06-15 14:56:50 +00:00
Ted Campbell 6aa5132146 Bug 1645464 - Use a shared ProfilingCategoryList.h r=gerald,froydnj
Replace the duplicate lists in mozglue/baseprofiler/public and js/public with
a shared list. Add this list to both moz.build files so it is published twice
which simplifies supporting different standalone configurations.

Differential Revision: https://phabricator.services.mozilla.com/D79520
2020-06-15 13:59:55 +00:00
Paul Adenot ff3fa11620 Bug 1626918 - Start and stop audio callback tracing when the profiler starts and stops. r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D78508
2020-06-12 13:13:35 +00:00
Paul Adenot 1bb1ffcde3 Bug 1626918 - Add two missing constructors to TracingMarkerPayload. r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D78507
2020-06-12 13:13:28 +00:00
Simon Fraser 65cbd9e05b Bug 1643625 Clear up references to MAR_OLD_FORMAT in packaging tools r=nthomas
I think we don't need these checks any more.

Differential Revision: https://phabricator.services.mozilla.com/D78480
2020-06-11 22:23:10 +00:00
Sylvestre Ledru 74abdddf45 no bug - mozlint/clippy - Add smoosh to the clippy list r=arai
Differential Revision: https://phabricator.services.mozilla.com/D79297
2020-06-11 17:02:34 +00:00
Sylvestre Ledru 2ad15eb452 Bug 1644809 - mozlint/clippy handle the summary r=marco
Differential Revision: https://phabricator.services.mozilla.com/D79166
2020-06-11 12:29:10 +00:00
Sylvestre Ledru 1a628a1b02 Bug 1644799 - mozlint/clippy Add a debug message containing the clippy version r=marco
Differential Revision: https://phabricator.services.mozilla.com/D79161
2020-06-11 12:27:57 +00:00
Myeongjun Go 70a902e23f Bug 1641933 - [pefrdocs] add desciptions to perfdocs using single letter r=sparky,perftest-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D78614
2020-06-10 20:40:31 +00:00
Razvan Maries ef73a88351 Backed out changeset 37a5223eda5f (bug 1643625) for Rpk bustages. CLOSED TREE 2020-06-09 18:30:01 +03:00
Ted Campbell b3e185db5d Bug 1644218 - Add blinterp implementation tracking to profiler r=jandem,gerald
Introduce an IS_BLINTERP_FRAME flag to ProfilingStackFrame to distinguish C++
and Baseline interpreter frames. In the profile data this sets the
"implementation" to "blinterp".

Differential Revision: https://phabricator.services.mozilla.com/D78725
2020-06-09 12:27:15 +00:00
Simon Fraser 1422db5e20 Bug 1643625 Clear up references to MAR_OLD_FORMAT in packaging tools r=nthomas
I think we don't need these checks any more.

Differential Revision: https://phabricator.services.mozilla.com/D78480
2020-06-09 11:53:26 +00:00
Mitchell Hentges 300422099b Bug 1632429: Improves update-verify compatibility with python 3 r=nthomas
Depends on D77962

Differential Revision: https://phabricator.services.mozilla.com/D77964
2020-06-08 21:07:07 +00:00
Adam Gashlin e34730166a Bug 1643188 - Require MOZ_PRODUCT_VERSION and MAR_CHANNEL_ID for update scripts. r=sfraser
Differential Revision: https://phabricator.services.mozilla.com/D78209
2020-06-05 08:58:53 +00:00
Adam Gashlin c0a419ebb4 Bug 1643211 - Don't use BCJ on patches. r=sfraser
Differential Revision: https://phabricator.services.mozilla.com/D78213
2020-06-07 23:15:45 +00:00
Simon Giesecke 13502cf27c Bug 1642991 - Use RemoveElementsBy where easily possible. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D78055
2020-06-08 09:01:48 +00:00
Andrew Halberstadt 4c9338072f Bug 1633866 - [tryselect] Use 'bugbug' loader with |mach try auto|, r=marco
Enables manifest-scheduling with |mach try auto| pushes.

Differential Revision: https://phabricator.services.mozilla.com/D76525
2020-06-03 21:00:43 +00:00
Nazım Can Altınova e3ea64b9cb Bug 1642677 - Remove the unneeded java sampler pause/unpause during the serialization. r=gerald
Now we are pausing the profiler just before capturing the profile data. Android
sampler will never be running when this code is being run

Depends on D78037

Differential Revision: https://phabricator.services.mozilla.com/D78038
2020-06-04 09:34:32 +00:00
Nazım Can Altınova 7409a37a20 Bug 1642677 - Make the profiler_{pause,resume} control android sampler as well. r=gerald
Depends on D78036

Differential Revision: https://phabricator.services.mozilla.com/D78037
2020-06-03 12:48:26 +00:00
championshuttler b8d9ae4413 Bug 1643074 - Add a copy button to firefox docs to copy commands. r=firefox-source-docs-reviewers,ahal
Differential Revision: https://phabricator.services.mozilla.com/D78110
2020-06-03 19:22:03 +00:00
Tom Ritter e86495e2a0 Bug 1642704 - Make ./mach try fuzzy --update install if fzf is not present r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D77856
2020-06-03 19:14:48 +00:00
Gregory Mierzwinski cf5ee680a4 Bug 1642964 - Add small README file to tools/browsertime. r=tarek
This patch adds a small README file to the tools/browsertime folder to give people more information about its purpose and provides a link to the perftest wiki.

Depends on D78044

Differential Revision: https://phabricator.services.mozilla.com/D78045
2020-06-03 12:51:41 +00:00
Gregory Mierzwinski 44d2279d2e Bug 1642963 - Add bugzilla componenet to tools/browsertime code. r=tarek
This patch adds the Testing :: Raptor component to all files under `tools/browsertime`.

Differential Revision: https://phabricator.services.mozilla.com/D78044
2020-06-03 12:50:45 +00:00
Andrew McCreight 8eefcc3e76 Bug 1642631 - Make the message argument to Channel::Send() a UniquePtr. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D77876
2020-06-02 21:23:08 +00:00
Mitchell Hentges 9bc6040a9c Bug 1642517: Resolves |mach try scriptworker| py3 issue r=rstewart
When python2 interprets headers here, it will attempt to encode values into a string in a blanket fashion.

In this case, the `Accept` header is encoded into an invalid value, but it "works".

Python3 validates more strictly, and throws an error when an array is encountered as a value here. Formatting it
as a valid string instead resolves the problem.

Differential Revision: https://phabricator.services.mozilla.com/D77735
2020-06-02 13:54:33 +00:00
Christian Holler 4b5d643db0 Bug 1641169 - Update fuzzing interface documentation. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D77007
2020-06-02 12:52:19 +00:00
Bob Clary 5cd323cd6f Bug 1642044 - Python 3 tools/rb/fix_stacks.py r=gbrown
Depends on D77660

Differential Revision: https://phabricator.services.mozilla.com/D77661
2020-06-01 23:14:05 +00:00
Bob Clary 450ddd2d42 Bug 1642044 - Python 3 tools/rb/find_leakers.py r=gbrown
Differential Revision: https://phabricator.services.mozilla.com/D77660
2020-06-01 23:14:30 +00:00
Sylvestre Ledru 2d448bf2fb Bug 1640532 - Update codespell to 1.17.1 r=linter-reviewers,ahal
Depends on D76637

Differential Revision: https://phabricator.services.mozilla.com/D76638
2020-06-02 04:16:58 +00:00
Ricky Stewart 7bee84802f Bug 1641992 - Add argument to `mach busted file` to specify which component the bug should be filed against r=froydnj
With the addition of this change, a lone `mach busted file` will throw an error (since this should only ever be used by actual humans, and not in automation or anything, the backwards-compatibility breakage isn't a huge deal). Now it's expected to pass in `mach busted file $COMMAND`, where $COMMAND is the mach command that you were running when the error occurred, and we'll figure out which bugzilla component to file the bug against for you instead of directing it to `Firefox Build System :: General` regardless of whether the issue has *anything* to do with the build system. We preserve `mach busted file general` as a backup command that doesn't do any of this heavy logic.

Differential Revision: https://phabricator.services.mozilla.com/D77538
2020-06-01 16:23:48 +00:00
Nicolas Silva 380426b6a1 Bug 1641224 - Add webrender-perf try preset. r=kats
./mach try --preset webrender-perf runs the following tasks:

- test-linux64-shippable-qr/opt-raptor-motionmark-animometer-firefox-e10s
- test-linux64-shippable-qr/opt-talos-g1-e10s
- test-linux64-shippable-qr/opt-talos-g4-e10s
- test-linux64-shippable-qr/opt-talos-svgr-e10s
- test-linux64-shippable-qr/opt-talos-tp5o-e10s
- test-linux64-shippable-qr/opt-talos-webgl-e10s
- test-windows10-64-shippable-qr/opt-raptor-motionmark-animometer-firefox-e10s
- test-windows10-64-shippable-qr/opt-talos-g1-e10s
- test-windows10-64-shippable-qr/opt-talos-g4-e10s
- test-windows10-64-shippable-qr/opt-talos-svgr-e10s
- test-windows10-64-shippable-qr/opt-talos-tp5o-e10s
- test-windows10-64-shippable-qr/opt-talos-webgl-e10s

Differential Revision: https://phabricator.services.mozilla.com/D77265
2020-05-28 15:13:26 +00:00
Agi Sferro 582feb1629 Bug 1575999 - Always run javadoc tasks during lint. r=nalexander,esawin
Differential Revision: https://phabricator.services.mozilla.com/D77489
2020-06-01 15:58:03 +00:00
Agi Sferro 519207a6a8 Bug 1641711 - Don't fail the build if javadoc fails. r=nalexander,snorp,esawin
`|mach lint -f treeherder|` expects lint to not fail ever, if a lint fails it's
just ignored. This means that when our javadoc errors out and fails the build
all lints are ignored.

To avoid that we add `failOnError = false` to the javadoc job so that we can
finish the build and actually report the errors.

This patch also adds gradle output `|mach lint|` to make it easier to
diagnose errors in the lint.

Differential Revision: https://phabricator.services.mozilla.com/D77373
2020-06-01 15:58:13 +00:00
Andrew Halberstadt b2e6e5eb9d Bug 1641134 - [tryselect] Fix Python 3 compatibility issues with |mach try --pernosco|, r=mhentges
Differential Revision: https://phabricator.services.mozilla.com/D77364
2020-05-29 20:45:36 +00:00
Myeongjun Go f747fd8867 Bug 1640684 - [perfdocs] Display all raptor tests for each suite in a list r=sparky,perftest-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D77461
2020-06-01 11:12:48 +00:00
Gregory Mierzwinski 115d1b4294 Bug 1641566 - Update in-tree browsertime to latest. r=tarek,perftest-reviewers,Bebe
Differential Revision: https://phabricator.services.mozilla.com/D77257
2020-05-29 12:24:33 +00:00
Mark Smith 9b6b44fb8b Bug 1641329 - Add -q option to MAR generation scripts r=nthomas
Differential Revision: https://phabricator.services.mozilla.com/D77138
2020-05-29 13:18:46 +00:00
Bogdan Tara f863a91210 Backed out changeset 2548f39e1751 (bug 1641711) for lints.py failure CLOSED TREE 2020-05-29 12:37:18 +03:00
Agi Sferro 465a4e3f1a Bug 1641711 - Don't fail the build if javadoc fails. r=nalexander,snorp
`|mach lint -f treeherder|` expects lints to not fail ever, if a lint fails it's
just ignored. This means that when our javadoc errors out and fails the build
all lints are ignored.

To avoid that we add `failOnError = false` to the javadoc job so that we can
finish the build and actually report the errors.

This patch also adds gradle output `|mach lint|` to make it easier to
diagnose errors in the lint.

Differential Revision: https://phabricator.services.mozilla.com/D77373
2020-05-29 00:24:22 +00:00
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
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
Bogdan Tara a823ee6545 Backed out 2 changesets (bug 1628068) for ViaductRequest.cpp related bustages CLOSED TREE
Backed out changeset 013a469557c1 (bug 1628068)
Backed out changeset dcda2ce7b7f9 (bug 1628068)
2020-05-12 00:44:58 +03:00
Gerald Squelart bc2c84ac2b Bug 1636398 - Tweak default profiler buffer size in tests - r=canaltinova
Also removed explicit size in test_feature_nativeallocations, as we want a reasonably-big buffer in this test.

Other tests with small buffer sizes are fine, since the profiler imposes a minimum size that should be big enough to capture at least 8 large stacks (see bug 1571171).

Differential Revision: https://phabricator.services.mozilla.com/D74588
2020-05-11 13:09:50 +00:00
Edouard Oger 1493d71e42 Bug 1628068 p2 - Implement viaduct gecko backend. r=tcsc,dragana,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D70257
2020-05-11 21:01:19 +00:00
Bogdan Tara 3df4970bcc Backed out 2 changesets (bug 1628068) for ViaductRequest.cpp related bustages CLOSED TREE
Backed out changeset 928a5891c55d (bug 1628068)
Backed out changeset b6fe5d357bed (bug 1628068)
2020-05-11 23:52:47 +03:00
Edouard Oger d6e7e33f9a Bug 1628068 p2 - Implement viaduct gecko backend. r=tcsc,dragana,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D70257
2020-05-11 20:19:16 +00:00
Bogdan Tara 448d53548b Backed out 2 changesets (bug 1628068) for ViaductRequest.cpp related bustages CLOSED TREE
Backed out changeset 1ea8f742ca69 (bug 1628068)
Backed out changeset 3aa2f99843e0 (bug 1628068)
2020-05-11 23:06:31 +03:00
Edouard Oger 9790192f51 Bug 1628068 p2 - Implement viaduct gecko backend. r=tcsc,dragana,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D70257
2020-05-11 15:17:37 +00:00
Mitchell Hentges b8108d6064 Bug 1632429: Migrate |./mach try| to python 3; r=rstewart,ahal
|./mach try| subcommands are now compatible with both python 2 and 3.

Hand-tested with many combinations of subcommand and subcommand flags.

Updates tryselect unit tests to use Python 3.

Differential Revision: https://phabricator.services.mozilla.com/D73398
2020-05-06 22:17:14 +00:00
Christian Holler 53f361c007 Bug 1635762 - Switch libFuzzer upstream to git and add local patches. r=truber
Differential Revision: https://phabricator.services.mozilla.com/D74040
2020-05-11 12:45:07 +00:00
Mihai Alexandru Michis 2df205e3f0 Backed out changeset 14b092e7a974 (bug 1635762) for causing failures in browser_Telemetry_timestamp_test.js
CLOSED TREE
2020-05-11 17:00:53 +03:00
Christian Holler b8917ab3a4 Bug 1635762 - Switch libFuzzer upstream to git and add local patches. r=truber
Differential Revision: https://phabricator.services.mozilla.com/D74040
2020-05-11 12:45:07 +00:00
Sylvestre Ledru 1929dd1ab3 Bug 1519636 - Reformat recent changes to the Google coding style r=andi
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D73347
2020-05-09 14:51:53 +00:00
Jon Bauman ff79fde159 Bug 1624056 - Properly vendor mp4parse-rust. r=kinetik
This requires --build-peers-said-large-imports-were-ok since
third_party/rust/mp4parse/src/lib.rs is 113KB. This code is just moving from
media/mp4parse-rust to third_party/rust, so it's not really adding to net code
size.

Differential Revision: https://phabricator.services.mozilla.com/D74488
2020-05-09 00:36:48 +00:00
Chris Fronk af8a02cc9d Bug 1512991 - Add JsonWriteFunc::Write to take string length. r=botond
Differential Revision: https://phabricator.services.mozilla.com/D72560
2020-05-08 16:24:31 +00:00
thomasmo 59be1c47cd Bug 1635608 - Update OpenVR source code to use Unix line endings r=daoshengmu
This change simply changes line endings to make diffing easier with updates from OpenVR, which have Unix line endings.
Further, .clang-format-ignore, does not seem to work for wildcard to match a directory and subdirectory, so all files are listed individually.

Differential Revision: https://phabricator.services.mozilla.com/D74100
2020-05-07 20:20:39 +00:00
Geoff Brown 99f9b87119 Bug 1603510 - Allow multi-word $EDITOR in 'mach try syntax --edit-presets'; r=bc
Differential Revision: https://phabricator.services.mozilla.com/D74416
2020-05-08 17:54:10 +00:00
Gerald Squelart 3b34acf6e6 Bug 1632750 - Tweak MOZ_PROFILER_STARTUP_ENTRIES default values - r=canaltinova
These defaults were per process and there are usually around 8 processes.
Now these sizes apply to all processes, so they can be 8 times as big (but less on Android where memory may be more limited.)

Not changing Base Profiler defaults, as its buffer is not cross-process controlled.

Differential Revision: https://phabricator.services.mozilla.com/D73215
2020-05-08 03:36:10 +00:00
Gerald Squelart a36880438c Bug 1632750 - ProfilerChild handling update and destruction requests - r=canaltinova
This implement the child side:
When the first request for update arrives, it connects to the local chunk manager, to receive its updates.
If multiple updates are received, they are folded into one.
If there are both an update and a pending request, the request is fulfilled with the update and local data is reset.
And ProfilerChild handles "destroy" instructions to destroy local chunks.

At this point, the whole machinery is in place, and all combined profile buffers used in all processes should use around the maximum amount allowed.
A bit more memory may still be used, e.g., due to IPC delays, and because of recycling which keeps some unused chunks alive for later reuse. But overall that should be a small amount compared to the usual user-requested limit.

Differential Revision: https://phabricator.services.mozilla.com/D72369
2020-05-08 03:35:42 +00:00
Gerald Squelart 9456ec87dd Bug 1632750 - ProfileBufferGlobalController::HandleChunkManagerUpdate logic - r=canaltinova
The logic part of the controller receives all updates, and makes decisions to destroy old chunks when the memory limit is reached.

Differential Revision: https://phabricator.services.mozilla.com/D72368
2020-05-08 03:35:25 +00:00
Gerald Squelart 80fd31a8c3 Bug 1632750 - ProfileBufferGlobalController - r=canaltinova
When there is at least one ProfilerParent (i.e., we are interacting with at least one child process) AND the parent profiler is running, the ProfilerParentTracker sets up the ProfileBufferGlobalController that will manage all chunks.
As a first step, it connects with the local chunk manager (to receive chunk updates), and sends update requests to all children.

(The actual controller logic is not implemented in this patch, nor is the ProfilerChild side, see following patches.)

Differential Revision: https://phabricator.services.mozilla.com/D72367
2020-05-08 03:35:12 +00:00
Gerald Squelart 811ee56c78 Bug 1632750 - New profiler IPDL functions to manage chunks across processes - r=canaltinova
Differential Revision: https://phabricator.services.mozilla.com/D72366
2020-05-08 03:34:55 +00:00
Gerald Squelart ddf7f185a4 Bug 1632750 - ProfilerParent::ProfilerWillStopIfStarted - r=canaltinova
The Gecko Profiler can notify the ProfilerParent when it's about to stop (if it was started, but the notification will happen even when it's not started).

Differential Revision: https://phabricator.services.mozilla.com/D72365
2020-05-08 03:34:32 +00:00
Gerald Squelart f1439fbad0 Bug 1632750 - profiler_get_controlled_chunk_manager - r=canaltinova
The Gecko Profiler can provide its current controlled chunk manager.
It is the responsibility of the caller to keep track of the state of the profiler, to avoid using the chunk manager after it's discarded.

Differential Revision: https://phabricator.services.mozilla.com/D72364
2020-05-08 03:34:30 +00:00
Greg Tatum 6066dc40b3 Bug 1628073 - Make the defaults for the profiler settings nicer for mochitests; r=gerald
The defaults should serve our users. I did some profiling with mochitests
and the defaults weren't ideal. It would be nice if the profiler "just worked"
for most of the situations. It would be great to teach the environment variables
about presets, but for now this will make the profiler easier to use for our
users in the general case.

This patch adds both screenshots and updates the entries count. This causes
additional overhead, but people on low-end devices can still tweak the settings
to remove that overhead.

Differential Revision: https://phabricator.services.mozilla.com/D70091
2020-05-08 00:48:55 +00:00
Jonathan Watt c6c74ac1f0 Bug 1636304. Fix and improve the Mermaid documentation. r=sylvestre
The second example, when copied and pasted, is completely borked since it
is not preceeded by the line that declares what follows to be a Mermaid
diagram. This change fixes that.

It also fixes the prose to read slightly less awkwardly in places.

Finally, this change also adds a link to the Mermaid Live Editor to make
readers aware of this useful tool.

Differential Revision: https://phabricator.services.mozilla.com/D74338
2020-05-07 23:16:00 +00:00
Simon Giesecke 61ad805d68 Bug 1626570 - Use CopyableTArray in ipdlc as member type for now. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D73685
2020-05-07 08:11:08 +00:00
Cosmin Sabou c263a2a867 Merge mozilla-central to autoland. 2020-05-07 02:33:29 +03:00
Cosmin Sabou 5704c50d45 Merge autoland to mozilla-central. a=merge 2020-05-07 00:50:37 +03:00
Kartikaya Gupta 03498b143d Bug 1635142 - Update github-sync to use Authorization header instead of deprecated HTTP auth mechanism. r=kvark
Depends on D74066

Differential Revision: https://phabricator.services.mozilla.com/D74067
2020-05-06 16:09:40 +00:00
Kartikaya Gupta 447162a66b Bug 1635809 - Use |file| instead of |modifies| in the hg revset query to catch file deletions. r=kvark
Closer look at the man pages shows that the file() query will catch any file
changes, whereas the modifies() query will only capture files that were
modified, which excludes strict deletions.

Depends on D74065

Differential Revision: https://phabricator.services.mozilla.com/D74066
2020-05-06 16:09:23 +00:00
Kartikaya Gupta 2c61b5048f Bug 1635809 - Prevent crash in converter.py on debug output with non-ascii hg log data. r=kvark
This is just in debug output, so the fact that we ignore non-utf-8 chars is ok.

Depends on D74064

Differential Revision: https://phabricator.services.mozilla.com/D74065
2020-05-06 16:08:58 +00:00
Kartikaya Gupta 21f0ab510f Bug 1635809 - Update readme.md to include some semblance of debugging instructions. r=kvark
Differential Revision: https://phabricator.services.mozilla.com/D74064
2020-05-06 17:29:52 +00:00
Gerald Squelart 9eb780f5ef Bug 1635338 - profiler_is_locked_on_current_thread() now also checks for the buffer lock - r=gregtatum,canaltinova
profiler_is_locked_on_current_thread() is used to help users avoid calling `profiler_...` functions when the profiler may already have a lock in place, which would prevent a 2nd recursive lock (resulting in a crash or a never-ending wait).
So we must return `true` for any of:
- The main profiler mutex, used by most functions, and/or
- The buffer mutex, used directly in some functions without locking the main mutex, e.g., marker-related functions.

Differential Revision: https://phabricator.services.mozilla.com/D73789
2020-05-06 12:45:40 +00:00
Greg V e65e9412b0 Bug 1634205 - Support Gecko Profiler and Base Profiler on FreeBSD r=mstange
- supports amd64 and arm64 (aarch64)
- uses LUL for stack walking

Differential Revision: https://phabricator.services.mozilla.com/D73162
2020-05-06 17:44:19 +00:00
Mihai Alexandru Michis 6c13bc9a50 Backed out changeset 2f5143da4986 (bug 1631584) for causing gv jobs to fail as exceptions.
CLOSED TREE
2020-05-06 02:23:54 +03:00
Markus Stange 16fc9519a1 Bug 1578726 - Stop looking for non-existent EnterJIT frames. r=gerald
At the time this code was written, JavaScript JIT entry trampolines were
emitting EnterJIT label frames that carried a stack address. From this stack
address, register values could be recovered that would allow native stack
unwinding to resume after getting lost in JIT code.

The EnterJIT label frame was removed in bug 1057082.

Differential Revision: https://phabricator.services.mozilla.com/D73939
2020-05-05 22:53:45 +00:00
Gerald Squelart 29ec866e31 Bug 1635196 - Make sure GetSymbolTableMozPromise promise is always fulfilled - r=mstange
In rare cases, a dispatch may fail (e.g., threads are shutting down), we should handle this failure by rejecting the promise on the spot.

Depends on D73791

Differential Revision: https://phabricator.services.mozilla.com/D73792
2020-05-05 21:06:15 +00:00
Gerald Squelart 32a725405b Bug 1635196 - GetSymbolTableMozPromise can fulfill the promise on any thread - r=mstange
It is not necessary to dispatch another task to the main thread to resolve/reject a MozPromiseHolder, because wherever this happens, the attached `Then` will do its own dispatch to the main thread.
Also, this removes a dispatch that could potentially fail, leaving the promise unfulfilled.

Depends on D73790

Differential Revision: https://phabricator.services.mozilla.com/D73791
2020-05-05 21:07:24 +00:00
Gerald Squelart 52ffb43ad5 Bug 1635196 - Make sure profile-gathering promise is fulfilled before destroying holder - r=mstange
While gathering profiles from child processes, some actions (e.g., shutting down, restarting the profiler) may reset the gathering operation.
In this case we must ensure that the promise is rejected if not already fulfilled, so that anyone waiting on it won't be blocked forever (and MozPromise enforces it in a MOZ_DIAGNOSTIC_ASSERT).

Differential Revision: https://phabricator.services.mozilla.com/D73790
2020-05-05 21:07:34 +00:00
Markus Stange 6725e6df9a Bug 1634784 - Remove MOZ_BASE_PROFILER and replace it with MOZ_GECKO_PROFILER everywhere. r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D73526
2020-05-05 21:44:11 +00:00
Markus Stange 1bb0550030 Bug 1631584 - Add profiler labels for JNI binding method/getter/setter/constructor calls. r=gerald,snorp,geckoview-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D71645
2020-05-05 21:42:21 +00:00
Ian Moody a52653c73c Bug 1536556 - Extend no-throw-cr-literal ESLint rule to forbid and fix `throw new Error(Cr.ERROR);`. r=Standard8
Code should be using `throw Components.Exception("", Cr.ERROR);` instead,
since `new Error()` just converts the int value of the Cr.ERROR into a string,
whereas `Exception` constructs an Exception object with the result property set
to the Cr.ERROR value, so other code can identify it.

Differential Revision: https://phabricator.services.mozilla.com/D28074
2020-05-05 17:43:39 +00:00
Ian Moody 85f9392bc8 Bug 1536556 - Add custom no-throw-cr-literal ESLint rule, and enable it by default. r=Standard8
This rule is based on the ESLint built-in no-throw-literal. Cr.ERRORs are also
literals since they are just integers and so have all the same disadvantages of
no stack info.

TestInterfaceJS.js is explicitly testing handling of throwing raw Cr.ERRORs and
thus needs to stay.

Differential Revision: https://phabricator.services.mozilla.com/D28072
2020-05-05 15:00:50 +00:00
Ian Moody 011b59d595 Bug 1536556 - Replace raw thrown Cr.ERRORs with Components.Exception. r=mossop,remote-protocol-reviewers,marionette-reviewers,whimboo,necko-reviewers,geckoview-reviewers,valentin,agi
Raw Cr.ERROR don't get stack information, same as throwing JS literals instead
of `new Error()`s.

This was done automatically with a new eslint rule that will be introduced in
the next commit.  One instance of a raw Cr.ERROR was not replaced since it is
used in a test that specifically checks the preservation of raw Cr values in
XPCJS.  The rule will be disabled for that instance.

Differential Revision: https://phabricator.services.mozilla.com/D28073
2020-05-05 17:41:36 +00:00
Julien Wajsberg a128c0d95a Bug 1589568 - Add some more logs in an intermittent profiler test r=gregtatum
Differential Revision: https://phabricator.services.mozilla.com/D73836
2020-05-05 14:57:45 +00:00
Julien Wajsberg bd12d00b60 Bug 1589568 - Always stop the profiler after browser tests r=gregtatum
Differential Revision: https://phabricator.services.mozilla.com/D73835
2020-05-05 14:57:43 +00:00
undef1nd 42c2a99b17 Bug 1633130 - Add expected version for rustfmt lint,r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D72710
2020-05-05 09:56:50 +00:00
Gerald Squelart bccea8601e Bug 1571171 - Clamp profiler capacity to allowed values - r=canaltinova
The profiler can be given any power of two, but there were no safety checks to ensure that the buffer had a minimum workable capacity (to hold at least 4 chunks, each capable of holding at least one stack sample), and also to prevent large buffers that could break the currently-supported 2GiB limit.

This fixes the issue with test_merged_stacks.js, which was requesting a too-small buffer. (This started when we switched to the chunk-based buffer, because the profiler was blindly using the provided number as maximum, and dividing that size by 4 for each chunk, which was not enough to hold a full sample in some builds.)

Differential Revision: https://phabricator.services.mozilla.com/D73212
2020-05-04 12:49:30 +00:00
Mitchell Hentges ef1e204860 Bug 1635204: Mark flaky test, registers with bug r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D73733
2020-05-04 19:16:11 +00:00
Andrew Halberstadt 3220639fe4 Bug 1634484 - [tryselect] Change default ./mach try auto strategy to 'bugbug_reduced', r=marco
Depends on D73349

Differential Revision: https://phabricator.services.mozilla.com/D73350
2020-04-30 21:50:40 +00:00
Michael Hoffmann 595db05652 Bug 1545069 - report the mime type as specified by the response headers r=julienw,gerald,mayhemer
Differential Revision: https://phabricator.services.mozilla.com/D68481
2020-05-04 07:13:47 +00:00
Mitchell Hentges 6e1e037cd3 Bug 1569115 - Don't throw TypeError exception when using |./mach try chooser| r=rstewart
This was an issue around "six" and "click", this thread sheds some light:
https://github.com/pallets/click/issues/564.

This issue was reproducible by having a local python 2 flask app with Flask==1.0.2, Werkzeug==0.14.1 and Click==7.0. Upon self-shutdown, the TypeError was raised.

Upgrading Click to 7.1.2 resolves this issue both in that separate "reproduce app" and here in-tree.

Differential Revision: https://phabricator.services.mozilla.com/D73351
2020-05-01 14:45:40 +00:00
Matthew Gaudet fd2c42d1ce Bug 1628343 - Remove Windows and OSX builds from sm-shell preset, and add 'sm-shell-all' preset r=tcampbell
After this patch:

```
$ ./mach try --no-push --preset=sm-shell
Task configuration changed, generating target task set
estimates: Runs 17 tasks (17 selected, 0 dependencies)
estimates: Total task duration 7:51:00
estimates: In the 61% percentile
estimates: Should take about 1:26:32 (Finished around 2020-05-01 08:30)
Commit message:
Fuzzy query=!win !osx 'spidermonkey | 'shell-haz

Pushed via `mach try fuzzy`
Calculated try_task_config.json:
{
    "env": {
        "TRY_SELECTOR": "fuzzy"
    },
    "tasks": [
        "hazard-linux64-shell-haz/debug",
        "spidermonkey-sm-arm-sim-linux32/debug",
        "spidermonkey-sm-arm64-sim-linux64/debug",
        "spidermonkey-sm-asan-linux64/opt",
        "spidermonkey-sm-compacting-linux64/debug",
        "spidermonkey-sm-fuzzing-linux64/opt",
        "spidermonkey-sm-gdb-linux64/debug",
        "spidermonkey-sm-mozjs-sys-linux64/debug",
        "spidermonkey-sm-nojit-linux64/opt",
        "spidermonkey-sm-nonunified-linux64/debug",
        "spidermonkey-sm-package-linux64/opt",
        "spidermonkey-sm-plain-linux64/debug",
        "spidermonkey-sm-plain-linux64/opt",
        "spidermonkey-sm-rootanalysis-linux64/debug",
        "spidermonkey-sm-rust-bindings-linux64/debug",
        "spidermonkey-sm-tsan-linux64/opt",
        "spidermonkey-sm-warp-linux64/debug"
    ],
    "version": 1
}
```

Differential Revision: https://phabricator.services.mozilla.com/D73439
2020-05-01 13:17:55 +00:00
David Teller ded0c0d4ee Bug 1580448 - JSProcessActor tests;r=nika
Differential Revision: https://phabricator.services.mozilla.com/D69819
2020-04-30 16:45:14 +00:00
Simon Giesecke 4a9809b4f9 Bug 1626570 - Improve handling of copying arrays in tools/profiler/gecko. r=mstange
Differential Revision: https://phabricator.services.mozilla.com/D72317
2020-04-30 09:36:07 +00:00
Stefan Hindli e22cd35728 Backed out 9 changesets (bug 1580448) for linux build bustages in /builds/worker/workspace/obj-build/dist/include/mozilla/dom/JSWindowActorChild.h CLOSED TREE
Backed out changeset 6b4db1a501df (bug 1580448)
Backed out changeset 677257a41457 (bug 1580448)
Backed out changeset 6db8de5fc125 (bug 1580448)
Backed out changeset fd7527c86239 (bug 1580448)
Backed out changeset bfbd3330b0a5 (bug 1580448)
Backed out changeset dafa80c63322 (bug 1580448)
Backed out changeset 2a1701831a6a (bug 1580448)
Backed out changeset 9b548bd38671 (bug 1580448)
Backed out changeset 358f764ae48b (bug 1580448)
2020-04-30 10:58:27 +03:00