If you think a bug might affect users in the 57 release, please set the correct tracking and status flags for Release Management.

GC: Don't trace additional roots from the embedding on minor GC

RESOLVED FIXED in mozilla26

Status

()

Core
JavaScript Engine
RESOLVED FIXED
4 years ago
4 years ago

People

(Reporter: jonco, Assigned: jonco)

Tracking

unspecified
mozilla26
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Assignee)

Description

4 years ago
Created attachment 789658 [details] [diff] [review]
dont-trace-browser

We don't want or need to trace the browser roots on a minor GC.
(Assignee)

Updated

4 years ago
Attachment #789658 - Flags: review?(wmccloskey)
Comment on attachment 789658 [details] [diff] [review]
dont-trace-browser

Review of attachment 789658 [details] [diff] [review]:
-----------------------------------------------------------------

::: js/src/gc/RootMarking.cpp
@@ +752,3 @@
>      if (!rt->isHeapMinorCollecting()) {
>          /*
>           * All JSCompartment::mark does is mark the globals for compartements

Just noticed this--could you fix the spelling in "compartements"?

@@ +760,2 @@
>  
> +        /* The embedding can register additional roots here. */

Could you make a comment about why we don't need to mark these roots during minor GC? It looks like they're all in the store buffer. Nice job on all the Heap<> work!
Attachment #789658 - Flags: review?(wmccloskey) → review+
(Assignee)

Comment 2

4 years ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/5d04a4f5ff6f

Comment 3

4 years ago
https://hg.mozilla.org/mozilla-central/rev/5d04a4f5ff6f
Status: ASSIGNED → RESOLVED
Last Resolved: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla26
You need to log in before you can comment on or make changes to this bug.