Bug 266138

Summary: REGRESSION(271747@main): [Win] ASSERTION FAILED: canSafelyBeUsed() under WebKit::RemoteImageBufferProxy::streamConnection
Product: WebKit Reporter: Fujii Hironori <fujii.hironori>
Component: WebKit2Assignee: Fujii Hironori <fujii.hironori>
Status: RESOLVED FIXED    
Severity: Normal CC: kkinnunen, mattwoodrow, 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=266163
https://bugs.webkit.org/show_bug.cgi?id=266165

Fujii Hironori
Reported 2023-12-09 00:29:03 PST
Buildbot: builder WinCairo-64-bit-Debug-Tests build 21459 : 271753@main https://build.webkit.org/#/builders/727/builds/21459 Regressions: Unexpected crashes (2) fast/transforms/interleaved-2d-transforms-with-gpu-process.html [ Crash ] webgl/webgl-and-dom-in-gpup.html [ Crash ] stderr: ASSERTION FAILED: canSafelyBeUsed() C:\BW\WinCairo-64-bit-Debug-Build\build\WebKitBuild\Debug\WTF\Headers\wtf/WeakPtr.h(193) : operator-> 1 00007FF8F5DE1B99 WTFCrash 2 00007FF8EA691C6D WTFCrashWithInfo 3 00007FF8EBB6E03D WTF::WeakPtr<WebKit::RemoteRenderingBackendProxy,WTF::DefaultWeakPtrImpl>::operator-> 4 00007FF8EBB6633F WebKit::RemoteImageBufferProxy::streamConnection 5 00007FF8EBB661EB WebKit::RemoteImageBufferProxy::ensureBackend 6 00007FF8E3C34899 WebCore::ImageBuffer::createFlusher 7 00007FF8EA78BA20 WebKit::DrawingAreaWC::sendUpdateNonAC::<lambda_1>::operator() 8 00007FF8EA78B987 WTF::Detail::CallableWrapper<`lambda at C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\WebProcess\WebPage\wc\DrawingAreaWC.cpp:371:29',void>::call 9 00007FF8F5DF7E04 WTF::Function<void ()>::operator() 10 00007FF8F5F4CCB7 WTF::WorkQueueBase::dispatch::<lambda_2>::operator() 11 00007FF8F5F4CC57 WTF::Detail::CallableWrapper<`lambda at C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WTF\wtf\generic\WorkQueueGeneric.cpp:67:25',void>::call 12 00007FF8F5DF7E04 WTF::Function<void ()>::operator() 13 00007FF8F5E7AC1A WTF::RunLoop::performWork 14 00007FF8F5F56E80 WTF::RunLoop::wndProc 15 00007FF8F5F56DB7 WTF::RunLoop::RunLoopWndProc 16 00007FF904240089 CallWindowProcW 17 00007FF90423FA02 DispatchMessageW 18 00007FF8F5F5704D WTF::RunLoop::run 19 00007FF8F5E7B344 WTF::RunLoop::create::<lambda_0>::operator() 20 00007FF8F5E7B2E7 WTF::Detail::CallableWrapper<`lambda at C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WTF\wtf\RunLoop.cpp:111:32',void>::call 21 00007FF8F5DF7E04 WTF::Function<void ()>::operator() 22 00007FF8F5E8814B WTF::Thread::entryPoint 23 00007FF8F5F58CF3 WTF::wtfThreadEntryPoint 24 00007FF8FFBB6B4C recalloc 25 00007FF904EF4DE0 BaseThreadInitThunk 26 00007FF91541EC4B RtlUserThreadStart ERROR: 000001BC763AC6F0 - [PID=10252] WebProcessProxy::didClose (web process crash) C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\UIProcess/WebProcessProxy.cpp(1095) : didClose ERROR: 000001BC763AC6F0 - [PID=10252] WebProcessProxy::processDidTerminateOrFailedToLaunch: reason=Crash C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\UIProcess/WebProcessProxy.cpp(1103) : processDidTerminateOrFailedToLaunch ERROR: 000001BC78EA4730 - [pageProxyID=1307, webPageID=1308, PID=10252] WebPageProxy::processDidTerminate: (pid 10252), reason=Crash C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\UIProcess/WebPageProxy.cpp(9184) : resetStateAfterProcessTermination ERROR: 000001BC78EA4730 - [pageProxyID=1307, webPageID=1308, PID=10252] WebPageProxy::dispatchProcessDidTerminate: reason=Crash C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebKit\UIProcess/WebPageProxy.cpp(9242) : dispatchProcessDidTerminate WebProcess terminated (pid 10252) for reason: crash #CRASHED - WebProcess (pid 10252) 271732@main good 271753@main bad
Attachments
Fujii Hironori
Comment 1 2023-12-09 00:53:42 PST
I did bisection. Regressed after 271747@main (bug#265295).
Fujii Hironori
Comment 2 2023-12-09 05:22:58 PST
EWS
Comment 3 2023-12-09 05:25:40 PST
Committed 271803@main (365b474ebe28): <https://commits.webkit.org/271803@main> Reviewed commits have been landed. Closing PR #21569 and removing active labels.
Radar WebKit Bug Importer
Comment 4 2023-12-09 05:26:14 PST
Fujii Hironori
Comment 5 2023-12-09 21:24:44 PST
This fix doesn't seems to be perfect. Still some problems are observed. Bug 266163 – REGRESSION(271747@main): [Win] fast/transforms/interleaved-2d-transforms-with-gpu-process.html is failing Bug 266165 – REGRESSION(271747@main): [Win] Rendering artifact of repainting a whole window
Matt Woodrow
Comment 6 2023-12-11 17:16:41 PST
Sorry, this is my fault. I think you need to reinstate the code removed from RemoteImageBufferProxy too, since `createFlusher` is no longer doing anything there.
Fujii Hironori
Comment 7 2023-12-11 17:42:00 PST
No problem. Thank you for the advice. I will revisit it later to determine how the rendering buffer strategy of Windows port should be.
Note You need to log in before you can comment on or make changes to this bug.