| Summary: | [iOS] Tests with incomplete UIScripts cause flaky crashes under WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree() | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Ryan Haddad <ryanhaddad> | ||||||||||||
| Component: | New Bugs | Assignee: | Simon Fraser (smfr) <simon.fraser> | ||||||||||||
| Status: | ASSIGNED --- | ||||||||||||||
| Severity: | Normal | CC: | jenner, Morningstar, rackler, rbuis, sabouhallawa, simon.fraser, webkit-bot-watchers-bugzilla, webkit-bug-importer, wenson_hsieh | ||||||||||||
| Priority: | P2 | Keywords: | InRadar | ||||||||||||
| Version: | WebKit Nightly Build | ||||||||||||||
| Hardware: | Unspecified | ||||||||||||||
| OS: | Unspecified | ||||||||||||||
| See Also: |
https://bugs.webkit.org/show_bug.cgi?id=237221 https://bugs.webkit.org/show_bug.cgi?id=237159 https://bugs.webkit.org/show_bug.cgi?id=237812 https://bugs.webkit.org/show_bug.cgi?id=238033 https://bugs.webkit.org/show_bug.cgi?id=238767 https://bugs.webkit.org/show_bug.cgi?id=241350 https://bugs.webkit.org/show_bug.cgi?id=243317 https://bugs.webkit.org/show_bug.cgi?id=243318 https://bugs.webkit.org/show_bug.cgi?id=243332 https://bugs.webkit.org/show_bug.cgi?id=243429 |
||||||||||||||
| Attachments: |
|
||||||||||||||
|
Description
Ryan Haddad
2022-02-17 11:53:45 PST
Seems like this is:
RELEASE_ASSERT(TestController::singleton().isCurrentInvocation(invocation));
This has been slowing down iOS EWS and has been flagged as a flaky crash: https://ews-build.webkit.org/#/builders/68/builds/9053 I have marked expectations for this here: https://trac.webkit.org/changeset/290462/webkit Seeing more tests with this stack trace, related. *** Bug 237221 has been marked as a duplicate of this bug. *** *** Bug 238229 has been marked as a duplicate of this bug. *** *** Bug 238229 has been marked as a duplicate of this bug. *** *** Bug 238284 has been marked as a duplicate of this bug. *** *** Bug 238301 has been marked as a duplicate of this bug. *** Unable to reproduce with run-webkit-tests --ios-simulator --release imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-052.html editing/spelling/spellcheck-async-remove-frame.html imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-050.html editing/spelling/spellcheck-api-crash.html editing/spelling/editing-word-with-marker-2.html --iterations=20 Aha, I did get it once with --ios-simulator --release imported/w3c/web-platform-tests/css/css-contain/content-visibility/ editing/spelling --iterations=5 (In reply to Simon Fraser (smfr) from comment #13) > Aha, I did get it once with --ios-simulator --release > imported/w3c/web-platform-tests/css/css-contain/content-visibility/ > editing/spelling --iterations=5 Fantastic! I was also unable to reproduce locally. Very Very Flaky. This happens when a test finishes with unfired UI script callbacks. One (pretty trivial) way to reproduce this to run editing/spelling/editing-word-with-marker-1.html in a loop (it reproduces about every other iteration). editing/spelling/editing-word-with-marker-1.html has a bunch of missing 'awaits'. Created attachment 455970 [details]
Path for EWS to see how many tests are bad
iOS results shows that the following tests can cause this crash: editing/spelling/editing-word-with-marker-1.html fast/events/ios/pdf-modifer-key-down-crash.html fast/media/mq-inverted-colors-live-update-for-listener.html fast/media/mq-prefers-contrast-live-update-for-listener.html fast/media/mq-prefers-reduced-motion-live-update-for-listener.html imported/w3c/web-platform-tests/clipboard-apis/async-raw-write-read.tentative.https.html imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-047.html imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-048.html imported/w3c/web-platform-tests/html/user-activation/no-activation-thru-escape-key.html platform/ios/fast/scrolling/find-text-in-overflow-node-indicator-position-limit.html platform/ios/fast/scrolling/find-text-in-overflow-node-indicator-position.html swipe/main-frame-pinning-requirement.html (In reply to Simon Fraser (smfr) from comment #18) > iOS results shows that the following tests can cause this crash: > > imported/w3c/web-platform-tests/css/css-contain/content-visibility/content- > visibility-047.html > imported/w3c/web-platform-tests/css/css-contain/content-visibility/content- > visibility-048.html Note that content-visibility-048.html currently is a bit broken, in the sense that it relies on scroll-to-text-fragment WPT dir which is not yet imported. The only other similarity here that I see is both these using test-driver. No idea if that is related to the reported crash though. *** Bug 240836 has been marked as a duplicate of this bug. *** REPRODUCTION STEPS I can reproduce this crash on ToT r294877 Command: run-webkit-tests --ios-simulator --no-retry --child-processes 1 imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-048.html imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-052.html We have a clear understanding of the bug and how to fix it, so no need for more repro info. (In reply to Simon Fraser (smfr) from comment #22) > We have a clear understanding of the bug and how to fix it, so no need for > more repro info. Great! Do you think it can be fixed soon, or should we skip all the tests you called out in comment #18? (In reply to Simon Fraser (smfr) from comment #22) > We have a clear understanding of the bug and how to fix it, so there is no need for > more repro info. Hello Simon, Understood. It looks like Robert created bug 237159 and set up test expectations for imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-049.html. That seems to shuffle the test order from imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-049.html to imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-048.html imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-052.html and fail the next test in order. That is where I noticed it on Bug 240836. I did not discover this bug until later and added my repro steps. Since we have a clear understanding of the issue, I will not add test expectations for imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-052.html and hold for the fix unless you advise otherwise. Thank you for being so helpful on this! *** Bug 237159 has been marked as a duplicate of this bug. *** Pull request: https://github.com/WebKit/WebKit/pull/1916 These should be resolved by updating WPT for the relevant directories: imported/w3c/web-platform-tests/clipboard-apis/async-raw-write-read.tentative.https.html imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-047.html imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-048.html imported/w3c/web-platform-tests/html/user-activation/no-activation-thru-escape-key.html Created attachment 461389 [details]
Retest to see if any failures remain
Created attachment 461390 [details]
Retest
Created attachment 461392 [details]
Retest
Pull request: https://github.com/WebKit/WebKit/pull/3151 These tests still need fixing: accessibility/ios-simulator/accessibility-make-first-responder.html fast/forms/textfield-outline.html imported/w3c/web-platform-tests/css/css-contain/content-visibility/content-visibility-048.html imported/w3c/web-platform-tests/html/user-activation/no-activation-thru-escape-key.html |