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

2347 Коммитов

Автор SHA1 Сообщение Дата
Toshihito Kikuchi 07dfbc6b36 Bug 1723868 - Skip msvp9dec_store.dll in GetInfoForSelf(). r=gerald
When mfplat.dll loads msvp9dec_store.dll, it posts a task
to unload the module to the work queue even if msvp9dec_store.dll
is already loaded and mfplat.dll skips LoadLibrary.  Therefore,
we cannot safely lock msvp9dec_store.dll by loading it as data.

The proposed fix is to skip processing the module.

Differential Revision: https://phabricator.services.mozilla.com/D121777
2021-08-05 02:36:27 +00:00
Harry Twyford 2d4da45cce Bug 1698814 - Part 1 - Consolidate toolbar-field background color variables. r=desktop-theme-reviewers,dao
Differential Revision: https://phabricator.services.mozilla.com/D117028
2021-08-04 18:01:09 +00:00
Kris Wright abdb25382e Bug 1723730 - Add temporary TSan suppression. r=mccr8,decoder
Differential Revision: https://phabricator.services.mozilla.com/D121664
2021-08-03 20:39:06 +00:00
Kris Wright 58839f2d2e Bug 1723176 - Add temporary TSan suppression. r=decoder,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D121549
2021-08-03 20:39:05 +00:00
Kris Wright 53b36691dc Bug 1723170 - Add temporary TSan suppression. r=decoder,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D121548
2021-08-03 20:39:05 +00:00
Kris Wright dd75f68ef7 Bug 1723142 - Add temporary TSan suppression. r=decoder,mccr8
This call appears in the top frames of 2 different stacks (Bug 1723351 and Bug 1723142) so from my understanding it will suppress both test fails. I included both bug numbers for reference.

Differential Revision: https://phabricator.services.mozilla.com/D121546
2021-08-03 20:39:05 +00:00
Kris Wright 7b5275067f Bug 1723321 - Add temporary TSan suppression. r=decoder,mccr8
This commit also adds a newline to the entry directly above the new suppression, since it was missing one.

Differential Revision: https://phabricator.services.mozilla.com/D121545
2021-08-03 20:39:04 +00:00
Doug Thayer 5667e3b2a9 Bug 1722515 - Only build ActivationContext.cpp in mozglue if a11y r=Jamie
Differential Revision: https://phabricator.services.mozilla.com/D121547
2021-08-03 14:40:38 +00:00
Mike Hommey c4d65ab921 Bug 1723016 - Update builders to rustc 1.54. r=firefox-build-system-reviewers,nalexander
Differential Revision: https://phabricator.services.mozilla.com/D121247
2021-08-03 02:03:32 +00:00
Nazım Can Altınova 4302cd6058 Bug 1652560 - Autogenerate profiling_categories.rs with profiling_categories.yaml r=gerald,emilio
Generate the user friendly Rust enums and their impls for profiling categories.

Differential Revision: https://phabricator.services.mozilla.com/D120792
2021-07-30 21:49:21 +00:00
Nazım Can Altınova 0b9f9eb6a9 Bug 1652560 - Autogenerate ProfilingCategoryList.h with profiling_categories.yaml r=emilio,gerald
Previously ProfilingCategoryList.h was a central place for profiling
categories. But with this patch, profiling_categories.yaml becomes the
canonical place for it and the macro header file is being generated
automatically. This is needed to make the profiling categories in sync with
Rust and C++.

Differential Revision: https://phabricator.services.mozilla.com/D120791
2021-07-30 21:49:21 +00:00
Brindusan Cristian 7e15fd89b7 Backed out 3 changesets (bug 1723016) for causing valgrind bustages. CLOSED TREE
Backed out changeset 1b03bb0c42e4 (bug 1723016)
Backed out changeset 66ea8fed0c30 (bug 1723016)
Backed out changeset d43d97354163 (bug 1723016)
2021-07-30 17:54:40 +03:00
Andrew Osmond 6f3d06c7cb Bug 1722726 - Move Linux tsan tests to WebRender. r=jmaher
autoland

