Commit Graph

1354 Commits

Author SHA1 Message Date
Tooru Fujisawa
0986662ce6 Bug 1708448 - Move property and element functions into js/public/PropertyAndElement.h. r=nbp
Differential Revision: https://phabricator.services.mozilla.com/D119619
2021-07-13 11:52:42 +00:00
Paul Bone
48ce58acca Bug 1718184 - pt 3. Use TimeDuration more in CCGCScheduler r=nika
Differential Revision: https://phabricator.services.mozilla.com/D118793
2021-07-13 01:42:32 +00:00
Paul Bone
a214e3130a Bug 1703443 - pt 14. Pass aSuspectedCCObjects into CC scheduling code r=smaug
Pass this value in also and remove the need for duplicate inlined
definitions between Firefox and gtest.

Differential Revision: https://phabricator.services.mozilla.com/D119363
2021-07-09 07:14:15 +00:00
Paul Bone
6e403ba4c1 Bug 1703443 - pt 13. Pass in the now timestamp as a parameter r=smaug
By passing this as a parameter we can remove the duplicated Now() procedure.

Differential Revision: https://phabricator.services.mozilla.com/D119362
2021-07-09 07:14:15 +00:00
Paul Bone
712eabb890 Bug 1703443 - pt 12. Call KillAllTimersAndRunners from Shutdown() r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118697
2021-07-09 07:14:14 +00:00
Paul Bone
41cd8493db Bug 1703443 - pt 11. Move the shrinking GC fields and logic into CCGCScheduler r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118696
2021-07-09 07:14:14 +00:00
Paul Bone
0233c8d36d Bug 1703443 - pt 8. Factor out some common code r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118343
2021-07-09 07:14:13 +00:00
Paul Bone
223709711d Bug 1703443 - pt 7. Make GC/CC runners private to CCGCScheduler and move more code r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118342
2021-07-09 07:14:13 +00:00
Paul Bone
71789bac65 Bug 1703443 - pt 6. Move RunNextCollectorTimer() into CCGCScheduler r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118341
2021-07-09 07:14:12 +00:00
Paul Bone
7a8f52de5b Bug 1703443 - pt 5. Move KillTimers code into CCGCScheduler r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118340
2021-07-09 07:14:12 +00:00
Paul Bone
49f7f98cb1 Bug 1703443 - pt 4. Move the CC runner into CCGCScheduler r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118339
2021-07-09 07:14:11 +00:00
Paul Bone
c89eb3ed69 Bug 1703443 - pt 3. Move GC scheduling code into CCGCScheduler r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118338
2021-07-09 07:14:11 +00:00
Paul Bone
47b559263a Bug 1703443 - pt 1. Tell the CCGCScheduler that we're shutting down r=smaug
Set the shutdown flag in both shutdown cases.

Differential Revision: https://phabricator.services.mozilla.com/D118336
2021-07-09 07:14:10 +00:00
Brindusan Cristian
f1320193b7 Backed out 13 changesets (bug 1703443) for causing GTest failures.
CLOSED TREE

Backed out changeset 5b2b19d5a0a2 (bug 1703443)
Backed out changeset 589311f587ce (bug 1703443)
Backed out changeset e8c6a26493b4 (bug 1703443)
Backed out changeset c602e39f64fd (bug 1703443)
Backed out changeset 8e6c4e4c5429 (bug 1703443)
Backed out changeset f55e0c5e710f (bug 1703443)
Backed out changeset 251a9a597c91 (bug 1703443)
Backed out changeset 341dd4d5b370 (bug 1703443)
Backed out changeset 11ccf870e643 (bug 1703443)
Backed out changeset 39bd5b2ec9e0 (bug 1703443)
Backed out changeset 5a900829cbd1 (bug 1703443)
Backed out changeset 7e2c90da4fbb (bug 1703443)
Backed out changeset 742f1dc1612f (bug 1703443)
2021-06-25 10:22:03 +03:00
Paul Bone
268950b8f5 Bug 1703443 - pt 11. Call KillAllTimersAndRunners from Shutdown() r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118697
2021-06-25 02:47:19 +00:00
Paul Bone
97af08f07d Bug 1703443 - pt 11. Move the shrinking GC fields and logic into CCGCScheduler r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118696
2021-06-25 02:47:19 +00:00
Paul Bone
d0382920c6 Bug 1703443 - pt 8. Factor out some common code r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118343
2021-06-25 02:47:17 +00:00
Paul Bone
810bd75ac6 Bug 1703443 - pt 7. Make GC/CC runners private to CCGCScheduler and move more code r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118342
2021-06-25 02:47:17 +00:00
Paul Bone
50c5a8dba3 Bug 1703443 - pt 6. Move RunNextCollectorTimer() into CCGCScheduler r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118341
2021-06-25 02:47:17 +00:00
Paul Bone
e6610777ec Bug 1703443 - pt 5. Move KillTimers code into CCGCScheduler r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118340
2021-06-25 02:47:16 +00:00
Paul Bone
ae48f61449 Bug 1703443 - pt 4. Move the CC runner into CCGCScheduler r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118339
2021-06-25 02:47:16 +00:00
Paul Bone
67d3b26dce Bug 1703443 - pt 3. Move GC scheduling code into CCGCScheduler r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D118338
2021-06-25 02:47:15 +00:00
Paul Bone
80ceda2650 Bug 1703443 - pt 1. Tell the CCGCScheduler that we're shutting down r=smaug
Set the shutdown flag in both shutdown cases.

