Closed Bug 825440 Opened 12 years ago Closed 11 years ago

Crash in mochitest cleanup down in WebRTC code [@ vp8_encode_frame]

Categories

(Core :: WebRTC, defect, P1)

x86
macOS
defect

Tracking

()

VERIFIED FIXED
Tracking Status
firefox-esr17 --- unaffected
b2g18 --- unaffected

People

(Reporter: ekr, Unassigned)

References

Details

(Keywords: crash, intermittent-failure, sec-high, Whiteboard: [WebRTC][blocking-webrtc+])

I see this occasionally on mochitests. Have not diagnosed yet.

(gdb) bt
#0  0x0000000100000000 in ?? ()
#1  0x000000010001f97d in chunk_dealloc_mmap (chunk=0x15a100000, size=3145728) at /Users/ekr/dev/mozilla-inbound/memory/mozjemalloc/jemalloc.c:2959
#2  0x000000010001f745 in chunk_dealloc (chunk=0x15a100000, size=3145728) at /Users/ekr/dev/mozilla-inbound/memory/mozjemalloc/jemalloc.c:2978
#3  0x0000000100015498 in huge_dalloc (ptr=0x15a100000) at /Users/ekr/dev/mozilla-inbound/memory/mozjemalloc/jemalloc.c:5352
#4  0x0000000100014d63 in je_free (ptr=0x15a100000) at /Users/ekr/dev/mozilla-inbound/memory/mozjemalloc/jemalloc.c:6591
#5  0x00000001000191bf in ozone_free_definite_size (zone=0x100057000, ptr=0x15a100000, size=2437120) at /Users/ekr/dev/mozilla-inbound/memory/mozjemalloc/jemalloc.c:7063
#6  0x00000001040470cf in vpx_free (memblk=0x15a100008) at /Users/ekr/dev/mozilla-inbound/media/libvpx/vpx_mem/vpx_mem.c:213
#7  0x000000010407827f in dealloc_compressor_data (cpi=0x150f73020) at /Users/ekr/dev/mozilla-inbound/media/libvpx/vp8/encoder/onyx_if.c:374
#8  0x0000000104077aa0 in vp8_remove_compressor (ptr=0x1504fc408) at /Users/ekr/dev/mozilla-inbound/media/libvpx/vp8/encoder/onyx_if.c:2312
#9  0x000000010404e034 in vp8e_destroy (ctx=0x1504fc000) at /Users/ekr/dev/mozilla-inbound/media/libvpx/vp8/vp8_cx_iface.c:652
#10 0x0000000104043c66 in vpx_codec_destroy (ctx=0x12b52a100) at /Users/ekr/dev/mozilla-inbound/media/libvpx/vpx/src/vpx_codec.c:101
#11 0x00000001043ea8f5 in webrtc::VP8Encoder::Release (this=0x12d4fbff0) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/video_coding/codecs/vp8/vp8.cc:71
#12 0x00000001043d09ff in webrtc::VCMGenericEncoder::Release (this=0x129bb57f0) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/video_coding/main/source/generic_encoder.cc:41
#13 0x00000001043c6575 in webrtc::VCMCodecDataBase::DeleteEncoder (this=0x14a3feda8) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/video_coding/main/source/codec_database.cc:128
#14 0x00000001043c6529 in webrtc::VCMCodecDataBase::ResetSender (this=0x14a3feda8) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/video_coding/main/source/codec_database.cc:100
#15 0x00000001043c62cd in webrtc::VCMCodecDataBase::Reset (this=0x14a3feda8) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/video_coding/main/source/codec_database.cc:89
#16 0x00000001043c6259 in webrtc::VCMCodecDataBase::~VCMCodecDataBase (this=0x14a3feda8) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/video_coding/main/source/codec_database.cc:78
#17 0x00000001043c6235 in webrtc::VCMCodecDataBase::~VCMCodecDataBase (this=0x14a3feda8) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/video_coding/main/source/codec_database.cc:77
#18 0x00000001043e5f64 in webrtc::VideoCodingModuleImpl::~VideoCodingModuleImpl (this=0x14a3fc000) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/video_coding/main/source/video_coding_impl.cc:109
#19 0x00000001043e5e45 in webrtc::VideoCodingModuleImpl::~VideoCodingModuleImpl (this=0x14a3fc000) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/video_coding/main/source/video_coding_impl.cc:94
#20 0x00000001043e5e19 in webrtc::VideoCodingModuleImpl::~VideoCodingModuleImpl (this=0x14a3fc000) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/video_coding/main/source/video_coding_impl.cc:94
#21 0x00000001043e616b in webrtc::VideoCodingModule::Destroy (module=0x14a3fc000) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/video_coding/main/source/video_coding_impl.cc:129
#22 0x000000010440ef59 in webrtc::ViEChannel::~ViEChannel (this=0x14d4f7000) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/video_engine/vie_channel.cc:201
#23 0x000000010440eba5 in webrtc::ViEChannel::~ViEChannel (this=0x14d4f7000) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/video_engine/vie_channel.cc:175
#24 0x000000010440eb79 in webrtc::ViEChannel::~ViEChannel (this=0x14d4f7000) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/video_engine/vie_channel.cc:175
#25 0x000000010441ce80 in webrtc::ViEChannelManager::DeleteChannel (this=0x129c93740, channel_id=0) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/video_engine/vie_channel_manager.cc:228
#26 0x00000001043f42a3 in webrtc::ViEBaseImpl::DeleteChannel (this=0x120ce3a80, video_channel=0) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/video_engine/vie_base_impl.cc:172
#27 0x00000001045b1e8c in mozilla::WebrtcVideoConduit::~WebrtcVideoConduit (this=0x149dfd520) at VideoConduit.cpp:75
#28 0x00000001045b1b35 in mozilla::WebrtcVideoConduit::~WebrtcVideoConduit (this=0x149dfd520) at VideoConduit.cpp:32
#29 0x00000001045b1b09 in mozilla::WebrtcVideoConduit::~WebrtcVideoConduit (this=0x149dfd520) at VideoConduit.cpp:32
#30 0x00000001045cc92f in mozilla::MediaSessionConduit::Release (this=0x149dfd520) at MediaConduitInterface.h:142
#31 0x00000001045ccdc3 in mozilla::RefPtr<mozilla::MediaSessionConduit>::unref (t=0x149dfd520) at RefPtr.h:159
#32 0x00000001045ccd98 in mozilla::RefPtr<mozilla::MediaSessionConduit>::~RefPtr (this=0x12ae930d0) at RefPtr.h:109
#33 0x00000001045cbed5 in mozilla::RefPtr<mozilla::MediaSessionConduit>::~RefPtr (this=0x12ae930d0) at RefPtr.h:109
#34 0x00000001045d1fbf in mozilla::MediaPipeline::~MediaPipeline (this=0x12ae93080) at MediaPipeline.h:97
#35 0x000000010461411f in mozilla::MediaPipelineTransmit::~MediaPipelineTransmit (this=0x12ae93080) at MediaPipeline.h:222
#36 0x00000001046122c5 in mozilla::MediaPipelineTransmit::~MediaPipelineTransmit (this=0x12ae93080) at MediaPipeline.h:222
#37 0x00000001046122e9 in mozilla::MediaPipelineTransmit::~MediaPipelineTransmit (this=0x12ae93080) at MediaPipeline.h:222
#38 0x00000001045ccc4f in mozilla::MediaPipeline::Release (this=0x12ae93080) at MediaPipeline.h:121
#39 0x00000001045ccb93 in mozilla::RefPtr<mozilla::MediaPipeline>::unref (t=0x12ae93080) at RefPtr.h:159
#40 0x00000001045ccb68 in mozilla::RefPtr<mozilla::MediaPipeline>::~RefPtr (this=0x129bb51e8) at RefPtr.h:109
#41 0x00000001045cbf85 in mozilla::RefPtr<mozilla::MediaPipeline>::~RefPtr (this=0x129bb51e8) at RefPtr.h:109
#42 0x00000001045cc6ec in std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> >::~pair (this=0x129bb51e0) at stl_pair.h:68
#43 0x00000001045cc6c5 in std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> >::~pair (this=0x129bb51e0) at stl_pair.h:68
#44 0x00000001045cc5e9 in __gnu_cxx::new_allocator<std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> > >::destroy (this=0x7fff5fbefe38, __p=0x129bb51e0) at new_allocator.h:110
#45 0x00000001045cc56b in std::_Rb_tree<int, std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> >, std::_Select1st<std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> > >, std::less<int>, std::allocator<std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> > > >::_M_destroy_node (this=0x122324c48, __p=0x129bb51c0) at stl_tree.h:401
#46 0x00000001045cc44b in std::_Rb_tree<int, std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> >, std::_Select1st<std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> > >, std::less<int>, std::allocator<std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> > > >::_M_erase (this=0x122324c48, __x=0x129bb51c0) at stl_tree.h:1326
#47 0x00000001045cc3d5 in std::_Rb_tree<int, std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> >, std::_Select1st<std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> > >, std::less<int>, std::allocator<std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> > > >::~_Rb_tree (this=0x122324c48) at stl_tree.h:593
#48 0x00000001045cc3a5 in std::_Rb_tree<int, std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> >, std::_Select1st<std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> > >, std::less<int>, std::allocator<std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> > > >::~_Rb_tree (this=0x122324c48) at stl_tree.h:593
#49 0x00000001045cc385 in std::map<int, mozilla::RefPtr<mozilla::MediaPipeline>, std::less<int>, std::allocator<std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> > > >::~map (this=0x122324c48) at stl_map.h:93
#50 0x00000001045cc365 in std::map<int, mozilla::RefPtr<mozilla::MediaPipeline>, std::less<int>, std::allocator<std::pair<int const, mozilla::RefPtr<mozilla::MediaPipeline> > > >::~map (this=0x122324c48) at stl_map.h:93
#51 0x00000001045cc33c in sipcc::LocalSourceStreamInfo::~LocalSourceStreamInfo (this=0x122324c40) at PeerConnectionMedia.h:166
#52 0x00000001045cc2b5 in sipcc::LocalSourceStreamInfo::~LocalSourceStreamInfo (this=0x122324c40) at PeerConnectionMedia.h:164
#53 0x00000001045cc279 in sipcc::LocalSourceStreamInfo::Release (this=0x122324c40) at PeerConnectionMedia.h:188
#54 0x00000001045cc1cd in nsRefPtr<sipcc::LocalSourceStreamInfo>::~nsRefPtr (this=0x12ae7a498) at nsAutoPtr.h:876
#55 0x00000001045cc0f5 in nsRefPtr<sipcc::LocalSourceStreamInfo>::~nsRefPtr (this=0x12ae7a498) at nsAutoPtr.h:874
#56 0x0000000104606d35 in nsTArrayElementTraits<nsRefPtr<sipcc::LocalSourceStreamInfo> >::Destruct (e=0x12ae7a498) at nsTArray.h:432
#57 0x0000000104606cd2 in nsTArray_Impl<nsRefPtr<sipcc::LocalSourceStreamInfo>, nsTArrayInfallibleAllocator>::DestructRange (this=0x121e80e90, start=0, count=1) at nsTArray.h:1297
#58 0x0000000104606c54 in nsTArray_Impl<nsRefPtr<sipcc::LocalSourceStreamInfo>, nsTArrayInfallibleAllocator>::RemoveElementsAt (this=0x121e80e90, start=0, count=1) at nsTArray.h:1017
#59 0x0000000104606b1f in nsTArray_Impl<nsRefPtr<sipcc::LocalSourceStreamInfo>, nsTArrayInfallibleAllocator>::Clear (this=0x121e80e90) at nsTArray.h:1028
#60 0x0000000104608e86 in sipcc::PeerConnectionMedia::DisconnectMediaStreams (this=0x121e80e00) at PeerConnectionMedia.cpp:241
#61 0x0000000104608b65 in sipcc::PeerConnectionMedia::SelfDestruct (this=0x121e80e00) at PeerConnectionMedia.cpp:217
#62 0x0000000104601343 in mozilla::runnable_args_m_0<sipcc::PeerConnectionMedia*, void (sipcc::PeerConnectionMedia::*)()>::Run (this=0x129bec0a0) at runnable_utils_generated.h:48
#63 0x00000001045fcade in mozilla::RUN_ON_THREAD (thread=0x100342420, runnable=0x129bec0a0, flags=0) at runnable_utils.h:54
#64 0x00000001045fe8b2 in sipcc::PeerConnectionImpl::ShutdownMedia (this=0x121e80c00, aIsSynchronous=false) at PeerConnectionImpl.cpp:962
#65 0x00000001045fabf7 in sipcc::PeerConnectionImpl::CloseInt (this=0x121e80c00, aIsSynchronous=false) at PeerConnectionImpl.cpp:937
#66 0x00000001045fe7d9 in sipcc::PeerConnectionImpl::Close (this=0x121e80c00, aIsSynchronous=false) at PeerConnectionImpl.cpp:919
#67 0x00000001039425e9 in NS_InvokeByIndex_P (that=0x121e80c00, methodIndex=14, paramCount=1, params=0x7fff5fbf0b28) at /Users/ekr/dev/mozilla-inbound/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_x86_64_unix.cpp:162
#68 0x0000000102b61b84 in CallMethodHelper::Invoke (this=0x7fff5fbf0ae8) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedNative.cpp:3085
#69 0x0000000102b5fe2c in CallMethodHelper::Call (this=0x7fff5fbf0ae8) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedNative.cpp:2419
#70 0x0000000102b5c17e in XPCWrappedNative::CallMethod (ccx=@0x7fff5fbf0ca8, mode=XPCWrappedNative::CALL_METHOD) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedNative.cpp:2385
#71 0x0000000102b6cafa in XPC_WN_CallMethod (cx=0x100373540, argc=1, vp=0x11d200390) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1488
#72 0x00000001048a9d9d in js::CallJSNative (cx=0x100373540, native=0x102b6c8a0 <XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*)>, args=@0x7fff5fbf0f60) at jscntxtinlines.h:373
#73 0x000000010489eb0e in js::InvokeKernel (cx=0x100373540, args={<JS::CallReceiver> = {usedRval_ = false, argv_ = 0x11d2003a0}, argc_ = 1}, construct=js::NO_CONSTRUCT) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:391
#74 0x00000001049caa91 in js::Invoke (cx=0x100373540, args=@0x7fff5fbf13f8, construct=js::NO_CONSTRUCT) at jsinterp.h:112
#75 0x000000010482b6d9 in js_fun_apply (cx=0x100373540, argc=2, vp=0x11d200370) at /Users/ekr/dev/mozilla-inbound/js/src/jsfun.cpp:960
#76 0x00000001048a9d9d in js::CallJSNative (cx=0x100373540, native=0x10482af90 <js_fun_apply(JSContext*, unsigned int, JS::Value*)>, args=@0x7fff5fbf1650) at jscntxtinlines.h:373
#77 0x000000010489eb0e in js::InvokeKernel (cx=0x100373540, args={<JS::CallReceiver> = {usedRval_ = false, argv_ = 0x11d200380}, argc_ = 2}, construct=js::NO_CONSTRUCT) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:391
#78 0x0000000104896e6b in js::Interpret (cx=0x100373540, entryFrame=0x11d200278, interpMode=js::JSINTERP_NORMAL) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:2367
#79 0x0000000104890a96 in js::RunScript (cx=0x100373540, script={<js::HandleBase<JSScript *>> = {<No data fields>}, ptr = 0x7fff5fbf3a10}, fp=0x11d200278) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:348
#80 0x000000010489ec63 in js::InvokeKernel (cx=0x100373540, args={<JS::CallReceiver> = {usedRval_ = false, argv_ = 0x11d200278}, argc_ = 0}, construct=js::NO_CONSTRUCT) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:406
#81 0x00000001049caa91 in js::Invoke (cx=0x100373540, args=@0x7fff5fbf3b80, construct=js::NO_CONSTRUCT) at jsinterp.h:112
#82 0x000000010489f2a8 in js::Invoke (cx=0x100373540, thisv=@0x7fff5fbf3c40, fval=@0x7fff5fbf3ca8, argc=0, argv=0x7fff5fbf43a0, rval=0x7fff5fbf4090) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:439
#83 0x000000010478fa84 in JS_CallFunctionValue (cx=0x100373540, objArg=0x122c3d180, fval={data = {asBits = 18445477441114418624, debugView = {payload47 = 4800064960, tag = JSVAL_TAG_OBJECT}, s = {payload = {i32 = 505097664, u32 = 505097664, why = 505097664}}, asDouble = -nan(0xb80011e1b2dc0), asPtr = 0xfffb80011e1b2dc0, asWord = 18445477441114418624, asUIntPtr = 18445477441114418624}}, argc=0, argv=0x7fff5fbf43a0, rval=0x7fff5fbf4090) at /Users/ekr/dev/mozilla-inbound/js/src/jsapi.cpp:5802
#84 0x0000000102b4fae7 in nsXPCWrappedJSClass::CallMethod (this=0x122e3dba0, wrapper=0x122bfa700, methodIndex=11, info_=0x11be21110, nativeParams=0x7fff5fbf46e0) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedJSClass.cpp:1432
#85 0x0000000102b423a4 in nsXPCWrappedJS::CallMethod (this=0x122bfa700, methodIndex=11, info=0x11be21110, params=0x7fff5fbf46e0) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedJS.cpp:580
#86 0x00000001039440a4 in PrepareAndDispatch (self=0x129be48a0, methodIndex=11, args=0x7fff5fbf4830, gpregs=0x7fff5fbf47b0, fpregs=0x7fff5fbf47e0) at /Users/ekr/dev/mozilla-inbound/xpcom/reflect/xptcall/src/md/unix/xptcstubs_x86_64_darwin.cpp:122
#87 0x0000000103942b0b in SharedStub () at /Users/ekr/dev/mozilla-inbound/xpcom/reflect/xptcall/src/md/unix/xptcstubs_x86_64_darwin.cpp:35
#88 0x00000001039425e9 in NS_InvokeByIndex_P (that=0x129be48a0, methodIndex=11, paramCount=0, params=0x7fff5fbf4aa8) at /Users/ekr/dev/mozilla-inbound/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_x86_64_unix.cpp:162
#89 0x0000000102b61b84 in CallMethodHelper::Invoke (this=0x7fff5fbf4a68) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedNative.cpp:3085
#90 0x0000000102b5fe2c in CallMethodHelper::Call (this=0x7fff5fbf4a68) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedNative.cpp:2419
#91 0x0000000102b5c17e in XPCWrappedNative::CallMethod (ccx=@0x7fff5fbf4c28, mode=XPCWrappedNative::CALL_METHOD) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedNative.cpp:2385
#92 0x0000000102b6cafa in XPC_WN_CallMethod (cx=0x100373540, argc=0, vp=0x11d200258) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1488
#93 0x00000001048a9d9d in js::CallJSNative (cx=0x100373540, native=0x102b6c8a0 <XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*)>, args=@0x7fff5fbf4ee0) at jscntxtinlines.h:373
#94 0x000000010489eb0e in js::InvokeKernel (cx=0x100373540, args={<JS::CallReceiver> = {usedRval_ = false, argv_ = 0x11d200268}, argc_ = 0}, construct=js::NO_CONSTRUCT) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:391
#95 0x0000000104896e6b in js::Interpret (cx=0x100373540, entryFrame=0x11d2000e8, interpMode=js::JSINTERP_NORMAL) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:2367
#96 0x0000000104890a96 in js::RunScript (cx=0x100373540, script={<js::HandleBase<JSScript *>> = {<No data fields>}, ptr = 0x7fff5fbf72a0}, fp=0x11d2000e8) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:348
#97 0x000000010489ec63 in js::InvokeKernel (cx=0x100373540, args={<JS::CallReceiver> = {usedRval_ = false, argv_ = 0x11d2000d0}, argc_ = 1}, construct=js::NO_CONSTRUCT) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:406
#98 0x00000001049caa91 in js::Invoke (cx=0x100373540, args=@0x7fff5fbf7410, construct=js::NO_CONSTRUCT) at jsinterp.h:112
#99 0x000000010489f2a8 in js::Invoke (cx=0x100373540, thisv=@0x7fff5fbf74d0, fval=@0x7fff5fbf7538, argc=1, argv=0x7fff5fbf7c30, rval=0x7fff5fbf7920) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:439
#100 0x000000010478fa84 in JS_CallFunctionValue (cx=0x100373540, objArg=0x12b243bc0, fval={data = {asBits = 18445477441333115840, debugView = {payload47 = 5018762176, tag = JSVAL_TAG_OBJECT}, s = {payload = {i32 = 723794880, u32 = 723794880, why = 723794880}}, asDouble = -nan(0xb80012b243bc0), asPtr = 0xfffb80012b243bc0, asWord = 18445477441333115840, asUIntPtr = 18445477441333115840}}, argc=1, argv=0x7fff5fbf7c30, rval=0x7fff5fbf7920) at /Users/ekr/dev/mozilla-inbound/js/src/jsapi.cpp:5802
#101 0x0000000102b4fae7 in nsXPCWrappedJSClass::CallMethod (this=0x12cbd2f60, wrapper=0x12131dd80, methodIndex=3, info_=0x11be0d9a0, nativeParams=0x7fff5fbf7f70) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedJSClass.cpp:1432
#102 0x0000000102b423a4 in nsXPCWrappedJS::CallMethod (this=0x12131dd80, methodIndex=3, info=0x11be0d9a0, params=0x7fff5fbf7f70) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedJS.cpp:580
#103 0x00000001039440a4 in PrepareAndDispatch (self=0x14bbff780, methodIndex=3, args=0x7fff5fbf80c0, gpregs=0x7fff5fbf8040, fpregs=0x7fff5fbf8070) at /Users/ekr/dev/mozilla-inbound/xpcom/reflect/xptcall/src/md/unix/xptcstubs_x86_64_darwin.cpp:122
#104 0x0000000103942b0b in SharedStub () at /Users/ekr/dev/mozilla-inbound/xpcom/reflect/xptcall/src/md/unix/xptcstubs_x86_64_darwin.cpp:35
#105 0x00000001039425e9 in NS_InvokeByIndex_P (that=0x14bbff780, methodIndex=3, paramCount=1, params=0x7fff5fbf8338) at /Users/ekr/dev/mozilla-inbound/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_x86_64_unix.cpp:162
#106 0x0000000102b61b84 in CallMethodHelper::Invoke (this=0x7fff5fbf82f8) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedNative.cpp:3085
#107 0x0000000102b5fe2c in CallMethodHelper::Call (this=0x7fff5fbf82f8) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedNative.cpp:2419
#108 0x0000000102b5c17e in XPCWrappedNative::CallMethod (ccx=@0x7fff5fbf84b8, mode=XPCWrappedNative::CALL_METHOD) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedNative.cpp:2385
#109 0x0000000102b6cafa in XPC_WN_CallMethod (cx=0x100373540, argc=1, vp=0x11d2000a8) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedNativeJSOps.cpp:1488
#110 0x00000001048a9d9d in js::CallJSNative (cx=0x100373540, native=0x102b6c8a0 <XPC_WN_CallMethod(JSContext*, unsigned int, JS::Value*)>, args=@0x7fff5fbf8770) at jscntxtinlines.h:373
#111 0x000000010489eb0e in js::InvokeKernel (cx=0x100373540, args={<JS::CallReceiver> = {usedRval_ = false, argv_ = 0x11d2000b8}, argc_ = 1}, construct=js::NO_CONSTRUCT) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:391
#112 0x0000000104896e6b in js::Interpret (cx=0x100373540, entryFrame=0x11d200038, interpMode=js::JSINTERP_NORMAL) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:2367
#113 0x0000000104890a96 in js::RunScript (cx=0x100373540, script={<js::HandleBase<JSScript *>> = {<No data fields>}, ptr = 0x7fff5fbfab30}, fp=0x11d200038) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:348
#114 0x000000010489ec63 in js::InvokeKernel (cx=0x100373540, args={<JS::CallReceiver> = {usedRval_ = false, argv_ = 0x11d200030}, argc_ = 1}, construct=js::NO_CONSTRUCT) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:406
#115 0x00000001049caa91 in js::Invoke (cx=0x100373540, args=@0x7fff5fbfaca0, construct=js::NO_CONSTRUCT) at jsinterp.h:112
#116 0x000000010489f2a8 in js::Invoke (cx=0x100373540, thisv=@0x7fff5fbfad60, fval=@0x7fff5fbfadc8, argc=1, argv=0x7fff5fbfb4c0, rval=0x7fff5fbfb1b0) at /Users/ekr/dev/mozilla-inbound/js/src/jsinterp.cpp:439
#117 0x000000010478fa84 in JS_CallFunctionValue (cx=0x100373540, objArg=0x122c3d1c0, fval={data = {asBits = 18445477441197887744, debugView = {payload47 = 4883534080, tag = JSVAL_TAG_OBJECT}, s = {payload = {i32 = 588566784, u32 = 588566784, why = 588566784}}, asDouble = -nan(0xb80012314d100), asPtr = 0xfffb80012314d100, asWord = 18445477441197887744, asUIntPtr = 18445477441197887744}}, argc=1, argv=0x7fff5fbfb4c0, rval=0x7fff5fbfb1b0) at /Users/ekr/dev/mozilla-inbound/js/src/jsapi.cpp:5802
#118 0x0000000102b4fae7 in nsXPCWrappedJSClass::CallMethod (this=0x12c873a10, wrapper=0x12131ee80, methodIndex=8, info_=0x11be0c8f0, nativeParams=0x7fff5fbfb800) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedJSClass.cpp:1432
#119 0x0000000102b423a4 in nsXPCWrappedJS::CallMethod (this=0x12131ee80, methodIndex=8, info=0x11be0c8f0, params=0x7fff5fbfb800) at /Users/ekr/dev/mozilla-inbound/js/xpconnect/src/XPCWrappedJS.cpp:580
#120 0x00000001039440a4 in PrepareAndDispatch (self=0x122d8d7e0, methodIndex=8, args=0x7fff5fbfb950, gpregs=0x7fff5fbfb8d0, fpregs=0x7fff5fbfb900) at /Users/ekr/dev/mozilla-inbound/xpcom/reflect/xptcall/src/md/unix/xptcstubs_x86_64_darwin.cpp:122
#121 0x0000000103942b0b in SharedStub () at /Users/ekr/dev/mozilla-inbound/xpcom/reflect/xptcall/src/md/unix/xptcstubs_x86_64_darwin.cpp:35
#122 0x00000001046050fc in sipcc::PeerConnectionObserverDispatch::Run (this=0x12db97600) at PeerConnectionImpl.cpp:157
#123 0x0000000103907756 in nsThread::ProcessNextEvent (this=0x100342420, mayWait=false, result=0x7fff5fbfc063) at /Users/ekr/dev/mozilla-inbound/xpcom/threads/nsThread.cpp:627
#124 0x000000010386bbfc in NS_ProcessPendingEvents_P (thread=0x100342420, timeout=20) at nsThreadUtils.cpp:187
#125 0x00000001031bacdf in nsBaseAppShell::NativeEventCallback (this=0x11bd64880) at /Users/ekr/dev/mozilla-inbound/widget/xpwidgets/nsBaseAppShell.cpp:97
#126 0x000000010314ad2c in nsAppShell::ProcessGeckoEvents (aInfo=0x11bd64880) at /Users/ekr/dev/mozilla-inbound/widget/cocoa/nsAppShell.mm:387
#127 0x00007fff8a69a3d1 in __CFRunLoopDoSources0 ()
#128 0x00007fff8a6985c9 in __CFRunLoopRun ()
#129 0x00007fff8a697d8f in CFRunLoopRunSpecific ()
#130 0x00007fff87ee07ee in RunCurrentEventLoopInMode ()
#131 0x00007fff87ee05f3 in ReceiveNextEventCommon ()
#132 0x00007fff87ee04ac in BlockUntilNextEventMatchingListInMode ()
#133 0x00007fff83a65eb2 in _DPSNextEvent ()
#134 0x00007fff83a65801 in -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] ()
#135 0x00000001031494f7 in -[GeckoNSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] (self=0x100379670, _cmd=0x7fff8415d138, mask=18446744073709551615, expiration=0x1215c9e40, mode=0x7fff7127c390, flag=1 '\001') at /Users/ekr/dev/mozilla-inbound/widget/cocoa/nsAppShell.mm:164
#136 0x00007fff83a2b68f in -[NSApplication run] ()
#137 0x000000010314b801 in nsAppShell::Run (this=0x11bd64880) at /Users/ekr/dev/mozilla-inbound/widget/cocoa/nsAppShell.mm:741
#138 0x0000000102d9828c in nsAppStartup::Run (this=0x11bee0330) at /Users/ekr/dev/mozilla-inbound/toolkit/components/startup/nsAppStartup.cpp:288
#139 0x0000000101196832 in XREMain::XRE_mainRun (this=0x7fff5fbfdb00) at /Users/ekr/dev/mozilla-inbound/toolkit/xre/nsAppRunner.cpp:3823
#140 0x0000000101196fff in XREMain::XRE_main (this=0x7fff5fbfdb00, argc=6, argv=0x7fff5fbfe6f0, aAppData=0x100008250) at /Users/ekr/dev/mozilla-inbound/toolkit/xre/nsAppRunner.cpp:3890
#141 0x000000010119743d in XRE_main (argc=6, argv=0x7fff5fbfe6f0, aAppData=0x100008250, aFlags=0) at /Users/ekr/dev/mozilla-inbound/toolkit/xre/nsAppRunner.cpp:4088
#142 0x0000000100001ce3 in do_main (argc=6, argv=0x7fff5fbfe6f0) at /Users/ekr/dev/mozilla-inbound/browser/app/nsBrowserApp.cpp:174
#143 0x000000010000154c in main (argc=6, argv=0x7fff5fbfe6f0) at /Users/ekr/dev/mozilla-inbound/browser/app/nsBrowserApp.cpp:279
Reliable crash under ASan


