Closed
Bug 885648
Opened 11 years ago
Closed 11 years ago
Assertion failure: [barrier verifier] Unmarked edge: Generator Floating Stack, at gc/Verifier.cpp:572
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
VERIFIED
FIXED
mozilla25
Tracking | Status | |
---|---|---|
firefox23 | --- | unaffected |
firefox24 | --- | fixed |
firefox25 | --- | fixed |
firefox-esr17 | --- | unaffected |
b2g18 | --- | unaffected |
People
(Reporter: decoder, Assigned: jandem)
References
Details
(4 keywords, Whiteboard: [jsbugmon:update])
Attachments
(2 files)
(deleted),
text/plain
|
Details | |
(deleted),
patch
|
terrence
:
review+
bajaj
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
The following testcase asserts on mozilla-central revision 83aa31ec53d9 (no options required):
gczeal(4,1);
var iterable = { persistedProp: 17 };
var keys = ["foo", "bar", "baz"];
var vals = [6, 5, 14];
iterable.__iterator__ = function(keysOnly) {
for (var i = 0; i < keys.length; i++)
yield [keys[i], vals[i]];
};
var it = Iterator(iterable);
while (true) {
var nextVal = it.next();
}
Reporter | ||
Comment 1•11 years ago
|
||
Reporter | ||
Comment 2•11 years ago
|
||
Marked s-s until investigated because it's GC-related.
Whiteboard: [jsbugmon:update,bisect]
Reporter | ||
Updated•11 years ago
|
Whiteboard: [jsbugmon:update,bisect] → [jsbugmon:update]
Reporter | ||
Comment 3•11 years ago
|
||
JSBugMon: Bisection requested, result:
autoBisect shows this is probably related to the following changeset:
The first bad revision is:
changeset: http://hg.mozilla.org/mozilla-central/rev/3efe3f3d2c25
user: Jan de Mooij
date: Wed Jun 19 19:10:04 2013 +0200
summary: Bug 882111 - Don't push an interpreter frame when calling into the JITs. r=djvj
This iteration took 333.917 seconds to run.
Assignee | ||
Comment 5•11 years ago
|
||
(In reply to Gary Kwong [:gkw] [:nth10sd] from comment #4)
> jandem, is bug 882111 likely related?
Totally, I knew it was bug 882111 when I saw the title. Floating generator frames are a pain. I will look into this soon.
Assignee: general → jdemooij
Status: NEW → ASSIGNED
Assignee | ||
Comment 6•11 years ago
|
||
Need a pre-barrier when writing to the generator's stack.
Attachment #767117 -
Flags: review?(terrence)
Flags: needinfo?(jdemooij)
Assignee | ||
Comment 7•11 years ago
|
||
(The patch also removes an outdated comment: we no longer push generators back on the stack after they've been copied to the heap.)
Comment 8•11 years ago
|
||
Comment on attachment 767117 [details] [diff] [review]
Patch
Review of attachment 767117 [details] [diff] [review]:
-----------------------------------------------------------------
r=me
::: js/src/jsiter.cpp
@@ +1562,1 @@
> gen->regs.sp[-1] = arg;
I think we probably also need a post barrier after the write.
HeapValue::writeBarrierPost(cx->runtime, gen->regs.sp[-1], &gen->regs.sp[-1]);
Attachment #767117 -
Flags: review?(terrence) → review+
Assignee | ||
Comment 9•11 years ago
|
||
Assignee | ||
Updated•11 years ago
|
status-firefox24:
--- → affected
status-firefox25:
--- → affected
Assignee | ||
Comment 10•11 years ago
|
||
Comment on attachment 767117 [details] [diff] [review]
Patch
[Approval Request Comment]
Bug caused by (feature/regressing bug #): Bug 882111
User impact if declined: Crashes, security bugs
Testing completed (on m-c, etc.): On m-i
Risk to taking this patch (and alternatives if risky): Very low
String or IDL/UUID changes made by this patch: None
Attachment #767117 -
Flags: approval-mozilla-aurora?
Comment 11•11 years ago
|
||
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Flags: in-testsuite+
Resolution: --- → FIXED
Target Milestone: --- → mozilla25
Updated•11 years ago
|
Attachment #767117 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Comment 12•11 years ago
|
||
Reporter | ||
Updated•11 years ago
|
Status: RESOLVED → VERIFIED
Reporter | ||
Comment 13•11 years ago
|
||
JSBugMon: This bug has been automatically verified fixed.
Updated•11 years ago
|
status-firefox23:
--- → unaffected
Updated•11 years ago
|
Blocks: 882111
status-b2g18:
--- → unaffected
status-firefox-esr17:
--- → unaffected
Keywords: regression
Updated•11 years ago
|
Group: core-security
You need to log in
before you can comment on or make changes to this bug.
Description
•