Add even _more_ ClearDocumentDependentSlots crash instrumentation

RESOLVED FIXED in Firefox 65

Status

()

enhancement
RESOLVED FIXED
10 months ago
5 months ago

People

(Reporter: bzbarsky, Assigned: bzbarsky)

Tracking

(Blocks 2 bugs)

Trunk
mozilla65
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox65 fixed)

Details

Attachments

(1 attachment)

What I'm seeing is us failing to allocate objects, but for no good reason... :(
Assignee: nobody → bzbarsky
Status: NEW → ASSIGNED
I actually hit one of these crashes on my Windows machine at home. Sadly I could not reproduce it.
Comment on attachment 9019529 [details] [diff] [review]
Add instrumentation to figure out why Document.prototype creation is failing

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

::: dom/bindings/Codegen.py
@@ +2973,4 @@
>          # if we don't need to create anything, why are we generating this?
>          assert needInterfaceObject or needInterfacePrototypeObject
>  
> +        def maybecrash(reason):

Should this be "maybeCrash"? I don't know what the Python style is in this file. Also a name like "crashIfDocument" would be more descriptive. On the other hand, it would be less adaptable if you need to add yet more checks later.

@@ +2974,5 @@
>          assert needInterfaceObject or needInterfacePrototypeObject
>  
> +        def maybecrash(reason):
> +            if self.descriptor.name == "Document":
> +                return 'MOZ_CRASH("%s");\n' % reason

Should the bug number go in here?
Attachment #9019529 - Flags: review?(continuation) → review+
> Should this be "maybeCrash"?

Then I couldn't use "maybeCrash" for the variable name.

> Should the bug number go in here?

Yeah, I guess that's a good idea.  At this point I'm just querying for crash reports with ClearDocumentDepemdentSlots in the stack, but having the bug# in there is good.
Pushed by bzbarsky@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/f7910a01b533
Add instrumentation to figure out why Document.prototype creation is failing.  r=mccr8
https://hg.mozilla.org/mozilla-central/rev/f7910a01b533
Status: ASSIGNED → RESOLVED
Closed: 10 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla65
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.