Closed
Bug 640604
Opened 15 years ago
Closed 14 years ago
Assertion failure: !cx->thread->data.conservativeGC.requestThreshold
Categories
(Core :: JavaScript Engine, defect)
Tracking
()
RESOLVED
WORKSFORME
People
(Reporter: bc, Unassigned)
References
()
Details
(Keywords: assertion)
Related socorro signature: mozalloc_abort(char const* const) | NS_DebugBreak_P | nsCycleCollectingAutoRefCnt::decr(nsISupports*)
0. This is not that easy to reproduce. Do not set up your environment with MOZ_NO_REMOTE, NO_EM_RESTART, XPCOM_DEBUG_BREAK, etc. You *may* need to enable popups.
1. http://www.fnuz.com/watch_free_online.php?q=x%2Bfiles%26cat=series
2. Let it run for a while (several minutes at least)
3. Exit Firefox
4. Click Ignore on the Assertion dialogs.
5. Assertion failure: !cx->thread->data.conservativeGC.requestThreshold, at c:/work/mozilla/builds/2.0.0/mozilla/js/src/xpconnect/src/nsXPConnect.cpp:402
In the nsXPConnect::Collect frame
- cx 0x02fab330 {link={...} defaultVersion=JSVERSION_DEFAULT versionOverride=JSVERSION_DEFAULT ...} JSContext *
+ link {next=0x03010a30 prev=0x01d9d5a0 } JSCListStr
defaultVersion JSVERSION_DEFAULT JSVersion
versionOverride JSVERSION_DEFAULT JSVersion
hasVersionOverride false bool
throwing 0 int
+ exception {data={...} } js::Value
runOptions 10761 unsigned int
+ localeCallbacks 0x02fab778 {localeToUpperCase=0x11130c70 localeToLowerCase=0x11130e20 localeCompare=0x11130ea0 ...} JSLocaleCallbacks *
+ resolvingTable 0x03c47cc0 {ops=0x00a596b4 data=0x00000000 hashShift=28 ...} JSDHashTable *
generatingError 0 unsigned char
stackLimit 720897 unsigned int
scriptStackQuota 536733696 unsigned int
+ runtime 0x01c9c5c0 {atomsCompartment=0x01c9d3a8 atomsCompartmentIsLocked=false compartments={...} ...} JSRuntime * const
+ compartment 0x01d9e270 {rt=0x01c9c5c0 principals=0x01d4c1f4 chunk=0x00000000 ...} JSCompartment *
+ regs 0x00000000 {sp=??? pc=??? fp=??? } JSFrameRegs *
+ tempPool {first={...} current=0x02fab374 arenasize=4056 ...} JSArenaPool
+ regExpPool {first={...} current=0x02fab394 arenasize=4056 ...} JSArenaPool
+ globalObject 0x028c20d8 {lastProp=0x00c1528c map=0x00c1528c clasp=0x00c0ef88 ...} JSObject *
+ sharpObjectMap {depth=0 sharpgen=0 table=0x00000000 } JSSharpObjectMap
+ busyArrays {impl=??? } js::HashSet<JSObject *,js::DefaultHasher<JSObject *>,js::SystemAllocPolicy>
+ argumentFormatMap 0x02f96168 {format=0x125e1e6c "%ip" length=3 formatter=0x11147cf0 ...} JSArgumentFormatMap *
+ lastMessage 0x00000000 <Bad Ptr> char *
logfp 0x00000000 void *
+ logPrevPc 0x00000000 <Bad Ptr> unsigned char *
errorReporter 0x10cc2cd0 NS_ScriptErrorReporter(JSContext *, const char *, JSErrorReport *) void (JSContext *, const char *, JSErrorReport *)*
operationCallback 0x10cc3c40 nsJSContext::DOMOperationCallback(JSContext *) int (JSContext *)*
interpLevel 0 unsigned int
data 0x01d91650 void *
data2 0x02f96110 void *
+ currentSegment 0x00000000 {cx=??? previousInContext=??? previousInMemory=??? ...} js::StackSegment *
+ thread 0x01cfe7e0 {contextList={...} id=0x010a6c60 suspendCount=1 ...} JSThread *
outstandingRequests 2 unsigned int
+ threadLinks {next=0x03010b48 prev=0x01d9d6b8 } JSCListStr
+ autoGCRooters 0x00000000 {down=??? tag=??? context=??? } js::AutoGCRooter *
+ debugHooks 0x01c9c77c {interruptHook=0x00000000 interruptHookData=0x00000000 newScriptHook=0x00000000 ...} const JSDebugHooks *
+ securityCallbacks 0x00000000 {checkObjectAccess=??? principalsTranscoder=??? findObjectPrincipals=??? ...} JSSecurityCallbacks *
resolveFlags 0 unsigned int
rngSeed 1286308152765 __int64
+ iterValue {data={...} } js::Value
traceJitEnabled true bool
methodJitEnabled false bool
profilingEnabled false bool
+ dstOffsetCache {offsetMilliseconds=0 rangeStartSeconds=-9223372036854775808 rangeEndSeconds=-9223372036854775808 ...} DSTOffsetCache
+ enumerators 0x00000000 {lastProp=??? map=??? clasp=??? ...} JSObject *
+ genStack {mBegin=0x02fab4c0 mLength=0 mCapacity=2 ...} js::Vector<JSGenerator *,2,js::SystemAllocPolicy>
+ gcBackgroundFree 0x00000000 {thread=??? wakeup=??? sweepingDone=??? ...} js::GCHelperThread *
- cx->thread 0x01cfe7e0 {contextList={...} id=0x010a6c60 suspendCount=1 ...} JSThread *
+ contextList {next=0x01d9d6b8 prev=0x161590c8 } JSCListStr
id 0x010a6c60 void *
suspendCount 1 unsigned int
checkRequestDepth 0 unsigned int
+ data {requestDepth=1 onTraceCompartment=0x00000000 recordingCompartment=0x00000000 ...} JSThreadData
- cx->thread->data {requestDepth=1 onTraceCompartment=0x00000000 recordingCompartment=0x00000000 ...} JSThreadData
requestDepth 1 unsigned int
+ onTraceCompartment 0x00000000 {rt=??? principals=??? chunk=??? ...} JSCompartment *
+ recordingCompartment 0x00000000 {rt=??? principals=??? chunk=??? ...} JSCompartment *
+ profilingCompartment 0x00000000 {rt=??? principals=??? chunk=??? ...} JSCompartment *
interruptFlags 0 volatile long
+ stackSpace {base=0x02370000 commitEnd=0x02410000 end=0x02770000 ...} js::StackSpace
waiveGCQuota false bool
+ gsnCache {code=0x00000000 <Bad Ptr> table={...} } JSGSNCache
+ propertyCache {table=0x01cfe84c empty=0 } js::PropertyCache
maxCodeCacheBytes 16777216 unsigned long
dtoaState 0x01d0e8d8 DtoaState *
+ nativeStackBase 0x00130000 unsigned int *
+ pendingProxyOperation 0x00000000 {next=??? object=??? } JSPendingProxyOperation *
+ conservativeGC {nativeStackTop=0x0012d1d0 registerSnapshot={...} requestThreshold=1 } js::ConservativeGCThreadData
- cx->thread->data.conservativeGC {nativeStackTop=0x0012d1d0 registerSnapshot={...} requestThreshold=1 } js::ConservativeGCThreadData
+ nativeStackTop 0x0012d1d0 unsigned int *
+ registerSnapshot {jmpbuf=0x01d0e864 words=0x01d0e864 } js::ConservativeGCThreadData::<unnamed-tag>
requestThreshold 1 unsigned int
cx->thread->data.conservativeGC.requestThreshold 1 unsigned int
cx->thread->data.requestDepth 1 unsigned int
- this 0x01c9a8d0 {mRefCnt={...} _mOwningThread={...} mRuntime=0x01c9a998 ...} nsXPConnect * const
+ nsIXPConnect {...} nsIXPConnect
+ nsIThreadObserver {...} nsIThreadObserver
+ nsSupportsWeakReference {mProxy=0x00000000 } nsSupportsWeakReference
+ nsCycleCollectionJSRuntime {...} nsCycleCollectionJSRuntime
+ nsCycleCollectionParticipant {...} nsCycleCollectionParticipant
+ nsIJSRuntimeService {...} nsIJSRuntimeService
+ nsIThreadJSContextStack {...} nsIThreadJSContextStack
+ mRefCnt {mValue=11 } nsAutoRefCnt
+ _mOwningThread {mThread=0x010a6c60 } nsAutoOwningThread
+ gSelf 0x01c9a8c0 {mRefCnt={...} _mOwningThread={...} mRuntime=0x01c9a998 ...} nsXPConnect *
gOnceAliveNowDead 0 int
+ mRuntime 0x01c9a998 {mStrIDs=0x01c9a998 mStrJSVals=0x01c9a9e0 mXPConnect=0x01c9a8c0 ...} XPCJSRuntime *
+ mInterfaceInfoManager {mRawPtr=0x018d18d0 } nsCOMPtr<nsIInterfaceInfoSuperManager>
+ mDefaultSecurityManager 0x01cfdde8 {mRefCnt={...} _mOwningThread={...} mOriginToPolicyMap=0x03c4de18 ...} nsIXPCSecurityManager *
mDefaultSecurityManagerFlags 63 unsigned short
mShuttingDown 0 int
+ mCycleCollectionContext {mRawPtr=0x00000000 } nsAutoPtr<XPCCallContext>
+ mScopes {...} nsBaseHashtable<nsPtrHashKey<void const >,nsISupports *,nsISupports *>
+ mBackstagePass {mRawPtr=0x01d9e1ac } nsCOMPtr<nsIXPCScriptable>
gReportAllJSExceptions 0 unsigned int
gDebugMode 0 int
gDesiredDebugMode 0 int
+ gScriptSecurityManager 0x01cfdde8 {mRefCnt={...} _mOwningThread={...} mOriginToPolicyMap=0x03c4de18 ...} nsIScriptSecurityManager *
mozjs.dll!JS_Assert(const char * s=0x125aca1c, const char * file=0x125ac9d0, int ln=402) Line 73 C++
> xul.dll!nsXPConnect::Collect() Line 402 + 0x29 bytes C++
xul.dll!nsXPConnect::GarbageCollect() Line 414 C++
xul.dll!nsJSContext::GarbageCollectNow() Line 3273 C++
xul.dll!GCTimerFired(nsITimer * aTimer=0x0cd7cfe8, void * aClosure=0x00000000) Line 3322 C++
xul.dll!nsTimerImpl::Fire() Line 425 + 0xe bytes C++
xul.dll!nsTimerEvent::Run() Line 519 C++
xul.dll!nsThread::ProcessNextEvent(int mayWait=1, int * result=0x0012d308) Line 633 + 0x19 bytes C++
xul.dll!NS_ProcessNextEvent_P(nsIThread * thread=0x01884738, int mayWait=1) Line 250 + 0x16 bytes C++
xul.dll!nsThread::Shutdown() Line 492 + 0xb bytes C++
xul.dll!nsSound::PurgeLastSound() Line 140 C++
xul.dll!nsSound::~nsSound() Line 135 C++
xul.dll!nsSound::`scalar deleting destructor'() + 0xf bytes C++
xul.dll!nsSound::Release() Line 124 + 0x133 bytes C++
xul.dll!DoDeferredRelease<nsISupports *>(nsTArray<nsISupports *,nsTArrayDefaultAllocator> & array={...}) Line 622 + 0xe bytes C++
xul.dll!XPCJSRuntime::GCCallback(JSContext * cx=0x02fab330, JSGCStatus status=JSGC_END) Line 931 + 0xf bytes C++
xul.dll!DOMGCCallback(JSContext * cx=0x02fab330, JSGCStatus status=JSGC_END) Line 3500 + 0x17 bytes C++
mozjs.dll!js_GC(JSContext * cx=0x02fab330, JSCompartment * comp=0x00000000, JSGCInvocationKind gckind=GC_NORMAL) Line 2829 + 0x9 bytes C++
mozjs.dll!JS_GC(JSContext * cx=0x02fab330) Line 2662 + 0xd bytes C++
xul.dll!nsXPConnect::Collect() Line 405 + 0xa bytes C++
xul.dll!nsXPConnect::GarbageCollect() Line 414 C++
xul.dll!nsJSContext::GarbageCollectNow() Line 3273 C++
xul.dll!GCTimerFired(nsITimer * aTimer=0x168d0fb0, void * aClosure=0x00000000) Line 3322 C++
xul.dll!nsTimerImpl::Fire() Line 425 + 0xe bytes C++
xul.dll!nsTimerEvent::Run() Line 519 C++
xul.dll!nsThread::ProcessNextEvent(int mayWait=0, int * result=0x0012d760) Line 633 + 0x19 bytes C++
xul.dll!NS_ProcessNextEvent_P(nsIThread * thread=0x01884738, int mayWait=0) Line 250 + 0x16 bytes C++
xul.dll!mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate * aDelegate=0x010af390) Line 110 + 0xe bytes C++
See also Bug 629643
| Reporter | ||
Comment 1•15 years ago
|
||
| Reporter | ||
Comment 2•15 years ago
|
||
fyi, I still have this in vs' debugger in case you need it.
| Reporter | ||
Comment 3•14 years ago
|
||
no longer reproducible on Beta/11, Aurora/12, Nightly/13
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•