Bug 255624

Summary: REGRESSION: [Win] GPUProcess is randomly crasing for some WebGL tests: RELEASE_ASSERT(::IsWindow(m_runLoopMessageWindow))
Product: WebKit Reporter: Fujii Hironori <Hironori.Fujii>
Component: Web Template FrameworkAssignee: Fujii Hironori <Hironori.Fujii>
Status: RESOLVED FIXED    
Severity: Normal CC: 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=215812

Fujii Hironori
Reported 2023-04-18 13:57:17 PDT
REGRESSION: [Win] GPUProcess is randomly crasing for some WebGL tests This crashes are happening only on WinCairo-64-bit-Release-Tests. This isn't reproducible on my PC and the internal Jenkins WinCairo tester. 263066@main https://build.webkit.org/#/builders/728/builds/686 webgl/2.0.y/conformance/programs/invalid-UTF-16.html [ Crash ] webgl/2.0.y/conformance/programs/program-handling.html [ Crash ] webgl/2.0.y/conformance/programs/program-infolog.html [ Crash ] webgl/2.0.y/conformance/programs/program-test.html [ Crash ] webgl/2.0.y/conformance/programs/use-program-crash-with-discard-in-fragment-shader.html [ Crash ] webgl/2.0.y/conformance/reading/fbo-remains-unchanged-after-read-pixels.html [ Crash ] webgl/2.0.y/conformance/reading/read-pixels-pack-alignment.html [ Crash ] webgl/2.0.y/conformance/reading/read-pixels-test.html [ Crash ] webgl/2.0.y/conformance/renderbuffers/depth-renderbuffer-initialization.html [ Crash ] webgl/2.0.y/conformance/renderbuffers/feedback-loop.html [ Crash ] webgl/2.0.y/conformance/renderbuffers/framebuffer-state-restoration.html [ Crash ] webgl/2.0.y/conformance/renderbuffers/renderbuffer-initialization.html [ Crash ] 263068@main https://build.webkit.org/#/builders/728/builds/687 webgl/2.0.y/conformance/renderbuffers/framebuffer-state-restoration.html [ Crash ] webgl/2.0.y/conformance/renderbuffers/renderbuffer-initialization.html [ Crash ] webgl/2.0.y/conformance/renderbuffers/stencil-renderbuffer-initialization.html [ Crash ] webgl/2.0.y/conformance/rendering/bind-framebuffer-flush-bug.html [ Crash ] webgl/2.0.y/conformance/rendering/blending.html [ Crash ] webgl/2.0.y/conformance/rendering/canvas-alpha-bug.html [ Crash ] webgl/2.0.y/conformance/rendering/clear-after-copyTexImage2D.html [ Crash ] webgl/2.0.y/conformance/rendering/clear-default-framebuffer-with-scissor-test.html [ Crash ] webgl/2.0.y/conformance/rendering/color-mask-preserved-during-implicit-clears.html [ Crash ] webgl/2.0.y/conformance/rendering/color-mask-should-not-affect-antialiased-framebuffer-resolution.html [ Crash ] webgl/2.0.y/conformance/rendering/culling.html [ Crash ] webgl/2.0.y/conformance/rendering/default-texture-draw-bug.html [ Crash ] 263069@main https://build.webkit.org/#/builders/728/builds/688 webgl/2.0.y/conformance/reading/read-pixels-pack-alignment.html [ Crash ] webgl/2.0.y/conformance/reading/read-pixels-test.html [ Crash ] webgl/2.0.y/conformance/renderbuffers/depth-renderbuffer-initialization.html [ Crash ] webgl/2.0.y/conformance/renderbuffers/feedback-loop.html [ Crash ] webgl/2.0.y/conformance/renderbuffers/framebuffer-state-restoration.html [ Crash ] webgl/2.0.y/conformance/renderbuffers/renderbuffer-initialization.html [ Crash ] webgl/2.0.y/conformance/renderbuffers/stencil-renderbuffer-initialization.html [ Crash ] webgl/2.0.y/conformance/rendering/bind-framebuffer-flush-bug.html [ Crash ] webgl/2.0.y/conformance/rendering/blending.html [ Crash ] webgl/2.0.y/conformance/rendering/canvas-alpha-bug.html [ Crash ] webgl/2.0.y/conformance/rendering/clear-after-copyTexImage2D.html [ Crash ] webgl/2.0.y/conformance/rendering/clear-default-framebuffer-with-scissor-test.html [ Crash ]
Attachments
Fujii Hironori
Comment 1 2023-04-18 14:07:28 PDT
https://build.webkit.org/results/WinCairo-64-bit-Release-Tests/263066@main%20(686)/CrashLog_1cfc_2023-04-18_03-36-03-092.txt # 7 Id: 3b44.3270 Suspend: 1 Teb: 00000011`35ae8000 Unfrozen # Child-SP RetAddr Call Site 00 00000011`362ff9d0 00007ffd`90241919 WTF!WTFCrash(void)+0x43 [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\Assertions.cpp @ 327] 01 00000011`362ffb30 00007ffd`902c6507 WTF!WTFCrashWithSecurityImplication(void)+0x9 [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\Assertions.cpp @ 733] 02 00000011`362ffb60 00007ffd`9026d0b5 WTF!WTF::RunLoop::RunLoop(void)+0x1b7 [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\win\RunLoopWin.cpp @ 109] 03 (Inline Function) --------`-------- WTF!WTF::RunLoop::Holder::{ctor}+0x17 [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\RunLoop.cpp @ 46] 04 (Inline Function) --------`-------- WTF!WTF::ThreadSpecific<WTF::RunLoop::Holder,0>::Data::{ctor}+0x38 [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\ThreadSpecific.h @ 94] 05 (Inline Function) --------`-------- WTF!WTF::ThreadSpecific<WTF::RunLoop::Holder,0>::set+0x51 [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\ThreadSpecific.h @ 195] 06 (Inline Function) --------`-------- WTF!WTF::ThreadSpecific<WTF::RunLoop::Holder,0>::operator class WTF::RunLoop::Holder *+0x73 [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\ThreadSpecific.h @ 211] 07 (Inline Function) --------`-------- WTF!WTF::ThreadSpecific<WTF::RunLoop::Holder,0>::operator->+0x73 [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\ThreadSpecific.h @ 217] 08 00000011`362ffc30 00007ffd`9026ce5e WTF!WTF::RunLoop::current(void)+0x85 [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\RunLoop.cpp @ 79] 09 (Inline Function) --------`-------- WTF!WTF::RunLoop::create::__l2::<lambda_1>::operator()+0x5 [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\RunLoop.cpp @ 112] 0a 00000011`362ffc60 00007ffd`902711af WTF!WTF::Detail::CallableWrapper<`WTF::RunLoop::create'::`2'::<lambda_1>,void>::call(void)+0xe [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\Function.h @ 53] 0b (Inline Function) --------`-------- WTF!WTF::Function<void __cdecl+0x9 [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\Function.h @ 82] 0c 00000011`362ffc90 00007ffd`902c76e9 WTF!WTF::Thread::entryPoint(struct WTF::Thread::NewThreadContext * newThreadContext = 0x00000205`a9be16c0)+0xbf [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\Threading.cpp @ 250] 0d 00000011`362ffcf0 00007ffd`9e091ffa WTF!WTF::wtfThreadEntryPoint(void * data = <Value unavailable error>)+0x9 [C:\BW\WinCairo-64-bit-Release-Build\build\Source\WTF\wtf\win\ThreadingWin.cpp @ 151] 0e 00000011`362ffd20 00007ffd`9e8c7974 ucrtbase!o_exp+0x5a 0f 00000011`362ffd50 00007ffd`c6b7a271 KERNEL32!BaseThreadInitThunk+0x14 10 00000011`362ffd80 00000000`00000000 ntdll!RtlUserThreadStart+0x21 > RELEASE_ASSERT(::IsWindow(m_runLoopMessageWindow)); https://github.com/WebKit/WebKit/blob/main/Source/WTF/wtf/win/RunLoopWin.cpp#L109>
Fujii Hironori
Comment 2 2023-04-19 20:18:48 PDT
WinCairo-64-bit-Debug-Tests is also crashing. 263077@main https://build.webkit.org/#/builders/727/builds/20138 ASSERTION FAILED: ::IsWindow(m_runLoopMessageWindow) C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WTF\wtf\win\RunLoopWin.cpp(109) : WTF::RunLoop::RunLoop 1 00007FFC154B249B WTFCrash 2 00007FFC154B76BD WTFCrashWithInfo 3 00007FFC1564B57F WTF::RunLoop::RunLoop 4 00007FFC15562C3B WTF::RunLoop::Holder::Holder 5 00007FFC15562B8C WTF::ThreadSpecific<WTF::RunLoop::Holder,0>::Data::Data 6 00007FFC155654A7 WTF::ThreadSpecific<WTF::RunLoop::Holder,0>::set 7 00007FFC155632A2 WTF::ThreadSpecific<WTF::RunLoop::Holder,0>::operator WTF::RunLoop::Holder * 8 00007FFC155633C4 WTF::ThreadSpecific<WTF::RunLoop::Holder,0>::operator-> 9 00007FFC15560103 WTF::RunLoop::current 10 00007FFC15560A5F `WTF::RunLoop::create'::`2'::<lambda_1>::operator() 11 00007FFC15560CFB WTF::Detail::CallableWrapper<`WTF::RunLoop::create'::`2'::<lambda_1>,void>::call 12 00007FFC154CA4F3 WTF::Function<void __cdecl(void)>::operator() 13 00007FFC1556FE18 WTF::Thread::entryPoint 14 00007FFC1564D314 WTF::wtfThreadEntryPoint 15 00007FFC0A001FFA o_exp 16 00007FFC0B8F7974 BaseThreadInitThunk 17 00007FFC26DAA271 RtlUserThreadStart ASSERTION FAILED: m_maxTransformFeedbackSeparateAttribs >= 4 C:\BW\WinCairo-64-bit-Debug-Build\build\Source\WebCore\html/canvas/WebGL2RenderingContext.cpp(163) : WebCore::WebGL2RenderingContext::initializeNewContext 1 00007FFC154B249B WTFCrash 2 00007FFBD3E0318E WTFCrashWithInfo 3 00007FFBD6FF9382 WebCore::WebGL2RenderingContext::initializeNewContext 4 00007FFBD6FE431D WebCore::WebGL2RenderingContext::create 5 00007FFBD703270A WebCore::WebGLRenderingContextBase::create 6 00007FFBD6E24B0C WebCore::HTMLCanvasElement::createContextWebGL 7 00007FFBD6E23FDD WebCore::HTMLCanvasElement::getContext 8 00007FFBD49CA1AE WebCore::jsHTMLCanvasElementPrototypeFunction_getContextBody 9 00007FFBD49D3965 WebCore::IDLOperation<WebCore::JSHTMLCanvasElement>::call<&WebCore::jsHTMLCanvasElementPrototypeFunction_getContextBody,0> 10 00007FFBD49C88B5 WebCore::jsHTMLCanvasElementPrototypeFunction_getContext 11 00000264000014DE (null)
Fujii Hironori
Comment 3 2023-04-19 21:29:38 PDT
EWS
Comment 4 2023-04-20 14:03:54 PDT
Committed 263194@main (a44713b31e56): <https://commits.webkit.org/263194@main> Reviewed commits have been landed. Closing PR #12955 and removing active labels.
Radar WebKit Bug Importer
Comment 5 2023-04-20 14:04:27 PDT
Fujii Hironori
Comment 6 2023-04-22 15:22:05 PDT
Still crashing. Reopened.
Fujii Hironori
Comment 7 2023-04-24 14:37:00 PDT
EWS
Comment 8 2023-04-24 14:53:14 PDT
Committed 263338@main (f9f73906842f): <https://commits.webkit.org/263338@main> Reviewed commits have been landed. Closing PR #13118 and removing active labels.
Fujii Hironori
Comment 9 2023-04-25 00:58:06 PDT
Regressed: Bug 255908 – REGRESSION(263338@main) [Win] JSTests/stress/settimeout-starvation.js is timing out
Fujii Hironori
Comment 10 2023-04-26 13:37:40 PDT
OMG. This is happening again after 263401@main. Reopen. Buildbot: builder WinCairo-64-bit-Debug-Tests build 20176: 263405@main https://build.webkit.org/#/builders/727/builds/20176 Regressions: Unexpected crashes (7) webgl/pending/conformance/context/context-attributes-alpha-depth-stencil-antialias.html [ Crash ] webgl/pending/conformance/glsl/misc/shader-with-reserved-words-2.html [ Crash ] webgl/pending/conformance2/glsl3/empty-shader-with-output.html [ Crash ] webgl/pending/conformance2/glsl3/float-constant-expressions.html [ Crash ] webgl/pending/conformance2/misc/webgl2-after-webgl1-bug.html [ Crash ] workers/worker-to-worker.html [ Crash ] workers/worker-web-lock-released-on-reload.html [ Crash ]
Fujii Hironori
Comment 11 2023-05-24 12:45:42 PDT
264465@main (bug#249769) fixed the problem.
Note You need to log in before you can comment on or make changes to this bug.