Closed Bug 967614 Opened 12 years ago Closed 11 years ago

Intermittent test_closeOnGC.html | application crashed [@ mozilla::dom::workers::WorkerPrivateParent<mozilla::dom::workers::WorkerPrivate>::Suspend(JSContext*, nsPIDOMWindow*)] after "!mParentSuspended (Suspended more than once!)"

Categories

(Core :: DOM: Workers, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla33
Tracking Status
firefox30 --- wontfix
firefox31 --- fixed
firefox32 --- fixed
firefox33 --- fixed
firefox-esr24 --- wontfix
b2g-v1.4 --- wontfix
b2g-v2.0 --- fixed
b2g-v2.1 --- fixed

People

(Reporter: RyanVM, Assigned: RyanVM)

References

Details

(Keywords: assertion, crash, intermittent-failure)

Attachments

(1 file, 1 obsolete file)

https://tbpl.mozilla.org/php/getParsedLog.php?id=34066839&tree=Fx-Team Rev4 MacOSX Snow Leopard 10.6 fx-team debug test mochitest-4 on 2014-02-04 08:03:36 PST for push fb9006ed8412 slave: talos-r4-snow-165 08:06:52 INFO - 1883 INFO TEST-START | /tests/dom/workers/test/test_closeOnGC.html 08:06:52 INFO - ++DOMWINDOW == 38 (0x119ab20c8) [pid = 896] [serial = 622] [outer = 0x127388f98] 08:06:52 INFO - 1884 INFO TEST-PASS | /tests/dom/workers/test/test_closeOnGC.html | undefined 08:06:52 INFO - 1885 INFO TEST-PASS | /tests/dom/workers/test/test_closeOnGC.html | undefined 08:06:53 INFO - [896] WARNING: PRFileDescAutoLock cannot get fd!: 'mFd', file ../../../../netwerk/base/src/nsSocketTransport2.h, line 195 08:06:53 INFO - --DOMWINDOW == 37 (0x1001db738) [pid = 896] [serial = 602] [outer = 0x0] [url = http://example.org:8000/tests/dom/tests/mochitest/whatwg/postMessage_transfer_helper.html] 08:06:53 INFO - --DOMWINDOW == 36 (0x12467ce88) [pid = 896] [serial = 601] [outer = 0x0] [url = http://mochi.test:8888/tests/dom/tests/mochitest/whatwg/postMessage_transfer_helper.html] 08:06:53 INFO - --DOMWINDOW == 35 (0x1297a4e88) [pid = 896] [serial = 590] [outer = 0x0] [url = http://example.org:8000/tests/dom/tests/mochitest/whatwg/postMessage_structured_clone_helper.html] 08:06:53 INFO - --DOMWINDOW == 34 (0x130954158) [pid = 896] [serial = 589] [outer = 0x0] [url = http://mochi.test:8888/tests/dom/tests/mochitest/whatwg/postMessage_structured_clone_helper.html] 08:06:53 INFO - --DOMWINDOW == 33 (0x12972a818) [pid = 896] [serial = 582] [outer = 0x0] [url = about:blank] 08:06:53 INFO - --DOMWINDOW == 32 (0x13096bec8) [pid = 896] [serial = 584] [outer = 0x0] [url = about:blank] 08:06:53 INFO - --DOMWINDOW == 31 (0x1273d9da8) [pid = 896] [serial = 580] [outer = 0x0] [url = about:blank] 08:06:53 INFO - --DOMWINDOW == 30 (0x1306b0018) [pid = 896] [serial = 572] [outer = 0x0] [url = about:neterror?e=dnsNotFound&u=ftp%3A//mochi.test%3A27534/tests/dom/tests/mochitest/whatwg/postMessage_origin_helper.xhtml&c=UTF-8&d=Firefox%20can%27t%20find%20the%20server%20at%20mochi.test.&f=regular] 08:06:53 INFO - --DOMWINDOW == 29 (0x12629c178) [pid = 896] [serial = 598] [outer = 0x0] [url = http://mochi.test:8888/tests/dom/tests/mochitest/whatwg/test_postMessage_transfer.html] 08:06:53 INFO - --DOMWINDOW == 28 (0x120a6ef18) [pid = 896] [serial = 578] [outer = 0x0] [url = http://mochi.test:8888/tests/dom/tests/mochitest/whatwg/test_postMessage_special.xhtml] 08:06:53 INFO - --DOMWINDOW == 27 (0x119e2d438) [pid = 896] [serial = 619] [outer = 0x0] [url = http://mochi.test:8888/tests/SimpleTest/iframe-between-tests.html] 08:06:53 INFO - --DOMWINDOW == 26 (0x120826838) [pid = 896] [serial = 610] [outer = 0x0] [url = http://mochi.test:8888/tests/dom/workers/test/test_atob.html] 08:06:53 INFO - --DOMWINDOW == 25 (0x12842f4e8) [pid = 896] [serial = 612] [outer = 0x0] [url = http://mochi.test:8888/tests/dom/workers/test/test_blobConstructor.html] 08:06:53 INFO - --DOMWINDOW == 24 (0x1306c69e8) [pid = 896] [serial = 614] [outer = 0x0] [url = http://mochi.test:8888/tests/dom/workers/test/test_blobWorkers.html] 08:06:53 INFO - --DOMWINDOW == 23 (0x1001f5ab8) [pid = 896] [serial = 615] [outer = 0x0] [url = http://mochi.test:8888/tests/SimpleTest/iframe-between-tests.html] 08:06:53 INFO - --DOMWINDOW == 22 (0x1309be7c8) [pid = 896] [serial = 616] [outer = 0x0] [url = http://mochi.test:8888/tests/dom/workers/test/test_chromeWorker.html] 08:06:53 INFO - --DOMWINDOW == 21 (0x1284ec558) [pid = 896] [serial = 617] [outer = 0x0] [url = http://mochi.test:8888/tests/SimpleTest/iframe-between-tests.html] 08:06:53 INFO - --DOMWINDOW == 20 (0x119ee6c38) [pid = 896] [serial = 608] [outer = 0x0] [url = http://mochi.test:8888/tests/dom/workers/test/test_404.html] 08:06:53 INFO - --DOMWINDOW == 19 (0x12900c488) [pid = 896] [serial = 621] [outer = 0x0] [url = http://mochi.test:8888/tests/SimpleTest/iframe-between-tests.html] 08:06:53 INFO - 1886 INFO TEST-PASS | /tests/dom/workers/test/test_closeOnGC.html | xhr correctly closed 08:06:53 INFO - Assertion failure: !mParentSuspended (Suspended more than once!), at ../../../dom/workers/WorkerPrivate.cpp:2443 08:06:56 WARNING - TEST-UNEXPECTED-FAIL | /tests/dom/workers/test/test_closeOnGC.html | application terminated with exit code 1 08:06:56 INFO - INFO | runtests.py | Application ran for: 0:01:54.763316 08:06:56 INFO - INFO | zombiecheck | Reading PID log: /var/folders/Ii/IiNB2nqiFTCiQ8o6I557Sk+++-k/-Tmp-/tmp47C2Ndpidlog 08:07:15 WARNING - PROCESS-CRASH | /tests/dom/workers/test/test_closeOnGC.html | application crashed [@ mozilla::dom::workers::WorkerPrivateParent<mozilla::dom::workers::WorkerPrivate>::Suspend(JSContext*, nsPIDOMWindow*)] 08:07:15 INFO - Crash dump filename: /var/folders/Ii/IiNB2nqiFTCiQ8o6I557Sk+++-k/-Tmp-/tmp_GvLbZ/minidumps/10580038-4D76-4C53-98B6-6F21B84510CF.dmp 08:07:15 INFO - Operating system: Mac OS X 08:07:15 INFO - 10.6.8 10K549 08:07:15 INFO - CPU: amd64 08:07:15 INFO - family 6 model 23 stepping 10 08:07:15 INFO - 2 CPUs 08:07:15 INFO - Crash reason: EXC_BAD_ACCESS / KERN_INVALID_ADDRESS 08:07:15 INFO - Crash address: 0x0 08:07:15 INFO - Thread 0 (crashed) 08:07:15 INFO - 0 XUL!mozilla::dom::workers::WorkerPrivateParent<mozilla::dom::workers::WorkerPrivate>::Suspend(JSContext*, nsPIDOMWindow*) [WorkerPrivate.cpp : 112 + 0x0] 08:07:15 INFO - rbx = 0x00007fff7102e2f8 r12 = 0x0000000100d97a00 08:07:15 INFO - r13 = 0x0000000127388ee0 r14 = 0x00000001273897a0 08:07:15 INFO - r15 = 0x0000000119ab2030 rip = 0x0000000102bb31e2 08:07:15 INFO - rsp = 0x00007fff5fbfab10 rbp = 0x00007fff5fbfab60 08:07:15 INFO - Found by: given as instruction pointer in context 08:07:15 INFO - 1 XUL!mozilla::dom::workers::RuntimeService::SuspendWorkersForWindow(nsPIDOMWindow*) [RuntimeService.cpp : 2017 + 0x7] 08:07:15 INFO - rbx = 0x0000000000000000 r12 = 0x00007fff5fbfabd8 08:07:15 INFO - r13 = 0x0000000127388ee0 r14 = 0x0000000119ab2030 08:07:15 INFO - r15 = 0x00007fff5fbfabd0 rip = 0x0000000102b8adfe 08:07:15 INFO - rsp = 0x00007fff5fbfab70 rbp = 0x00007fff5fbfac60 08:07:15 INFO - Found by: call frame info 08:07:15 INFO - 2 XUL!nsGlobalWindow::SuspendTimeouts(unsigned int, bool) [nsGlobalWindow.cpp : 12453 + 0xb] 08:07:15 INFO - rbx = 0x0000000119ab2010 r12 = 0x0000000119ab2010 08:07:15 INFO - r13 = 0x0000000127388ee0 r14 = 0x00007fff5fbfade8 08:07:15 INFO - r15 = 0x0000000119ab2010 rip = 0x000000010294b96e 08:07:15 INFO - rsp = 0x00007fff5fbfac70 rbp = 0x00007fff5fbfad10 08:07:15 INFO - Found by: call frame info 08:07:15 INFO - 3 XUL!nsGlobalWindow::SuspendTimeouts(unsigned int, bool) [nsGlobalWindow.cpp : 12439 + 0xe] 08:07:15 INFO - rbx = 0x0000000000000000 r12 = 0x0000000127388ee0 08:07:15 INFO - r13 = 0x0000000127388ee0 r14 = 0x00007fff5fbfade8 08:07:15 INFO - r15 = 0x0000000119ab2010 rip = 0x000000010294b91e 08:07:15 INFO - rsp = 0x00007fff5fbfad20 rbp = 0x00007fff5fbfadc0 08:07:15 INFO - Found by: call frame info 08:07:15 INFO - 4 XUL!nsGlobalWindow::SuspendTimeouts(unsigned int, bool) [nsGlobalWindow.cpp : 12508 + 0x1d] 08:07:15 INFO - rbx = 0x0000000000000000 r12 = 0x00007fff5fbfae10 08:07:15 INFO - r13 = 0x0000000127388ee0 r14 = 0x00007fff5fbfade8 08:07:15 INFO - r15 = 0x0000000119ab2010 rip = 0x000000010294be1f 08:07:15 INFO - rsp = 0x00007fff5fbfadd0 rbp = 0x00007fff5fbfae70 08:07:15 INFO - Found by: call frame info 08:07:15 INFO - 5 XUL!nsXMLHttpRequest::Send(nsIVariant*, mozilla::dom::Nullable<nsXMLHttpRequest::RequestBody> const&) [nsXMLHttpRequest.cpp : 2871 + 0xf] 08:07:15 INFO - rbx = 0x0000000100a12000 r12 = 0x0000000119e5e9c0 08:07:15 INFO - r13 = 0x0000000119e5ea78 r14 = 0x0000000000000000 08:07:15 INFO - r15 = 0x0000000101a508a0 rip = 0x0000000102e133cd 08:07:15 INFO - rsp = 0x00007fff5fbfae80 rbp = 0x00007fff5fbfb270 08:07:15 INFO - Found by: call frame info 08:07:15 INFO - 6 XUL!mozilla::dom::XMLHttpRequestBinding::send [nsXMLHttpRequest.h : 406 + 0xd] 08:07:15 INFO - rbx = 0x00000001011f1498 r12 = 0x00000001273897a0 08:07:15 INFO - r13 = 0x0000000000000000 r14 = 0x00007fff5fbfb470 08:07:15 INFO - r15 = 0x00000001026809a0 rip = 0x00000001026810c7 08:07:15 INFO - rsp = 0x00007fff5fbfb280 rbp = 0x00007fff5fbfb460 08:07:15 INFO - Found by: call frame info 08:07:15 INFO - 7 XUL!mozilla::dom::XMLHttpRequestBinding::genericMethod [XMLHttpRequestBinding.cpp : 1293 + 0x4] 08:07:15 INFO - rbx = 0x00000001011f1498 r12 = 0x0000000127389700 08:07:15 INFO - r13 = 0x0000000000000000 r14 = 0x00000001273897a0 08:07:15 INFO - r15 = 0x00000001026809a0 rip = 0x0000000102680a82 08:07:15 INFO - rsp = 0x00007fff5fbfb470 rbp = 0x00007fff5fbfb4d0 08:07:15 INFO - Found by: call frame info 08:07:15 INFO - 8 XUL!js::CallJSNative(JSContext*, bool (*)(JSContext*, unsigned int, JS::Value*), JS::CallArgs const&) [jscntxtinlines.h : 220 + 0x5] 08:07:15 INFO - rbx = 0x00000001273897a0 r12 = 0x0000000127389700 08:07:15 INFO - r13 = 0x0000000000000000 r14 = 0x00007fff5fbfb9a0 08:07:15 INFO - r15 = 0x00000001026809a0 rip = 0x000000010449f381 08:07:15 INFO - rsp = 0x00007fff5fbfb4e0 rbp = 0x00007fff5fbfb510 08:07:15 INFO - Found by: call frame info 08:07:15 INFO - 9 XUL!js::Invoke(JSContext*, JS::CallArgs, js::MaybeConstruct) [Interpreter.cpp : 459 + 0x4] 08:07:15 INFO - rbx = 0x00000001388b6500 r12 = 0x00000001273897a0 08:07:15 INFO - r13 = 0x0000000000000000 r14 = 0x00007fff5fbfb560 08:07:15 INFO - r15 = 0x0000000000000000 rip = 0x0000000104479e95 08:07:15 INFO - rsp = 0x00007fff5fbfb520 rbp = 0x00007fff5fbfb990 08:07:15 INFO - Found by: call frame info
This seems to be pretty frequent ... can we retrigger our way to a regressing cset?
Flags: needinfo?(ryanvm)
Possibly, but I'm currently without power and on a flaky mall internet connection and no ETA of power restoration, so if you want it done any time soon, I'd suggest finding someone else to try.
Flags: needinfo?(ryanvm)
I'm reasonably confident it regressed on this merge: https://hg.mozilla.org/mozilla-central/pushloghtml?startID=26147&endID=26148
Retriggers confirm that this is a regression from bug 824433.
Blocks: 824433
Flags: needinfo?(mak77)
So the issue here may be spinning the event loop, and it might be something that the worker code just needs to deal with.
(In reply to TBPL Robot from comment #16) WTF, how are we hitting this on b2g28 too?
Whiteboard: p=0
(In reply to Ryan VanderMeulen [:RyanVM UTC-5][Limited connectivity due to mass power outage] from comment #12) > Retriggers confirm that this is a regression from bug 824433. that bug has been backed out...(In reply to Kyle Huey [:khuey] (khuey@mozilla.com) from comment #13) > So the issue here may be spinning the event loop, and it might be something > that the worker code just needs to deal with. We are spinning the events loop as of now in the browser code, that I don't think is running here. Ryan, could you please clarify the needinfo request, my changes only act on browser code and nsBrowserGlue, can't have an effect on this xpcshell test.
Flags: needinfo?(mak77) → needinfo?(ryanvm)
(In reply to Marco Bonardo [:mak] from comment #22) > We are spinning the events loop as of now in the browser code, that I don't > think is running here. and just for completeness I'm removing that spinning with the patch in bug 824433.
On v1.3, it apparently "started" on this push: https://tbpl.mozilla.org/?tree=Mozilla-B2g28-v1.3&rev=08c88e498480
Flags: needinfo?(ryanvm)
I'm removing the dependency cause I don't think there's a relation with that fix.
No longer blocks: 824433
Blocks: 970568
No longer blocks: fxdesktopbacklog
Whiteboard: p=0
(In reply to Kyle Huey [:khuey] (khuey@mozilla.com) from comment #13) > So the issue here may be spinning the event loop, and it might be something > that the worker code just needs to deal with. Kyle, what's the path forward with this bug?
Flags: needinfo?(khuey)
The assertion is bogus with the code as-is. It's not entirely clear how to fix it though. I would r+ a patch that commented out the assertion.
Flags: needinfo?(khuey)
Good times, test_closeOnGC.html runs fine on Android/B2G these days except for hitting this assert 2/3 of the time on Android debug. https://tbpl.mozilla.org/?tree=Try&rev=d0b07513be43 https://tbpl.mozilla.org/?tree=Try&rev=26149f6e0d30
Attached patch comment out the assertion (obsolete) — Splinter Review
Commented out the assertion per comment 89. I suppose we also could consider downgrading it to a warning, but I really don't care one way or the other.
Assignee: nobody → ryanvm
Status: NEW → ASSIGNED
Attachment #8449833 - Flags: review?(khuey)
Might as well re-enable test_closeOnGC.html here while we're at it.
Attachment #8449833 - Attachment is obsolete: true
Attachment #8449833 - Flags: review?(khuey)
Attachment #8449836 - Flags: review?(khuey)
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla33
Blocks: 881404
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: