Bug 270078 - [TextureMapper] Add GLContextWrapper to handle the current GL context
Summary: [TextureMapper] Add GLContextWrapper to handle the current GL context
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Platform (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Carlos Garcia Campos
URL:
Keywords: InRadar
Depends on: 270113
Blocks: GLibSkia 270082 270186
  Show dependency treegraph
 
Reported: 2024-02-26 04:10 PST by Carlos Garcia Campos
Modified: 2024-02-27 13:21 PST (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Carlos Garcia Campos 2024-02-26 04:10:05 PST
We currently have GLContext handling the current context, but it doesn't always work. For example, if there's WebGL content, after ANGLE context is made current. This is not problematic with Cairo because only ANGLE is making it context current in the main thread, but with Skia there's another GL context that is made current in the main thread when using the GPU renderer.
Comment 1 Carlos Garcia Campos 2024-02-26 04:13:33 PST
Pull request: https://github.com/WebKit/WebKit/pull/25099
Comment 2 EWS 2024-02-26 06:04:33 PST
Committed 275316@main (85958c82a712): <https://commits.webkit.org/275316@main>

Reviewed commits have been landed. Closing PR #25099 and removing active labels.
Comment 3 Radar WebKit Bug Importer 2024-02-26 06:05:22 PST
<rdar://problem/123628030>
Comment 4 Fujii Hironori 2024-02-26 12:26:50 PST
GTK, WPE and WinCairo are crashing for WebGL tests.
https://results.webkit.org/?suite=layout-tests&test=compositing%2Fwebgl%2Fwebgl-no-alpha.html
Comment 5 Fujii Hironori 2024-02-26 12:27:05 PST
https://build.webkit.org/results/GTK-Linux-64-bit-Debug-Tests/275318@main%20(12594)/compositing/webgl/webgl-no-alpha-crash-log.txt

Thread 1 (Thread 0x7f94fabf2a40 (LWP 19400)):
#0  __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1  0x00007f94fedbae83 in __pthread_kill_internal (signo=6, threadid=<optimized out>) at pthread_kill.c:78
#2  0x00007f94fed68dce in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26
#3  0x00007f94fed5083f in __GI_abort () at abort.c:79
#4  0x00007f94ff0ace03 in __gnu_cxx::__verbose_terminate_handler() () at ../../../../libstdc++-v3/libsupc++/vterminate.cc:95
#5  0x00007f94ff0bfbfa in __cxxabiv1::__terminate(void (*)()) (handler=<optimized out>) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48
#6  0x00007f94ff0bfc65 in std::terminate() () at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:58
#7  0x00007f94ff0c0a53 in __cxxabiv1::__cxa_pure_virtual() () at ../../../../libstdc++-v3/libsupc++/pure.cc:50
#8  0x00007f95176d87bf in WebCore::GLContextWrapper::makeCurrent() (this=0x7f94f10d1778) at /app/webkit/Source/WebCore/platform/graphics/egl/GLContextWrapper.cpp:44
#9  0x00007f9512fbba80 in WebCore::GraphicsContextGLANGLE::makeContextCurrent() (this=0x7f94f10d1670) at /app/webkit/Source/WebCore/platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp:98
#10 0x00007f9512fbb7d1 in WebCore::GraphicsContextGLANGLE::~GraphicsContextGLANGLE() (this=0x7f94f10d1670, __in_chrg=<optimized out>) at /app/webkit/Source/WebCore/platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp:61
#11 0x00007f9512fbbddb in WebCore::GraphicsContextGLTextureMapperANGLE::~GraphicsContextGLTextureMapperANGLE() (this=0x7f94f10d1670, __in_chrg=<optimized out>) at /app/webkit/Source/WebCore/platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp:144
#12 0x00007f9512fbbdfc in WebCore::GraphicsContextGLTextureMapperANGLE::~GraphicsContextGLTextureMapperANGLE() (this=0x7f94f10d1670, __in_chrg=<optimized out>) at /app/webkit/Source/WebCore/platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp:144
#13 0x00007f9512fbe14e in std::default_delete<WebCore::GraphicsContextGL>::operator()(WebCore::GraphicsContextGL*) const (this=0x7fff39ca9fa7, __ptr=0x7f94f10d1670) at /usr/include/c++/13.2.0/bits/unique_ptr.h:99
#14 0x00007f9512fbdd98 in WTF::RefCounted<WebCore::GraphicsContextGL, std::default_delete<WebCore::GraphicsContextGL> >::deref() const (this=0x7f94f10d1678) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/RefCounted.h:220
#15 0x00007f951674eebb in WTF::DefaultRefDerefTraits<WebCore::GraphicsContextGL>::derefIfNotNull(WebCore::GraphicsContextGL*) (ptr=0x7f94f10d1670) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/Ref.h:62
#16 0x00007f951688efea in WTF::RefPtr<WebCore::GraphicsContextGL, WTF::RawPtrTraits<WebCore::GraphicsContextGL>, WTF::DefaultRefDerefTraits<WebCore::GraphicsContextGL> >::operator=(decltype(nullptr)) (this=0x7f9491004fe0) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/RefPtr.h:155
#17 0x00007f951686ce72 in WebCore::WebGLRenderingContextBase::destroyGraphicsContextGL() (this=0x7f9491004f60) at /app/webkit/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:681
#18 0x00007f9516881288 in WebCore::WebGLRenderingContextBase::stop() (this=0x7f9491004f60) at /app/webkit/Source/WebCore/html/canvas/WebGLRenderingContextBase.cpp:4726
#19 0x00007f951625c457 in operator()<WebCore::ActiveDOMObject>(WebCore::ActiveDOMObject&) const (__closure=0x7f94f10648b8, activeDOMObject=...) at /app/webkit/Source/WebCore/dom/ScriptExecutionContext.cpp:396
#20 0x00007f951625c48e in WTF::Detail::CallableWrapper<WebCore::ScriptExecutionContext::stopActiveDOMObjects()::<lambda(auto:147&)>, WebCore::ScriptExecutionContext::ShouldContinue, WebCore::ActiveDOMObject&>::call(WebCore::ActiveDOMObject &) (this=0x7f94f10648b0, in#0=...) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/Function.h:53
#21 0x00007f95162609cb in WTF::Function<WebCore::ScriptExecutionContext::ShouldContinue (WebCore::ActiveDOMObject&)>::operator()(WebCore::ActiveDOMObject&) const (this=0x7fff39caa170, in#0=...) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/Function.h:82
#22 0x00007f951625129a in WebCore::ScriptExecutionContext::forEachActiveDOMObject(WTF::Function<WebCore::ScriptExecutionContext::ShouldContinue (WebCore::ActiveDOMObject&)> const&) const (this=0x7f94ad1212d0, apply=...) at /app/webkit/Source/WebCore/dom/ScriptExecutionContext.cpp:301
#23 0x00007f95162516a8 in WebCore::ScriptExecutionContext::stopActiveDOMObjects() (this=0x7f94ad1212d0) at /app/webkit/Source/WebCore/dom/ScriptExecutionContext.cpp:395
#24 0x00007f9515ff8fa6 in WebCore::Document::stopActiveDOMObjects() (this=0x7f94ad121200) at /app/webkit/Source/WebCore/dom/Document.cpp:3333
#25 0x00007f9515febcd4 in WebCore::Document::commonTeardown() (this=0x7f94ad121200) at /app/webkit/Source/WebCore/dom/Document.cpp:863
#26 0x00007f9515ff87c5 in WebCore::Document::willBeRemovedFromFrame() (this=0x7f94ad121200) at /app/webkit/Source/WebCore/dom/Document.cpp:3204
#27 0x00007f951704ed2a in WebCore::LocalFrame::setView(WTF::RefPtr<WebCore::LocalFrameView, WTF::RawPtrTraits<WebCore::LocalFrameView>, WTF::DefaultRefDerefTraits<WebCore::LocalFrameView> >&&) (this=0x7f94f11001a0, view=...) at /app/webkit/Source/WebCore/page/LocalFrame.cpp:266
#28 0x00007f951705294f in WebCore::LocalFrame::createView(WebCore::IntSize const&, std::optional<WebCore::Color> const&, WebCore::IntSize const&, WebCore::IntRect const&, bool, WebCore::ScrollbarMode, bool, WebCore::ScrollbarMode, bool) (this=0x7f94f11001a0, viewportSize=..., backgroundColor=std::optional<WebCore::Color> [no contained value], fixedLayoutSize=..., fixedVisibleContentRect=..., useFixedLayout=false, horizontalScrollbarMode=WebCore::ScrollbarMode::Auto, horizontalLock=false, verticalScrollbarMode=WebCore::ScrollbarMode::Auto, verticalLock=false) at /app/webkit/Source/WebCore/page/LocalFrame.cpp:930
#29 0x00007f9512c2459c in WebKit::WebLocalFrameLoaderClient::transitionToCommittedForNewPage() (this=0x7f94f1038900) at /app/webkit/Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.cpp:1545
#30 0x00007f9516ddeb85 in WebCore::FrameLoader::transitionToCommitted(WebCore::CachedPage*) (this=0x7f94f10a4800, cachedPage=0x0) at /app/webkit/Source/WebCore/loader/FrameLoader.cpp:2420
#31 0x00007f9516ddd601 in WebCore::FrameLoader::commitProvisionalLoad() (this=0x7f94f10a4800) at /app/webkit/Source/WebCore/loader/FrameLoader.cpp:2229
#32 0x00007f9516d80bc5 in WebCore::DocumentLoader::commitIfReady() (this=0x7f94ad144000) at /app/webkit/Source/WebCore/loader/DocumentLoader.cpp:418
#33 0x00007f9516d81346 in WebCore::DocumentLoader::finishedLoading() (this=0x7f94ad144000) at /app/webkit/Source/WebCore/loader/DocumentLoader.cpp:489
#34 0x00007f9516d8bb3b in WebCore::DocumentLoader::maybeLoadEmpty() (this=0x7f94ad144000) at /app/webkit/Source/WebCore/loader/DocumentLoader.cpp:2060
#35 0x00007f9516d8c73f in WebCore::DocumentLoader::startLoadingMainResource() (this=0x7f94ad144000) at /app/webkit/Source/WebCore/loader/DocumentLoader.cpp:2121
#36 0x00007f9516de81ea in operator()() (__closure=0x7f94f1289b88) at /app/webkit/Source/WebCore/loader/FrameLoader.cpp:3921
#37 0x00007f9516df5092 in WTF::Detail::CallableWrapper<WebCore::FrameLoader::continueLoadAfterNavigationPolicy(const WebCore::ResourceRequest&, WebCore::FormState*, WebCore::NavigationPolicyDecision, WebCore::AllowNavigationToInvalidURL)::<lambda()>, void>::call(void) (this=0x7f94f1289b80) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/Function.h:53
#38 0x00007f9511beef43 in WTF::Function<void ()>::operator()() const (this=0x7fff39caaf10) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/Function.h:82
#39 0x00007f9511beea92 in WTF::CompletionHandler<void ()>::operator()() (this=0x7fff39caaf70) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/CompletionHandler.h:75
#40 0x00007f9516de9052 in WebCore::FrameLoader::continueLoadAfterNavigationPolicy(WebCore::ResourceRequest const&, WebCore::FormState*, WebCore::NavigationPolicyDecision, WebCore::AllowNavigationToInvalidURL) (this=0x7f94f10a4800, request=..., formState=0x0, navigationPolicyDecision=WebCore::NavigationPolicyDecision::ContinueLoad, allowNavigationToInvalidURL=WebCore::AllowNavigationToInvalidURL::Yes) at /app/webkit/Source/WebCore/loader/FrameLoader.cpp:3925
#41 0x00007f9516dd8e53 in operator()(WebCore::ResourceRequest const&, WTF::WeakPtr<WebCore::FormState, WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl> >&&, WebCore::NavigationPolicyDecision) (__closure=0x7f94f12a17a8, request=..., weakFormState=..., navigationPolicyDecision=WebCore::NavigationPolicyDecision::ContinueLoad) at /app/webkit/Source/WebCore/loader/FrameLoader.cpp:1805
#42 0x00007f9516df51ba in WTF::Detail::CallableWrapper<WebCore::FrameLoader::loadWithDocumentLoader(WebCore::DocumentLoader*, WebCore::FrameLoadType, WTF::RefPtr<WebCore::FormState>&&, WebCore::AllowNavigationToInvalidURL, WTF::CompletionHandler<void()>&&)::<lambda(const WebCore::ResourceRequest&, WTF::WeakPtr<WebCore::FormState, WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl> >&&, WebCore::NavigationPolicyDecision)>, void, WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl> >&&, WebCore::NavigationPolicyDecision>::call(WebCore::ResourceRequest &&, WTF::WeakPtr<WebCore::FormState, WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl> > &&, WebCore::NavigationPolicyDecision) (this=0x7f94f12a17a0, in#0=..., in#1=..., in#2=WebCore::NavigationPolicyDecision::ContinueLoad) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/Function.h:53
#43 0x00007f9516e511d1 in WTF::Function<void (WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl> >&&, WebCore::NavigationPolicyDecision)>::operator()(WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl> >&&, WebCore::NavigationPolicyDecision) const (this=0x7fff39cab430, in#0=..., in#1=..., in#2=WebCore::NavigationPolicyDecision::ContinueLoad) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/Function.h:82
#44 0x00007f9516e4f786 in WTF::CompletionHandler<void (WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl> >&&, WebCore::NavigationPolicyDecision)>::operator()(WebCore::ResourceRequest&&, WTF::WeakPtr<WebCore::FormState, WTF::DefaultWeakPtrImpl, WTF::RawPtrTraits<WTF::DefaultWeakPtrImpl> >&&, WebCore::NavigationPolicyDecision) (this=0x7f94f10bc500, in#0=..., in#1=..., in#2=WebCore::NavigationPolicyDecision::ContinueLoad) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/CompletionHandler.h:75
#45 0x00007f9516e41f9d in operator()(WebCore::PolicyAction) (__closure=0x7f94f10bc4e8, policyAction=WebCore::PolicyAction::Use) at /app/webkit/Source/WebCore/loader/PolicyChecker.cpp:252
#46 0x00007f9516e4e8ad in WTF::Detail::CallableWrapper<WebCore::FrameLoader::PolicyChecker::checkNavigationPolicy(WebCore::ResourceRequest&&, const WebCore::ResourceResponse&, WebCore::DocumentLoader*, WTF::RefPtr<WebCore::FormState>&&, NavigationPolicyDecisionFunction&&, WebCore::PolicyDecisionMode)::<lambda(WebCore::PolicyAction)>, void, WebCore::PolicyAction>::call(WebCore::PolicyAction) (this=0x7f94f10bc4e0, in#0=WebCore::PolicyAction::Use) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/Function.h:53
#47 0x00007f9511bfbea8 in WTF::Function<void (WebCore::PolicyAction)>::operator()(WebCore::PolicyAction) const (this=0x7fff39cab610, in#0=WebCore::PolicyAction::Use) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/Function.h:82
#48 0x00007f9511bf11de in WTF::CompletionHandler<void (WebCore::PolicyAction)>::operator()(WebCore::PolicyAction) (this=0x7fff39cab680, in#0=WebCore::PolicyAction::Use) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/CompletionHandler.h:75
#49 0x00007f9512d6914d in WebKit::WebFrame::didReceivePolicyDecision(unsigned long, WebKit::PolicyDecision&&) (this=0x7f94f1010a40, listenerID=4, policyDecision=...) at /app/webkit/Source/WebKit/WebProcess/WebPage/WebFrame.cpp:524
#50 0x00007f9512c1a6ad in operator()(WebKit::PolicyDecision&&) const (__closure=0x7f94f1289a48, policyDecision=...) at /app/webkit/Source/WebKit/WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:199
#51 0x00007f9512c311c5 in std::__invoke_impl<void, WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction(const WebCore::NavigationAction&, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&, WebCore::FormState*, const WTF::String&, uint64_t, std::optional<WebCore::HitTestResult>&&, bool, WebCore::SandboxFlags, WebCore::PolicyDecisionMode, WebCore::FramePolicyFunction&&)::<lambda(WebKit::PolicyDecision&&)>, WebKit::PolicyDecision>(std::__invoke_other, struct {...} &&) (__f=...) at /usr/include/c++/13.2.0/bits/invoke.h:61
#52 0x00007f9512c2f65b in std::__invoke<WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction(const WebCore::NavigationAction&, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&, WebCore::FormState*, const WTF::String&, uint64_t, std::optional<WebCore::HitTestResult>&&, bool, WebCore::SandboxFlags, WebCore::PolicyDecisionMode, WebCore::FramePolicyFunction&&)::<lambda(WebKit::PolicyDecision&&)>, WebKit::PolicyDecision>(struct {...} &&) (__fn=...) at /usr/include/c++/13.2.0/bits/invoke.h:96
#53 0x00007f9512c2d8dd in std::__apply_impl<WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction(const WebCore::NavigationAction&, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&, WebCore::FormState*, const WTF::String&, uint64_t, std::optional<WebCore::HitTestResult>&&, bool, WebCore::SandboxFlags, WebCore::PolicyDecisionMode, WebCore::FramePolicyFunction&&)::<lambda(WebKit::PolicyDecision&&)>, std::tuple<WebKit::PolicyDecision>, 0>(struct {...} &&, std::tuple<WebKit::PolicyDecision> &&, std::index_sequence) (__f=..., __t=...) at /usr/include/c++/13.2.0/tuple:2288
#54 0x00007f9512c2d91b in std::apply<WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction(const WebCore::NavigationAction&, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&, WebCore::FormState*, const WTF::String&, uint64_t, std::optional<WebCore::HitTestResult>&&, bool, WebCore::SandboxFlags, WebCore::PolicyDecisionMode, WebCore::FramePolicyFunction&&)::<lambda(WebKit::PolicyDecision&&)>, std::tuple<WebKit::PolicyDecision> >(struct {...} &&, std::tuple<WebKit::PolicyDecision> &&) (__f=..., __t=...) at /usr/include/c++/13.2.0/tuple:2299
#55 0x00007f9512c2d9ab in IPC::Connection::callReply<Messages::WebPageProxy::DecidePolicyForNavigationActionAsync, WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction(const WebCore::NavigationAction&, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&, WebCore::FormState*, const WTF::String&, uint64_t, std::optional<WebCore::HitTestResult>&&, bool, WebCore::SandboxFlags, WebCore::PolicyDecisionMode, WebCore::FramePolicyFunction&&)::<lambda(WebKit::PolicyDecision&&)> >(IPC::Decoder &, struct {...} &&) (decoder=..., completionHandler=...) at /app/webkit/Source/WebKit/Platform/IPC/Connection.h:762
#56 0x00007f9512c2be69 in operator()(IPC::Decoder*) (__closure=0x7f94f1289a48, decoder=0x7f94f109ca40) at /app/webkit/Source/WebKit/Platform/IPC/Connection.h:745
#57 0x00007f9512c358cf in WTF::Detail::CallableWrapper<IPC::Connection::makeAsyncReplyHandler<Messages::WebPageProxy::DecidePolicyForNavigationActionAsync, WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction(const WebCore::NavigationAction&, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&, WebCore::FormState*, const WTF::String&, uint64_t, std::optional<WebCore::HitTestResult>&&, bool, WebCore::SandboxFlags, WebCore::PolicyDecisionMode, WebCore::FramePolicyFunction&&)::<lambda(WebKit::PolicyDecision&&)> >(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction(const WebCore::NavigationAction&, const WebCore::ResourceRequest&, const WebCore::ResourceResponse&, WebCore::FormState*, const WTF::String&, uint64_t, std::optional<WebCore::HitTestResult>&&, bool, WebCore::SandboxFlags, WebCore::PolicyDecisionMode, WebCore::FramePolicyFunction&&)::<lambda(WebKit::PolicyDecision&&)>&&, WTF::ThreadLikeAssertion)::<lambda(IPC::Decoder*)>, void, IPC::Decoder*>::call(IPC::Decoder *) (this=0x7f94f1289a40, in#0=0x7f94f109ca40) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/Function.h:53
#58 0x00007f95120e00c0 in WTF::Function<void (IPC::Decoder*)>::operator()(IPC::Decoder*) const (this=0x7fff39cab9c0, in#0=0x7f94f109ca40) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/Function.h:82
#59 0x00007f95120d85c4 in WTF::CompletionHandler<void (IPC::Decoder*)>::operator()(IPC::Decoder*) (this=0x7fff39caba00, in#0=0x7f94f109ca40) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/CompletionHandler.h:75
#60 0x00007f95120cc21d in IPC::Connection::dispatchMessage(IPC::Decoder&) (this=0x7f94f10601e0, decoder=...) at /app/webkit/Source/WebKit/Platform/IPC/Connection.cpp:1226
#61 0x00007f95120cc4a4 in IPC::Connection::dispatchMessage(WTF::UniqueRef<IPC::Decoder>) (this=0x7f94f10601e0, message=...) at /app/webkit/Source/WebKit/Platform/IPC/Connection.cpp:1292
#62 0x00007f95120cc881 in IPC::Connection::dispatchOneIncomingMessage() (this=0x7f94f10601e0) at /app/webkit/Source/WebKit/Platform/IPC/Connection.cpp:1357
#63 0x00007f95120cbe98 in operator()() const (__closure=0x7f94f108c5e8) at /app/webkit/Source/WebKit/Platform/IPC/Connection.cpp:1206
#64 0x00007f95120d22d2 in WTF::Detail::CallableWrapper<IPC::Connection::enqueueIncomingMessage(WTF::UniqueRef<IPC::Decoder>)::<lambda()>, void>::call(void) (this=0x7f94f108c5e0) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/Function.h:53
#65 0x00007f9504c5f75d in WTF::Function<void ()>::operator()() const (this=0x7fff39cabbc0) at /app/webkit/WebKitBuild/GTK/Debug/WTF/Headers/wtf/Function.h:82
#66 0x00007f95063803b3 in WTF::RunLoop::performWork() (this=0x7f94f10180c0) at /app/webkit/Source/WTF/wtf/RunLoop.cpp:147
#67 0x00007f95064420be in operator()(gpointer) const (__closure=0x0, userData=0x7f94f10180c0) at /app/webkit/Source/WTF/wtf/glib/RunLoopGLib.cpp:80
#68 0x00007f95064420e2 in _FUN(gpointer) () at /app/webkit/Source/WTF/wtf/glib/RunLoopGLib.cpp:82
#69 0x00007f9506442051 in operator()(GSource*, GSourceFunc, gpointer) const (__closure=0x0, source=0x557f55fd2810, callback=0x7f95064420c5 <_FUN(gpointer)>, userData=0x7f94f10180c0) at /app/webkit/Source/WTF/wtf/glib/RunLoopGLib.cpp:53
#70 0x00007f950644209f in _FUN(GSource*, GSourceFunc, gpointer) () at /app/webkit/Source/WTF/wtf/glib/RunLoopGLib.cpp:56
#71 0x00007f9501b17d36 in g_main_dispatch (context=0x557f55fa8a00) at ../glib/gmain.c:3460
#72 g_main_context_dispatch (context=0x557f55fa8a00) at ../glib/gmain.c:4200
#73 0x00007f9501b752b8 in g_main_context_iterate.isra.0 (context=0x557f55fa8a00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4276
#74 0x00007f9501b173ff in g_main_loop_run (loop=0x557f55fd27f0) at ../glib/gmain.c:4479
#75 0x00007f950644271a in WTF::RunLoop::run() () at /app/webkit/Source/WTF/wtf/glib/RunLoopGLib.cpp:108
#76 0x00007f9512de47fb in WebKit::AuxiliaryProcessMainBase<WebKit::WebProcess, true>::run(int, char**) (this=0x7fff39cabe90, argc=4, argv=0x7fff39cac058) at /app/webkit/Source/WebKit/Shared/AuxiliaryProcessMain.h:72
#77 0x00007f9512de4424 in WebKit::AuxiliaryProcessMain<WebKit::WebProcessMainGtk>(int, char**) (argc=4, argv=0x7fff39cac058) at /app/webkit/Source/WebKit/Shared/AuxiliaryProcessMain.h:98
#78 0x00007f9512de3cc8 in WebKit::WebProcessMain(int, char**) (argc=4, argv=0x7fff39cac058) at /app/webkit/Source/WebKit/WebProcess/gtk/WebProcessMainGtk.cpp:90
#79 0x0000557f54de7969 in main(int, char**) (argc=4, argv=0x7fff39cac058) at /app/webkit/Source/WebKit/WebProcess/EntryPoint/unix/WebProcessMain.cpp:31
Comment 6 Fujii Hironori 2024-02-26 12:27:13 PST
https://build.webkit.org/results/WinCairo-64-bit-Debug-Tests/275316@main%20(21921)/CrashLog_109c_2024-02-26_15-10-34-256.txt

# 11  Id: 20a0.1dd4 Suspend: 1 Teb: 000000b0`ba393000 Unfrozen
 # Child-SP          RetAddr           Call Site
00 000000b0`bb5ff2d0 00007ff9`0b966eaa ucrtbase!abort+0x4e
01 000000b0`bb5ff300 00007ff8`d8eba71d VCRUNTIME140!purecall+0x1a
02 000000b0`bb5ff330 00007ff8`d8e4061a WebCore!WebCore::GLContextWrapper::makeCurrent(void)+0x4d [C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebCore\platform\graphics\egl\GLContextWrapper.cpp @ 44]
03 000000b0`bb5ff370 00007ff8`d8e403b1 WebCore!WebCore::GraphicsContextGLANGLE::makeContextCurrent(void)+0x1a [C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebCore\platform\graphics\texmap\GraphicsContextGLTextureMapperANGLE.cpp @ 98]
04 000000b0`bb5ff3a0 00007ff8`d8e40953 WebCore!WebCore::GraphicsContextGLANGLE::~GraphicsContextGLANGLE(void)+0x31 [C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebCore\platform\graphics\texmap\GraphicsContextGLTextureMapperANGLE.cpp @ 61]
05 000000b0`bb5ff400 00007ff8`d8e41c19 WebCore!WebCore::GraphicsContextGLTextureMapperANGLE::~GraphicsContextGLTextureMapperANGLE(void)+0xb3 [C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebCore\platform\graphics\texmap\GraphicsContextGLTextureMapperANGLE.cpp @ 144]
06 000000b0`bb5ff440 00007ff8`ea550b12 WebCore!WebCore::GraphicsContextGLTextureMapperANGLE::~GraphicsContextGLTextureMapperANGLE(int should_call_delete = 0n1)+0x29 [C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebCore\platform\graphics\texmap\GraphicsContextGLTextureMapperANGLE.cpp @ 138]
07 000000b0`bb5ff490 00007ff8`ea550ac7 WebKit2!std::default_delete<WebCore::GraphicsContextGL>::operator()(class WebCore::GraphicsContextGL * _Ptr = 0x0000029b`4a7b2550)+0x32 [C:\MSVS\VC\Tools\MSVC\14.37.32822\include\memory @ 3181]
08 000000b0`bb5ff4d0 00007ff8`ea550a43 WebKit2!WTF::RefCounted<WebCore::GraphicsContextGL,std::default_delete<WebCore::GraphicsContextGL> >::deref(void)+0x47 [C:\BW\WinCairo-64-bit-Debug-Build\build\WebKitBuild\Debug\WTF\Headers\wtf\RefCounted.h @ 221]
09 000000b0`bb5ff520 00007ff8`eb097012 WebKit2!WTF::DefaultRefDerefTraits<WebCore::GraphicsContextGLTextureMapperANGLE>::derefIfNotNull(class WebCore::GraphicsContextGLTextureMapperANGLE * ptr = 0x0000029b`4a7b2550)+0x23 [C:\BW\WinCairo-64-bit-Debug-Build\build\WebKitBuild\Debug\WTF\Headers\wtf\Ref.h @ 63]
0a 000000b0`bb5ff550 00007ff8`eb08a736 WebKit2!WTF::RefPtr<WebCore::GraphicsContextGLTextureMapperANGLE,WTF::RawPtrTraits<WebCore::GraphicsContextGLTextureMapperANGLE>,WTF::DefaultRefDerefTraits<WebCore::GraphicsContextGLTextureMapperANGLE> >::operator=(void)+0x42 [C:\BW\WinCairo-64-bit-Debug-Build\build\WebKitBuild\Debug\WTF\Headers\wtf\RefPtr.h @ 155]
0b 000000b0`bb5ff5a0 00007ff8`eb092f5b WebKit2!WebKit::RemoteGraphicsContextGL::workQueueUninitialize(void)+0x76 [C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\GPUProcess\graphics\RemoteGraphicsContextGL.cpp @ 154]
0c 000000b0`bb5ff600 00007ff8`eb092ef7 WebKit2!WebKit::RemoteGraphicsContextGL::stopListeningForIPC::<lambda_5>::operator()(void)+0x1b [C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\GPUProcess\graphics\RemoteGraphicsContextGL.cpp @ 117]
0d 000000b0`bb5ff630 00007ff8`ea521695 WebKit2!WTF::Detail::CallableWrapper<`lambda at C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\GPUProcess/graphics/RemoteGraphicsContextGL.cpp:115:26',void>::call(void)+0x17 [C:\BW\WinCairo-64-bit-Debug-Build\build\WebKitBuild\Debug\WTF\Headers\wtf\Function.h @ 53]
0e 000000b0`bb5ff660 00007ff8`eb540731 WebKit2!WTF::Function<void (void)+0x85 [C:\BW\WinCairo-64-bit-Debug-Build\build\WebKitBuild\Debug\WTF\Headers\wtf\Function.h @ 82]
0f 000000b0`bb5ff6a0 00007ff8`eb54210f WebKit2!IPC::StreamConnectionWorkQueue::processStreams(void)+0x121 [C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\Platform\IPC\StreamConnectionWorkQueue.cpp @ 159]
10 000000b0`bb5ff7b0 00007ff8`eb5420b7 WebKit2!IPC::StreamConnectionWorkQueue::startProcessingThread::<lambda_0>::operator()(void)+0x2f [C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\Platform\IPC\StreamConnectionWorkQueue.cpp @ 125]
11 000000b0`bb5ff810 00007ff9`03608814 WebKit2!WTF::Detail::CallableWrapper<`lambda at C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\Platform/IPC/StreamConnectionWorkQueue.cpp:123:17',void>::call(void)+0x17 [C:\BW\WinCairo-64-bit-Debug-Build\build\WebKitBuild\Debug\WTF\Headers\wtf\Function.h @ 53]
12 000000b0`bb5ff840 00007ff9`0369b48b WTF!WTF::Function<void (void)+0x84 [C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WTF\wtf\Function.h @ 82]
13 000000b0`bb5ff880 00007ff9`03776243 WTF!WTF::Thread::entryPoint(struct WTF::Thread::NewThreadContext * newThreadContext = 0x0000029b`4a78cfd0)+0x1cb [C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WTF\wtf\Threading.cpp @ 259]
14 000000b0`bb5ff8d0 00007ff8`fd686b4c WTF!WTF::wtfThreadEntryPoint(void * data = 0x0000029b`4a78cfd0)+0x13 [C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WTF\wtf\win\ThreadingWin.cpp @ 151]
15 000000b0`bb5ff900 00007ff9`03f24de0 ucrtbase!recalloc+0x5c
16 000000b0`bb5ff930 00007ff9`1541ec4b KERNEL32!BaseThreadInitThunk+0x10
17 000000b0`bb5ff960 00000000`00000000 ntdll!RtlUserThreadStart+0x2b
Comment 7 WebKit Commit Bot 2024-02-26 12:28:52 PST
Re-opened since this is blocked by bug 270113
Comment 8 Carlos Garcia Campos 2024-02-27 03:43:52 PST
Pull request: https://github.com/WebKit/WebKit/pull/25164
Comment 9 EWS 2024-02-27 05:13:54 PST
Committed 275377@main (d009eb90543f): <https://commits.webkit.org/275377@main>

Reviewed commits have been landed. Closing PR #25164 and removing active labels.