--- target_task_set@32af9322f9bf
+++ target_task_set@ao_ci_linux_tsan
-test-linux1804-64-tsan/opt-crashtest-e10s
-test-linux1804-64-tsan/opt-mochitest-a11y-1proc
-test-linux1804-64-tsan/opt-mochitest-browser-chrome-e10s
-test-linux1804-64-tsan/opt-mochitest-media-e10s
-test-linux1804-64-tsan/opt-mochitest-media-fis-e10s
-test-linux1804-64-tsan/opt-mochitest-media-fis-gli-e10s
-test-linux1804-64-tsan/opt-mochitest-media-gli-e10s
-test-linux1804-64-tsan/opt-mochitest-media-spi-e10s
-test-linux1804-64-tsan/opt-mochitest-plain-e10s
-test-linux1804-64-tsan/opt-mochitest-plain-fis-e10s
-test-linux1804-64-tsan/opt-reftest-e10s
-test-linux1804-64-tsan/opt-web-platform-tests-e10s
-test-linux1804-64-tsan/opt-web-platform-tests-fis-e10s
-test-linux1804-64-tsan/opt-web-platform-tests-reftest-e10s
-test-linux1804-64-tsan/opt-web-platform-tests-reftest-fis-e10s
-test-linux1804-64-tsan/opt-xpcshell-e10s
+test-linux1804-64-tsan-qr/opt-crashtest-e10s
+test-linux1804-64-tsan-qr/opt-crashtest-noqr-e10s
+test-linux1804-64-tsan-qr/opt-crashtest-swr-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-a11y-1proc
+test-linux1804-64-tsan-qr/opt-mochitest-browser-chrome-swr-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-media-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-media-fis-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-media-fis-gli-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-media-gli-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-media-spi-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-plain-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-plain-fis-e10s
+test-linux1804-64-tsan-qr/opt-reftest-e10s
+test-linux1804-64-tsan-qr/opt-reftest-noqr-e10s
+test-linux1804-64-tsan-qr/opt-reftest-swr-e10s
+test-linux1804-64-tsan-qr/opt-web-platform-tests-e10s
+test-linux1804-64-tsan-qr/opt-web-platform-tests-fis-e10s
+test-linux1804-64-tsan-qr/opt-web-platform-tests-reftest-e10s
+test-linux1804-64-tsan-qr/opt-web-platform-tests-reftest-fis-e10s
+test-linux1804-64-tsan-qr/opt-xpcshell-e10s

mozilla-central

--- target_task_set@32af9322f9bf
+++ target_task_set@ao_ci_linux_tsan
-test-linux1804-64-tsan/opt-crashtest-e10s
-test-linux1804-64-tsan/opt-mochitest-a11y-1proc
-test-linux1804-64-tsan/opt-mochitest-browser-chrome-e10s
-test-linux1804-64-tsan/opt-mochitest-media-e10s
-test-linux1804-64-tsan/opt-mochitest-media-fis-e10s
-test-linux1804-64-tsan/opt-mochitest-media-fis-gli-e10s
-test-linux1804-64-tsan/opt-mochitest-media-gli-e10s
-test-linux1804-64-tsan/opt-mochitest-media-spi-e10s
-test-linux1804-64-tsan/opt-mochitest-plain-e10s
-test-linux1804-64-tsan/opt-mochitest-plain-fis-e10s
-test-linux1804-64-tsan/opt-reftest-e10s
-test-linux1804-64-tsan/opt-web-platform-tests-e10s
-test-linux1804-64-tsan/opt-web-platform-tests-fis-e10s
-test-linux1804-64-tsan/opt-web-platform-tests-reftest-e10s
-test-linux1804-64-tsan/opt-web-platform-tests-reftest-fis-e10s
-test-linux1804-64-tsan/opt-xpcshell-e10s
+test-linux1804-64-tsan-qr/opt-crashtest-e10s
+test-linux1804-64-tsan-qr/opt-crashtest-noqr-e10s
+test-linux1804-64-tsan-qr/opt-crashtest-swr-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-a11y-1proc
+test-linux1804-64-tsan-qr/opt-mochitest-browser-chrome-swr-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-media-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-media-fis-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-media-fis-gli-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-media-gli-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-media-spi-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-plain-e10s
+test-linux1804-64-tsan-qr/opt-mochitest-plain-fis-e10s
+test-linux1804-64-tsan-qr/opt-reftest-e10s
+test-linux1804-64-tsan-qr/opt-reftest-noqr-e10s
+test-linux1804-64-tsan-qr/opt-reftest-swr-e10s
+test-linux1804-64-tsan-qr/opt-web-platform-tests-e10s
+test-linux1804-64-tsan-qr/opt-web-platform-tests-fis-e10s
+test-linux1804-64-tsan-qr/opt-web-platform-tests-reftest-e10s
+test-linux1804-64-tsan-qr/opt-web-platform-tests-reftest-fis-e10s
+test-linux1804-64-tsan-qr/opt-xpcshell-e10s

