Commit graph

828 commits

Author SHA1 Message Date
Markus Stange
72a0a91cc9 Bug 1771776 - Use AUTO_PROFILER_LABEL_DYNAMIC_CSTR instead of AUTO_PROFILER_LABEL_DYNAMIC_CSTRING so that the dynamic string is captured even while the profiler is not running. r=florian
Differential Revision: https://phabricator.services.mozilla.com/D148949
2022-06-13 14:12:41 +00:00
Tom Schuster
4525afaf9f Bug 1740263 - Implement the CSP checking callback for WASM. r=dom-worker-reviewers,smaug,freddyb
Differential Revision: https://phabricator.services.mozilla.com/D141979
2022-05-19 14:13:50 +00:00
Iulian Moraru
4d59317ca4 Backed out 6 changesets (bug 1740263) for causing bp-hybrid bustages on nsScriptSecurityManager. CLOSED TREE
Backed out changeset 2f5ec6ad0f81 (bug 1740263)
Backed out changeset a1e7766cdb94 (bug 1740263)
Backed out changeset 3978ccb95455 (bug 1740263)
Backed out changeset e34ba774b3f8 (bug 1740263)
Backed out changeset 8365b10be28e (bug 1740263)
Backed out changeset d923462c9cd0 (bug 1740263)
2022-05-19 03:28:08 +03:00
Tom Schuster
5c808859fa Bug 1740263 - Implement the CSP checking callback for WASM. r=dom-worker-reviewers,smaug,freddyb
Differential Revision: https://phabricator.services.mozilla.com/D141979
2022-05-18 21:39:29 +00:00
Kagami Sascha Rosylight
043f38ccaf Bug 1769290 - Part 4: Apply mozilla-js-handle-rooted-typedef against dom/workers r=mccr8,dom-worker-reviewers,smaug
Changes done by `./mach static-analysis check --checks="-*,mozilla-js-handle-rooted-typedef" --fix --header-filter=dom dom/workers; ./mach clang-format --outgoing`.

Depends on D146453

Differential Revision: https://phabricator.services.mozilla.com/D146454
2022-05-17 19:48:04 +00:00
Jens Stutte
aa8c3727dc Bug 1766572: Part 3 - Make nsTerminator aware of late shutdown phases. r=xpcom-reviewers,nika
In order to get better shutdown hang reporting, we want to distinguish also the last phases, namely `XPCOMShutdownThreads`, `XPCOMShutdownMainThread` and `CCPostLastCycleCollection`.
This also makes `XPCOMShutdownNotified()` obsolete and we need to slightly re-arrange the watchdog function.

Differential Revision: https://phabricator.services.mozilla.com/D145433
2022-05-13 15:47:53 +00:00
asharma
e941cb8cc9 Bug 1752907: Cut over Hardware Concurrency to finer-grained RFP Check r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D137481
2022-05-10 02:20:02 +00:00
Nika Layzell
bd9c7d6105 Bug 1766306 - Stop re-using idle worker threads, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D144616
2022-04-26 22:11:38 +00:00
Jens Stutte
4b422845c8 Bug 1763390: Destroy the cycle collector explicitely in WorkerThreadPrimaryRunnable before checking the global scope sentinels. r=dom-worker-reviewers,smaug
There is a difference between

a) the cycle collector being shut down and
b) the JSContext being destroyed entirely

We can use weak references to cycle collected objects after the CC is destroyed, but not after the JSContext is destroyed.

Thus we need to move `nsCycleCollector_shutdown();` out of the `~WorkerJSContext()` and ensure we check our sentinels before we destroy it.

Differential Revision: https://phabricator.services.mozilla.com/D143061
2022-04-07 07:38:12 +00:00
Olli Pettay
ebe85cf3fa Bug 1756172, Make also DebuggerScope support weak references, r=asuth
Depends on D141507

Differential Revision: https://phabricator.services.mozilla.com/D142057
2022-03-25 15:36:52 +00:00
Jens Stutte
176025dddc Bug 1756172: Unroot the global scopes only after the last worker event ran. r=dom-worker-reviewers,asuth,smaug
The patch D138442 wanted to guard us against the late use of global scope's reference to WorkerPrivate by nulling it out. The rational behind this was to enforce the invariant, that a `WorkerGlobalScopeBase` derived object should never outlive its `WorkerPrivate`. It turned out that during further worker cleanup at the end of `WorkerThreadPrimaryRunnable::Run` we still process pending events (while the `WorkerPrivate` is still alive) that might want to access the global scope and in particular its `mWorkerPrivate` legitimately.

