Bug 255624 - REGRESSION: [Win] GPUProcess is randomly crasing for some WebGL tests: RELEASE_ASSERT(::IsWindow(m_runLoopMessageWindow))
Summary: REGRESSION: [Win] GPUProcess is randomly crasing for some WebGL tests: RELEAS...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Web Template Framework (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Fujii Hironori
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2023-04-18 13:57 PDT by Fujii Hironori
Modified: 2023-05-24 12:45 PDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Fujii Hironori 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 ]
Comment 1 Fujii Hironori 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>
Comment 2 Fujii Hironori 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)
Comment 3 Fujii Hironori 2023-04-19 21:29:38 PDT
Pull request: https://github.com/WebKit/WebKit/pull/12955
Comment 4 EWS 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.
Comment 5 Radar WebKit Bug Importer 2023-04-20 14:04:27 PDT
<rdar://problem/108337242>
Comment 6 Fujii Hironori 2023-04-22 15:22:05 PDT
Still crashing. Reopened.
Comment 7 Fujii Hironori 2023-04-24 14:37:00 PDT
Pull request: https://github.com/WebKit/WebKit/pull/13118
Comment 8 EWS 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.
Comment 9 Fujii Hironori 2023-04-25 00:58:06 PDT
Regressed: Bug 255908 – REGRESSION(263338@main) [Win] JSTests/stress/settimeout-starvation.js is timing out
Comment 10 Fujii Hironori 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 ]
Comment 11 Fujii Hironori 2023-05-24 12:45:42 PDT
264465@main (bug#249769) fixed the problem.