mozilla-release

--- target_task_set@32af9322f9bf
+++ target_task_set@ao_ci_linux_tsan
-test-linux1804-64-tsan/opt-crashtest-e10s
-test-linux1804-64-tsan/opt-reftest-e10s
+test-linux1804-64-tsan-qr/opt-crashtest-e10s
+test-linux1804-64-tsan-qr/opt-crashtest-noqr-e10s
+test-linux1804-64-tsan-qr/opt-crashtest-swr-e10s
+test-linux1804-64-tsan-qr/opt-reftest-e10s
+test-linux1804-64-tsan-qr/opt-reftest-noqr-e10s
+test-linux1804-64-tsan-qr/opt-reftest-swr-e10s

Differential Revision: https://phabricator.services.mozilla.com/D121099
2021-07-30 12:23:36 +00:00
Mike Hommey 2a73240e1f Bug 1723016 - Update builders to rustc 1.54. r=firefox-build-system-reviewers,nalexander
Differential Revision: https://phabricator.services.mozilla.com/D121247
2021-07-30 11:11:28 +00:00
Mike Hommey 023ce9967d Bug 1582382 - Move rust malloc and oom hook to mozglue. r=firefox-build-system-reviewers,andi
This is similar to what was done in bug 1594998 for the panic hook.

Differential Revision: https://phabricator.services.mozilla.com/D121032
2021-07-28 20:33:08 +00:00
Toshihito Kikuchi 2fafdd4a72 Bug 1722566 - Add null checks in PEHeaders::FindResourceLeaf. r=mhowell
We had crashes in `PEHeaders::FindResourceLeaf` where `idDir` was nullptr.  This can
happen when the resource table is modified by a third-party application and an entry
in the table points to somewhere outside the executable.

Differential Revision: https://phabricator.services.mozilla.com/D121093
2021-07-28 19:11:43 +00:00
Andrew Osmond 1ec8367419 Bug 1722721 - Suppress new TSAN failures for WebRender. r=gfx-reviewers,jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D121090
2021-07-28 14:33:11 +00:00
Mike Hommey 2979d0b082 Bug 1635327 - Disable __tls_get_addr interception in sanitizer builds. r=firefox-build-system-reviewers,emilio,andi
Sanitizers try to intercept __tls_get_addr to find DTLS blocks. In some
cases, they fail miserably with a crash. And in the cases they don't
crash, they don't seem to actually work properly anyways.

This affects both build time when running host programs compiled with
sanitizer flags (this only actually affects rust build
scripts/procedural macros on non-cross builds, not C/C++ host programs),
and execution time, e.g. when running tests.