The purpose of this patch is to:

 - Postpone the unrooting until after the last expected event processing.
 - Enforce the invariant "Lifetime(global scope) < Lifetime(WorkerPrivate)" by asserting that the global scope went away after GC/CC.
 - Do the nulling of global scope's `mWorkerPrivate` only if needed after the CC shut down.
 - Do the nulling of debugger global scope's `mWorkerPrivate` while unrooting as it does not support weak references.

Differential Revision: https://phabricator.services.mozilla.com/D141507
2022-03-25 15:36:51 +00:00
criss
a817ec0742 Backed out 3 changesets (bug 1752907) for casuing failures on browser_navigator.js. CLOSED TREE
Backed out changeset 747092282e35 (bug 1752907)
Backed out changeset e50ad7304c18 (bug 1752907)
Backed out changeset e6c18f35ac5f (bug 1752907)
2022-03-24 19:11:59 +02:00
asharma
430822123f Bug 1752907: Cut over Hardware Concurrency to finer-grained RFP Check r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D137481
2022-03-24 13:43:44 +00:00
Randell Jesup
fcaf70841e Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D140849
2022-03-16 18:47:08 +00:00
Noemi Erli
2390d257e6 Backed out changeset 12a59e5a50bf (bug 1207753) for causing build bustage CLOSED TREE 2022-03-16 18:32:51 +02:00
Randell Jesup
4b033a5256 Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D140849
2022-03-16 16:16:14 +00:00
Butkovits Atila
927ad62c6a Backed out changeset a68ee4b09f92 (bug 1207753) for causing Hazard bustages. CLOSED TREE 2022-03-16 14:38:14 +02:00
Randell Jesup
7d4b5fae04 Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D140849
2022-03-16 12:01:14 +00:00
Jens Stutte
07dbd234c9 Bug 1691557: Make gRuntimeService atomic. r=dom-worker-reviewers,jesup
During shutdown gRuntimeService can be accessed from a different thread while it gets destroyed. There should be not too much penalty having this atomic, even if it is for an edge case only.

Differential Revision: https://phabricator.services.mozilla.com/D139819
2022-02-28 15:16:41 +00:00
Jon Coppeard
495e25eed1 Bug 1753958 - Part 3: Add a GCOption for shutdown GCs and use this rather than checking the GCReason r=sfink,mccr8
Differential Revision: https://phabricator.services.mozilla.com/D138555
2022-02-15 09:45:06 +00:00
Sylvestre Ledru
98949ee751 Bug 1754767 - Remove duplicate includes r=media-playback-reviewers,padenot
Differential Revision: https://phabricator.services.mozilla.com/D138441
2022-02-11 10:01:15 +00:00
Norisz Fay
1f6e81e2ce Backed out changeset 370f46a043e4 (bug 1752907) for causing mochitest failures on browser_navigator.js 2022-02-08 00:02:49 +02:00
asharma
9fd77ce12f Bug 1752907: Cut over Hardware Concurrency to finer-grained RFP Check r=tjr
Differential Revision: https://phabricator.services.mozilla.com/D137481
2022-02-07 20:26:28 +00:00
Eden Chuang
2266b31d41 Bug 1744025 - Replace include "mozilla/dom/WorkerPrivate.h" with include "mozilla/dom/WorkerScope.h" where WorkerPrivate->GlobalScope() is called. r=dom-worker-reviewers,smaug,jstutte
#include "mozilla/dom/WorkerScope.h" is removed from WorkerPrivate.h, where calling WorkerPrivate::GlobalScope() without include "WorkerScope.h" makes WorkerScope as an incomplete type.


Depends on 132800

Depends on D132800

Differential Revision: https://phabricator.services.mozilla.com/D133483
2022-01-25 08:53:03 +00:00
Jens Stutte
d444f5a050 Bug 1744025: Use CheckedUnsafePtr<WorkerPrivate> in WorkerPrivate where possible. r=dom-worker-reviewers,asuth
Depends on D132709

