Closed
Bug 893890
Opened 13 years ago
Closed 13 years ago
Crash [@ TryAttachCallStub] with setObjectMetadataCallback
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
FIXED
mozilla25
People
(Reporter: decoder, Assigned: bhackett1024)
References
Details
(Keywords: crash, testcase, Whiteboard: [jsbugmon:update])
Crash Data
Attachments
(2 files)
|
400 bytes,
text/plain
|
Details | |
|
1.20 KB,
patch
|
luke
:
review+
|
Details | Diff | Splinter Review |
The following testcase crashes on mozilla-central revision 18467a85acf6 (run with --ion-eager):
function test() {
try {
writeTestCaseResult();
} catch(e) {}
}
function writeTestCaseResult( ) {
return undefined.match(/foo/);
}
setObjectMetadataCallback(function(obj) { test(); });
x();
| Reporter | ||
Comment 1•13 years ago
|
||
| Reporter | ||
Updated•13 years ago
|
Whiteboard: [jsbugmon:update]
Updated•13 years ago
|
Crash Signature: [@ TryAttachCallStub] → [@ TryAttachCallStub]
[@ js::ion::TryAttachCallStub]
| Reporter | ||
Comment 2•13 years ago
|
||
Needinfo from Brian because setObjectMetadataCallback is involved.
Flags: needinfo?(bhackett1024)
| Assignee | ||
Comment 5•13 years ago
|
||
Bad things happen when we reenter JS while parsing/emitting scripts.
Assignee: general → bhackett1024
Attachment #781836 -
Flags: review?(luke)
Flags: needinfo?(bhackett1024)
Updated•13 years ago
|
Attachment #781836 -
Flags: review?(luke) → review+
| Assignee | ||
Comment 6•13 years ago
|
||
Comment 7•13 years ago
|
||
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla25
Updated•13 years ago
|
status-firefox24:
--- → affected
Updated•13 years ago
|
Crash Signature: [@ TryAttachCallStub]
[@ js::ion::TryAttachCallStub] → [@ TryAttachCallStub]
[@ js::ion::TryAttachCallStub]
[@ js::FunctionToString(JSContext*, JS::Handle<JSFunction*>, bool, bool)]
Comment 8•13 years ago
|
||
It's #2 top crasher in 24.0a2 on Mac OS X.
tracking-firefox24:
--- → ?
Keywords: topcrash
| Assignee | ||
Comment 9•13 years ago
|
||
setObjectMetadataCallback is a debugging hook which is not yet exposed to the browser at all.
| Reporter | ||
Comment 10•13 years ago
|
||
(In reply to Brian Hackett (:bhackett) from comment #9)
> setObjectMetadataCallback is a debugging hook which is not yet exposed to
> the browser at all.
Isn't it still possible that this bug is triggered also without setObjectMetadataCallback, just that the fuzzer hasn't found this case? (because it might be more complex).
| Assignee | ||
Comment 11•13 years ago
|
||
(In reply to Christian Holler (:decoder) from comment #10)
> (In reply to Brian Hackett (:bhackett) from comment #9)
> > setObjectMetadataCallback is a debugging hook which is not yet exposed to
> > the browser at all.
>
> Isn't it still possible that this bug is triggered also without
> setObjectMetadataCallback, just that the fuzzer hasn't found this case?
> (because it might be more complex).
Well, this bug is about crashes that can happen when reentering JS in the parser/emitter. This shouldn't be possible but could in principle happen. It could be prevented entirely (we already do something similar when doing analysis/compilation) but it would be good to know if that is actually the culprit with these OS X (OS X only?) crashes. Scoobidiver, can you point to some crash reports? If the stack information is good enough it should be easy to see what's going on from them.
Comment 12•13 years ago
|
||
(In reply to Brian Hackett (:bhackett) from comment #11)
> Scoobidiver, can you point to some crash reports?
Here they are: https://crash-stats.mozilla.com/report/list?product=Firefox&signature=js%3A%3AFunctionToString%28JSContext*%2C+JS%3A%3AHandle%3CJSFunction*%3E%2C+bool%2C+bool%29
| Assignee | ||
Comment 13•13 years ago
|
||
(In reply to Scoobidiver from comment #12)
> (In reply to Brian Hackett (:bhackett) from comment #11)
> > Scoobidiver, can you point to some crash reports?
> Here they are:
> https://crash-stats.mozilla.com/report/
> list?product=Firefox&signature=js%3A%3AFunctionToString%28JSContext*%2C+JS%3A
> %3AHandle%3CJSFunction*%3E%2C+bool%2C+bool%29
This looks like a different issue, none of the crashes I see have parsing stuff on the stack. All of them are NULL derefs under jsdScript::GetFunctionSource but it's not really obvious from the stacks which pointer is NULL.
Updated•13 years ago
|
You need to log in
before you can comment on or make changes to this bug.
Description
•