Differential Revision: https://phabricator.services.mozilla.com/D118336
2021-06-25 02:47:15 +00:00
Paul Bone
7315ef250d Bug 1715705 - Ask the parent before doing a MEMORY_PRESSURE GC r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D117396
2021-06-15 23:17:05 +00:00
Marian-Vasile Laza
9ac3766f71 Backed out changeset 7729e9dfb60a (bug 1715705) for causing failures in browser_bug1204626.js
CLOSED TREE
2021-06-11 12:12:52 +03:00
Paul Bone
9e61b4a2e9 Bug 1715705 - Ask the parent before doing a MEMORY_PRESSURE GC r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D117396
2021-06-11 05:47:48 +00:00
Steve Fink
d679aa98f2 Bug 1711135 - Make GC slice reasons better reflect why they were triggered. r=smaug,jonco
Differential Revision: https://phabricator.services.mozilla.com/D115100
2021-06-02 14:07:18 +00:00
Andi-Bogdan Postelnicu
f31af9e79e Bug 1519636 - Reformat recent changes to the Google coding style. r=emilio
Updated with clang-format version 12.0.0 (taskcluster-KEgO7qdgQ8uaewA6NkRnRA)

Differential Revision: https://phabricator.services.mozilla.com/D115804
2021-05-24 15:08:47 +00:00
Steve Fink
1a4ec42768 Bug 1711128 - Eliminate (rare) spurious GCs if we start and finish a new GC while waiting r=pbone,smaug
for a response from the parent. Before this patch, when the response arrived
from the parent we would unconditionally create a GCRunner and use the GCReason...

...remembered from when we made the request to the parent.

Differential Revision: https://phabricator.services.mozilla.com/D115098
2021-05-19 23:26:17 +00:00
Steve Fink
8db152a429 Bug 1711128 - Revert to pre-1692308 GCReason handling r=pbone,smaug
Bug 1692308 made some changes to how GCReasons are reported.

Previously, the reasons reported for slices depended on how the GC was
triggered: internally triggered GCs would have the internal reason for their
first slice and INTER_SLICE_GC for every later slice. PokeGC-triggered GCs
would use the PokeGC reason for *all* slices. (Or if RunNextCollectorTimer was
called before the GC began, its reason would get swapped in for the PokeGC
one.)

After bug 1692308, INTER_SLICE_GC was used for all non-initial slices. This
change wasn't entirely intentional (part of it was).

This patch reverts to the previous behavior, and in so doing adjusts the use of
sScheduler.mMajorGCReason (it maintains the reason that we want to use for
later slices, rather than clearing it when we get the go-ahead from the
parent.)

Note that this handling of GCReasons is intended to be temporary. I want to fix
it properly in a later bug.

Differential Revision: https://phabricator.services.mozilla.com/D115096
2021-05-19 23:26:17 +00:00
Steve Fink
f67d79c1e7 Bug 1711128 - Rename GCRunnerActions: <MajorGC,MajorGCReady> -> <WaitToMajorGC, StartMajorGC> r=pbone,smaug
Differential Revision: https://phabricator.services.mozilla.com/D115095
2021-05-19 23:26:17 +00:00
Steve Fink
673c5ffeca Bug 1711128 - Slightly simplify code for waiting for parent to let us GC r=pbone,smaug
Differential Revision: https://phabricator.services.mozilla.com/D115094
2021-05-19 23:26:16 +00:00
Paul Bone
6f68579a82 Bug 1710988 - Apply linter fixes to nsDOMWindowUtils.cpp r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D115327
2021-05-19 02:47:59 +00:00
Iulian Moraru
8edfa41b66 Backed out 4 changesets (bug 1711128) for causing bc failures on browser_gc_schedule.js. CLOSED TREE
Backed out changeset efb23924bb9c (bug 1711128)
Backed out changeset a686a2053da4 (bug 1711128)
Backed out changeset 64242f7debd4 (bug 1711128)
Backed out changeset f555b85f8338 (bug 1711128)
2021-05-18 21:23:55 +03:00
Steve Fink
708c706158 Bug 1711128 - Eliminate (rare) spurious GCs if we start and finish a new GC while waiting r=pbone,smaug
for a response from the parent. Before this patch, when the response arrived
from the parent we would unconditionally create a GCRunner and use the GCReason...