Differential Revision: https://phabricator.services.mozilla.com/D120574
2021-07-22 22:00:59 +00:00
Gerald Squelart e7e9ae90ae Bug 1721110 - profiler_current_thread_id() now returns ProfilerThreadId - r=florian
Differential Revision: https://phabricator.services.mozilla.com/D120225
2021-07-21 04:16:59 +00:00
Gerald Squelart 7bc3116790 Bug 1721110 - baseprofiler::profiler_current_thread_id() now returns BaseProfilerThreadId - r=florian
Differential Revision: https://phabricator.services.mozilla.com/D120224
2021-07-21 04:16:59 +00:00
Gerald Squelart 723be2ec1e Bug 1721110 - baseprofiler::profiler_current_process_id() now returns BaseProfilerProcessId - r=florian
Differential Revision: https://phabricator.services.mozilla.com/D120222
2021-07-21 04:16:58 +00:00
Gerald Squelart 72f0855bfa Bug 1721110 - Introduce BaseProfilerProcessId and BaseProfilerThreadId - r=florian
These classes should replace the `int` type that is currently used to store process and thread ids. The next patches will start using them. Advantages:
- Prevent type mismatches, e.g., giving a process id (or other number) to a function expecting a thread id.
- Prevent nonsensical arithmetic operations.
- Make the unspecified id more abstract, so it's more obvious and portable.
- Make conversions to/from numbers (for display or storage) more visible.
- Allow future changes of APIs using them less risky.
- Allow future changes of the ids themselves (e.g., to be able to use bigger underlying types on some platforms, or even the opaque std:🧵:id type.)

Differential Revision: https://phabricator.services.mozilla.com/D120221
2021-07-21 04:16:57 +00:00
Gerald Squelart a966352bcd Bug 1721110 - {,Base}ProfilerUtils.h with process&thread functions taken from {,Base}ProfilerState.h - r=florian
This new header isolates the process and thread functions that should be available in all builds, and in most other profiler headers.
Non-MOZ_GECKO_PROFILER implementations return ids 0 (unspecified process/thread). `profiler_is_main_thread()` returns false, it's arbitrary but consistent with `0` (it makes little sense to use it there anyway.)

Differential Revision: https://phabricator.services.mozilla.com/D120220
2021-07-21 04:16:57 +00:00
Gerald Squelart 171c2eed5f Bug 1721110 - {,Base}ProfilerState.h improvements: Sprinkle nodiscard's and more - r=florian
The next patch will extract parts of these headers into a separate file, so it's best to do this clean-up now, to best preserve history.
- Add [[nodiscard]] to all functions that return something. (There are no cases where that returned value could really be ignored.)
- Hide scProfilerMainThreadId in a "detail" namespace, to emphasize that it's an implementation detail that the user shouldn't access directly.
- Combine tightly-nested namespaces start/end into single lines, it's more readable.

Differential Revision: https://phabricator.services.mozilla.com/D120219
2021-07-21 04:16:56 +00:00
Gerald Squelart 02a156fe92 Bug 1720846 - Fix non-unified build by adding missing #includes - r=florian
Differential Revision: https://phabricator.services.mozilla.com/D120301
2021-07-20 09:31:17 +00:00
Florian Quèze 292c1a1f60 Bug 1720368 - Remove MOZ_GECKO_PROFILER ifdefs around profiler_init and profiler_shutdown calls, r=gerald.
Differential Revision: https://phabricator.services.mozilla.com/D119809
2021-07-15 22:04:23 +00:00
Mike Kaply 4ed207b4a1 Bug 1717676 - Unblock McAfee DLP > 11.6.300.2 r=tkikuchi
Differential Revision: https://phabricator.services.mozilla.com/D118515
2021-07-15 19:27:24 +00:00
Tom Ritter 1b9b6b72db Bug 1666222: Cut over a ton of NowUnfuzzed calls -> Now 4/5 r=smaug,extension-reviewers,zombie
With Fuzzyfox removed, Now() does what NowUnfuzzed() did.

Differential Revision: https://phabricator.services.mozilla.com/D119639
2021-07-14 18:18:17 +00:00
Tom Ritter 42c0ec86b4 Bug 1666222: Rip fuzzyfox out of the timestamp classes 2/5 r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D119637
2021-07-14 18:18:16 +00:00
Doug Thayer 2571ca6323 Bug 1719849 - Include ProcessRuntime.cpp and friends if not SM build r=aklotz
Originally these includes were wrapped in an ACCESSIBILITY define because the
bug that manifested only affected screen readers. However, theoretically
speaking other things *could* cause us to initialize COM early and run into
troubles, so this is not *strictly* an a11y issue from that perspective. It
wasn't wrapped around ACCESSIBILITY defines inside PreXULSkeletonUI.cpp for
this reason, but there was still lingering inconsistency inside the moz.build
file. This corrects that.

