Closed
Bug 929151
Opened 11 years ago
Closed 11 years ago
InitialShapeTable hash depends on movable object address
Categories
(Core :: JavaScript Engine, defect)
Core
JavaScript Engine
Tracking
()
RESOLVED
FIXED
mozilla27
People
(Reporter: sfink, Assigned: sfink)
References
Details
Attachments
(1 file)
(deleted),
patch
|
terrence
:
review+
|
Details | Diff | Splinter Review |
The InitialShapeTable uses a Lookup with an optional 'metadata' field, which may be nursery-allocated. If that moves, the entry will become unfindable.
Assignee | ||
Comment 1•11 years ago
|
||
It seems kind of gross to be calling out to jsfriendapi from jscompartment.cpp. Perhaps I should move the DisableGenerational thing somewhere else.
Attachment #819991 -
Flags: review?(terrence)
Comment 2•11 years ago
|
||
Comment on attachment 819991 [details] [diff] [review]
Disable GGC when object metadata is used
Review of attachment 819991 [details] [diff] [review]:
-----------------------------------------------------------------
r=me
::: js/src/jscompartment.cpp
@@ +630,5 @@
> +
> + // Turn off GGC to prevent nursery-allocated metadata from being used
> + // as a lookup key in InitialShapeTable entries.
> + if (callback)
> + JS::DisableGenerationalGC(runtime_);
I guess it's trivial enough that we should probably also allow full removal of the callback:
else
JS::EnableGenerationalGC(runtime_);
@@ +631,5 @@
> + // Turn off GGC to prevent nursery-allocated metadata from being used
> + // as a lookup key in InitialShapeTable entries.
> + if (callback)
> + JS::DisableGenerationalGC(runtime_);
> + objectMetadataCallback = callback;
Lets put a line break above the assignment so that this looks like 3 discreet actions.
Attachment #819991 -
Flags: review?(terrence) → review+
Assignee | ||
Comment 3•11 years ago
|
||
Comment 4•11 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/fa13474d7b16
https://hg.mozilla.org/mozilla-central/rev/a2622f851534
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla27
You need to log in
before you can comment on or make changes to this bug.
Description
•