Bug 307077

Summary: [GTK] A few more crashes with hardware acceleration disabled and softGL after 306485@main, 306842@main and 306855@main
Product: WebKit Reporter: Carlos Alberto Lopez Perez <clopez>
Component: WebKitGTKAssignee: Nobody <webkit-unassigned>
Status: NEW    
Severity: Normal CC: bugs-noreply, cgarcia, plampe, yurys
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=306993
https://bugs.webkit.org/show_bug.cgi?id=305391
Bug Depends on:    
Bug Blocks: 305391    
Attachments:
Description Flags
GDB backtrace for the crash none

Carlos Alberto Lopez Perez
Reported 2026-02-05 09:13:45 PST
Created attachment 478258 [details] GDB backtrace for the crash This is related to bug 306993 306993@main introduced several issues on GTK with compositing mode disabled or with hardware acceleration disabled and softGL. Most of this issues were fixed by 306842@main and 306855@main However there are still some remaining problems. I'm having this crash with one PW test. I'm currently testing on commit 306865@main and I have tried to apply locally the patch from https://github.com/WebKit/WebKit/pull/57960 but still crashes. Note: This test were all passing fine before 306993@main I'm running the minibrowser with --hardware-acceleration-policy=never on a gpu-less environment (on a Docker container with Xvfb) I'm attaching the gdb backtrace for the crash The crash happens because this assertion is hit at Source/WebKit/WebProcess/WebPage/CoordinatedGraphics/DrawingAreaCoordinatedGraphicsGLib.cpp:285 283 GraphicsLayerFactory* DrawingAreaCoordinatedGraphics::graphicsLayerFactory() 284 { 285 RELEASE_ASSERT(m_layerTreeHost); 286 return m_layerTreeHost->graphicsLayerFactory(); 287 } I think the problematic call is at frame 11 #11 0x00007f26cdb36c92 in WebCore::RenderLayerCompositor::updateCompositingLayers (this=0x7f26ac154c60, updateType=WebCore::CompositingUpdateType::AfterLayout, updateRootArg=0x0) at ../../../Source/WebCore/rendering/RenderLayerCompositor.cpp:1087 1085 1086 if (!m_compositing && (m_forceCompositingMode || (isRootFrameCompositor() && page().pageOverlayController().overlayCount()))) 1087 enableCompositingMode(true); 1088 Basically is calling "enableCompositingMode(true);" when hardware-acceleration-policy is set to never. I'm not an expert on this part of the WebKit code, but that initially looks wrong to me. I tried to comment out that call and then the crash is gone and the tests all pass again back. --- a/Source/WebCore/rendering/RenderLayerCompositor.cpp +++ b/Source/WebCore/rendering/RenderLayerCompositor.cpp @@ -1085,4 +1085,6 @@ bool RenderLayerCompositor::updateCompositingLayers(CompositingUpdateType update +#if !PLATFORM(GTK) if (!m_compositing && (m_forceCompositingMode || (isRootFrameCompositor() && page().pageOverlayController().overlayCount()))) enableCompositingMode(true); +#endif
Attachments
GDB backtrace for the crash (99.45 KB, text/plain)
2026-02-05 09:13 PST, Carlos Alberto Lopez Perez
no flags
Carlos Alberto Lopez Perez
Comment 1 2026-02-05 09:16:53 PST
(In reply to Carlos Alberto Lopez Perez from comment #0) > Created attachment 478258 [details] > GDB backtrace for the crash > > This is related to bug 306993 > > 306993@main introduced several issues on GTK with compositing mode disabled > or with hardware acceleration disabled and softGL. Most of this issues were > fixed by 306842@main and 306855@main > However there are still some remaining problems. [...] > Note: This test were all passing fine before 306993@main > Sorry for the typo, i wanted to say 306485@main instead of 306993@main (confused the bug number with the commit id)
Note You need to log in before you can comment on or make changes to this bug.