Differential Revision: https://phabricator.services.mozilla.com/D119541
2021-07-14 18:09:32 +00:00
Kris Wright 3dc0547cf8 Bug 1671574 - Add perma TSan suppression to StartupCache r=decoder
It looks like this suppression was removed downstream, but StartupCache's behavior still exists so it most likely stopped causing failures because of some other suppression interacting with it. I decided the best course of action was to put it back as a perma suppression in gecko in case we run into it again.

Differential Revision: https://phabricator.services.mozilla.com/D119783
2021-07-13 21:13:28 +00:00
Gerald Squelart 9b0d666eda Bug 1719240 - Rework PSMutex into PSAutoLock - r=canaltinova
This prevents unwanted direct access to the mutex, and removes duplicated code.

And make the Base Profiler mutex&lock consistent.

Differential Revision: https://phabricator.services.mozilla.com/D119147
2021-07-13 12:20:49 +00:00
Markus Stange e440698c82 Bug 1673755 - Strip pointer authentication hashes during stack walking on macOS arm64. r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D117168
2021-07-09 17:41:46 +00:00
Doug Thayer b5f7314e3e Bug 1714212 - Ensure COM initialized prior to showing skeleton UI r=Jamie,aklotz,tkikuchi
This implements Jamie's suggested fixes for a screenreader issue when the
skeleton UI is enabled. Most of the work here is just pulling out pieces from the
files we needed to include in mozglue so that any references to, say, nsString
or other pieces from libxul either no longer exist or are only included when
building libxul. In a few cases this meant creating whole files to house single
functions, which isn't so pretty, but it was the best I could come up with to
get the job done.

Differential Revision: https://phabricator.services.mozilla.com/D117663
2021-07-07 22:37:14 +00:00
Narcis Beleuzu 1ff027d763 Backed out changeset acf2d74efbbc (bug 1714212) for SM bustages on NativeNt.h 2021-07-07 23:13:42 +03:00
Doug Thayer dc9c284076 Bug 1714212 - Ensure COM initialized prior to showing skeleton UI r=Jamie,aklotz,tkikuchi
This implements Jamie's suggested fixes for a screenreader issue when the
skeleton UI is enabled. Most of the work here is just pulling out pieces from the
files we needed to include in mozglue so that any references to, say, nsString
or other pieces from libxul either no longer exist or are only included when
building libxul. In a few cases this meant creating whole files to house single
functions, which isn't so pretty, but it was the best I could come up with to
get the job done.

Differential Revision: https://phabricator.services.mozilla.com/D117663
2021-07-07 18:17:36 +00:00
Dorel Luca bc6f2486e2 Backed out changeset 11d1710e481f (bug 1714212) for Browser-chrome failures in toolkit/xre/test/browser_checkdllblockliststate.js. CLOSED TREE 2021-06-26 09:45:29 +03:00
Doug Thayer c3702a9447 Bug 1714212 - Ensure COM initialized prior to showing skeleton UI r=Jamie,aklotz,tkikuchi
This implements Jamie's suggested fixes for a screenreader issue when the
skeleton UI is enabled. Most of the work here is just pulling out pieces from the
files we needed to include in mozglue so that any references to, say, nsString
or other pieces from libxul either no longer exist or are only included when
building libxul. In a few cases this meant creating whole files to house single
functions, which isn't so pretty, but it was the best I could come up with to
get the job done.

