Bug 271954
Summary: | Make run-jsc-stress-tests handle expected crashes correctly. | ||
---|---|---|---|
Product: | WebKit | Reporter: | Mark Lam <mark.lam> |
Component: | JavaScriptCore | Assignee: | Mark Lam <mark.lam> |
Status: | RESOLVED FIXED | ||
Severity: | Normal | CC: | webkit-bug-importer |
Priority: | P2 | Keywords: | InRadar |
Version: | WebKit Nightly Build | ||
Hardware: | Unspecified | ||
OS: | Unspecified |
Mark Lam
It does not make sense to have a crashOK! test attribute, which imply that the test will be flaky. A test should be deterministic. We should either expect a crash or no crash. To enable this, we'll make the following changes:
1. Change the jsc shell "crash detector" signal handler to exit with exitCode 137 (to indicate a fatal crash).
2. Fix the JSC stress test harness to actually be able to handle crashes (terminations with exitCode > 130).
3. Rename the "crashOK!" test attribute to "mustCrash!". It now makes it clear that a test is expected to crash, instead of flakily crashing sometimes.
4. Add filter conditions to tests that "mustCrash!" so that they are only run with configurations where they are expected to crash. Skip the rest.
5. Make WTFCrash() crash with WTFBreakpointTrap() on Darwin ARM64 platforms to be consistent with all other crashes.
6. Opportunistic quality of life improvement: make jsc shell timeouts crash below crashDueToJSCShellTimeout() to distinguish it from other crashes.
rdar://124471961
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Mark Lam
Pull request: https://github.com/WebKit/WebKit/pull/26665
EWS
Committed 276881@main (724f7173e04a): <https://commits.webkit.org/276881@main>
Reviewed commits have been landed. Closing PR #26665 and removing active labels.