Differential Revision: https://phabricator.services.mozilla.com/D132710
2022-01-25 08:53:00 +00:00
Jens Stutte
a3884ad516 Bug 1741182: Harmonize WorkerRunnable derived classes' overrides of Cancel. r=dom-worker-reviewers,smaug
Differential Revision: https://phabricator.services.mozilla.com/D135679
2022-01-12 14:43:09 +00:00
Tooru Fujisawa
e73dbb89f4 Bug 1743623 - Part 4: Stop registering callback for worker override. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D133978
2022-01-11 15:55:51 +00:00
Tooru Fujisawa
d0f9c86eba Bug 1743623 - Part 3: Remove worker-specific override from JS GC zeal options. r=dom-worker-reviewers,smaug
Also fixed the case of the preference name (gcZeal => gczeal).

Differential Revision: https://phabricator.services.mozilla.com/D133977
2022-01-11 15:55:51 +00:00
Tooru Fujisawa
c100751513 Bug 1743623 - Part 2: Remove worker-specific override from JS GC memory options. r=dom-worker-reviewers,smaug
Differential Revision: https://phabricator.services.mozilla.com/D133976
2022-01-11 15:55:50 +00:00
Tooru Fujisawa
334acce369 Bug 1743623 - Part 1: Remove worker-specific override from JS context options. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D133975
2022-01-11 15:55:50 +00:00
criss
64df8411ef Backed out 5 changesets (bug 1743623) for causing hybrid bustages on RuntimeService. CLOSED TREE
Backed out changeset f671659046b1 (bug 1743623)
Backed out changeset 2f2368b8f931 (bug 1743623)
Backed out changeset 51820e97c1eb (bug 1743623)
Backed out changeset 824c5cd5ea17 (bug 1743623)
Backed out changeset cee175fa09e7 (bug 1743623)
2022-01-11 15:31:35 +02:00
Tooru Fujisawa
f43730f92b Bug 1743623 - Part 4: Stop registering callback for worker override. r=jandem
Depends on D133977

Differential Revision: https://phabricator.services.mozilla.com/D133978
2022-01-11 12:03:55 +00:00
Tooru Fujisawa
2f0ea208f1 Bug 1743623 - Part 3: Remove worker-specific override from JS GC zeal options. r=dom-worker-reviewers,smaug
Also fixed the case of the preference name (gcZeal => gczeal).

Differential Revision: https://phabricator.services.mozilla.com/D133977
2022-01-11 12:03:54 +00:00
Tooru Fujisawa
be0c80b96a Bug 1743623 - Part 2: Remove worker-specific override from JS GC memory options. r=dom-worker-reviewers,smaug
Differential Revision: https://phabricator.services.mozilla.com/D133976
2022-01-11 12:03:54 +00:00
Tooru Fujisawa
05784d7f5c Bug 1743623 - Part 1: Remove worker-specific override from JS context options. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D133975
2022-01-11 12:03:54 +00:00
Norisz Fay
5edb88e27a Backed out 9 changesets (bug 1744025) for causing wpt failures on CheckedUnsafePtr.h CLOSED TREE
Backed out changeset 89dca4fc5940 (bug 1744025)
Backed out changeset 7aa395dcdbe4 (bug 1744025)
Backed out changeset 1580a4ea1a85 (bug 1744025)
Backed out changeset af171636a87f (bug 1744025)
Backed out changeset a5edfa1c9cd6 (bug 1744025)
Backed out changeset 8abd6ba69815 (bug 1744025)
Backed out changeset cfb822df5b3f (bug 1744025)
Backed out changeset 5598943a94fd (bug 1744025)
Backed out changeset 43186fbbf8b4 (bug 1744025)
2021-12-15 18:46:01 +02:00
Eden Chuang
4146950108 Bug 1744025 - Replace include "mozilla/dom/WorkerPrivate.h" with include "mozilla/dom/WorkerScope.h" where WorkerPrivate->GlobalScope() is called. r=dom-worker-reviewers,smaug,jstutte
#include "mozilla/dom/WorkerScope.h" is removed from WorkerPrivate.h, where calling WorkerPrivate::GlobalScope() without include "WorkerScope.h" makes WorkerScope as an incomplete type.


Depends on 132800

Depends on D132800

Differential Revision: https://phabricator.services.mozilla.com/D133483
2021-12-15 13:48:19 +00:00
Jens Stutte
90e24ac4f9 Bug 1744025: Use CheckedUnsafePtr<WorkerPrivate> in WorkerPrivate where possible. r=dom-worker-reviewers,asuth
Depends on D132709