Differential Revision: https://phabricator.services.mozilla.com/D117663
2021-06-26 04:10:50 +00:00
Mike Hommey 4ca3fd9016 Bug 1718131 - Add LSan suppressions for intentional leaks that somehow LSan didn't catch before. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D118828
2021-06-25 13:28:27 +00:00
Florian Quèze cd399a71a2 Bug 1717991 - Remove ifdefs around code that adds profiler markers with custom marker schemas, r=gerald.
Differential Revision: https://phabricator.services.mozilla.com/D118680
2021-06-25 13:28:01 +00:00
Florian Quèze c87b4eb7b7 Bug 1717991 - Profiler headers should declare all the marker related functions even when MOZ_GECKO_PROFILER is not defined, r=gerald.
Differential Revision: https://phabricator.services.mozilla.com/D118679
2021-06-25 13:28:01 +00:00
Chris Martin 38d538c966 Bug 1701770 - Defer Windows DPI Awareness from load time to run time r=bobowen,aklotz
Currently, we set DPI awareness in the manifest files for firefox.exe.

Unfortunately, that causes DPI-related Win32k calls when user32.dll
is loaded.

This changes things to wait until we are sure we're not running in a
Win32k Lockdown Content Process before we attempt to initialize DPI scaling.

Differential Revision: https://phabricator.services.mozilla.com/D116433
2021-06-21 13:50:31 +00:00
Gerald Squelart c83e6a0508 Bug 1715922 - Windows timer resolution is enhanced by default, except if notimerresolutionchange feature is set - r=canaltinova
This reverses bug 1703410: By default the profiler now changes the timer resolution (normally 64Hz) when the requested sampling interval is lower than 10ms, to allow fast-enough sampling for most uses.

But since this can influence other timers in Firefox, it makes debugging some types of issues more difficult. To help with this, there is now a "No Timer Resolution change" on Windows, which prevents the profiler from changing the timer resolution, at a risk of slowing down sampling in some processes.

Differential Revision: https://phabricator.services.mozilla.com/D117626
2021-06-21 11:48:23 +00:00
Narcis Beleuzu 192a45a34e Backed out 2 changesets (bug 1701770) for causing tp5n crashes.
Backed out changeset 2351f158ef88 (bug 1701770)
Backed out changeset 4af044ed9208 (bug 1701770)
2021-06-19 07:06:41 +03:00
Chris Martin 59f6230bef Bug 1701770 - Defer Windows DPI Awareness from load time to run time r=bobowen,aklotz
Currently, we set DPI awareness in the manifest files for firefox.exe.

Unfortunately, that causes DPI-related Win32k calls when user32.dll
is loaded.

This changes things to wait until we are sure we're not running in a
Win32k Lockdown Content Process before we attempt to initialize DPI scaling.

Differential Revision: https://phabricator.services.mozilla.com/D116433
2021-06-17 15:53:23 +00:00
Kris Wright d669e4ca82 Bug 1683404 - Remove tsan suppressions for nsTimerImpl. r=Gankra
Try push shows that the issue is fixed with the above patch in the stack: https://treeherder.mozilla.org/jobs?repo=try&revision=a9e9135464b2750a8b6fd2a19408e3537b39dbe2

Differential Revision: https://phabricator.services.mozilla.com/D115776
2021-06-17 15:36:00 +00:00
Florian Quèze dfeb53e219 Bug 1715257 - Remove Task Tracer code from the profiler, r=gerald,necko-reviewers.
Differential Revision: https://phabricator.services.mozilla.com/D117996
2021-06-17 09:33:00 +00:00
Iulian Moraru b02492de66 Backed out changeset 617a466d0cce (bug 1715257) for causing build bustages. CLOSED TREE 2021-06-17 10:58:16 +03:00
Florian Quèze 7b4906a6bd Bug 1715257 - Remove Task Tracer code from the profiler, r=gerald,necko-reviewers.
Differential Revision: https://phabricator.services.mozilla.com/D117996
2021-06-17 06:12:10 +00:00
Noemi Erli 6fcc995a0a Backed out 2 changesets (bug 1701770) for causing failures in browser_checkdllblockliststate.js CLOSED TREE
Backed out changeset a6f46b0a30e9 (bug 1701770)
Backed out changeset 263591537722 (bug 1701770)
2021-06-15 04:09:49 +03:00