Open Bug 1461789 Opened 3 years ago Updated 2 years ago

Intermittent Assertion failure: param.type.Tag() != nsXPTType::T_JSVAL (JSVals are marked as needing cleanup (even though they don't)), at z:/build/build/src/js/xpconnect/src/XPCWrappedNative.cpp:1778

Categories

(Core :: XPConnect, defect, P3)

defect

Tracking

()

Tracking Status
firefox62 --- affected

People

(Reporter: intermittent-bug-filer, Unassigned)

References

Details

(Keywords: assertion, crash, intermittent-failure, Whiteboard: [retriggered][stockwell unknown])

Filed by: archaeopteryx [at] coole-files.de

https://treeherder.mozilla.org/logviewer.html#?job_id=178564458&repo=try

https://queue.taskcluster.net/v1/task/dRhJjuT6Raq0FGEvq_Yh5Q/runs/0/artifacts/public/logs/live_backing.log

https://hg.mozilla.org/mozilla-central/raw-file/tip/layout/tools/reftest/reftest-analyzer.xhtml#logurl=https://queue.taskcluster.net/v1/task/dRhJjuT6Raq0FGEvq_Yh5Q/runs/0/artifacts/public/logs/live_backing.log&only_show_unexpected=1

Frequent for this central-as-beta simulation on Windows x64 debug.

16:05:19     INFO -  ++DOMWINDOW == 21 (00000137B80D0A00) [pid = 552] [serial = 21] [outer = 0000000000000000]
16:05:19     INFO -  ++DOMWINDOW == 22 (00000137B8049000) [pid = 552] [serial = 22] [outer = 00000137B80D0A00]
16:05:19     INFO -  Assertion failure: param.type.Tag() != nsXPTType::T_JSVAL (JSVals are marked as needing cleanup (even though they don't)), at z:/build/build/src/js/xpconnect/src/XPCWrappedNative.cpp:1778
16:05:27     INFO -  #01: static void TraceStackRoots(class JSTracer *, class mozilla::EnumeratedArray<enum JS::RootKind,14,JS::Rooted<void *> *> & const) [js/src/gc/RootMarking.cpp:71]
16:05:27     INFO -  #02: js::gc::GCRuntime::traceRuntimeCommon(JSTracer *,js::gc::GCRuntime::TraceOrMarkRuntime,js::gc::AutoTraceSession &) [js/src/gc/RootMarking.cpp:335]
16:05:27     INFO -  #03: js::Nursery::doCollection(JS::gcreason::Reason,js::gc::TenureCountCache &) [js/src/gc/Nursery.cpp:893]
16:05:27     INFO -  #04: js::Nursery::collect(JS::gcreason::Reason) [js/src/gc/Nursery.cpp:739]
16:05:27     INFO -  #05: js::gc::GCRuntime::minorGC(JS::gcreason::Reason,js::gcstats::PhaseKind) [js/src/gc/GC.cpp:7827]
16:05:27     INFO -  #06: js::gc::GCRuntime::gcIfRequested() [js/src/gc/GC.cpp:7873]
16:05:27     INFO -  #07: js::gc::GCRuntime::gcIfNeededAtAllocation(JSContext *) [js/src/gc/Allocator.cpp:323]
16:05:27     INFO -  #08: js::gc::GCRuntime::checkAllocatorState<1>(JSContext *,js::gc::AllocKind) [js/src/gc/Allocator.cpp:273]
16:05:27     INFO -  #09: js::Allocate<JSObject,1>(JSContext *,js::gc::AllocKind,unsigned __int64,js::gc::InitialHeap,js::Class const *) [js/src/gc/Allocator.cpp:52]
16:05:27     INFO -  #10: js::NativeObject::create(JSContext *,js::gc::AllocKind,js::gc::InitialHeap,JS::Handle<js::Shape *>,JS::Handle<js::ObjectGroup *>) [js/src/vm/NativeObject-inl.h:537]
16:05:27     INFO -  #11: static class JSObject * NewObject(struct JSContext *, class JS::Handle<js::ObjectGroup *>, js::gc::AllocKind, js::NewObjectKind, unsigned int) [js/src/vm/JSObject.cpp:747]
16:05:27     INFO -  #12: js::NewObjectWithGivenTaggedProto(JSContext *,js::Class const *,JS::Handle<js::TaggedProto>,js::gc::AllocKind,js::NewObjectKind,unsigned int) [js/src/vm/JSObject.cpp:808]
16:05:27     INFO -  #13: js::NewObjectWithGivenProto(JSContext *,js::Class const *,JS::Handle<JSObject *>,js::NewObjectKind) [js/src/vm/JSObject-inl.h:655]
16:05:27     INFO -  #14: JS_NewObjectWithGivenProto(JSContext *,JSClass const *,JS::Handle<JSObject *>) [js/src/jsapi.cpp:2014]
16:05:27     INFO -  #15: XPCWrappedNative::Init(nsIXPCScriptable *) [js/xpconnect/src/XPCWrappedNative.cpp:674]
16:05:27     INFO -  #16: XPCWrappedNative::GetNewOrUsed(xpcObjectHelper &,XPCWrappedNativeScope *,XPCNativeInterface *,XPCWrappedNative * *) [js/xpconnect/src/XPCWrappedNative.cpp:435]
16:05:27     INFO -  #17: XPCConvert::NativeInterface2JSObject(JS::MutableHandle<JS::Value>,xpcObjectHelper &,nsID const *,bool,nsresult *) [js/xpconnect/src/XPCConvert.cpp:915]
16:05:27     INFO -  #18: static nsresult NativeInterface2JSObject(class JS::Handle<JSObject *>, class nsISupports *, class nsWrapperCache *, const struct nsID *, bool, class JS::MutableHandle<JS::Value>) [js/xpconnect/src/nsXPConnect.cpp:591]
16:05:27     INFO -  #19: nsXPConnect::WrapNative(JSContext *,JSObject *,nsISupports *,nsID const &,JSObject * *) [js/xpconnect/src/nsXPConnect.cpp:615]
16:05:27     INFO -  #20: xpc_NewIDObject(JSContext *,JS::Handle<JSObject *>,nsID const &) [js/xpconnect/src/XPCJSID.cpp:765]
16:05:27     INFO -  #21: nsXPCWrappedJSClass::CallQueryInterfaceOnJSObject(JSContext *,JSObject *,nsID const &) [js/xpconnect/src/XPCWrappedJSClass.cpp:243]
16:05:27     INFO -  #22: nsXPCWrappedJSClass::GetRootJSObject(JSContext *,JSObject *) [js/xpconnect/src/XPCWrappedJSClass.cpp:657]
16:05:27     INFO -  #23: nsXPCWrappedJS::GetNewOrUsed(JS::Handle<JSObject *>,nsID const &,nsXPCWrappedJS * *) [js/xpconnect/src/XPCWrappedJS.cpp:339]
16:05:27     INFO -  #24: XPCConvert::JSObject2NativeInterface(void * *,JS::Handle<JSObject *>,nsID const *,nsISupports *,nsresult *) [js/xpconnect/src/XPCConvert.cpp:1024]
16:05:27     INFO -  #25: nsXPConnect::WrapJSAggregatedToNative(nsISupports *,JSContext *,JSObject *,nsID const &,void * *) [js/xpconnect/src/nsXPConnect.cpp:695]
16:05:27     INFO -  #26: nsBindingManager::GetBindingImplementation(nsIContent *,nsID const &,void * *) [dom/xbl/nsBindingManager.cpp:650]
16:05:27     INFO -  #27: mozilla::dom::Element::QueryInterface(nsID const &,void * *) [dom/base/Element.cpp:226]
16:05:27     INFO -  #28: nsStyledElement::QueryInterface(nsID const &,void * *) [dom/base/nsStyledElement.cpp:30]
16:05:27     INFO -  #29: nsXULElement::QueryInterface(nsID const &,void * *) [dom/xul/nsXULElement.cpp:319]
16:05:27     INFO -  #30: XPCConvert::JSObject2NativeInterface(void * *,JS::Handle<JSObject *>,nsID const *,nsISupports *,nsresult *) [js/xpconnect/src/XPCConvert.cpp:1005]
16:05:27     INFO -  #31: XPCConvert::JSData2Native(void *,JS::Handle<JS::Value>,nsXPTType const &,nsID const *,unsigned int,nsresult *) [js/xpconnect/src/XPCConvert.cpp:785]
16:05:27     INFO -  #32: CallMethodHelper::ConvertIndependentParam(unsigned char) [js/xpconnect/src/XPCWrappedNative.cpp:1660]
16:05:27     INFO -  #33: CallMethodHelper::ConvertIndependentParams(bool *) [js/xpconnect/src/XPCWrappedNative.cpp:1557]
16:05:27     INFO -  #34: CallMethodHelper::Call() [js/xpconnect/src/XPCWrappedNative.cpp:1259]
16:05:27     INFO -  #35: XPCWrappedNative::CallMethod(XPCCallContext &,XPCWrappedNative::CallMode) [js/xpconnect/src/XPCWrappedNative.cpp:1232]
16:05:27     INFO -  #36: XPC_WN_CallMethod(JSContext *,unsigned int,JS::Value *) [js/xpconnect/src/XPCWrappedNativeJSOps.cpp:911]
16:05:27     INFO -  #37: js::CallJSNative(JSContext *,bool (*)(JSContext *,unsigned int,JS::Value *),JS::CallArgs const &) [js/src/vm/JSContext-inl.h:280]
16:05:27     INFO -  #38: js::InternalCallOrConstruct(JSContext *,JS::CallArgs const &,js::MaybeConstruct) [js/src/vm/Interpreter.cpp:467]
16:05:27     INFO -  #39: static bool Interpret(struct JSContext *, class js::RunState & const) [js/src/vm/Interpreter.cpp:3086]
16:05:27     INFO -  #40: js::RunScript(JSContext *,js::RunState &) [js/src/vm/Interpreter.cpp:417]
16:05:27     INFO -  #41: js::InternalCallOrConstruct(JSContext *,JS::CallArgs const &,js::MaybeConstruct) [js/src/vm/Interpreter.cpp:489]
16:05:27     INFO -  #42: js::Call(JSContext *,JS::Handle<JS::Value>,JS::Handle<JS::Value>,js::AnyInvokeArgs const &,JS::MutableHandle<JS::Value>) [js/src/vm/Interpreter.cpp:535]
16:05:27     INFO -  #43: JS_CallFunctionValue(JSContext *,JS::Handle<JSObject *>,JS::Handle<JS::Value>,JS::HandleValueArray const &,JS::MutableHandle<JS::Value>) [js/src/jsapi.cpp:2930]
16:05:27     INFO -  #44: nsXBLProtoImplAnonymousMethod::Execute(nsIContent *,nsXBLPrototypeBinding const &) [dom/xbl/nsXBLProtoImplMethod.cpp:330]
16:05:27     INFO -  #45: nsXBLBinding::ExecuteAttachedHandler() [dom/xbl/nsXBLBinding.cpp:633]
16:05:27     INFO -  #46: mozilla::dom::Element::WrapObject(JSContext *,JS::Handle<JSObject *>) [dom/base/Element.cpp:620]
16:05:27     INFO -  #47: mozilla::dom::binding_detail::DoGetOrCreateDOMReflector<mozilla::dom::Element,0>(JSContext *,mozilla::dom::Element *,JS::Handle<JSObject *>,JS::MutableHandle<JS::Value>) [dom/bindings/BindingUtils.h:1090]
16:05:27     INFO -  #48: static bool mozilla::dom::DocumentBinding::getAnonymousElementByAttribute(struct JSContext *, class JS::Handle<JSObject *>, class nsIDocument *, const class JSJitMethodCallArgs & const) [s3:gecko-generated-sources-l1:b2917a44fa9f430239f3b9ddd6889e5175d35da700cff254f68ee4221004984a1270f0c6b8d6660c15eb3b254cff9bb07133a4cbc50b2e08a49a978eb04e7a41/dom/bindings/DocumentBinding.cpp::4631]
16:05:27     INFO -  #49: mozilla::dom::binding_detail::GenericMethod<mozilla::dom::binding_detail::NormalThisPolicy,mozilla::dom::binding_detail::ThrowExceptions>(JSContext *,unsigned int,JS::Value *) [dom/bindings/BindingUtils.cpp:3260]
16:05:27     INFO -  #50: js::CallJSNative(JSContext *,bool (*)(JSContext *,unsigned int,JS::Value *),JS::CallArgs const &) [js/src/vm/JSContext-inl.h:280]
16:05:27     INFO -  #51: js::InternalCallOrConstruct(JSContext *,JS::CallArgs const &,js::MaybeConstruct) [js/src/vm/Interpreter.cpp:467]
16:05:27     INFO -  #52: static bool Interpret(struct JSContext *, class js::RunState & const) [js/src/vm/Interpreter.cpp:3086]
16:05:27     INFO -  #53: js::RunScript(JSContext *,js::RunState &) [js/src/vm/Interpreter.cpp:417]
16:05:27     INFO -  #54: js::ExecuteKernel(JSContext *,JS::Handle<JSScript *>,JSObject &,JS::Value const &,js::AbstractFramePtr,JS::Value *) [js/src/vm/Interpreter.cpp:703]
16:05:27     INFO -  #55: js::Execute(JSContext *,JS::Handle<JSScript *>,JSObject &,JS::Value *) [js/src/vm/Interpreter.cpp:732]
16:05:27     INFO -  #56: static bool ExecuteScript(struct JSContext *, class JS::Handle<JSObject *>, class JS::Handle<JSScript *>, union JS::Value *) [js/src/jsapi.cpp:4744]
16:05:27     INFO -  #57: static bool ExecuteScript(struct JSContext *, class JS::AutoVector<JSObject *> & const, class JS::Handle<JSScript *>, union JS::Value *) [js/src/jsapi.cpp:4763]
16:05:27     INFO -  #58: nsJSUtils::ExecutionContext::CompileAndExec(JS::CompileOptions &,JS::SourceBufferHolder &,JS::MutableHandle<JSScript *>) [dom/base/nsJSUtils.cpp:268]
16:05:27     INFO -  #59: nsJSUtils::ExecutionContext::CompileAndExec(JS::CompileOptions &,nsTSubstring<char16_t> const &) [dom/base/nsJSUtils.cpp:290]
16:05:27     INFO -  #60: nsXBLProtoImplField::InstallField(JS::Handle<JSObject *>,nsXBLPrototypeBinding const &,bool *) [dom/xbl/nsXBLProtoImplField.cpp:441]
16:05:27     INFO -  #61: static bool InstallXBLField(struct JSContext *, class JS::Handle<JSObject *>, class JS::Handle<JSObject *>, class JS::MutableHandle<jsid>, bool *) [dom/xbl/nsXBLProtoImplField.cpp:211]
16:05:27     INFO -  #62: FieldGetterImpl(JSContext *,JS::CallArgs const &) [dom/xbl/nsXBLProtoImplField.cpp:237]
16:05:27     INFO -  #63: static bool FieldGetter(struct JSContext *, unsigned int, union JS::Value *) [dom/xbl/nsXBLProtoImplField.cpp:253]
16:05:27     INFO -  #64: js::CallJSNative(JSContext *,bool (*)(JSContext *,unsigned int,JS::Value *),JS::CallArgs const &) [js/src/vm/JSContext-inl.h:280]
16:05:27     INFO -  #65: js::InternalCallOrConstruct(JSContext *,JS::CallArgs const &,js::MaybeConstruct) [js/src/vm/Interpreter.cpp:467]
16:05:27     INFO -  #66: js::CallGetter(JSContext *,JS::Handle<JS::Value>,JS::Handle<JS::Value>,JS::MutableHandle<JS::Value>) [js/src/vm/Interpreter.cpp:650]
16:05:27     INFO -  #67: static bool CallGetter(struct JSContext *, class JS::Handle<JSObject *>, class JS::Handle<JS::Value>, class JS::Handle<js::Shape *>, class JS::MutableHandle<JS::Value>) [js/src/vm/NativeObject.cpp:2101]
16:05:27     INFO -  #68: static bool NativeGetPropertyInline<1>(struct JSContext *, class JS::Handle<js::NativeObject *>, class JS::Handle<JS::Value>, class JS::Handle<jsid>, IsNameLookup, class JS::MutableHandle<JS::Value>) [js/src/vm/NativeObject.cpp:2367]
16:05:27     INFO -  #69: js::NativeGetProperty(JSContext *,JS::Handle<js::NativeObject *>,JS::Handle<JS::Value>,JS::Handle<jsid>,JS::MutableHandle<JS::Value>) [js/src/vm/NativeObject.cpp:2404]
16:05:27     INFO -  #70: js::GetProperty(JSContext *,JS::Handle<JSObject *>,JS::Handle<JS::Value>,js::PropertyName *,JS::MutableHandle<JS::Value>) [js/src/vm/JSObject.h:797]
16:05:27     INFO -  #71: js::GetProperty(JSContext *,JS::Handle<JS::Value>,JS::Handle<js::PropertyName *>,JS::MutableHandle<JS::Value>) [js/src/vm/Interpreter.cpp:4397]
16:05:27     INFO -  #72: static bool GetPropertyOperation(struct JSContext *, class js::InterpreterFrame *, class JS::Handle<JSScript *>, unsigned char *, class JS::MutableHandle<JS::Value>, class JS::MutableHandle<JS::Value>) [js/src/vm/Interpreter.cpp:213]
16:05:27     INFO -  #73: static bool Interpret(struct JSContext *, class js::RunState & const) [js/src/vm/Interpreter.cpp:2803]
16:05:27     INFO -  #74: js::RunScript(JSContext *,js::RunState &) [js/src/vm/Interpreter.cpp:417]
16:05:27     INFO -  #75: js::InternalCallOrConstruct(JSContext *,JS::CallArgs const &,js::MaybeConstruct) [js/src/vm/Interpreter.cpp:489]
16:05:27     INFO -  #76: js::Call(JSContext *,JS::Handle<JS::Value>,JS::Handle<JS::Value>,js::AnyInvokeArgs const &,JS::MutableHandle<JS::Value>) [js/src/vm/Interpreter.cpp:535]
16:05:27     INFO -  #77: JS_CallFunctionValue(JSContext *,JS::Handle<JSObject *>,JS::Handle<JS::Value>,JS::HandleValueArray const &,JS::MutableHandle<JS::Value>) [js/src/jsapi.cpp:2930]
16:05:27     INFO -  #78: nsXBLProtoImplAnonymousMethod::Execute(nsIContent *,nsXBLPrototypeBinding const &) [dom/xbl/nsXBLProtoImplMethod.cpp:330]
16:05:27     INFO -  #79: nsXBLBinding::ExecuteDetachedHandler() [dom/xbl/nsXBLBinding.cpp:641]
16:05:27     INFO -  #80: nsBindingManager::ExecuteDetachedHandlers() [dom/xbl/nsBindingManager.cpp:466]
16:05:27     INFO -  #81: nsGlobalWindowInner::PostHandleEvent(mozilla::EventChainPostVisitor &) [dom/base/nsGlobalWindowInner.cpp:2080]
16:05:27     INFO -  #82: mozilla::EventTargetChainItem::HandleEventTargetChain(nsTArray<mozilla::EventTargetChainItem> &,mozilla::EventChainPostVisitor &,mozilla::EventDispatchingCallback *,mozilla::ELMCreationDetector &) [dom/events/EventDispatcher.cpp:531]
16:05:27     INFO -  #83: mozilla::EventTargetChainItem::HandleEventTargetChain(nsTArray<mozilla::EventTargetChainItem> &,mozilla::EventChainPostVisitor &,mozilla::EventDispatchingCallback *,mozilla::ELMCreationDetector &) [dom/events/EventDispatcher.cpp:595]
16:05:27     INFO -  #84: mozilla::EventDispatcher::Dispatch(nsISupports *,nsPresContext *,mozilla::WidgetEvent *,mozilla::dom::Event *,nsEventStatus *,mozilla::EventDispatchingCallback *,nsTArray<mozilla::dom::EventTarget *> *) [dom/events/EventDispatcher.cpp:967]
16:05:27     INFO -  #85: nsDocumentViewer::PageHide(bool) [layout/base/nsDocumentViewer.cpp:1432]
16:05:27     INFO -  #86: nsDocShell::FirePageHideNotificationInternal(bool,bool) [docshell/base/nsDocShell.cpp:1146]
16:05:27     INFO -  #87: nsDocShell::Destroy() [docshell/base/nsDocShell.cpp:5361]
16:05:27     INFO -  #88: nsXULWindow::Destroy() [xpfe/appshell/nsXULWindow.cpp:527]
16:05:27     INFO -  #89: nsWebShellWindow::Destroy() [xpfe/appshell/nsWebShellWindow.cpp:776]
16:05:27     INFO -  #90: nsGlobalWindowOuter::ReallyCloseWindow() [dom/base/nsGlobalWindowOuter.cpp:6030]
16:05:27     INFO -  #91: nsCloseEvent::Run() [dom/base/nsGlobalWindowOuter.cpp:5806]
16:05:27     INFO -  #92: nsThread::ProcessNextEvent(bool,bool *) [xpcom/threads/nsThread.cpp:1093]
16:05:27     INFO -  #93: NS_ProcessNextEvent(nsIThread *,bool) [xpcom/threads/nsThreadUtils.cpp:519]
16:05:27     INFO -  #94: mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate *) [ipc/glue/MessagePump.cpp:97]
16:05:27     INFO -  #95: MessageLoop::RunHandler() [ipc/chromium/src/base/message_loop.cc:320]
16:05:27     INFO -  #96: MessageLoop::Run() [ipc/chromium/src/base/message_loop.cc:300]
16:05:27     INFO -  #97: nsBaseAppShell::Run() [widget/nsBaseAppShell.cpp:159]
16:05:27     INFO -  #98: nsAppShell::Run() [widget/windows/nsAppShell.cpp:403]
16:05:27     INFO -  #99: nsAppStartup::Run() [toolkit/components/startup/nsAppStartup.cpp:290]
16:05:27     INFO -  #100: XREMain::XRE_mainRun() [toolkit/xre/nsAppRunner.cpp:4663]
16:05:27     INFO -  #101: XREMain::XRE_main(int,char * * const,mozilla::BootstrapConfig const &) [toolkit/xre/nsAppRunner.cpp:4808]
16:05:27     INFO -  #102: XRE_main(int,char * * const,mozilla::BootstrapConfig const &) [toolkit/xre/nsAppRunner.cpp:4900]
16:05:27     INFO -  #103: static int do_main(int, char * *, char * *) [browser/app/nsBrowserApp.cpp:234]
16:05:27     INFO -  #104: NS_internal_main(int,char * *,char * *) [browser/app/nsBrowserApp.cpp:308]
16:05:27     INFO -  #105: wmain [toolkit/xre/nsWindowsWMain.cpp:143]
16:05:27     INFO -  #106: static int __scrt_common_main_seh() [f:/dd/vctools/crt/vcstartup/src/startup/exe_common.inl:283]
16:05:27     INFO -  #107: KERNEL32.DLL + 0x12774
16:05:27     INFO -  #108: ntdll.dll + 0x70d61
16:05:27     INFO -  [GPU 6872, Main Thread] WARNING: Shutting down GPU process early due to a crash!: file z:/build/build/src/gfx/ipc/GPUParent.cpp, line 468
16:05:27  WARNING -  TEST-UNEXPECTED-FAIL | file:///C:/Users/task_1526399153/build/tests/reftest/tests/layout/reftests/abs-pos/fixed-pos-auto-offset-1b.html | application terminated with exit code 1
Component: JavaScript Engine → JavaScript: GC
Duplicate of this bug: 1466348
Severity: normal → critical
Keywords: assertion, crash
Duplicate of this bug: 1469201
Nika, could you take a look at this? It isn't frequent, but maybe there's some obvious fix (I mean, probably not...)
Component: JavaScript: GC → XPConnect
Flags: needinfo?(nika)
If there isn't an obvious fix, please NI roc/khuey to see if they can get this in pernosco.
The problem here is that in the InitializeDispatchParams method, when adding parameters to mDispatchParams, we don't initialize the mType property of these objects. We do, however, make sure to clear any flags we had set, and clear out the value so nothing bad happens. 

https://searchfox.org/mozilla-central/rev/d0a41d2e7770fc00df7844d5f840067cc35ba26f/js/xpconnect/src/XPCWrappedNative.cpp#1478-1483

The problem here is probably the confluence of:

1. A call was made which got some stack space set to the flag for T_JSVAL
2. CallMethodHelper was re-entered and that stack space was used for a new argument without re-initializing it,
3. Before that argument is handled, a garbage collection occurs, and values are traced,
4. As the value isn't flagged, TraceParam safely ignores it, and the assertion is reached. The assertion reads the uninitialized memory and sees a T_JSVAL, causing a crash.

I think there are 2 options here:
1. Set the type property to a known value when adding dispatch params to mDispatchParams, so that we don't have uninitialized memory floating around,
2. Remove the assertion, as it was testing the state of potentially uninitialized memory.
Flags: needinfo?(nika)
Hmm... I'm not quite sure how that could be related. This assertion is in XPConnect wrapper code, and those patches don't really touch XPC bindings at all. The closest they come is [1], which actually removes some code which touches XPCWNs.

It may just be a fluke, where the patches change some timings enough that this starts happening more frequently.

Or it may have something to do with whatever compartment objects deserialized from sharedData get created in. That seems to be the shared JSM global for ppmm.sharedData, and the cpmm frame message manager for cpmm.sharedData, so I'd be kind of surprised if it was relevant.

[1]: https://hg.mozilla.org/integration/mozilla-inbound/rev/71af1a8b7eadef8c377be4d8ae5b4402ea1013fc
Flags: needinfo?(kmaglione+bmo)
There have been 44 failures in the last 7 days, all of them on linux32  debug.

Recent failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=188881622&repo=autoland&lineNumber=31728

[task 2018-07-19T07:33:30.485Z] 07:33:30     INFO - ### XPCOM_MEM_BLOAT_LOG defined -- logging bloat/leaks to /tmp/tmpbVKhgU.mozrunner/runreftest_leaks_tab_pid7478.log
[task 2018-07-19T07:33:30.723Z] 07:33:30     INFO - 1531985610718	Marionette	DEBUG	Waiting for startup tests...
[task 2018-07-19T07:33:30.812Z] 07:33:30     INFO - Couldn't convert chrome URL: chrome://branding/locale/brand.properties
[task 2018-07-19T07:33:31.134Z] 07:33:31     INFO - 1531985611126	Marionette	INFO	Listening on port 2828
[task 2018-07-19T07:33:31.154Z] 07:33:31     INFO - Assertion failure: param.type.Tag() != nsXPTType::T_JSVAL (JSVals are marked as needing cleanup (even though they don't)), at /builds/worker/workspace/build/src/js/xpconnect/src/XPCWrappedNative.cpp:1722
[task 2018-07-19T07:33:31.158Z] 07:33:31     INFO - #01: CallMethodHelper::trace(JSTracer*) [js/xpconnect/src/XPCWrappedNative.cpp:1721]
[task 2018-07-19T07:33:31.162Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.163Z] 07:33:31     INFO - #02: TraceStackRoots [js/public/RootingAPI.h:820]
[task 2018-07-19T07:33:31.163Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.163Z] 07:33:31     INFO - #03: js::gc::GCRuntime::traceRuntimeCommon(JSTracer*, js::gc::GCRuntime::TraceOrMarkRuntime) [gcc/include/c++/6.4.0/bits/atomic_base.h:396]
[task 2018-07-19T07:33:31.164Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.164Z] 07:33:31     INFO - #04: js::gc::GCRuntime::traceRuntimeForMinorGC(JSTracer*, js::gc::AutoGCSession&) [js/src/gc/RootMarking.cpp:299]
[task 2018-07-19T07:33:31.164Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.164Z] 07:33:31     INFO - #05: js::Nursery::doCollection(JS::gcreason::Reason, js::gc::TenureCountCache&) [js/src/gc/Nursery.cpp:895]
[task 2018-07-19T07:33:31.164Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.164Z] 07:33:31     INFO - #06: js::Nursery::collect(JS::gcreason::Reason) [js/src/gc/Nursery.cpp:748]
[task 2018-07-19T07:33:31.164Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.164Z] 07:33:31     INFO - #07: js::gc::GCRuntime::minorGC(JS::gcreason::Reason, js::gcstats::PhaseKind) [js/src/gc/GCRuntime.h:1001]
[task 2018-07-19T07:33:31.164Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.165Z] 07:33:31     INFO - #08: JSObject* js::gc::GCRuntime::tryNewNurseryObject<(js::AllowGC)1>(JSContext*, unsigned int, unsigned int, js::Class const*) [gcc/include/c++/6.4.0/bits/atomic_base.h:396]
[task 2018-07-19T07:33:31.165Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.167Z] 07:33:31     INFO - #09: JSObject* js::Allocate<JSObject, (js::AllowGC)1>(JSContext*, js::gc::AllocKind, unsigned int, js::gc::InitialHeap, js::Class const*) [js/src/gc/Allocator.cpp:59]
[task 2018-07-19T07:33:31.258Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.260Z] 07:33:31     INFO - #10: js::ArrayObject::createArrayInternal(JSContext*, js::gc::AllocKind, js::gc::InitialHeap, JS::Handle<js::Shape*>, JS::Handle<js::ObjectGroup*>, js::AutoSetNewObjectMetadata&) [js/src/vm/ArrayObject-inl.h:53]
[task 2018-07-19T07:33:31.263Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.265Z] 07:33:31     INFO - #11: js::ArrayObject::createArray(JSContext*, js::gc::AllocKind, js::gc::InitialHeap, JS::Handle<js::Shape*>, JS::Handle<js::ObjectGroup*>, unsigned int, js::AutoSetNewObjectMetadata&) [js/src/vm/ArrayObject-inl.h:87]
[task 2018-07-19T07:33:31.266Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.269Z] 07:33:31     INFO - #12: NewArray<4294967295u> [js/src/builtin/Array.cpp:3842]
[task 2018-07-19T07:33:31.270Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.270Z] 07:33:31     INFO - #13: js::NewDenseFullyAllocatedArray(JSContext*, unsigned int, JS::Handle<JSObject*>, js::NewObjectKind) [js/src/builtin/Array.cpp:3883]
[task 2018-07-19T07:33:31.271Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.272Z] 07:33:31     INFO - #14: js::NewArrayOperationWithTemplate(JSContext*, JS::Handle<JSObject*>) [js/src/vm/Interpreter.cpp:5259]
[task 2018-07-19T07:33:31.273Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.274Z] 07:33:31     INFO - #15: js::jit::DoNewArray [js/public/HeapAPI.h:504]
[task 2018-07-19T07:33:31.275Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.276Z] 07:33:31     INFO - #16: ??? (???:???)
[task 2018-07-19T07:33:31.283Z] 07:33:31     INFO - #17: ??? (???:???)
[task 2018-07-19T07:33:31.284Z] 07:33:31     INFO - #18: EnterJit [js/src/jit/Jit.cpp:94]
[task 2018-07-19T07:33:31.284Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.284Z] 07:33:31     INFO - #19: js::RunScript(JSContext*, js::RunState&) [js/src/vm/Interpreter.cpp:410]
[task 2018-07-19T07:33:31.285Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.286Z] 07:33:31     INFO - #20: js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) [js/src/vm/Interpreter.cpp:556]
[task 2018-07-19T07:33:31.286Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.287Z] 07:33:31     INFO - #21: InternalCall [js/src/vm/Interpreter.cpp:584]
[task 2018-07-19T07:33:31.287Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.288Z] 07:33:31     INFO - #22: js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) [js/src/vm/Interpreter.cpp:602]
[task 2018-07-19T07:33:31.288Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.289Z] 07:33:31     INFO - #23: js::CallGetter(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::MutableHandle<JS::Value>) [js/src/jsapi.h:74]
[task 2018-07-19T07:33:31.289Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.290Z] 07:33:31     INFO - #24: GetExistingProperty<(js::AllowGC)1u> [js/src/vm/NativeObject.cpp:2147]
[task 2018-07-19T07:33:31.291Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.291Z] 07:33:31     INFO - #25: NativeGetPropertyInline<(js::AllowGC)1u> [js/src/vm/NativeObject.cpp:2413]
[task 2018-07-19T07:33:31.291Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.292Z] 07:33:31     INFO - #26: JS_GetPropertyById(JSContext*, JS::Handle<JSObject*>, JS::Handle<jsid>, JS::MutableHandle<JS::Value>) [js/src/vm/NativeObject.h:1688]
[task 2018-07-19T07:33:31.293Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.294Z] 07:33:31     INFO - #27: nsXPCWrappedJSClass::CallQueryInterfaceOnJSObject(JSContext*, JSObject*, nsID const&) [js/xpconnect/src/XPCWrappedJSClass.cpp:216]
[task 2018-07-19T07:33:31.294Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.295Z] 07:33:31     INFO - #28: nsXPCWrappedJSClass::GetRootJSObject(JSContext*, JSObject*) [js/xpconnect/src/XPCWrappedJSClass.cpp:657]
[task 2018-07-19T07:33:31.296Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.296Z] 07:33:31     INFO - #29: nsXPCWrappedJS::GetNewOrUsed(JS::Handle<JSObject*>, nsID const&, nsXPCWrappedJS**) [js/xpconnect/src/XPCWrappedJS.cpp:339]
[task 2018-07-19T07:33:31.297Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.301Z] 07:33:31     INFO - #30: XPCConvert::JSObject2NativeInterface(void**, JS::Handle<JSObject*>, nsID const*, nsISupports*, nsresult*) [js/xpconnect/src/XPCConvert.cpp:1055]
[task 2018-07-19T07:33:31.301Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.302Z] 07:33:31     INFO - #31: XPCConvert::JSData2Native(void*, JS::Handle<JS::Value>, nsXPTType const&, nsID const*, unsigned int, nsresult*) [js/xpconnect/src/XPCConvert.cpp:791]
[task 2018-07-19T07:33:31.303Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.304Z] 07:33:31     INFO - #32: CallMethodHelper::ConvertIndependentParam(unsigned char) [js/xpconnect/src/XPCWrappedNative.cpp:1604]
[task 2018-07-19T07:33:31.304Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.305Z] 07:33:31     INFO - #33: CallMethodHelper::Call() [js/xpconnect/src/XPCWrappedNative.cpp:1501]
[task 2018-07-19T07:33:31.306Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.311Z] 07:33:31     INFO - #34: XPCWrappedNative::CallMethod(XPCCallContext&, XPCWrappedNative::CallMode) [js/public/RootingAPI.h:1007]
[task 2018-07-19T07:33:31.311Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.316Z] 07:33:31     INFO - #35: XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*) [js/xpconnect/src/XPCWrappedNativeJSOps.cpp:893]
[task 2018-07-19T07:33:31.317Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.318Z] 07:33:31     INFO - #36: CallJSNative(JSContext*, bool (*)(JSContext*, unsigned int, JS::Value*), JS::CallArgs const&) [js/src/vm/Interpreter.cpp:445]
[task 2018-07-19T07:33:31.319Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.320Z] 07:33:31     INFO - #37: js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) [js/src/vm/Interpreter.cpp:518]
[task 2018-07-19T07:33:31.320Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.321Z] 07:33:31     INFO - #38: InternalCall [js/src/vm/Interpreter.cpp:584]
[task 2018-07-19T07:33:31.322Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.322Z] 07:33:31     INFO - #39: Interpret [js/src/vm/Interpreter.cpp:3237]
[task 2018-07-19T07:33:31.323Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.324Z] 07:33:31     INFO - #40: js::RunScript(JSContext*, js::RunState&) [js/src/vm/Interpreter.cpp:424]
[task 2018-07-19T07:33:31.324Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.325Z] 07:33:31     INFO - #41: js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) [js/src/vm/Interpreter.cpp:556]
[task 2018-07-19T07:33:31.326Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.326Z] 07:33:31     INFO - #42: InternalCall [js/src/vm/Interpreter.cpp:584]
[task 2018-07-19T07:33:31.327Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.328Z] 07:33:31     INFO - #43: js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) [js/src/vm/Interpreter.cpp:602]
[task 2018-07-19T07:33:31.328Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.329Z] 07:33:31     INFO - #44: js::CallSelfHostedFunction(JSContext*, JS::Handle<js::PropertyName*>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) [js/src/vm/SelfHosting.cpp:1849]
[task 2018-07-19T07:33:31.330Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.331Z] 07:33:31     INFO - #45: js::jit::InterpretResume(JSContext*, JS::Handle<JSObject*>, JS::Handle<JS::Value>, JS::Handle<js::PropertyName*>, JS::MutableHandle<JS::Value>) [js/src/jit/VMFunctions.cpp:947]
[task 2018-07-19T07:33:31.332Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.333Z] 07:33:31     INFO - #46: ??? (???:???)
[task 2018-07-19T07:33:31.334Z] 07:33:31     INFO - #47: ??? (???:???)
[task 2018-07-19T07:33:31.334Z] 07:33:31     INFO - #48: EnterJit [js/src/jit/Jit.cpp:94]
[task 2018-07-19T07:33:31.335Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.336Z] 07:33:31     INFO - #49: js::RunScript(JSContext*, js::RunState&) [js/src/vm/Interpreter.cpp:410]
[task 2018-07-19T07:33:31.336Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.337Z] 07:33:31     INFO - #50: js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) [js/src/vm/Interpreter.cpp:556]
[task 2018-07-19T07:33:31.338Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.339Z] 07:33:31     INFO - #51: InternalCall [js/src/vm/Interpreter.cpp:584]
[task 2018-07-19T07:33:31.339Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.340Z] 07:33:31     INFO - #52: js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) [js/src/vm/Interpreter.cpp:602]
[task 2018-07-19T07:33:31.341Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.341Z] 07:33:31     INFO - #53: js::CallSelfHostedFunction(JSContext*, JS::Handle<js::PropertyName*>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) [js/src/vm/SelfHosting.cpp:1849]
[task 2018-07-19T07:33:31.342Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.343Z] 07:33:31     INFO - #54: AsyncFunctionResume [js/src/vm/AsyncFunction.cpp:186]
[task 2018-07-19T07:33:31.343Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.344Z] 07:33:31     INFO - #55: PromiseReactionJob [js/src/builtin/Promise.cpp:1282]
[task 2018-07-19T07:33:31.345Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.346Z] 07:33:31     INFO - #56: CallJSNative(JSContext*, bool (*)(JSContext*, unsigned int, JS::Value*), JS::CallArgs const&) [js/src/vm/Interpreter.cpp:445]
[task 2018-07-19T07:33:31.346Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.347Z] 07:33:31     INFO - #57: js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct) [js/src/vm/Interpreter.cpp:518]
[task 2018-07-19T07:33:31.348Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.348Z] 07:33:31     INFO - #58: InternalCall [js/src/vm/Interpreter.cpp:584]
[task 2018-07-19T07:33:31.349Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.350Z] 07:33:31     INFO - #59: js::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, js::AnyInvokeArgs const&, JS::MutableHandle<JS::Value>) [js/src/vm/Interpreter.cpp:602]
[task 2018-07-19T07:33:31.350Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.351Z] 07:33:31     INFO - #60: JS::Call(JSContext*, JS::Handle<JS::Value>, JS::Handle<JS::Value>, JS::HandleValueArray const&, JS::MutableHandle<JS::Value>) [js/src/jsapi.cpp:2888]
[task 2018-07-19T07:33:31.352Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.353Z] 07:33:31     INFO - #61: mozilla::dom::PromiseJobCallback::Call(JSContext*, JS::Handle<JS::Value>, mozilla::ErrorResult&) [s3:gecko-generated-sources:896d08f09088ae994dd1052a71e7ed1160690891d71ed8e845064a937960a4642caaa67ad5347043a356ba20f72d176eb68912ae2a36a85d78a659917c292c0f/dom/bindings/PromiseBinding.cpp::25]
[task 2018-07-19T07:33:31.353Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.354Z] 07:33:31     INFO - #62: mozilla::dom::PromiseJobCallback::Call(char const*) [s3:gecko-generated-sources:d5f5d6e6035fe0156677f0a3ae89f6af90747d01027300390066b83e130f7907ca93bd5e90d83ff6686d929aab3fd733cdc4acf85d4ae17bda4cb492a99d311e/dist/include/mozilla/dom/PromiseBinding.h::91]
[task 2018-07-19T07:33:31.355Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.356Z] 07:33:31     INFO - #63: mozilla::PromiseJobRunnable::Run(mozilla::AutoSlowOperation&) [xpcom/base/CycleCollectedJSContext.cpp:225]
[task 2018-07-19T07:33:31.356Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.357Z] 07:33:31     INFO - #64: mozilla::CycleCollectedJSContext::PerformMicroTaskCheckPoint() [xpcom/base/CycleCollectedJSContext.cpp:562]
[task 2018-07-19T07:33:31.358Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.359Z] 07:33:31     INFO - #65: mozilla::CycleCollectedJSContext::AfterProcessTask(unsigned int) [xpcom/base/CycleCollectedJSContext.cpp:396]
[task 2018-07-19T07:33:31.359Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.360Z] 07:33:31     INFO - #66: XPCJSContext::AfterProcessTask(unsigned int) [js/xpconnect/src/XPCJSContext.cpp:1213]
[task 2018-07-19T07:33:31.361Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.361Z] 07:33:31     INFO - #67: nsThread::ProcessNextEvent(bool, bool*) [xpcom/threads/nsThread.cpp:1086]
[task 2018-07-19T07:33:31.362Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.363Z] 07:33:31     INFO - #68: NS_ProcessNextEvent(nsIThread*, bool) [xpcom/threads/nsThreadUtils.cpp:519]
[task 2018-07-19T07:33:31.363Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.364Z] 07:33:31     INFO - #69: mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate*) [ipc/glue/MessagePump.cpp:98]
[task 2018-07-19T07:33:31.365Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.366Z] 07:33:31     INFO - #70: MessageLoop::RunInternal() [ipc/chromium/src/base/message_loop.cc:326]
[task 2018-07-19T07:33:31.366Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.367Z] 07:33:31     INFO - #71: MessageLoop::Run() [ipc/chromium/src/base/message_loop.cc:297]
[task 2018-07-19T07:33:31.368Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.368Z] 07:33:31     INFO - #72: nsBaseAppShell::Run() [widget/nsBaseAppShell.cpp:160]
[task 2018-07-19T07:33:31.369Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.370Z] 07:33:31     INFO - #73: nsAppStartup::Run() [toolkit/components/startup/nsAppStartup.cpp:291]
[task 2018-07-19T07:33:31.370Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.371Z] 07:33:31     INFO - #74: XREMain::XRE_mainRun() [toolkit/xre/nsAppRunner.cpp:4762]
[task 2018-07-19T07:33:31.372Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.373Z] 07:33:31     INFO - #75: XREMain::XRE_main(int, char**, mozilla::BootstrapConfig const&) [toolkit/xre/nsAppRunner.cpp:4906]
[task 2018-07-19T07:33:31.373Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.374Z] 07:33:31     INFO - #76: XRE_main(int, char**, mozilla::BootstrapConfig const&) [toolkit/xre/nsAppRunner.cpp:4999]
[task 2018-07-19T07:33:31.375Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.376Z] 07:33:31     INFO - #77: do_main [browser/app/nsBrowserApp.cpp:233]
[task 2018-07-19T07:33:31.376Z] 07:33:31     INFO - 
[task 2018-07-19T07:33:31.377Z] 07:33:31     INFO - #78: main [browser/app/nsBrowserApp.cpp:313]
Flags: needinfo?(overholt)
Whiteboard: [retriggered] → [retriggered][stockwell needswork:owner]
Nika told me her patches in bug 1474369 fix this bug. Let's just leave this and watch it.
Depends on: 1474369
Flags: needinfo?(overholt)
Priority: P5 → P3
We are trying to build a tool to automatically classify intermittent failures, which would provide a starting point for fixing the bug, reducing the manual work for the developers.
We are collecting some feedback on the results, to see if they’re good enough and where we need to improve.
    
For this bug, the tool says that the intermittent failure is most likely a:
Resource Leak: This includes tests which have memory leaks, garbage collection issues, other memory allocation issues, pointer (de-) referencing issues or any kind of resource management issue which was not covered by another test case. E.g., a test fails because it holds a pointer to a resource which has been garbage collected or the system crashes because it ran out of memory.


Once you’re done investigating and/or fixing the bug, could you tell me:
- Did the tool correctly recognize the type of intermittent failure?
- Did the information from the tool help your analysis, the bug fixing process, or anything in the process? (please also let us know how the tool was useful and/or what would improve the tool's usefulness for you)
You need to log in before you can comment on or make changes to this bug.