Closed Bug 937316 Opened 11 years ago Closed 9 years ago

Intermittent test_async_notification.js | test failed (with xpcshell return code: 139) after " ###!!! ABORT: mismatched CxxStackFrame ctor/dtors: file ../../../ipc/glue/MessageChannel.cpp, line 1540"

Categories

(Core :: Graphics: ImageLib, defect)

ARM
Android
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: RyanVM, Unassigned)

References

Details

(Keywords: crash, intermittent-failure)

https://tbpl.mozilla.org/php/getParsedLog.php?id=30422585&tree=Mozilla-Inbound

Android 2.2 Tegra mozilla-inbound opt test xpcshell on 2013-11-11 08:12:39 PST for push 8c2d1c1b2eaf
slave: tegra-211

TEST-INFO | /builds/tegra-211/test/build/tests/xpcshell/tests/image/test/unit/test_async_notification.js | running test ...
TEST-UNEXPECTED-FAIL | /builds/tegra-211/test/build/tests/xpcshell/tests/image/test/unit/test_async_notification.js | test failed (with xpcshell return code: 139), see following log:
>>>>>>>
xpcw: cd /mnt/sdcard/tests/xpcshell/image/test/unit
xpcw: xpcshell -r /mnt/sdcard/tests/xpcshell/c/httpd.manifest --greomni /data/local/xpcb/fennec-28.0a1.en-US.android-arm.apk -m -n -s -e const _HTTPD_JS_PATH = "/mnt/sdcard/tests/xpcshell/c/httpd.js"; -e const _HEAD_JS_PATH = "/mnt/sdcard/tests/xpcshell/head.js"; -e const _TESTING_MODULES_DIR = "/mnt/sdcard/tests/xpcshell/m"; -f /mnt/sdcard/tests/xpcshell/head.js -e const _SERVER_ADDR = "localhost" -e const _HEAD_FILES = []; -e const _TAIL_FILES = []; -e const _TEST_FILE = ["test_async_notification.js"]; -e _execute_test(); quit(0);
TEST-INFO | (xpcshell/head.js) | test MAIN run_test pending (1)
TEST-INFO | (xpcshell/head.js) | test pending (2)
TEST-INFO | (xpcshell/head.js) | test MAIN run_test finished (2)
TEST-INFO | (xpcshell/head.js) | running event loop
TEST-PASS | image_load_helpers.js | [onSizeAvailable : 25] false == false
TEST-INFO | (xpcshell/head.js) | test pending (2)
TEST-INFO | (xpcshell/head.js) | test pending (3)
TEST-PASS | image_load_helpers.js | [onSizeAvailable : 25] false == false
TEST-PASS | image_load_helpers.js | [onLoadcomplete : 46] false == false
TEST-INFO | (xpcshell/head.js) | test pending (4)
TEST-INFO | (xpcshell/head.js) | test finished (4)
TEST-PASS | image_load_helpers.js | [onLoadcomplete : 46] false == false
TEST-PASS | image_load_helpers.js | [onFrameComplete : 34] false == false
TEST-PASS | image_load_helpers.js | [onFrameComplete : 34] false == false
TEST-PASS | image_load_helpers.js | [onDecodeComplete : 40] false == false
TEST-PASS | image_load_helpers.js | [onDecodeComplete : 40] false == false
TEST-INFO | (xpcshell/head.js) | test finished (3)
TEST-PASS | image_load_helpers.js | [onSizeAvailable : 25] false == false
TEST-PASS | image_load_helpers.js | [onFrameComplete : 34] false == false
TEST-PASS | image_load_helpers.js | [onDecodeComplete : 40] false == false
TEST-PASS | image_load_helpers.js | [onLoadcomplete : 46] false == false
TEST-INFO | (xpcshell/head.js) | test finished (2)
TEST-PASS | image_load_helpers.js | [onSizeAvailable : 25] false == false
TEST-INFO | (xpcshell/head.js) | test pending (2)
TEST-PASS | image_load_helpers.js | [onSizeAvailable : 25] false == false
TEST-PASS | image_load_helpers.js | [onFrameComplete : 34] false == false
TEST-PASS | image_load_helpers.js | [onDecodeComplete : 40] false == false
TEST-PASS | image_load_helpers.js | [onLoadcomplete : 46] false == false
TEST-INFO | (xpcshell/head.js) | test finished (2)
TEST-PASS | image_load_helpers.js | [onFrameComplete : 34] false == false
TEST-PASS | image_load_helpers.js | [onDecodeComplete : 40] false == false
TEST-PASS | image_load_helpers.js | [onLoadcomplete : 46] false == false
TEST-INFO | (xpcshell/head.js) | test pending (2)
TEST-PASS | image_load_helpers.js | [onSizeAvailable : 25] false == false
TEST-PASS | image_load_helpers.js | [onFrameComplete : 34] false == false
TEST-PASS | image_load_helpers.js | [onDecodeComplete : 40] false == false
TEST-PASS | image_load_helpers.js | [onLoadcomplete : 46] false == false
TEST-PASS | async_load_tests.js | [checkSizeAndLoad : 58] 1 != 0
TEST-PASS | async_load_tests.js | [checkSizeAndLoad : 59] 8 != 0
TEST-INFO | (xpcshell/head.js) | test finished (2)
TEST-INFO | (xpcshell/head.js) | test pending (2)
TEST-INFO | (xpcshell/head.js) | test finished (2)
TEST-PASS | image_load_helpers.js | [onSizeAvailable : 25] false == false
TEST-PASS | async_load_tests.js | [channelLoadStart : 118] 0 == 0
TEST-INFO | (xpcshell/head.js) | test pending (2)
TEST-PASS | image_load_helpers.js | [onSizeAvailable : 25] false == false
TEST-PASS | image_load_helpers.js | [onLoadcomplete : 46] false == false
TEST-INFO | (xpcshell/head.js) | test pending (3)
TEST-INFO | (xpcshell/head.js) | test finished (3)
TEST-PASS | image_load_helpers.js | [onLoadcomplete : 46] false == false
TEST-PASS | image_load_helpers.js | [onFrameComplete : 34] false == false
TEST-PASS | image_load_helpers.js | [onFrameComplete : 34] false == false
TEST-PASS | image_load_helpers.js | [onDecodeComplete : 40] false == false
TEST-PASS | image_load_helpers.js | [onDecodeComplete : 40] false == false
TEST-INFO | (xpcshell/head.js) | test finished (2)
TEST-PASS | image_load_helpers.js | [onSizeAvailable : 25] false == false
TEST-PASS | async_load_tests.js | [channelLoadStart : 118] 0 == 0
TEST-INFO | (xpcshell/head.js) | test pending (2)
TEST-PASS | image_load_helpers.js | [onSizeAvailable : 25] false == false
TEST-PASS | image_load_helpers.js | [onFrameComplete : 34] false == false
TEST-PASS | image_load_helpers.js | [onDecodeComplete : 40] false == false
TEST-PASS | image_load_helpers.js | [onLoadcomplete : 46] false == false
TEST-INFO | (xpcshell/head.js) | test finished (2)
TEST-PASS | image_load_helpers.js | [onFrameComplete : 34] false == false
TEST-PASS | image_load_helpers.js | [onDecodeComplete : 40] false == false
TEST-PASS | image_load_helpers.js | [onLoadcomplete : 46] false == false
TEST-INFO | (xpcshell/head.js) | test finished (1)
TEST-INFO | (xpcshell/head.js) | exiting test
TEST-INFO | (xpcshell/head.js) | test finished (0)
TEST-PASS | (xpcshell/head.js) | 44 (+ 0) check(s) passed
TEST-INFO | (xpcshell/head.js) | 0 check(s) todo
###!!! ABORT: mismatched CxxStackFrame ctor/dtors: file ../../../ipc/glue/MessageChannel.cpp, line 1540
[1]   Segmentation fault      /data/local/xpcb...

<<<<<<<
Keywords: crash
Benjamin, needinfo'd you since you're a peer in the IPC module. Is there any way this is a bug in imagelib? This type of issue, superficially at least, seems to be a problem in the IPC layer itself, but I don't really know much about how that code works.
Flags: needinfo?(benjamin)
This error is usually a sign that we're using a deleted channel. Without a stacktrace it's really not possible to say much more.
Flags: needinfo?(benjamin)
Do we have any reason why we wouldn't be getting a minidump+stack out of a NS_RUNTIMEABORT in an Android xpcshell test? The abort in question is this one:
http://mxr.mozilla.org/mozilla-central/source/ipc/glue/MessageChannel.cpp#1540

It seems to be hitting a MOZ_CRASH but not catching it for some reason.
It looks to me like we call check_for_crashes with the remote temp dir, rather than pulling dumps back to a local dir and calling check_for_crashes on that.

I cannot recall seeing a minidump+stack for an Android xpcshell crash in a long, long time -- I think our crash reporting is broken.
Depends on: 938706
Next time this happens let's check the stack to see whether PImageBridgeParent is on the stack and if so mark this a duplicate of bug 924622.
Inactive; closing (see bug 1180138).
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.