Remaining work after bug 189880: WinCairo JSC stress tests are now able to run to completion in Debug mode, but we still end up with hanging subprocesses in Release mode. Notes: - Repro rate seems to be 100% when running the full suite, but which tests end up stuck seems random. In particular, these are not failing tests. - We may well manage to *start* running every test, but then we just sit at the end forever since some number of subprocesses will never terminate. - Running a subset of tests with --filter is generally stable, and it seems that even --quick usually terminates successfully.
As mentioned in the previous ticket, the stack trace for all hanging subprocesses is: > [External Code] > jscLib.dll!`anonymous namespace'::jscExit(int status) at Source\JavaScriptCore\jsc.cpp(174) > jscLib.dll!main(int argc, char * * argv) at Source\JavaScriptCore\jsc.cpp(2275) > jscLib.dll!dllLauncherEntryPoint(int argc, const char * * argv) at Source\JavaScriptCore\jsc.cpp(2855) > jsc.exe!main(int argc, const char * * argv) at Source\JavaScriptCore\shell\DLLLauncherMain.cpp(222) > [External Code] Attaching to process and hitting the Pause button breaks at jsc.cpp:174, and attempting to Step Into has the same effect as hitting Continue, since the call stack above the `exit(0);` call is just "external code".
Hmm, it seems like if I ensure that we never collect continuously, then none of the subprocesses hang! (https://github.com/WebKit/webkit/blob/master/Tools/Scripts/run-jsc-stress-tests#L494-L496)
Created attachment 381778 [details] workaround patch by disabling concurrent GC
Now, AppleWin port Buildbots are running run-javascriptcore-tests with 64bit JSC JIT. AppleWin port is also showing the same issue. Release builds are timing out, while Debug builds are completing. https://build.webkit.org/builders/Apple%20Win%2010%20Debug%20%28Tests%29/builds/3207 https://build.webkit.org/builders/Apple%20Win%2010%20Release%20%28Tests%29/builds/4324
Fixed by 262193@main. *** This bug has been marked as a duplicate of bug 254566 ***