Bug 308362
| Summary: | [GStreamer] webrtc/processIceTransportStateChange-gc.html is a flaky crash | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Claudio Saavedra <csaavedra> |
| Component: | WebRTC | Assignee: | Philippe Normand <philn> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | aboya, calvaris, eocanha, philn, vwatermeier, webkit-bug-importer, youennf |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Claudio Saavedra
https://build.webkit.org/results/GTK-Linux-64-bit-Release-Tests/307959@main%20(23510)/webrtc/processIceTransportStateChange-gc-crash-log.txt
https://results.webkit.org/?suite=layout-tests&test=webrtc%2FprocessIceTransportStateChange-gc.html&platform=GTK&platform=WPE
Thread 1 (Thread 0x7fb5a97fa6c0 (LWP 1482322)):
#0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:44
#1 __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78
#2 __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ./nptl/pthread_kill.c:89
#3 0x00007fb902c3327e in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#4 0x00007fb902c168ff in __GI_abort () at ./stdlib/abort.c:79
#5 0x00007fb8ff01fd24 in g_mutex_clear () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6 0x00007fb8400450b4 in transport_receive_bin_finalize (object=0x7fb3f8014870) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gst-plugins-bad/ext/webrtc/transportreceivebin.c:225
#7 0x00007fb9018c761d in g_object_unref () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#8 0x00007fb8400472d4 in transport_stream_dispose (object=0x7fb3f80249f0) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gst-plugins-bad/ext/webrtc/transportstream.c:195
#9 0x00007fb9018c73fe in g_object_unref () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#10 0x00007fb8fef8c69e in ??? () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#11 0x00007fb8400332d2 in gst_webrtc_bin_finalize (object=0x555feb592b10) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gst-plugins-bad/ext/webrtc/gstwebrtcbin.c:8802
#12 0x00007fb9018c761d in g_object_unref () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#13 0x00007fb8fe69f59f in gst_bin_remove_func (bin=0x555fed1429b0, element=<optimized out>) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gstreamer/gst/gstbin.c:1817
#14 0x00007fb8fe69e6af in gst_bin_remove (bin=bin@entry=0x555fed1429b0, element=0x555feb592b10) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gstreamer/gst/gstbin.c:1868
#15 0x00007fb8fe69e9b3 in gst_bin_dispose (object=0x555fed1429b0) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gstreamer/gst/gstbin.c:527
#16 0x00007fb9018c73fe in g_object_unref () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#17 0x00007fb8fe69631b in gst_object_dispatch_properties_changed (object=0x7fb3f80077b0, n_pspecs=1, pspecs=0x7fb5a97f8ab0) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gstreamer/gst/gstobject.c:483
#18 0x00007fb9018b8ade in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#19 0x00007fb9018cc508 in g_object_set_valist () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#20 0x00007fb9018cc92d in g_object_set () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#21 0x00007fb840045787 in transport_receive_bin_set_receive_state (receive=0x7fb3f8014870, state=<optimized out>) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gst-plugins-bad/ext/webrtc/transportreceivebin.c:150
#22 0x00007fb9018b82fa in g_closure_invoke () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#23 0x00007fb9018e7c79 in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#24 0x00007fb9018d8591 in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#25 0x00007fb9018d87c1 in g_signal_emit_valist () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#26 0x00007fb9018d8883 in g_signal_emit () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#27 0x00007fb9018c42e4 in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#28 0x00007fb8fe696228 in gst_object_dispatch_properties_changed (object=0x7fb3f8017330, n_pspecs=1, pspecs=0x7fb5a97f9330) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gstreamer/gst/gstobject.c:457
#29 0x00007fb9018ca9ca in g_object_notify () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#30 0x00007fb9069f243a in WTF::Detail::CallableWrapper<webkitGstWebRTCIceAgentComponentStateChangedForStream(_WebKitGstIceAgent*, unsigned int, RiceAgentComponentStateChange&)::{lambda(auto:1 const*)#1}, void, _WebKitGstIceStream const*>::call(_WebKitGstIceStream const*) () at /sdk/webkit/WebKitBuild/GTK/Release/lib/libwebkitgtk-6.0.so.4
#31 0x00007fb9069f7bb1 in webkitGstWebRTCIceAgentComponentStateChangedForStream(_WebKitGstIceAgent*, unsigned int, RiceAgentComponentStateChange&) () at /sdk/webkit/WebKitBuild/GTK/Release/lib/libwebkitgtk-6.0.so.4
#32 0x00007fb9081484f3 in agentSourcePrepare(_GSource*, int*) () at /sdk/webkit/WebKitBuild/GTK/Release/lib/libwebkitgtk-6.0.so.4
#33 0x00007fb8fefc686a in ??? () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007fb8fefc6a4a in g_main_context_prepare () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#35 0x00007fb90156813e in WTF::RunLoop::runGLibMainLoopIteration(WTF::RunLoop::MayBlock) () at /sdk/webkit/WebKitBuild/GTK/Release/lib/libjavascriptcoregtk-6.0.so.1
#36 0x00007fb9015686d2 in WTF::RunLoop::run() () at /sdk/webkit/WebKitBuild/GTK/Release/lib/libjavascriptcoregtk-6.0.so.1
#37 0x00007fb9014ea11d in WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) () at /sdk/webkit/WebKitBuild/GTK/Release/lib/libjavascriptcoregtk-6.0.so.1
#38 0x00007fb90156d8cd in WTF::wtfThreadEntryPoint(void*) () at /sdk/webkit/WebKitBuild/GTK/Release/lib/libjavascriptcoregtk-6.0.so.1
#39 0x00007fb902c8aaa4 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:447
#40 0x00007fb902d17c6c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
STDERR: warning: 44 ./nptl/pthread_kill.c: No such file or directory
STDERR: 0:00:51.916450335 1481033 0x555fe9470770 ERROR webrtcbin gstwebrtcbin.c:8635:gst_webrtc_bin_set_property:<webkit-webrtcbin-26> Balanced bundle policy not implemented yet
STDERR: 0:00:51.918526605 1481033 0x555fe9470770 ERROR webrtcbin gstwebrtcbin.c:8635:gst_webrtc_bin_set_property:<webkit-webrtcbin-27> Balanced bundle policy not implemented yet
STDERR: 0:00:51.972934878 1481033 0x555fe9470770 ERROR webrtcbin gstwebrtcbin.c:8635:gst_webrtc_bin_set_property:<webkit-webrtcbin-28> Balanced bundle policy not implemented yet
STDERR: 0:00:51.974495078 1481033 0x555fe9470770 ERROR webrtcbin gstwebrtcbin.c:8635:gst_webrtc_bin_set_property:<webkit-webrtcbin-29> Balanced bundle policy not implemented yet
STDERR: 0:00:52.029107845 1481033 0x555fe9470770 ERROR webrtcbin gstwebrtcbin.c:8635:gst_webrtc_bin_set_property:<webkit-webrtcbin-30> Balanced bundle policy not implemented yet
STDERR: 0:00:52.030509638 1481033 0x555fe9470770 ERROR webrtcbin gstwebrtcbin.c:8635:gst_webrtc_bin_set_property:<webkit-webrtcbin-31> Balanced bundle policy not implemented yet
STDERR: 0:00:52.075055761 1481033 0x555fe9470770 ERROR webrtcbin gstwebrtcbin.c:8635:gst_webrtc_bin_set_property:<webkit-webrtcbin-32> Balanced bundle policy not implemented yet
STDERR: 0:00:52.076219416 1481033 0x555fe9470770 ERROR webrtcbin gstwebrtcbin.c:8635:gst_webrtc_bin_set_property:<webkit-webrtcbin-33> Balanced bundle policy not implemented yet
STDERR: 0:00:52.123624578 1481033 0x555fe9470770 ERROR webrtcbin gstwebrtcbin.c:8635:gst_webrtc_bin_set_property:<webkit-webrtcbin-34> Balanced bundle policy not implemented yet
STDERR: 0:00:52.124624957 1481033 0x555fe9470770 ERROR webrtcbin gstwebrtcbin.c:8635:gst_webrtc_bin_set_property:<webkit-webrtcbin-35> Balanced bundle policy not implemented yet
STDERR: g_mutex_clear() called on uninitialised or locked mutex
STDERR: WebKitWebProcess terminated (pid 1481033) for reason: crash
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Claudio Saavedra
It often crashes in GTK, haven't seen a crash in WPE tho.
Philippe Normand
When it crashes in Debug the bt is different:
Thread 1 (Thread 0x7f89caffd6c0 (LWP 2344060)):
#0 0x00007f8df3193671 in g_logv () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1 0x00007f8df3193923 in g_log () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2 0x00007f8df2853bd1 in gst_element_add_pad (element=element@entry=0x55eaee543530, pad=pad@entry=0x7f89700197f0) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gstreamer/gst/gstelement.c:808
#3 0x00007f8bf41a4d92 in expose_recv_src_pad (rtpbin=0x55eaee543530, pad=0x7f8970019ac0, stream=<optimized out>, pt=99 'c') at ../../../../../jhbuild/checkout/gstreamer/subprojects/gst-plugins-good/gst/rtpmanager/gstrtpbin.c:4222
#4 0x00007f8defbebb16 in ??? () at /lib/x86_64-linux-gnu/libffi.so.8
#5 0x00007f8defbe83ef in ??? () at /lib/x86_64-linux-gnu/libffi.so.8
#6 0x00007f8defbeb0be in ffi_call () at /lib/x86_64-linux-gnu/libffi.so.8
#7 0x00007f8df92bedb2 in g_cclosure_marshal_generic () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#8 0x00007f8df92b82fa in g_closure_invoke () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#9 0x00007f8df92e790c in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#10 0x00007f8df92d8591 in ??? () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#11 0x00007f8df92d87c1 in g_signal_emit_valist () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#12 0x00007f8df92d8883 in g_signal_emit () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#13 0x00007f8bf41c3265 in gst_rtp_pt_demux_chain (pad=<optimized out>, parent=0x7f894001ad30, buf=0x7f89700274d0) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gst-plugins-good/gst/rtpmanager/gstrtpptdemux.c:572
#14 0x00007f8df287533e in gst_pad_chain_data_unchecked (pad=pad@entry=0x7f894001aeb0, type=type@entry=4112, data=data@entry=0x7f89700274d0) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gstreamer/gst/gstpad.c:4559
#15 0x00007f8df2877e59 in gst_pad_push_data (pad=pad@entry=0x7f8940011310, type=type@entry=4112, data=data@entry=0x7f89700274d0) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gstreamer/gst/gstpad.c:4852
#16 0x00007f8df287f67c in gst_pad_push (pad=0x7f8940011310, buffer=buffer@entry=0x7f89700274d0) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gstreamer/gst/gstpad.c:4971
#17 0x00007f8bf41bb14a in pop_and_push_next (jitterbuffer=jitterbuffer@entry=0x7f894000ce90, seqnum=seqnum@entry=6538) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gst-plugins-good/gst/rtpmanager/gstrtpjitterbuffer.c:4042
#18 0x00007f8bf41bc50b in handle_next_buffer (jitterbuffer=0x7f894000ce90) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gst-plugins-good/gst/rtpmanager/gstrtpjitterbuffer.c:4147
#19 gst_rtp_jitter_buffer_loop (jitterbuffer=0x7f894000ce90) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gst-plugins-good/gst/rtpmanager/gstrtpjitterbuffer.c:4666
#20 0x00007f8df28b3f52 in gst_task_func (task=0x7f894000a930) at ../../../../../jhbuild/checkout/gstreamer/subprojects/gstreamer/gst/gsttask.c:399
#21 0x00007f8df31c2422 in ??? () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#22 0x00007f8df31bce62 in ??? () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#23 0x00007f8dfa68aaa4 in start_thread (arg=<optimized out>) at ./nptl/pthread_create.c:447
#24 0x00007f8dfa717c6c in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
STDERR: Padname recv_rtp_src_1_864304766_99 is not unique in element rtpbin, not adding
Philippe Normand
Pull request: https://github.com/WebKit/WebKit/pull/59206
EWS
Committed 308034@main (7f4863ccf193): <https://commits.webkit.org/308034@main>
Reviewed commits have been landed. Closing PR #59206 and removing active labels.
Radar WebKit Bug Importer
<rdar://problem/170969380>
Claudio Saavedra
Thanks for fixing. Will this also fix the Debug crash?
Philippe Normand
I'm not sure, I'll keep an eye on this test in the coming days and re-garden/re-open this bug if needed.
Philippe Normand
So far so green \o/
Philippe Normand
It happened again: https://build.webkit.org/results/GTK-Linux-64-bit-Debug-Tests/308315@main%20(18257)/webrtc/processIceTransportStateChange-gc-crash-log.txt
Didn't we have a bug for this kind of crash? I think it happens sporadically elsewhere...