Closed Bug 552108 Opened 10 years ago Closed 8 years ago

abort during test_errorPropagation.html, with "Assertion failure: (*childp)->inDictionary()" at jsscope.h:774

Categories

(Core :: JavaScript Engine, defect)

x86
macOS
defect
Not set

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: dholbert, Unassigned)

References

()

Details

(Keywords: intermittent-failure)

http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1268437696.1268438321.14861.gz
OS X 10.5.2 mozilla-central debug test mochitests-2/5 on 2010/03/12 15:48:16
s: moz2-darwin9-slave12

{
394 INFO Running /tests/dom/src/threads/test/test_errorPropagation.html...
++DOMWINDOW == 15 (0xe05b380) [serial = 693] [outer = 0x8ab28b0]
Assertion failure: (*childp)->inDictionary(), at /builds/slave/mozilla-central-macosx-debug/build/js/src/jsscope.h:774
NEXT ERROR TEST-UNEXPECTED-FAIL | automation.py | Exited with code 1 during test run
INFO | automation.py | Application ran for: 0:04:03.644033
INFO | automation.py | Reading PID log: /var/folders/TL/TLg3RrMbFAur2hBCXvCeqk+++TM/-Tmp-/tmpJvUKWmpidlog
NEXT ERROR PROCESS-CRASH | automation.py | application crashed (minidump found)
Operating system: Mac OS X
                  10.5.2 9C31
CPU: x86
     GenuineIntel family 6 model 15 stepping 2
     2 CPUs

Crash reason:  EXC_BAD_ACCESS / KERN_PROTECTION_FAILURE
Crash address: 0x0

Thread 0 (crashed)
 0  libmozjs.dylib!JS_Assert [jsutil.cpp:3b33c4c63856 : 73 + 0x5]
    eip = 0x00335a15   esp = 0xbfffbad0   ebp = 0xbfffbaf8   ebx = 0x003359de
    esi = 0x04259e00   edi = 0x0270abda   eax = 0x00000000   ecx = 0x00000000
    edx = 0x00000000   efl = 0x00210246
    Found by: given as instruction pointer in context
 1  libmozjs.dylib!JSScope::insertDictionaryProperty(JSScopeProperty*, JSScopeProperty**) [jsscope.h:3b33c4c63856 : 774 + 0x3c]
    eip = 0x00317572   esp = 0xbfffbb00   ebp = 0xbfffbb18
    Found by: previous frame's frame pointer
 2  libmozjs.dylib!JSScope::newDictionaryProperty(JSContext*, JSScopeProperty const&, JSScopeProperty**) [jsscope.cpp:3b33c4c63856 : 1116 + 0x18]
    eip = 0x00314f15   esp = 0xbfffbb20   ebp = 0xbfffbb58
    Found by: previous frame's frame pointer
 3  libmozjs.dylib!JSScope::getChildProperty(JSContext*, JSScopeProperty*, JSScopeProperty&) [jsscope.cpp:3b33c4c63856 : 989 + 0x22]
    eip = 0x00315b9c   esp = 0xbfffbb60   ebp = 0xbfffbb98
    Found by: previous frame's frame pointer
 4  libmozjs.dylib!JSScope::addPropertyHelper(JSContext*, long, int (*)(JSContext*, JSObject*, long, long*), int (*)(JSContext*, JSObject*, long, long*), unsigned int, unsigned int, unsigned int, int, JSScopeProperty**) [jsscope.cpp:3b33c4c63856 : 1301 + 0x22]
    eip = 0x00315e53   esp = 0xbfffbba0   ebp = 0xbfffbbf8
    Found by: previous frame's frame pointer
 5  libmozjs.dylib!JSScope::putProperty(JSContext*, long, int (*)(JSContext*, JSObject*, long, long*), int (*)(JSContext*, JSObject*, long, long*), unsigned int, unsigned int, unsigned int, int) [jsscope.cpp:3b33c4c63856 : 1360 + 0x49]
    eip = 0x003160fe   esp = 0xbfffbc00   ebp = 0xbfffbc78
    Found by: previous frame's frame pointer
 6  libmozjs.dylib!js_DefineNativeProperty [jsobj.cpp:3b33c4c63856 : 4575 + 0x43]
    eip = 0x002b67c0   esp = 0xbfffbc80   ebp = 0xbfffbcf8
    Found by: previous frame's frame pointer
 7  libmozjs.dylib!js_DefineProperty [jsobj.cpp:3b33c4c63856 : 4432 + 0x54]
    eip = 0x002b6a79   esp = 0xbfffbd00   ebp = 0xbfffbd38
    Found by: previous frame's frame pointer
 8  libmozjs.dylib!JSObject::defineProperty(JSContext*, long, long, int (*)(JSContext*, JSObject*, long, long*), int (*)(JSContext*, JSObject*, long, long*), unsigned int) [jsobj.h:3b33c4c63856 : 379 + 0x3b]
    eip = 0x00223250   esp = 0xbfffbd40   ebp = 0xbfffbd68
    Found by: previous frame's frame pointer
 9  libmozjs.dylib!js_DefineFunction [jsfun.cpp:3b33c4c63856 : 2570 + 0x76]
    eip = 0x0026610c   esp = 0xbfffbd70   ebp = 0xbfffbdb8
    Found by: previous frame's frame pointer
10  libmozjs.dylib!JS_DefineFunction [jsapi.cpp:3b33c4c63856 : 4400 + 0x2d]
    eip = 0x0020f864   esp = 0xbfffbdc0   ebp = 0xbfffbe08
    Found by: previous frame's frame pointer
11  libmozjs.dylib!JS_DefineFunctions [jsapi.cpp:3b33c4c63856 : 4382 + 0x39]
    eip = 0x0021016d   esp = 0xbfffbe10   ebp = 0xbfffbe58
    Found by: previous frame's frame pointer
12  XUL!xpc_qsDefineQuickStubs(JSContext*, JSObject*, unsigned int, unsigned int, nsID const**, unsigned int, xpc_qsHashEntry const*) [xpcquickstubs.cpp:3b33c4c63856 : 471 + 0x21]
    eip = 0x01de67ca   esp = 0xbfffbe60   ebp = 0xbfffbeb8
    Found by: previous frame's frame pointer
13  XUL!DOM_DefineQuickStubs(JSContext*, JSObject*, unsigned int, unsigned int, nsID const**) [dom_quickstubs.cpp : 25791 + 0x38]
    eip = 0x01de6d68   esp = 0xbfffbec0   ebp = 0xbfffbee8
    Found by: previous frame's frame pointer
14  XUL!nsXPConnect::DefineDOMQuickStubs(JSContext*, JSObject*, unsigned int, unsigned int, nsID const**) [nsXPConnect.cpp:3b33c4c63856 : 2471 + 0x26]
    eip = 0x01d6bedb   esp = 0xbfffbef0   ebp = 0xbfffbf18
    Found by: previous frame's frame pointer
15  XUL!nsDOMClassInfo::PostCreatePrototype(JSContext*, JSObject*) [nsDOMClassInfo.cpp:3b33c4c63856 : 4291 + 0x46]
    eip = 0x0270ac75   esp = 0xbfffbf20   ebp = 0xbfffbfc8
    Found by: previous frame's frame pointer
16  XUL!XPCWrappedNativeProto::Init(XPCCallContext&, int, XPCNativeScriptableCreateInfo const*) [xpcwrappednativeproto.cpp:3b33c4c63856 : 143 + 0x2a]
    eip = 0x01dd086b   esp = 0xbfffbfd0   ebp = 0xbfffc038
    Found by: previous frame's frame pointer
17  XUL!XPCWrappedNativeProto::GetNewOrUsed(XPCCallContext&, XPCWrappedNativeScope*, nsIClassInfo*, XPCNativeScriptableCreateInfo const*, int, int, QITableEntry*) [xpcwrappednativeproto.cpp:3b33c4c63856 : 265 + 0x38]
    eip = 0x01dd0eed   esp = 0xbfffc040   ebp = 0xbfffc0f8
    Found by: previous frame's frame pointer
18  XUL!XPCWrappedNative::GetNewOrUsed(XPCCallContext&, nsISupports*, XPCWrappedNativeScope*, XPCNativeInterface*, nsWrapperCache*, int, XPCWrappedNative**) [xpcwrappednative.cpp:3b33c4c63856 : 532 + 0x40]
    eip = 0x01dc05fb   esp = 0xbfffc100   ebp = 0xbfffc288
    Found by: previous frame's frame pointer
19  XUL!XPCConvert::NativeInterface2JSObject(XPCLazyCallContext&, long*, nsIXPConnectJSObjectHolder**, nsISupports*, nsID const*, XPCNativeInterface**, nsWrapperCache*, JSObject*, int, int, unsigned int*) [xpcconvert.cpp:3b33c4c63856 : 1202 + 0x62]
    eip = 0x01d91952   esp = 0xbfffc290   ebp = 0xbfffc3d8
    Found by: previous frame's frame pointer
20  XUL!XPCConvert::NativeData2JS(XPCLazyCallContext&, long*, void const*, nsXPTType const&, nsID const*, JSObject*, unsigned int*) [xpcconvert.cpp:3b33c4c63856 : 469 + 0x55]
    eip = 0x01d92f70   esp = 0xbfffc3e0   ebp = 0xbfffc518
    Found by: previous frame's frame pointer
21  XUL!XPCConvert::NativeData2JS(XPCCallContext&, long*, void const*, nsXPTType const&, nsID const*, JSObject*, unsigned int*) [xpcprivate.h:3b33c4c63856 : 2997 + 0x37]
    eip = 0x01d97e4f   esp = 0xbfffc520   ebp = 0xbfffc608
    Found by: previous frame's frame pointer
22  XUL!nsXPCWrappedJSClass::CallMethod(nsXPCWrappedJS*, unsigned short, XPTMethodDescriptor const*, nsXPTCMiniVariant*) [xpcwrappedjsclass.cpp:3b33c4c63856 : 1571 + 0x44]
    eip = 0x01db4cff   esp = 0xbfffc610   ebp = 0xbfffc9c8
    Found by: previous frame's frame pointer
23  XUL!nsXPCWrappedJS::CallMethod(unsigned short, XPTMethodDescriptor const*, nsXPTCMiniVariant*) [xpcwrappedjs.cpp:3b33c4c63856 : 570 + 0x35]
    eip = 0x01dac4d1   esp = 0xbfffc9d0   ebp = 0xbfffca08
    Found by: previous frame's frame pointer
24  XUL!PrepareAndDispatch [xptcstubs_unixish_x86.cpp:3b33c4c63856 : 93 + 0x31]
    eip = 0x030027ba   esp = 0xbfffca10   ebp = 0xbfffcb18
    Found by: previous frame's frame pointer
25  XUL!nsXPTCStubBase::Stub3() [xptcstubsdef.inc : 1 + 0x25]
    eip = 0x02ffd2fd   esp = 0xbfffcb20   ebp = 0xbfffcb68
    Found by: previous frame's frame pointer
26  XUL!nsEventListenerManager::HandleEventSubType(nsListenerStruct*, nsIDOMEventListener*, nsIDOMEvent*, nsPIDOMEventTarget*, unsigned int, nsCxPusher*) [nsEventListenerManager.cpp:3b33c4c63856 : 1082 + 0x18]
    eip = 0x024a38de   esp = 0xbfffcb70   ebp = 0xbfffccb8
    Found by: previous frame's frame pointer
27  XUL!nsEventListenerManager::HandleEvent(nsPresContext*, nsEvent*, nsIDOMEvent**, nsPIDOMEventTarget*, unsigned int, nsEventStatus*, nsCxPusher*) [nsEventListenerManager.cpp:3b33c4c63856 : 1198 + 0x40]
    eip = 0x024a3da8   esp = 0xbfffccc0   ebp = 0xbfffcd58
    Found by: previous frame's frame pointer
28  XUL!nsEventTargetChainItem::HandleEvent(nsEventChainPostVisitor&, unsigned int, int, nsCxPusher*) [nsEventDispatcher.cpp:3b33c4c63856 : 201 + 0x71]
    eip = 0x024d3f0b   esp = 0xbfffcd60   ebp = 0xbfffcdb8
    Found by: previous frame's frame pointer
29  XUL!nsEventTargetChainItem::HandleEventTargetChain(nsEventChainPostVisitor&, unsigned int, nsDispatchingCallback*, int, nsCxPusher*) [nsEventDispatcher.cpp:3b33c4c63856 : 296 + 0x4c]
    eip = 0x024d2700   esp = 0xbfffcdc0   ebp = 0xbfffce18
    Found by: previous frame's frame pointer
30  XUL!nsEventDispatcher::Dispatch(nsISupports*, nsPresContext*, nsEvent*, nsIDOMEvent*, nsEventStatus*, nsDispatchingCallback*, nsCOMArray<nsPIDOMEventTarget>*) [nsEventDispatcher.cpp:3b33c4c63856 : 601 + 0x32]
    eip = 0x024d3450   esp = 0xbfffce20   ebp = 0xbfffcf18
    Found by: previous frame's frame pointer
31  XUL!nsEventDispatcher::DispatchDOMEvent(nsISupports*, nsEvent*, nsIDOMEvent*, nsPresContext*, nsEventStatus*) [nsEventDispatcher.cpp:3b33c4c63856 : 664 + 0x36]
    eip = 0x024d37d9   esp = 0xbfffcf20   ebp = 0xbfffcf78
    Found by: previous frame's frame pointer
32  XUL!nsDocument::DispatchPageTransition(nsPIDOMEventTarget*, nsAString_internal const&, int) [nsDocument.cpp:3b33c4c63856 : 7152 + 0x31]
    eip = 0x023d6ec7   esp = 0xbfffcf80   ebp = 0xbfffcfe8
    Found by: previous frame's frame pointer
33  XUL!nsDocument::OnPageShow(int, nsIDOMEventTarget*) [nsDocument.cpp:3b33c4c63856 : 7207 + 0x46]
    eip = 0x023d7391   esp = 0xbfffcff0   ebp = 0xbfffd058
    Found by: previous frame's frame pointer
34  XUL!DocumentViewerImpl::LoadComplete(unsigned int) [nsDocumentViewer.cpp:3b33c4c63856 : 1060 + 0x2c]
    eip = 0x020e1cdb   esp = 0xbfffd060   ebp = 0xbfffd0f8
    Found by: previous frame's frame pointer
35  XUL!nsDocShell::EndPageLoad(nsIWebProgress*, nsIChannel*, unsigned int) [nsDocShell.cpp:3b33c4c63856 : 5746 + 0x24]
    eip = 0x02b3bab1   esp = 0xbfffd100   ebp = 0xbfffd398
    Found by: previous frame's frame pointer
36  XUL!nsDocShell::OnStateChange(nsIWebProgress*, nsIRequest*, unsigned int, unsigned int) [nsDocShell.cpp:3b33c4c63856 : 5624 + 0x32]
    eip = 0x02b369bd   esp = 0xbfffd3a0   ebp = 0xbfffd428
    Found by: previous frame's frame pointer
37  XUL!nsDocLoader::FireOnStateChange(nsIWebProgress*, nsIRequest*, int, unsigned int) [nsDocLoader.cpp:3b33c4c63856 : 1314 + 0x34]
    eip = 0x02b63717   esp = 0xbfffd430   ebp = 0xbfffd4d8
    Found by: previous frame's frame pointer
38  XUL!nsDocLoader::doStopDocumentLoad(nsIRequest*, unsigned int) [nsDocLoader.cpp:3b33c4c63856 : 926 + 0x2a]
    eip = 0x02b63dd9   esp = 0xbfffd4e0   ebp = 0xbfffd568
    Found by: previous frame's frame pointer
39  XUL!nsDocLoader::DocLoaderIsEmpty(int) [nsDocLoader.cpp:3b33c4c63856 : 802 + 0x20]
    eip = 0x02b640fa   esp = 0xbfffd570   ebp = 0xbfffd5d8
    Found by: previous frame's frame pointer
40  XUL!nsDocLoader::OnStopRequest(nsIRequest*, nsISupports*, unsigned int) [nsDocLoader.cpp:3b33c4c63856 : 697 + 0x12]
    eip = 0x02b6528d   esp = 0xbfffd5e0   ebp = 0xbfffd6b8
    Found by: previous frame's frame pointer
41  XUL!nsLoadGroup::RemoveRequest(nsIRequest*, nsISupports*, unsigned int) [nsLoadGroup.cpp:3b33c4c63856 : 680 + 0x2d]
    eip = 0x01e8354a   esp = 0xbfffd6c0   ebp = 0xbfffd778
    Found by: previous frame's frame pointer
42  XUL!nsHttpChannel::OnStopRequest(nsIRequest*, nsISupports*, unsigned int) [nsHttpChannel.cpp:3b33c4c63856 : 5316 + 0x36]
    eip = 0x01f6163f   esp = 0xbfffd780   ebp = 0xbfffd7d8
    Found by: previous frame's frame pointer
43  XUL!nsInputStreamPump::OnStateStop() [nsInputStreamPump.cpp:3b33c4c63856 : 576 + 0x42]
    eip = 0x01e781e8   esp = 0xbfffd7e0   ebp = 0xbfffd818
    Found by: previous frame's frame pointer
44  XUL!nsInputStreamPump::OnInputStreamReady(nsIAsyncInputStream*) [nsInputStreamPump.cpp:3b33c4c63856 : 401 + 0xa]
    eip = 0x01e78312   esp = 0xbfffd820   ebp = 0xbfffd868
    Found by: previous frame's frame pointer
45  XUL!nsInputStreamReadyEvent::Run() [nsStreamUtils.cpp:3b33c4c63856 : 112 + 0x2d]
    eip = 0x02fb057a   esp = 0xbfffd870   ebp = 0xbfffd888
    Found by: previous frame's frame pointer
46  XUL!nsThread::ProcessNextEvent(int, int*) [nsThread.cpp:3b33c4c63856 : 527 + 0x18]
    eip = 0x02fdfe1a   esp = 0xbfffd890   ebp = 0xbfffd908
    Found by: previous frame's frame pointer
47  XUL!NS_ProcessPendingEvents_P(nsIThread*, unsigned int) [nsThreadUtils.cpp : 200 + 0x20]
    eip = 0x02f70608   esp = 0xbfffd910   ebp = 0xbfffd958
    Found by: previous frame's frame pointer
48  XUL!nsBaseAppShell::NativeEventCallback() [nsBaseAppShell.cpp:3b33c4c63856 : 125 + 0x1a]
    eip = 0x02efae09   esp = 0xbfffd960   ebp = 0xbfffd988
    Found by: previous frame's frame pointer
49  XUL!nsAppShell::ProcessGeckoEvents(void*) [nsAppShell.mm:3b33c4c63856 : 510 + 0xa]
    eip = 0x02eac1a7   esp = 0xbfffd990   ebp = 0xbfffda98
    Found by: previous frame's frame pointer
}
OS: Linux → Mac OS X
see also Bug 552108
Summary: random orange during test_errorPropagation.html, with "Assertion failure: (*childp)->inDictionary()" at jsscope.h:774 → abort during test_errorPropagation.html, with "Assertion failure: (*childp)->inDictionary()" at jsscope.h:774
(In reply to comment #1)
> see also Bug 552108

That's this bug. Did you mean bug 548961?

Suspect these bugs are due to bug 538307, which is patched on tracemonkey but not yet on mozilla-central.

Rob, are you gonna merge tm to m-c soon?

/be
Depends on: 538307
(In reply to comment #2)
> That's this bug. Did you mean bug 548961?

Ah yes. copy/paste fail. :) That is the bug I meant to link to.
A TM merge isn't in the cards until at least Monday, unless I pull a rabbit out of a hat and figure out what's causing ARM to crash on the 160K tempvaluerooter cleanup patch with no more feedback than "Segmentation fault".  (I would back out the change, but the immediate response when I aired the idea in the JS pit a couple days ago was that tripling the rebasing pain [at least a few hours each for several people] was not a good idea.)
Probably worth spot-merging the fixes for these test failures, then, I think.
(In reply to comment #5)
> Probably worth spot-merging the fixes for these test failures, then, I think.

just cherry-picked the patch in bug 538307
This test is still running and it hasn't happened in almost 2 years. Calling
this WFM.
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → WORKSFORME
Whiteboard: [orange]
You need to log in before you can comment on or make changes to this bug.