...remembered from when we made the request to the parent.

Differential Revision: https://phabricator.services.mozilla.com/D115098
2021-05-18 16:43:39 +00:00
Steve Fink
1ee36361f2 Bug 1711128 - Revert to pre-1692308 GCReason handling r=pbone,smaug
Bug 1692308 made some changes to how GCReasons are reported.

Previously, the reasons reported for slices depended on how the GC was
triggered: internally triggered GCs would have the internal reason for their
first slice and INTER_SLICE_GC for every later slice. PokeGC-triggered GCs
would use the PokeGC reason for *all* slices. (Or if RunNextCollectorTimer was
called before the GC began, its reason would get swapped in for the PokeGC
one.)

After bug 1692308, INTER_SLICE_GC was used for all non-initial slices. This
change wasn't entirely intentional (part of it was).

This patch reverts to the previous behavior, and in so doing adjusts the use of
sScheduler.mMajorGCReason (it maintains the reason that we want to use for
later slices, rather than clearing it when we get the go-ahead from the
parent.)

Note that this handling of GCReasons is intended to be temporary. I want to fix
it properly in a later bug.

Differential Revision: https://phabricator.services.mozilla.com/D115096
2021-05-18 16:43:38 +00:00
Steve Fink
1e626b762d Bug 1711128 - Rename GCRunnerActions: <MajorGC,MajorGCReady> -> <WaitToMajorGC, StartMajorGC> r=pbone,smaug
Differential Revision: https://phabricator.services.mozilla.com/D115095
2021-05-18 16:43:38 +00:00
Steve Fink
175ef4bf70 Bug 1711128 - Slightly simplify code for waiting for parent to let us GC r=pbone,smaug
Differential Revision: https://phabricator.services.mozilla.com/D115094
2021-05-18 16:43:38 +00:00
Paul Bone
3ced21f337 Bug 1629064 - pt 9. Use the current idle slice to start the GC if we can r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D110378
2021-05-12 06:46:11 +00:00
Paul Bone
877289c1e8 Bug 1629064 - pt 2. nsJSEnvironment will ask the parent if it can GC r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D100858
2021-05-12 06:46:08 +00:00
Jon Coppeard
eaf530438b Bug 1709849 - Replace use of JSGCInvocationKind with JS::GCOptions in the browser r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D114512
2021-05-07 07:39:50 +00:00
Steve Fink
ec900623ef Bug 1692308 - Merge sGCTimer + sInterSliceGCRunner -> sGCRunner
Differential Revision: https://phabricator.services.mozilla.com/D104881
2021-04-29 23:12:04 +00:00
Ryan VanderMeulen
ca9f14f8e0 Backed out changeset e1fa9dc7464b (bug 1692308) for causing bug 1700313. 2021-03-30 11:35:49 -04:00
Steve Fink
f7de6ff25f Bug 1692308 - Merge sGCTimer + sInterSliceGCRunner -> sGCRunner r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D104881
2021-03-18 23:27:40 +00:00
Bas Schouten
63d8265487 Bug 1698191: Convert IdleTaskRunner to use the TaskController API directly. r=smaug,sfink
Differential Revision: https://phabricator.services.mozilla.com/D108272
2021-03-16 14:39:45 +00:00
Bogdan Tara
eb6d18e183 Backed out changeset 7480579b4348 (bug 1692308) for abouthomecache mochitest failures CLOSED TREE 2021-03-12 23:28:57 +02:00
Steve Fink
e8d1ae6549 Bug 1692308 - Merge sGCTimer + sInterSliceGCRunner -> sGCRunner r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D104881
2021-03-12 18:32:07 +00:00
Steve Fink
569f91b935 Bug 1692308 - Add an initial delay to IdleTaskRunner r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D107504
2021-03-12 06:55:46 +00:00
Steve Fink
41aea53b51 Bug 1696456 - Rename budget to minimumUsefulBudget in IdleTaskRunner r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D107239
2021-03-08 16:27:43 +00:00
Gerald Squelart
f25e1c0093 Bug 1691589 - Reduce reliance on GeckoProfiler.h when only labels (and maybe markers) are needed - r=necko-reviewers,geckoview-reviewers,sg,agi,florian
There are no code changes, only #include changes.
It was a fairly mechanical process: Search for all "AUTO_PROFILER_LABEL", and in each file, if only labels are used, convert "GeckoProfiler.h" into "ProfilerLabels.h" (or just add that last one where needed).
In some files, there were also some marker calls but no other profiler-related calls, in these cases "GeckoProfiler.h" was replaced with both "ProfilerLabels.h" and "ProfilerMarkers.h", which still helps in reducing the use of the all-encompassing "GeckoProfiler.h".

Differential Revision: https://phabricator.services.mozilla.com/D104588
2021-02-16 04:44:19 +00:00