Bug 282278

Summary: REGRESSION(285812@main): [Win] ASSERTION FAILED: !m_flushingLayers in WebCore::RenderLayerCompositor::scheduleRenderingUpdate()
Product: WebKit Reporter: Fujii Hironori <Hironori.Fujii>
Component: CompositingAssignee: Fujii Hironori <Hironori.Fujii>
Status: RESOLVED FIXED    
Severity: Normal CC: mattwoodrow, simon.fraser, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=279962

Fujii Hironori
Reported 2024-10-29 13:41:07 PDT
Regressions: Unexpected crashes (5) fast/css/view-transitions-hide-under-page-background-color.html [ Crash ] fast/css/view-transitions-nested-transparency-layers.html [ Crash ] fast/css/view-transitions-update-layer-lists-crash.html [ Crash ] fast/css/view-transitions-zoom.html [ Crash ] http/wpt/css/css-view-transitions/navigation/cross-origin-bfcache.html [ Crash ] ASSERTION FAILED: !m_flushingLayers C:\BW\Windows-64-bit-Debug-Build\build\Source\WebCore\rendering/RenderLayerCompositor.cpp(776) : void WebCore::RenderLayerCompositor::scheduleRenderingUpdate() 1 00007FFCF5B3F768 WebCore::RenderLayerBacking::backingStoreMemoryEstimate 2 00007FFCF5B3C728 WebCore::RenderLayerBacking::compositedBounds 3 00007FFD0D3FAA8D WKWebsiteDataStoreDisableNetworkProxySettings 4 00007FFD0D3FB67B WKWebsiteDataStoreDisableNetworkProxySettings 5 00007FFCF5B549FB WebCore::RenderLayerCompositor::asyncScrollableContainerNodeID 6 00007FFCF5B548D8 WebCore::RenderLayerCompositor::asyncScrollableContainerNodeID 7 00007FFCF5C6C874 WebCore::RenderVideo::videoBox 8 00007FFCF59A3B4B WebCore::RenderBox::flippedClientBoxRect 9 00007FFCF5C6C30D WebCore::RenderVideo::videoBox 10 00007FFCF5AF5F5D WebCore::RenderLayer::commonAncestorWithLayer 11 00007FFCF5AF1E62 WebCore::RenderLayer::commonAncestorWithLayer 12 00007FFCF5B388E2 WebCore::RenderLayerBacking::compositedBounds 13 00007FFCF5B38124 WebCore::RenderLayerBacking::compositedBounds 14 00007FFCF5B392EC WebCore::RenderLayerBacking::compositedBounds 15 00007FFCF562B6B3 WebCore::GraphicsLayer::paintGraphicsLayerContents 16 00007FFD0D4004C6 WKWebsiteDataStoreDisableNetworkProxySettings 17 00007FFD0D3FD319 WKWebsiteDataStoreDisableNetworkProxySettings 18 00007FFD0D3FC4CF WKWebsiteDataStoreDisableNetworkProxySettings 19 00007FFD0D3FC581 WKWebsiteDataStoreDisableNetworkProxySettings 20 00007FFD0D3FC581 WKWebsiteDataStoreDisableNetworkProxySettings 21 00007FFD0D3FC581 WKWebsiteDataStoreDisableNetworkProxySettings 22 00007FFD0D3FC581 WKWebsiteDataStoreDisableNetworkProxySettings 23 00007FFD0D3FC581 WKWebsiteDataStoreDisableNetworkProxySettings 24 00007FFD0D3FC581 WKWebsiteDataStoreDisableNetworkProxySettings 25 00007FFD0D3FC581 WKWebsiteDataStoreDisableNetworkProxySettings 26 00007FFD0D3FC581 WKWebsiteDataStoreDisableNetworkProxySettings 27 00007FFD0D3FC581 WKWebsiteDataStoreDisableNetworkProxySettings 28 00007FFD0D3FC3D2 WKWebsiteDataStoreDisableNetworkProxySettings 29 00007FFCF5B42BEC WebCore::RenderLayerCompositor::rootRenderLayer 30 00007FFCF520AD82 WebCore::LocalFrameView::baseLayoutViewportSize 31 00007FFCF520C301 WebCore::LocalFrameView::flushCompositingStateIncludingSubframes ERROR: 00000240FEE9FE70 - [PID=10148] WebProcessProxy::didClose (web process crash) C:\BW\Windows-64-bit-Debug-Build\build\Source\WebKit\UIProcess/WebProcessProxy.cpp(1268) : virtual void WebKit::WebProcessProxy::didClose(IPC::Connection &) ERROR: 00000240FEE9FE70 - [PID=10148] WebProcessProxy::processDidTerminateOrFailedToLaunch: reason=Crash C:\BW\Windows-64-bit-Debug-Build\build\Source\WebKit\UIProcess/WebProcessProxy.cpp(1276) : void WebKit::WebProcessProxy::processDidTerminateOrFailedToLaunch(ProcessTerminationReason) ERROR: 00000240FEF5E520 - [pageProxyID=14367, webPageID=14368, PID=10148] WebPageProxy::processDidTerminate: (pid 10148), reason=Crash C:\BW\Windows-64-bit-Debug-Build\build\Source\WebKit\UIProcess/WebPageProxy.cpp(10602) : void WebKit::WebPageProxy::resetStateAfterProcessTermination(ProcessTerminationReason) ERROR: 00000240FEF5E520 - [pageProxyID=14367, webPageID=14368, PID=10148] WebPageProxy::dispatchProcessDidTerminate: reason=Crash C:\BW\Windows-64-bit-Debug-Build\build\Source\WebKit\UIProcess/WebPageProxy.cpp(10656) : void WebKit::WebPageProxy::dispatchProcessDidTerminate(WebProcessProxy &, ProcessTerminationReason) WebProcess terminated (pid 2444) for reason: crash 285815@main the first bad 285795@main the last good
Attachments
Fujii Hironori
Comment 1 2024-10-29 13:46:27 PDT
Callstack: JavaScriptCore.dll!WTFCrash() Line 365 C++ WebCore.dll!WTFCrashWithInfo(int, const char *, const char *, int) Line 912 C++ WebCore.dll!WebCore::RenderLayerCompositor::scheduleRenderingUpdate() Line 776 C++ WebCore.dll!WebCore::RenderLayerCompositor::notifyFlushRequired(const WebCore::GraphicsLayer *) Line 772 C++ WebKit2.dll!WebKit::GraphicsLayerWC::noteLayerPropertyChanged(WTF::OptionSet<WebKit::WCLayerChange> flags, WebKit::GraphicsLayerWC::ScheduleFlushOrNot scheduleFlush) Line 534 C++ WebKit2.dll!WebKit::GraphicsLayerWC::setBackgroundColor(const WebCore::Color & value) Line 354 C++ WebCore.dll!WebCore::RenderLayerCompositor::updateRootContentsLayerBackgroundColor() Line 4675 C++ WebCore.dll!WebCore::RenderLayerCompositor::rootBackgroundColorOrTransparencyChanged() Line 4712 C++ WebCore.dll!WebCore::RenderView::paintBoxDecorations(WebCore::PaintInfo & paintInfo, const WebCore::LayoutPoint &) Line 442 C++ WebCore.dll!WebCore::RenderBlock::paintObject(WebCore::PaintInfo & paintInfo, const WebCore::LayoutPoint & paintOffset) Line 1168 C++ WebCore.dll!WebCore::RenderView::paint(WebCore::PaintInfo & paintInfo, const WebCore::LayoutPoint & paintOffset) Line 346 C++ WebCore.dll!WebCore::RenderLayer::paintBackgroundForFragments(const WTF::Vector<WebCore::LayerFragment,1,WTF::CrashOnOverflow,16,WTF::FastMalloc> & layerFragments, WebCore::GraphicsContext & context, WebCore::GraphicsContext & contextForTransparencyLayer, const WebCore::LayoutRect & transparencyPaintDirtyRect, bool haveTransparency, const WebCore::RenderLayer::LayerPaintingInfo & localPaintingInfo, WTF::OptionSet<WebCore::PaintBehavior> paintBehavior, WebCore::RenderObject * subtreePaintRootForRenderer) Line 4075 C++ WebCore.dll!WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext & context, const WebCore::RenderLayer::LayerPaintingInfo & paintingInfo, WTF::OptionSet<WebCore::RenderLayer::PaintLayerFlag> paintFlags) Line 3703 C++ WebCore.dll!WebCore::RenderLayerBacking::paintIntoLayer::<lambda_0>::operator()(WebCore::RenderLayer & layer, WTF::OptionSet<WebCore::RenderLayer::PaintLayerFlag> paintFlags) Line 3548 C++ WebCore.dll!WebCore::RenderLayerBacking::paintIntoLayer(const WebCore::GraphicsLayer * graphicsLayer, WebCore::GraphicsContext & context, const WebCore::IntRect & paintDirtyRect, WTF::OptionSet<WebCore::PaintBehavior> paintBehavior, WebCore::RegionContext * regionContext) Line 3567 C++ WebCore.dll!WebCore::RenderLayerBacking::paintContents(const WebCore::GraphicsLayer * graphicsLayer, WebCore::GraphicsContext & context, const WebCore::FloatRect & clip, WTF::OptionSet<WebCore::GraphicsLayerPaintBehavior> layerPaintBehavior) Line 3843 C++ WebCore.dll!WebCore::GraphicsLayer::paintGraphicsLayerContents(WebCore::GraphicsContext & context, const WebCore::FloatRect & clip, WTF::OptionSet<WebCore::GraphicsLayerPaintBehavior> layerPaintBehavior) Line 654 C++ WebKit2.dll!WebKit::WCTiledBacking::paintAndFlush(WebKit::WCLayerUpdateInfo & update) Line 72 C++ WebKit2.dll!WebKit::GraphicsLayerWC::flushCompositingStateForThisLayerOnly() Line 599 C++ WebKit2.dll!WebKit::GraphicsLayerWC::recursiveCommitChanges(const WebCore::TransformState & state) Line 750 C++ WebKit2.dll!WebKit::GraphicsLayerWC::recursiveCommitChanges(const WebCore::TransformState & state) Line 755 C++ WebKit2.dll!WebKit::GraphicsLayerWC::recursiveCommitChanges(const WebCore::TransformState & state) Line 755 C++ WebKit2.dll!WebKit::GraphicsLayerWC::recursiveCommitChanges(const WebCore::TransformState & state) Line 755 C++ WebKit2.dll!WebKit::GraphicsLayerWC::recursiveCommitChanges(const WebCore::TransformState & state) Line 755 C++ WebKit2.dll!WebKit::GraphicsLayerWC::recursiveCommitChanges(const WebCore::TransformState & state) Line 755 C++ WebKit2.dll!WebKit::GraphicsLayerWC::recursiveCommitChanges(const WebCore::TransformState & state) Line 755 C++ WebKit2.dll!WebKit::GraphicsLayerWC::recursiveCommitChanges(const WebCore::TransformState & state) Line 755 C++ WebKit2.dll!WebKit::GraphicsLayerWC::recursiveCommitChanges(const WebCore::TransformState & state) Line 755 C++ WebKit2.dll!WebKit::GraphicsLayerWC::flushCompositingState(const WebCore::FloatRect & passedVisibleRect) Line 544 C++ WebCore.dll!WebCore::RenderLayerCompositor::flushPendingLayerChanges(bool isFlushRoot) Line 824 C++ WebCore.dll!WebCore::LocalFrameView::flushCompositingStateForThisFrame(const WebCore::LocalFrame & rootFrameForFlush) Line 973 C++ WebCore.dll!WebCore::LocalFrameView::flushCompositingStateIncludingSubframes() Line 1162 C++ WebCore.dll!WebCore::Page::finalizeRenderingUpdateForRootFrame(WebCore::LocalFrame & rootFrame, WTF::OptionSet<WebCore::FinalizeRenderingUpdateFlags> flags) Line 2204 C++ WebCore.dll!WebCore::Page::finalizeRenderingUpdate(WTF::OptionSet<WebCore::FinalizeRenderingUpdateFlags> flags) Line 2170 C++ WebKit2.dll!WebKit::WebPage::finalizeRenderingUpdate(WTF::OptionSet<WebCore::FinalizeRenderingUpdateFlags> flags) Line 5086 C++ WebKit2.dll!WebKit::DrawingAreaWC::updateRendering() Line 245 C++ [External Code] WebKit2.dll!WTF::Detail::CallableWrapper<std::_Binder<std::_Unforced,void (WebKit::DrawingAreaWC::*&)(),WebKit::DrawingAreaWC *>,void>::call() Line 53 C++ WebKit2.dll!WTF::Function<void ()>::operator()() Line 82 C++ WebKit2.dll!WebCore::Timer::fired() Line 170 C++ WebCore.dll!WebCore::ThreadTimers::sharedTimerFiredInternal() Line 128 C++ WebCore.dll!WebCore::ThreadTimers::setSharedTimer::<lambda_0>::operator()() Line 68 C++ WebCore.dll!WTF::Detail::CallableWrapper<`lambda at C:\webkit\wb\Source\WebCore\platform\ThreadTimers.cpp:68:41',void>::call() Line 53 C++ WebCore.dll!WTF::Function<void ()>::operator()() Line 82 C++ WebCore.dll!WebCore::MainThreadSharedTimer::fired() Line 87 C++ WebCore.dll!WebCore::TimerWindowWndProc(HWND__ * hWnd, unsigned int message, unsigned __int64 wParam, __int64 lParam) Line 89 C++ [External Code] JavaScriptCore.dll!WTF::RunLoop::run() Line 84 C++ WebKit2.dll!WebKit::AuxiliaryProcessMainBase<WebKit::WebProcess,1>::run(int argc, char * * argv) Line 72 C++ WebKit2.dll!WebKit::AuxiliaryProcessMain<WebKit::WebProcessMainWin>(int argc, char * * argv) Line 98 C++ WebKit2.dll!WebKit::WebProcessMain(int argc, char * * argv) Line 44 C++ WebKitWebProcess.exe!main(int argc, char * * argv) Line 35 C++ [External Code]
Fujii Hironori
Comment 2 2024-10-29 14:44:44 PDT
Regressed by 285812@main.
Fujii Hironori
Comment 3 2024-10-29 15:38:49 PDT
EWS
Comment 4 2024-10-29 16:13:58 PDT
Committed 285867@main (995f738a7e00): <https://commits.webkit.org/285867@main> Reviewed commits have been landed. Closing PR #35907 and removing active labels.
Radar WebKit Bug Importer
Comment 5 2024-10-29 16:14:14 PDT
Note You need to log in before you can comment on or make changes to this bug.