Closed Bug 1085239 Opened 11 years ago Closed 11 years ago

Intermittent test_xhr_progressevents.html | application timed out after 450.0 seconds with no output | test_xhr_progressevents.html | application crashed [@ nsCycleCollector::FinishAnyCurrentCollection()]

Categories

(Core :: XPCOM, defect)

x86
Gonk (Firefox OS)
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla36
Tracking Status
firefox34 --- unaffected
firefox35 --- unaffected
firefox36 --- fixed
firefox-esr31 --- unaffected

People

(Reporter: cbook, Assigned: mccr8)

References

()

Details

(Keywords: crash, intermittent-failure)

b2g_emulator_vm mozilla-inbound debug test mochitest-debug-3 https://treeherder.mozilla.org/ui/logviewer.html#?job_id=3125699&repo=mozilla-inbound 20:55:19 INFO - DeviceRunner TEST-UNEXPECTED-FAIL | /tests/content/base/test/test_xhr_progressevents.html | application timed out after 450.0 seconds with no output 20:55:19 WARNING - PROCESS-CRASH | /tests/content/base/test/test_xhr_progressevents.html | application crashed [@ nsCycleCollector::FinishAnyCurrentCollection()] 20:55:19 INFO - Crash dump filename: /tmp/tmpZUTLYC/54683f71-0a67-972a-25e4cef5-01d091b3.dmp 20:55:19 INFO - Operating system: Android 20:55:19 INFO - 0.0.0 Linux 2.6.29-g41a03df #22 Thu Jun 26 10:59:09 CST 2014 armv7l Android/full/generic:4.0.4.0.4.0.4/OPENMASTER/eng.cltbld.20141019.220822:eng/test-keys 20:55:19 INFO - CPU: arm 20:55:19 INFO - 0 CPUs 20:55:19 INFO - Crash reason: SIGSEGV 20:55:19 INFO - Crash address: 0x0 20:55:19 INFO - Thread 0 (crashed) 20:55:19 INFO - 0 libxul.so!nsCycleCollector::FinishAnyCurrentCollection() [nsCycleCollector.cpp:2c490d1c97b0 : 3667 + 0x4] 20:55:19 INFO - r4 = 0x402a6000 r5 = 0xbeff1dc8 r6 = 0x402a6000 r7 = 0x402c42d0 20:55:19 INFO - r8 = 0x00000006 r9 = 0x00000000 r10 = 0x00000001 fp = 0x00000000 20:55:19 INFO - sp = 0xbeff1dc0 lr = 0x4087d9d9 pc = 0x4087d9dc 20:55:19 INFO - Found by: given as instruction pointer in context 20:55:19 INFO - 1 libxul.so!nsCycleCollector::PrepareForGarbageCollection() [nsCycleCollector.cpp:2c490d1c97b0 : 3653 + 0x3] 20:55:19 INFO - r4 = 0x00000002 r5 = 0x00000000 r6 = 0x402a6000 r7 = 0x402c42d0 20:55:19 INFO - r8 = 0x00000006 r9 = 0x00000000 r10 = 0x00000001 fp = 0x00000000 20:55:19 INFO - sp = 0xbeff1de8 pc = 0x4087dac1 20:55:19 INFO - Found by: call frame info 20:55:19 INFO - 2 libxul.so!nsCycleCollector_prepareForGarbageCollection() [nsCycleCollector.cpp:2c490d1c97b0 : 4223 + 0x7] 20:55:19 INFO - r4 = 0x4023c1b8 r5 = 0x00000000 r6 = 0x40254c00 r7 = 0x402c42d0 20:55:19 INFO - r8 = 0x00000006 r9 = 0x00000000 r10 = 0x00000001 fp = 0x00000000 20:55:19 INFO - sp = 0xbeff1e00 pc = 0x4087db21 20:55:19 INFO - Found by: call frame info 20:55:19 INFO - 3 libxul.so!mozilla::CycleCollectedJSRuntime::OnGC(JSGCStatus) [CycleCollectedJSRuntime.cpp:2c490d1c97b0 : 1231 + 0x3] 20:55:19 INFO - r4 = 0x40254c00 r5 = 0x00000000 r6 = 0x40254c00 r7 = 0x402c42d0 20:55:19 INFO - r8 = 0x00000006 r9 = 0x00000000 r10 = 0x00000001 fp = 0x00000000 20:55:19 INFO - sp = 0xbeff1e10 pc = 0x4087e14b 20:55:19 INFO - Found by: call frame info 20:55:19 INFO - 4 libxul.so!mozilla::CycleCollectedJSRuntime::GCCallback(JSRuntime*, JSGCStatus, void*) [CycleCollectedJSRuntime.cpp:2c490d1c97b0 : 768 + 0x7] 20:55:19 INFO - r4 = 0x402c4000 r5 = 0x00000000 r6 = 0x40254c00 r7 = 0x402c42d0 20:55:19 INFO - r8 = 0x00000006 r9 = 0x00000000 r10 = 0x00000001 fp = 0x00000000 20:55:19 INFO - sp = 0xbeff1e28 pc = 0x4087e213 20:55:19 INFO - Found by: call frame info
See Also: → 1085237
Assignee: nobody → continuation
I'd be tempted to blame bug 727965, but it looks like that landed 10 hours before this started. Maybe bug 1084421? That landed a few days before this was filed, but presumably the sheriffs just didn't file new oranges over the weekend.
Component: General → XPCOM
Olli, what do you think? This test does involve events. ;)
Flags: needinfo?(bugs)
See Also: → 1087215
This stack looks very familiar. We're triggering a GC from inside an Unlink.
0 nsCycleCollector::FinishAnyCurrentCollection() [nsCycleCollector.cpp:983af7fa41f5 : 3667 + 0x4] 1 nsCycleCollector::PrepareForGarbageCollection() [nsCycleCollector.cpp:983af7fa41f5 : 3653 + 0x3] 2 nsCycleCollector_prepareForGarbageCollection() [nsCycleCollector.cpp:983af7fa41f5 : 4223 + 0x7] 3 mozilla::CycleCollectedJSRuntime::OnGC(JSGCStatus) [CycleCollectedJSRuntime.cpp:983af7fa41f5 : 1231 + 0x3] 4 mozilla::CycleCollectedJSRuntime::GCCallback(JSRuntime*, JSGCStatus, void*) [CycleCollectedJSRuntime.cpp:983af7fa41f5 : 768 + 0x7] 5 js::gc::GCRuntime::collect(bool, long long, js::JSGCInvocationKind, JS::gcreason::Reason) [jsgc.cpp:983af7fa41f5 : 5851 + 0x9] 6 js::gc::GCRuntime::gcSlice(js::JSGCInvocationKind, JS::gcreason::Reason, long long) [jsgc.cpp:983af7fa41f5 : 5916 + 0x9] 7 js::gc::GCRuntime::gcIfNeeded(JSContext*) [jsgc.cpp:983af7fa41f5 : 6072 + 0x15] 8 js::Invoke(JSContext*, JS::CallArgs, js::MaybeConstruct) [jscntxt.h:983af7fa41f5 : 552 + 0xb] ...various JS stuff 28 js::DefaultValue(JSContext*, JS::Handle<JSObject*>, JSType, JS::MutableHandle<JS::Value>) [jsobj.cpp:983af7fa41f5 : 3547 + 0xf] 29 JSString* js::ToStringSlow<(js::AllowGC)1>(js::ExclusiveContext*, js::MaybeRooted<JS::Value, (js::AllowGC)1>::HandleType) [jsobj.h:983af7fa41f5 : 649 + 0xd] 30 js::ToString<(js::AllowGC)1u> [jsstr.h:983af7fa41f5 : 152 + 0x3] 31 js::ErrorReport::init(JSContext*, JS::Handle<JS::Value>) [jsexn.cpp:983af7fa41f5 : 735 + 0x7] 32 mozilla::dom::Promise::MaybeReportRejected() [Promise.cpp:983af7fa41f5 : 1047 + 0x9] 33 mozilla::dom::Promise::MaybeReportRejectedOnce() [Promise.h : 232 + 0x3] 34 mozilla::dom::Promise::cycleCollection::Unlink(void*) [Promise.cpp:983af7fa41f5 : 272 + 0x3] 35 nsCycleCollector::CollectWhite() [nsCycleCollector.cpp:983af7fa41f5 : 3275 + 0xb] 36 nsCycleCollector::Collect(ccType, js::SliceBudget&, nsICycleCollectorListener*) [nsCycleCollector.cpp:983af7fa41f5 : 3605 + 0x5] 37 nsCycleCollector::FinishAnyCurrentCollection() [nsCycleCollector.cpp:983af7fa41f5 : 3666 + 0xb] 38 nsCycleCollector::PrepareForGarbageCollection() [nsCycleCollector.cpp:983af7fa41f5 : 3653 + 0x3] 39 nsCycleCollector_prepareForGarbageCollection() [nsCycleCollector.cpp:983af7fa41f5 : 4223 + 0x7] 40 mozilla::CycleCollectedJSRuntime::OnGC(JSGCStatus) [CycleCollectedJSRuntime.cpp:983af7fa41f5 : 1231 + 0x3] 41 mozilla::CycleCollectedJSRuntime::GCCallback(JSRuntime*, JSGCStatus, void*) [CycleCollectedJSRuntime.cpp:983af7fa41f5 : 768 + 0x7] 42 js::gc::GCRuntime::collect(bool, long long, js::JSGCInvocationKind, JS::gcreason::Reason) [jsgc.cpp:983af7fa41f5 : 5851 + 0x9] 43 js::gc::GCRuntime::gcSlice(js::JSGCInvocationKind, JS::gcreason::Reason, long long) [jsgc.cpp:983af7fa41f5 : 5916 + 0x9] 44 js::gc::GCRuntime::gcIfNeeded(JSContext*) [jsgc.cpp:983af7fa41f5 : 6072 + 0x15] 45 js::Invoke(JSContext*, JS::CallArgs, js::MaybeConstruct) [jscntxt.h:983af7fa41f5 : 552 + 0xb] ...
Depends on: 1087799
So yes, we'd trigger GC possibly a bit less often, but I'd say this is effectively a dup of bug 1087799.
Flags: needinfo?(bugs)
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla36
You need to log in before you can comment on or make changes to this bug.