(gdb) bt
#0  0x000000010aa4bfef in vp8_encode_frame (cpi=0x1832be0a0) at /Users/ekr/dev/mozilla-inbound/media/libvpx/vp8/encoder/encodeframe.c:833
#1  0x000000010aa9e3ab in encode_frame_to_data_rate (cpi=0x1832be0a0, size=0x18313b6a0, dest=0x131105080 "\021\005", dest_end=0x1311e6080 " ", frame_flags=0x18313b560) at /Users/ekr/dev/mozilla-inbound/media/libvpx/vp8/encoder/onyx_if.c:3737
#2  0x000000010aa97d4b in vp8_get_compressed_data (cpi=0x1832be0a0, frame_flags=<value temporarily unavailable, due to optimizations>, size=0x18313b6a0, dest=0x131105080 "\021\005", dest_end=0x1311e6080 " ", time_stamp=<value temporarily unavailable, due to optimizations>, time_end=<value temporarily unavailable, due to optimizations>, flush=<value temporarily unavailable, due to optimizations>) at /Users/ekr/dev/mozilla-inbound/media/libvpx/vp8/encoder/onyx_if.c:4871
#3  0x000000010aa34c5b in vp8e_encode (ctx=<value temporarily unavailable, due to optimizations>, img=<value temporarily unavailable, due to optimizations>, pts=<value temporarily unavailable, due to optimizations>, duration=<value temporarily unavailable, due to optimizations>, flags=<value temporarily unavailable, due to optimizations>, deadline=<value temporarily unavailable, due to optimizations>) at /Users/ekr/dev/mozilla-inbound/media/libvpx/vp8/vp8_cx_iface.c:859
#4  0x000000010aa281ed in vpx_codec_encode (ctx=0x165cbf180, img=0x100000000000, pts=21000, duration=3000, flags=0, deadline=1) at /Users/ekr/dev/mozilla-inbound/media/libvpx/vpx/src/vpx_encoder.c:223
#5  0x000000010b0f44b1 in webrtc::VP8Encoder::Encode (this=0x143b82280, input_image=@0x1731bc158, codec_specific_info=<value temporarily unavailable, due to optimizations>, frame_type=webrtc::kDeltaFrame) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/video_coding/codecs/vp8/vp8.cc:388
#6  0x000000010b0ec682 in webrtc::VideoCodingModuleImpl::AddVideoFrame (this=0x13f0cc080, videoFrame=@0x1731bc158, contentMetrics=0x0, codecSpecificInfo=0x18313bb60) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/video_coding/main/source/video_coding_impl.cc:680
#7  0x000000010b15f070 in webrtc::ViEEncoder::DeliverFrame (this=<value temporarily unavailable, due to optimizations>, id=1931198808, video_frame=<value temporarily unavailable, due to optimizations>, num_csrcs=0, CSRC=<value temporarily unavailable, due to optimizations>) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/video_engine/vie_encoder.cc:519
#8  0x000000010b169e5f in webrtc::ViEFrameProviderBase::DeliverFrame (this=<value temporarily unavailable, due to optimizations>, video_frame=0x1731bc158, num_csrcs=0, CSRC=0x0) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/video_engine/vie_frame_provider_base.cc:61
#9  0x000000010b135bda in webrtc::VideoFrame::Length () at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/modules/interface/module_common_types.h:541
#10 0x000000010b135bda in webrtc::ViECapturer::ViECaptureProcess (this=0x1731bc080) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/video_engine/vie_capturer.cc:543
#11 0x000000010b12f9b9 in webrtc::ViECapturer::ViECaptureThreadFunction (obj=0x1832d8a18) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/video_engine/vie_capturer.cc:529
#12 0x000000010b0a5714 in webrtc::ThreadPosix::Run (this=0x143b6f880) at /Users/ekr/dev/mozilla-inbound/media/webrtc/trunk/src/system_wrappers/source/thread_posix.cc:361
#13 0x000000010b0a4fc9 in StartThread (lpParameter=0x1832d8a18) at thread_posix.h:72
#14 0x0000000100010d1b in __asan::AsanThread::ThreadStart ()
#15 0x00007fff85485e89 in thread_start ()
Assigning to derf, though investigation may need to be done by ekr for now
Assignee: nobody → tterribe
Blocks: 729125
Keywords: crash
Priority: -- → P1
Whiteboard: [WebRTC] [blocking-webrtc+]
I think you've marked this as blocking the wrong .
No longer blocks: 729125
Severity: normal → critical
Summary: Crash in mochitest cleanup down in WebRTC code → Crash in mochitest cleanup down in WebRTC code [@ vp8_encode_frame]
This looks like it is caused by bug 825447. Let's retest once that lands.
Depends on: 825447
825477
Depends on: 825477
No longer depends on: 825447
Blocks: 825510
Whiteboard: [WebRTC] [blocking-webrtc+] → [WebRTC][blocking-webrtc+][automation-blocked]
bug 825477 is fixed now, reminder to re-test per comment 4
Matt agreed to test this as per comment 6.
Flags: needinfo?(mwobensmith)
Please retest (qawanted)
Assignee: tterribe → jsmith
Keywords: qawanted
Flags: needinfo?(mwobensmith) → needinfo?(jsmith)
Keywords: sec-high
Matt says he'll grab this tomorrow morning. The best way to verify this is to run the dom/media/tests/mochitest tests on an ASAN build a few times and make sure we don't get a crash stack seen in this bug.
Flags: needinfo?(jsmith)
I ran the Mochitest tests on a new ASan build from 2013-02-21 several times. No crash.
Thanks Matt. Closing as such.
Assignee: jsmith → nobody
Status: NEW → RESOLVED
Closed: 11 years ago
QA Contact: jsmith → mwobensmith
Resolution: --- → FIXED
Status: RESOLVED → VERIFIED
Flags: in-testsuite+
Whiteboard: [WebRTC][blocking-webrtc+][automation-blocked] → [WebRTC][blocking-webrtc+]
Group: core-security → core-security-release
Group: core-security-release
You need to log in before you can comment on or make changes to this bug.