Differential Revision: https://phabricator.services.mozilla.com/D132710
2021-12-15 13:48:17 +00:00
Emilio Cobos Álvarez
5f018982cf Bug 1745428 - Make dom.maxHardwareConcurrency not require a restart. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D133484
2021-12-10 18:42:06 +00:00
Sandor Molnar
68afd87d02 Backed out 8 changesets (bug 1744025) for causing bp-hybrid bustages in dom/clients/api/Clients.cpp. CLOSED TREE
Backed out changeset b6452430763d (bug 1744025)
Backed out changeset 46e9f06636da (bug 1744025)
Backed out changeset 913cdee4824f (bug 1744025)
Backed out changeset e1bc4e2066c7 (bug 1744025)
Backed out changeset e6b99af4b7ca (bug 1744025)
Backed out changeset e9b749f80ec2 (bug 1744025)
Backed out changeset 26d3176a00ef (bug 1744025)
Backed out changeset 2c8941fdcee5 (bug 1744025)
2021-12-08 01:30:06 +02:00
Jens Stutte
07505034ba Bug 1744025: Use CheckedUnsafePtr<WorkerPrivate> in WorkerPrivate where possible. r=dom-worker-reviewers,asuth
Differential Revision: https://phabricator.services.mozilla.com/D132710
2021-12-07 16:47:15 +00:00
Tooru Fujisawa
55e4cd7d71 Bug 1743223 - Add xpc::SetPrefableContextOptions to share JS::Contextoptions handling between main thread and workers. r=jandem
Differential Revision: https://phabricator.services.mozilla.com/D132331
2021-11-29 08:46:29 +00:00
Lars T Hansen
e7af33f689 Bug 1742790 - Make WasmFeatures more flexible. r=rhunt
Introduce a TENTATIVE state for a feature that allows the shell flags
to be used more flexibly: the feature is enabled bug --wasm-whatever
can be used as a no-op.  This helps reduce breakage while we're in the
process of enabling a feature by default.

Finesse the EXPERIMENTAL state so that --no-wasm-whatever is accepted
as a no-op.

Differential Revision: https://phabricator.services.mozilla.com/D132017
2021-11-24 19:31:55 +00:00
Steve Fink
436b3f12a2 Bug 1732161 - Track CCReason for all cycle collections (replacing ccType) r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D126395
2021-10-14 18:15:40 +00:00
criss
0ecd4a450b Backed out 6 changesets (bug 1732161) for causing linux base toolchains bustages. CLOSED TREE
Backed out changeset 766a1bc74001 (bug 1732161)
Backed out changeset aed63de28354 (bug 1732161)
Backed out changeset 98eaff0d5124 (bug 1732161)
Backed out changeset 76c21ec8ffb6 (bug 1732161)
Backed out changeset 49dcac272f05 (bug 1732161)
Backed out changeset 67d81f8f413e (bug 1732161)
2021-10-14 05:38:08 +03:00
Steve Fink
0457cf4744 Bug 1732161 - Track CCReason for all cycle collections (replacing ccType) r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D126395
2021-10-13 22:32:59 +00:00
Narcis Beleuzu
a92083a114 Backed out 6 changesets (bug 1732161) for build bustages on nsCycleCollectionParticipant.h CLOSED TREE
Backed out changeset 7271b938e71a (bug 1732161)
Backed out changeset d24b8450b7ed (bug 1732161)
Backed out changeset fb1838a152f2 (bug 1732161)
Backed out changeset 84787a58a428 (bug 1732161)
Backed out changeset 6acb82c0ac3c (bug 1732161)
Backed out changeset 50d17b172185 (bug 1732161)
2021-10-12 07:13:13 +03:00
Steve Fink
8db934daff Bug 1732161 - Track CCReason for all cycle collections (replacing ccType) r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D126395
2021-10-11 21:39:08 +00:00
Butkovits Atila
2ff5314530 Backed out 6 changesets (bug 1732161) for causing assertion failures in CCGCScheduler.h. CLOSED TREE
Backed out changeset 88dbe1a7478c (bug 1732161)
Backed out changeset a5a2c9c53340 (bug 1732161)
Backed out changeset d83b36b92051 (bug 1732161)
Backed out changeset b339e54078d7 (bug 1732161)
Backed out changeset 0cbf901cab8b (bug 1732161)
Backed out changeset b3e894d590d9 (bug 1732161)
2021-10-05 03:47:08 +03:00
Steve Fink
7e1eb8957d Bug 1732161 - Track CCReason for all cycle collections (replacing ccType) r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D126395
2021-10-04 23:06:08 +00:00