Bug 268917
Summary: | [GStreamer][Debug] More audio worklet flaky crashes | ||
---|---|---|---|
Product: | WebKit | Reporter: | Philippe Normand <philn> |
Component: | Platform | Assignee: | Philippe Normand <philn> |
Status: | REOPENED | ||
Severity: | Normal | CC: | webkit-bug-importer |
Priority: | P2 | Keywords: | InRadar |
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified |
Philippe Normand
That make no sense.
imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletglobalscope-sample-rate.https.html
Thread 1 (Thread 0x7f3d23fff6c0 (LWP 639517)):
#0 std::__atomic_base<unsigned char>::load(std::memory_order) const (__m=std::memory_order::relaxed, this=0x8) at /usr/include/c++/13.2.0/bits/atomic_base.h:505
#1 WTF::Atomic<unsigned char>::load(std::memory_order) const (this=0x8, order=std::memory_order::relaxed) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Atomics.h:63
#2 0x00007f3e41c74560 in WTF::LockAlgorithm<unsigned char, (unsigned char)1, (unsigned char)2, WTF::EmptyLockHooks<unsigned char> >::tryLock(WTF::Atomic<unsigned char>&) (lock=...) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/LockAlgorithm.h:78
#3 0x00007f3e41c73f8a in WTF::Lock::tryLock() (this=0x8) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Lock.h:71
#4 0x00007f3e491f0f02 in WebCore::AudioDestination::callRenderCallback(WebCore::AudioBus*, WebCore::AudioBus*, unsigned long, WebCore::AudioIOPosition const&) (this=0x0, sourceBus=0x0, destinationBus=0x7f3e244e9480, framesToProcess=128, outputPosition=...) at /app/webkit/Source/WebCore/platform/audio/AudioDestination.h:103
#5 0x00007f3e4927427c in webKitWebAudioSrcRenderAndPushFrames(WTF::GRefPtr<_GstElement> const&, WTF::GRefPtr<_GstBuffer>&&) (element=..., buffer=...) at /app/webkit/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:337
#6 0x00007f3e492745d8 in operator()() (__closure=0x7f3cfa518828) at /app/webkit/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:385
#7 0x00007f3e49275666 in WTF::Detail::CallableWrapper<webKitWebAudioSrcRenderIteration(WebKitWebAudioSrc*)::<lambda()>, void>::call(void) (this=0x7f3cfa518820) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Function.h:53
#8 0x00007f3e416b9377 in WTF::Function<void ()>::operator()() const (this=0x7f3e243a4ef8) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Function.h:82
#9 0x00007f3e47210a90 in operator()(WebCore::ScriptExecutionContext&) (__closure=0x7f3e243a4ef8) at /app/webkit/Source/WebCore/Modules/webaudio/DefaultAudioDestinationNode.cpp:151
#10 0x00007f3e47218cc8 in WTF::Detail::CallableWrapper<WebCore::DefaultAudioDestinationNode::dispatchToRenderThreadFunction()::<lambda(WTF::Function<void()>&&)>::<lambda(WebCore::ScriptExecutionContext&)>, void, WebCore::ScriptExecutionContext&>::call(WebCore::ScriptExecutionContext &) (this=0x7f3e243a4ef0, in#0=...) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Function.h:53
#11 0x00007f3e46b326d7 in WTF::Function<void (WebCore::ScriptExecutionContext&)>::operator()(WebCore::ScriptExecutionContext&) const (this=0x7f3cfa518840, in#0=...) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Function.h:82
#12 0x00007f3e4733e233 in WebCore::ScriptExecutionContext::Task::performTask(WebCore::ScriptExecutionContext&) (this=0x7f3cfa518840, context=...) at /app/webkit/Source/WebCore/dom/ScriptExecutionContext.h:233
#13 0x00007f3e4a36fc33 in WebCore::WorkerDedicatedRunLoop::Task::performTask(WebCore::WorkerOrWorkletGlobalScope*) (this=0x7f3cfa518840, context=0x7f3dc50b3530) at /app/webkit/Source/WebCore/workers/WorkerRunLoop.cpp:289
#14 0x00007f3e4a36f623 in WebCore::WorkerDedicatedRunLoop::runInMode(WebCore::WorkerOrWorkletGlobalScope*, WebCore::ModePredicate const&) (this=0x7f3e242df960, context=0x7f3dc50b3530, predicate=...) at /app/webkit/Source/WebCore/workers/WorkerRunLoop.cpp:224
#15 0x00007f3e4a36ef9e in WebCore::WorkerDedicatedRunLoop::run(WebCore::WorkerOrWorkletGlobalScope*) (this=0x7f3e242df960, context=0x7f3dc50b3530) at /app/webkit/Source/WebCore/workers/WorkerRunLoop.cpp:156
#16 0x00007f3e4a36db9f in WebCore::WorkerOrWorkletThread::runEventLoop() (this=0x7f3e2492ac50) at /app/webkit/Source/WebCore/workers/WorkerOrWorkletThread.cpp:113
#17 0x00007f3e4a36e070 in WebCore::WorkerOrWorkletThread::workerOrWorkletThread() (this=0x7f3e2492ac50) at /app/webkit/Source/WebCore/workers/WorkerOrWorkletThread.cpp:187
#18 0x00007f3e471e22ab in operator()() const (__closure=0x7f3e243a7d98) at /app/webkit/Source/WebCore/Modules/webaudio/AudioWorkletThread.cpp:73
#19 0x00007f3e471f5118 in WTF::Detail::CallableWrapper<WebCore::AudioWorkletThread::createThread()::<lambda()>, void>::call(void) (this=0x7f3e243a7d90) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Function.h:53
#20 0x00007f3e416b9377 in WTF::Function<void ()>::operator()() const (this=0x7f3d23ffeb80) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Function.h:82
#21 0x00007f3e44bf02f1 in WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) (newThreadContext=0x7f3e24af97b0) at /app/webkit/Source/WTF/wtf/Threading.cpp:258
#22 0x00007f3e44cb605f in WTF::wtfThreadEntryPoint(void*) (context=0x7f3e24af97b0) at /app/webkit/Source/WTF/wtf/posix/ThreadingPOSIX.cpp:247
#23 0x00007f3e351b2e39 in start_thread (arg=<optimized out>) at pthread_create.c:444
#24 0x00007f3e3523a8c4 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
imported/w3c/web-platform-tests/webaudio/the-audio-api/the-audioworklet-interface/audioworkletprocessor-promises.https.html
Thread 1 (Thread 0x7ef7567fc6c0 (LWP 655198)):
#0 0x00007f10c7c7deab in WebCore::AudioDestinationGStreamer::notifyIsPlaying(bool) (this=0x0, isPlaying=true) at /app/webkit/Source/WebCore/platform/audio/gstreamer/AudioDestinationGStreamer.cpp:293
#1 0x00007f10c7cad2d2 in webKitWebAudioSrcRenderAndPushFrames(WTF::GRefPtr<_GstElement> const&, WTF::GRefPtr<_GstBuffer>&&) (element=..., buffer=...) at /app/webkit/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:340
#2 0x00007f10c7cad5d8 in operator()() (__closure=0x7ef5c211cd08) at /app/webkit/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:385
#3 0x00007f10c7cae666 in WTF::Detail::CallableWrapper<webKitWebAudioSrcRenderIteration(WebKitWebAudioSrc*)::<lambda()>, void>::call(void) (this=0x7ef5c211cd00) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Function.h:53
#4 0x00007f10c00f2377 in WTF::Function<void ()>::operator()() const (this=0x7ef5c203c3a8) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Function.h:82
#5 0x00007f10c5c49a90 in operator()(WebCore::ScriptExecutionContext&) (__closure=0x7ef5c203c3a8) at /app/webkit/Source/WebCore/Modules/webaudio/DefaultAudioDestinationNode.cpp:151
#6 0x00007f10c5c51cc8 in WTF::Detail::CallableWrapper<WebCore::DefaultAudioDestinationNode::dispatchToRenderThreadFunction()::<lambda(WTF::Function<void()>&&)>::<lambda(WebCore::ScriptExecutionContext&)>, void, WebCore::ScriptExecutionContext&>::call(WebCore::ScriptExecutionContext &) (this=0x7ef5c203c3a0, in#0=...) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Function.h:53
#7 0x00007f10c556b6d7 in WTF::Function<void (WebCore::ScriptExecutionContext&)>::operator()(WebCore::ScriptExecutionContext&) const (this=0x7ef5c211cd20, in#0=...) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Function.h:82
#8 0x00007f10c5d77233 in WebCore::ScriptExecutionContext::Task::performTask(WebCore::ScriptExecutionContext&) (this=0x7ef5c211cd20, context=...) at /app/webkit/Source/WebCore/dom/ScriptExecutionContext.h:233
#9 0x00007f10c8da8c33 in WebCore::WorkerDedicatedRunLoop::Task::performTask(WebCore::WorkerOrWorkletGlobalScope*) (this=0x7ef5c211cd20, context=0x7ef5c21140c0) at /app/webkit/Source/WebCore/workers/WorkerRunLoop.cpp:289
#10 0x00007f10c8da8623 in WebCore::WorkerDedicatedRunLoop::runInMode(WebCore::WorkerOrWorkletGlobalScope*, WebCore::ModePredicate const&) (this=0x7ef5c20d06c0, context=0x7ef5c21140c0, predicate=...) at /app/webkit/Source/WebCore/workers/WorkerRunLoop.cpp:224
#11 0x00007f10c8da7f9e in WebCore::WorkerDedicatedRunLoop::run(WebCore::WorkerOrWorkletGlobalScope*) (this=0x7ef5c20d06c0, context=0x7ef5c21140c0) at /app/webkit/Source/WebCore/workers/WorkerRunLoop.cpp:156
#12 0x00007f10c8da6b9f in WebCore::WorkerOrWorkletThread::runEventLoop() (this=0x7ef5c2087c10) at /app/webkit/Source/WebCore/workers/WorkerOrWorkletThread.cpp:113
#13 0x00007f10c8da7070 in WebCore::WorkerOrWorkletThread::workerOrWorkletThread() (this=0x7ef5c2087c10) at /app/webkit/Source/WebCore/workers/WorkerOrWorkletThread.cpp:187
#14 0x00007f10c5c1b2ab in operator()() const (__closure=0x7ef5c2057028) at /app/webkit/Source/WebCore/Modules/webaudio/AudioWorkletThread.cpp:73
#15 0x00007f10c5c2e118 in WTF::Detail::CallableWrapper<WebCore::AudioWorkletThread::createThread()::<lambda()>, void>::call(void) (this=0x7ef5c2057020) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Function.h:53
#16 0x00007f10c00f2377 in WTF::Function<void ()>::operator()() const (this=0x7ef7567fbb80) at /app/webkit/WebKitBuild/WPE/Debug/WTF/Headers/wtf/Function.h:82
#17 0x00007f10c36292f1 in WTF::Thread::entryPoint(WTF::Thread::NewThreadContext*) (newThreadContext=0x7ef5c2033830) at /app/webkit/Source/WTF/wtf/Threading.cpp:258
#18 0x00007f10c36ef05f in WTF::wtfThreadEntryPoint(void*) (context=0x7ef5c2033830) at /app/webkit/Source/WTF/wtf/posix/ThreadingPOSIX.cpp:247
#19 0x00007f10b3bebe39 in start_thread (arg=<optimized out>) at pthread_create.c:444
#20 0x00007f10b3c738c4 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:100
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Philippe Normand
Pull request: https://github.com/WebKit/WebKit/pull/24005
EWS
Committed 274215@main (684a2658a02f): <https://commits.webkit.org/274215@main>
Reviewed commits have been landed. Closing PR #24005 and removing active labels.
Radar WebKit Bug Importer
<rdar://problem/122470228>
Philippe Normand
Needs patch...