Closed Bug 1302042 Opened 8 years ago Closed 8 years ago

Intermittent test_windows.py TestBaseWindow.test_switch_to_and_focus | application crashed [@ RefPtr<mozilla::layers::APZCTreeManager>::RefPtr | mozilla::layers::CrossProcessCompositorBridgeParent::AllocPAPZCTreeManagerParent]

Categories

(Core :: Panning and Zooming, defect)

x86_64
Linux
defect
Not set
critical

Tracking

()

RESOLVED DUPLICATE of bug 1322633
Tracking Status
firefox51 --- affected

People

(Reporter: intermittent-bug-filer, Unassigned)

Details

(Keywords: crash, intermittent-failure)

Crash Data

08:37:31 INFO - Operating system: Linux 08:37:31 INFO - 0.0.0 Linux 3.13.0-93-generic #140-Ubuntu SMP Mon Jul 18 21:21:05 UTC 2016 x86_64 08:37:31 INFO - CPU: amd64 08:37:31 INFO - family 6 model 62 stepping 4 08:37:31 INFO - 2 CPUs 08:37:31 INFO - 08:37:31 INFO - Crash reason: SIGSEGV 08:37:31 INFO - Crash address: 0x438 08:37:31 INFO - 08:37:31 INFO - Thread 28 (crashed) 08:37:31 INFO - 0 libxul.so!RefPtr<mozilla::layers::APZCTreeManager>::RefPtr [RefPtr.h:4c66e0814004 : 91 + 0x0] 08:37:31 INFO - rbx = 0x00007fda372fb8d8 r12 = 0x00007fda372fb968 08:37:31 INFO - r13 = 0x00007fda1c0e6528 r14 = 0x00007fda372fb968 08:37:31 INFO - r15 = 0x00007fda372fbb28 rip = 0x00007fda555b2fb8 08:37:31 INFO - rsp = 0x00007fda372fb8c8 rbp = 0x00007fda372fb900 08:37:31 INFO - Found by: given as instruction pointer in context 08:37:31 INFO - 1 libxul.so!mozilla::layers::CrossProcessCompositorBridgeParent::AllocPAPZCTreeManagerParent [CompositorBridgeParent.cpp:4c66e0814004 : 1499 + 0x12] 08:37:31 INFO - rbx = 0x00007fda372fb8d8 r12 = 0x00007fda372fb968 08:37:31 INFO - r13 = 0x00007fda1c0e6528 r14 = 0x00007fda372fb968 08:37:31 INFO - r15 = 0x00007fda372fbb28 rip = 0x00007fda555b50e8 08:37:31 INFO - rsp = 0x00007fda372fb8d0 rbp = 0x00007fda372fb900 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 2 libxul.so!mozilla::layers::PCompositorBridgeParent::OnMessageReceived [PCompositorBridgeParent.cpp:4c66e0814004 : 833 + 0xe] 08:37:31 INFO - rbx = 0x00007fda41a27800 r12 = 0x00007fda372fb980 08:37:31 INFO - r13 = 0x00007fda372fb950 r14 = 0x00007fda372fb968 08:37:31 INFO - r15 = 0x00007fda372fbb28 rip = 0x00007fda552acea6 08:37:31 INFO - rsp = 0x00007fda372fb910 rbp = 0x00007fda372fba10 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 3 libxul.so!mozilla::ipc::MessageChannel::DispatchAsyncMessage [MessageChannel.cpp:4c66e0814004 : 1662 + 0x5] 08:37:31 INFO - rbx = 0x00007fda41a27830 r12 = 0x00007fda372fbb20 08:37:31 INFO - r13 = 0x0000000000000001 r14 = 0x00007fda372fba00 08:37:31 INFO - r15 = 0x0000000000000000 rip = 0x00007fda550e9b39 08:37:31 INFO - rsp = 0x00007fda372fba20 rbp = 0x00007fda372fba50 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 4 libxul.so!mozilla::ipc::MessageChannel::DispatchMessage [MessageChannel.cpp:4c66e0814004 : 1600 + 0xa] 08:37:31 INFO - rbx = 0x00007fda372fbb20 r12 = 0x00007fda41a27830 08:37:31 INFO - r13 = 0x00007fda372fba78 r14 = 0x00007fda372fbaa8 08:37:31 INFO - r15 = 0x00007fda372fba80 rip = 0x00007fda550f1caf 08:37:31 INFO - rsp = 0x00007fda372fba60 rbp = 0x00007fda372fbb00 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 5 libxul.so!mozilla::ipc::MessageChannel::OnMaybeDequeueOne [MessageChannel.cpp:4c66e0814004 : 1567 + 0xa] 08:37:31 INFO - rbx = 0x00007fda372fbb20 r12 = 0x00007fda41a27830 08:37:31 INFO - r13 = 0x00007fda372fbd01 r14 = 0x00007fda372fbcc8 08:37:31 INFO - r15 = 0x00007fda3917e838 rip = 0x00007fda550f3d6c 08:37:31 INFO - rsp = 0x00007fda372fbb10 rbp = 0x00007fda372fbbb0 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 6 libxul.so!mozilla::detail::RunnableMethodImpl<bool (mozilla::ipc::MessageChannel::*)(), false, true>::Run [nsThreadUtils.h:4c66e0814004 : 729 + 0x11] 08:37:31 INFO - rbx = 0x00007fda372fbd58 r12 = 0x00007fda372fbc48 08:37:31 INFO - r13 = 0x00007fda372fbd01 r14 = 0x00007fda372fbcc8 08:37:31 INFO - r15 = 0x00007fda3917e838 rip = 0x00007fda550e5e25 08:37:31 INFO - rsp = 0x00007fda372fbbc0 rbp = 0x00007fda372fbbc0 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 7 libxul.so!mozilla::ipc::MessageChannel::DequeueTask::Run [MessageChannel.h:4c66e0814004 : 545 + 0x5] 08:37:31 INFO - rbx = 0x00007fda372fbd58 r12 = 0x00007fda372fbc48 08:37:31 INFO - r13 = 0x00007fda372fbd01 r14 = 0x00007fda372fbcc8 08:37:31 INFO - r15 = 0x00007fda3917e838 rip = 0x00007fda550e4cc7 08:37:31 INFO - rsp = 0x00007fda372fbbd0 rbp = 0x00007fda372fbbd0 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 8 libxul.so!MessageLoop::RunTask [message_loop.cc:4c66e0814004 : 346 + 0x5] 08:37:31 INFO - rbx = 0x00007fda372fbd58 r12 = 0x00007fda372fbc48 08:37:31 INFO - r13 = 0x00007fda372fbd01 r14 = 0x00007fda372fbcc8 08:37:31 INFO - r15 = 0x00007fda3917e838 rip = 0x00007fda550d2cf9 08:37:31 INFO - rsp = 0x00007fda372fbbe0 rbp = 0x00007fda372fbc00 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 9 libxul.so!MessageLoop::DeferOrRunPendingTask [message_loop.cc:4c66e0814004 : 354 + 0x4] 08:37:31 INFO - rbx = 0x00007fda372fbd01 r12 = 0x00007fda372fbc48 08:37:31 INFO - r13 = 0x00007fda372fbd01 r14 = 0x00007fda372fbcc8 08:37:31 INFO - r15 = 0x00007fda3917e838 rip = 0x00007fda550d6da4 08:37:31 INFO - rsp = 0x00007fda372fbc10 rbp = 0x00007fda372fbc30 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 10 libxul.so!MessageLoop::DoWork [message_loop.cc:4c66e0814004 : 429 + 0x4] 08:37:31 INFO - rbx = 0x00007fda372fbd58 r12 = 0x00007fda372fbc48 08:37:31 INFO - r13 = 0x00007fda372fbd01 r14 = 0x00007fda372fbcc8 08:37:31 INFO - r15 = 0x00007fda3917e838 rip = 0x00007fda550d6e3b 08:37:31 INFO - rsp = 0x00007fda372fbc40 rbp = 0x00007fda372fbc80 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 11 libxul.so!base::MessagePumpDefault::Run [message_pump_default.cc:4c66e0814004 : 36 + 0x9] 08:37:31 INFO - rbx = 0x00007fda3917e820 r12 = 0x00007fda372fbcb8 08:37:31 INFO - r13 = 0x00007fda372fbd58 r14 = 0x00007fda372fbcc8 08:37:31 INFO - r15 = 0x00007fda3917e838 rip = 0x00007fda550d0eb5 08:37:31 INFO - rsp = 0x00007fda372fbc90 rbp = 0x00007fda372fbd00 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 12 libxul.so!MessageLoop::Run [message_loop.cc:4c66e0814004 : 225 + 0x7] 08:37:31 INFO - rbx = 0x00007fda372fbd58 r12 = 0x00007fda372fbd58 08:37:31 INFO - r13 = 0x00007ffee5be579f r14 = 0x00007fda372fc9c0 08:37:31 INFO - r15 = 0x0000000000000001 rip = 0x00007fda550d0a5e 08:37:31 INFO - rsp = 0x00007fda372fbd10 rbp = 0x00007fda372fbd40 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 13 libxul.so!base::Thread::ThreadMain [thread.cc:4c66e0814004 : 180 + 0x7] 08:37:31 INFO - rbx = 0x00007fda3917e790 r12 = 0x00007fda372fbd58 08:37:31 INFO - r13 = 0x00007ffee5be579f r14 = 0x00007fda372fc9c0 08:37:31 INFO - r15 = 0x0000000000000001 rip = 0x00007fda550d8b0f 08:37:31 INFO - rsp = 0x00007fda372fbd50 rbp = 0x00007fda372fbf00 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 14 libxul.so!ThreadFunc [platform_thread_posix.cc:4c66e0814004 : 38 + 0x2] 08:37:31 INFO - rbx = 0x0000000000000000 r12 = 0x0000000000000000 08:37:31 INFO - r13 = 0x00007ffee5be579f r14 = 0x00007fda372fc9c0 08:37:31 INFO - r15 = 0x0000000000000001 rip = 0x00007fda550d6f39 08:37:31 INFO - rsp = 0x00007fda372fbf10 rbp = 0x00007fda372fbf10 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 15 libpthread-2.23.so + 0x76f9 08:37:31 INFO - rbx = 0x0000000000000000 r12 = 0x0000000000000000 08:37:31 INFO - r13 = 0x00007ffee5be579f r14 = 0x00007fda372fc9c0 08:37:31 INFO - r15 = 0x0000000000000001 rip = 0x00007fda6413f6fa 08:37:31 INFO - rsp = 0x00007fda372fbf20 rbp = 0x0000000000000000 08:37:31 INFO - Found by: call frame info 08:37:31 INFO - 16 libc-2.23.so + 0x106b5c 08:37:31 INFO - rip = 0x00007fda631c8b5d rsp = 0x00007fda372fbfc0 08:37:31 INFO - Found by: stack scanning I can see some ABORTs before: 08:37:14 INFO - ExceptionHandler::GenerateDump cloned child 1272 08:37:14 INFO - ExceptionHandler::SendContinueSignalToChild sent continue signal to child 08:37:14 INFO - ExceptionHandler::WaitForContinueSignal waiting for continue signal... 08:37:15 INFO - mozcrash Downloading symbols from: https://queue.taskcluster.net/v1/task/UlS9qnKVTJ-GPkfSEATnVg/artifacts/public/build/target.crashreporter-symbols.zip 08:37:15 INFO - [NPAPI 977] ###!!! ABORT: Aborting on channel error.: file /home/worker/workspace/build/src/ipc/glue/MessageChannel.cpp, line 2056 08:37:15 INFO - [NPAPI 977] ###!!! ABORT: Aborting on channel error.: file /home/worker/workspace/build/src/ipc/glue/MessageChannel.cpp, line 2056 08:37:15 INFO - [Child 1251] ###!!! ABORT: Aborting on channel error.: file /home/worker/workspace/build/src/ipc/glue/MessageChannel.cpp, line 2056 08:37:15 INFO - [Child 1251] ###!!! ABORT: Aborting on channel error.: file /home/worker/workspace/build/src/ipc/glue/MessageChannel.cpp, line 2056 Kanru, could this crash be another issue as triggered by the aborts in OnChannelErrorFromLink: https://dxr.mozilla.org/mozilla-central/rev/7e873393cc11d326338779e5a3ed2da031e30936/ipc/glue/MessageChannel.cpp#2056
Severity: normal → critical
Crash Signature: [@ RefPtr<mozilla::layers::APZCTreeManager>::RefPtr]
Flags: needinfo?(kchen)
Keywords: crash
> Kanru, could this crash be another issue as triggered by the aborts in > OnChannelErrorFromLink: No, I think it's due to the APZCTreeManager segfault.
Flags: needinfo?(kchen) → needinfo?(bugmail)
It does look like the segfault is causing the channel close. However I'm not sure what's causing the segfault. The top two frames on the stack are [1] and [2] (which is called from [3]). Given the crash address is 0x438 that seems to indicate that the mApzcTreeManager RefPtr in CompositorBridgeParent is basically garbage, but without the CompositorBridgeParent itself being garbage. I don't understand how that can happen. I'm inclined to let this sit for a bit and see if we get more occurrences of this failure - if not, then it might just be random memory corruption caused by code elsewhere. If we do get more instances of it then it's probably worth investigating. [1] https://hg.mozilla.org/integration/autoland/file/4c66e0814004e1226362e63581d10c941961cc4c/mfbt/RefPtr.h#l91 [2] https://hg.mozilla.org/integration/autoland/file/4c66e0814004e1226362e63581d10c941961cc4c/gfx/layers/ipc/CompositorBridgeParent.cpp#l1499 [3] https://hg.mozilla.org/integration/autoland/file/4c66e0814004e1226362e63581d10c941961cc4c/gfx/layers/ipc/CompositorBridgeParent.cpp#l2605
Flags: needinfo?(bugmail)
Oh actually considering this happened on an opt build and the GetApzcTreeManager function is nonvirtual it might be that state.mParent is null. That shouldn't happen (we assert that it doesn't) but there might be a race somewhere that allows it to happen. At least then there's an explanation other than memory corruption.
Crash Signature: [@ RefPtr<mozilla::layers::APZCTreeManager>::RefPtr] → [@ RefPtr<mozilla::layers::APZCTreeManager>::RefPtr| mozilla::layers::CrossProcessCompositorBridgeParent::AllocPAPZCTreeManagerParent]
Summary: Intermittent test_windows.py TestBaseWindow.test_switch_to_and_focus | application crashed [@ RefPtr<mozilla::layers::APZCTreeManager>::RefPtr] → Intermittent test_windows.py TestBaseWindow.test_switch_to_and_focus | application crashed [@ RefPtr<mozilla::layers::APZCTreeManager>::RefPtr | mozilla::layers::CrossProcessCompositorBridgeParent::AllocPAPZCTreeManagerParent]
Component: Firefox UI Tests → Panning and Zooming
Product: Testing → Core
QA Contact: hskupin
Version: Version 3 → Trunk
See Also: → 1322633
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → DUPLICATE
See Also: 1322633
OS: Unspecified → Linux
Hardware: Unspecified → x86_64
You need to log in before you can comment on or make changes to this bug.