Bug 243612 - REGRESSION(249232@main?): [ iPadOS Debug ] TestWebKitAPI.WebKit.TextSize is a constant timeout
Summary: REGRESSION(249232@main?): [ iPadOS Debug ] TestWebKitAPI.WebKit.TextSize is ...
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2022-08-05 15:25 PDT by Hercules Hjalmarsson
Modified: 2022-09-15 13:10 PDT (History)
6 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Hercules Hjalmarsson 2022-08-05 15:25:03 PDT
TestWebKitAPI.WebKit.TextSize

Is constantly timing out on iPadOS Debug ToT and since around 249232@main.

HISTORY:
https://results.webkit.org/?suite=api-tests&test=TestWebKitAPI.WebKit.TextSize&limit=50000

DIFF:

TestWebKitAPI.WebKit.TextSize
        ERROR: Error while launching com.apple.WebKit.Networking: Connection invalid
        /Volumes/Data/worker/Apple-iOS-15-Simulator-Debug-Build/build/Source/WebKit/UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm(233) : auto WebKit::ProcessLauncher::launchProcess()::(anonymous class)::operator()(xpc_object_t) const
        ASSERTION FAILED: settings().textAutosizingEnabled() && settings().textAutosizingUsesIdempotentMode()
        page/Page.cpp(3735) : void WebCore::Page::recomputeTextAutoSizingInAllFrames()
        1   0x1de739c69 WTFCrash
        2   0x207a2f97b WTFCrashWithInfo(int, char const*, char const*, int)
        3   0x20c13fad1 WebCore::Page::recomputeTextAutoSizingInAllFrames()
        4   0x1c1dbfb71 WebKit::WebPage::textAutoSizingAdjustmentTimerFired()
        5   0x1c1e03b89 decltype(*(static_cast<WebKit::WebPage*&>(fp0)).*fp()) std::__1::__invoke<void (WebKit::WebPage::*&)(), WebKit::WebPage*&, void>(void (WebKit::WebPage::*&)(), WebKit::WebPage*&)
        6   0x1c1e03b0d std::__1::__bind_return<void (WebKit::WebPage::*)(), std::__1::tuple<WebKit::WebPage*>, std::__1::tuple<>, __is_valid_bind_return<void (WebKit::WebPage::*)(), std::__1::tuple<WebKit::WebPage*>, std::__1::tuple<> >::value>::type std::__1::__apply_functor<void (WebKit::WebPage::*)(), std::__1::tuple<WebKit::WebPage*>, 0ul, std::__1::tuple<> >(void (WebKit::WebPage::*&)(), std::__1::tuple<WebKit::WebPage*>&, std::__1::__tuple_indices<0ul>, std::__1::tuple<>&&)
        7   0x1c1e06250 std::__1::__bind_return<void (WebKit::WebPage::*)(), std::__1::tuple<WebKit::WebPage*>, std::__1::tuple<>, __is_valid_bind_return<void (WebKit::WebPage::*)(), std::__1::tuple<WebKit::WebPage*>, std::__1::tuple<> >::value>::type std::__1::__bind<void (WebKit::WebPage::*&)(), WebKit::WebPage*>::operator()<>()
        8   0x1c1e061e9 WTF::Detail::CallableWrapper<std::__1::__bind<void (WebKit::WebPage::*&)(), WebKit::WebPage*>, void>::call()
        9   0x1bf584442 WTF::Function<void ()>::operator()() const
        10  0x1bfb45a59 WebCore::Timer::fired()
        11  0x20c395a36 WebCore::ThreadTimers::sharedTimerFiredInternal()
        12  0x20c3a32c1 WebCore::ThreadTimers::setSharedTimer(WebCore::SharedTimer*)::$_0::operator()() const
        13  0x20c3a3259 WTF::Detail::CallableWrapper<WebCore::ThreadTimers::setSharedTimer(WebCore::SharedTimer*)::$_0, void>::call()
        14  0x207a4ff52 WTF::Function<void ()>::operator()() const
        15  0x20c32e591 WebCore::MainThreadSharedTimer::fired()
        16  0x20c4294a6 WebCore::timerFired(__CFRunLoopTimer*, void*)
        17  0x1a86480fa __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__
        18  0x1a8647bc8 __CFRunLoopDoTimer
        19  0x1a8647189 __CFRunLoopDoTimers
        20  0x1a864176d __CFRunLoopRun
        21  0x1a8640a90 CFRunLoopRunSpecific
        22  0x1a8f90e31 -[NSRunLoop(NSRunLoop) runMode:beforeDate:]
        23  0x1a8f9104f -[NSRunLoop(NSRunLoop) run]
        24  0x1a9a9efeb _xpc_objc_main
        25  0x1a9aa0fd4 xpc_main
        26  0x1c03271c2 WebKit::XPCServiceMain(int, char const**)
        27  0x1c24c4c0b WKXPCServiceMain
        28  0x104cccdb2 main
        29  0x1a8209f21
        30  0x10f47e51e

DIFF URL:
https://build.webkit.org/#/builders/265/builds/1966/steps/18/logs/stdio
Comment 1 Radar WebKit Bug Importer 2022-08-05 15:25:24 PDT
<rdar://problem/98215116>
Comment 2 Hercules Hjalmarsson 2022-08-05 15:30:34 PDT
I was able to bisect this issue to a regression range of 249233@main(Timeout) - 249228@main(Passing). There were no builds available to test on between these commits. However, 249232@main seems like the most likely candidate to have caused a regression.

This was bisected by running 2 iterations with command:

run-api-tests --ios-simulator --debug TestWebKitAPI.WebKit.TextSize
Comment 3 Alex Christensen 2022-08-08 12:51:36 PDT
249232@main did not cause the regression

Adding Simon and Alan since they were involved with the introduction of that assert several years ago.
Comment 4 Alex Christensen 2022-08-08 12:55:08 PDT
In that range I would guess http://commits.webkit.org/249229@main is the cause
Comment 6 Hercules Hjalmarsson 2022-09-15 13:10:00 PDT
The constant timeout is also happening on iOS16 iPad Debug. However, the diff is slightly different now.

DIFF:
ASSERTION FAILED: settings().textAutosizingEnabled() && settings().textAutosizingUsesIdempotentMode()
page/Page.cpp(3736) : void WebCore::Page::recomputeTextAutoSizingInAllFrames()
1   0x10b05e8dc WTFCrash
2   0x146f0ac10 WebCore::JSDOMGlobalObject* JSC::jsCast<WebCore::JSDOMGlobalObject*, JSC::JSGlobalObject>(JSC::JSGlobalObject*)
3   0x14a9ad120 WebCore::Page::recomputeTextAutoSizingInAllFrames()
4   0x133344e6c WebKit::webpage::textAutoSizingAdjustmentTimerFired()
5   0x133383a3c decltype(*(static_cast<WebKit::WebPage*&>(fp0)).*fp()) std::__1::__invoke<void (WebKit::webpage::*&)(), WebKit::WebPage*&, void>(void (WebKit::webpage::*&)(), WebKit::WebPage*&)
6   0x1333839c4 std::__1::__bind_return<void (WebKit::webpage::*)(), std::__1::tuple<WebKit::WebPage*>, std::__1::tuple<>, __is_valid_bind_return<void (WebKit::webpage::*)(), std::__1::tuple<WebKit::WebPage*>, std::__1::tuple<> >::value>::type std::__1::__apply_functor<void (WebKit::webpage::*)(), std::__1::tuple<WebKit::WebPage*>, 0ul, std::__1::tuple<> >(void (WebKit::webpage::*&)(), std::__1::tuple<WebKit::WebPage*>&, std::__1::__tuple_indices<0ul>, std::__1::tuple<>&&)
7   0x133385c3c std::__1::__bind_return<void (WebKit::webpage::*)(), std::__1::tuple<WebKit::WebPage*>, std::__1::tuple<>, __is_valid_bind_return<void (WebKit::webpage::*)(), std::__1::tuple<WebKit::WebPage*>, std::__1::tuple<> >::value>::type std::__1::__bind<void (WebKit::webpage::*&)(), WebKit::WebPage*>::operator()<>()
8   0x133385bb8 WTF::detail::CallableWrapper<std::__1::__bind<void (WebKit::webpage::*&)(), WebKit::WebPage*>, void>::call()
9   0x130f33dbc WTF::Function<void ()>::operator()() const
10  0x131212b28 WebCore::Timer::fired()
11  0x14abd053c WebCore::ThreadTimers::sharedTimerFiredInternal()
12  0x14abd8e6c WebCore::ThreadTimers::setSharedTimer(WebCore::SharedTimer*)::$_0::operator()() const
13  0x14abd8df0 WTF::detail::CallableWrapper<WebCore::ThreadTimers::setSharedTimer(WebCore::SharedTimer*)::$_0, void>::call()
14  0x1490711ac WTF::Function<void ()>::operator()() const
15  0x14ab79044 WebCore::MainThreadSharedTimer::fired()
16  0x14ac52228 WebCore::timerFired(__CFRunLoopTimer*, void*)
17  0x101c2d720 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__
18  0x101c2d3dc __CFRunLoopDoTimer
19  0x101c2cac8 __CFRunLoopDoTimers
20  0x101c2728c __CFRunLoopRun
21  0x101c2675c CFRunLoopRunSpecific
22  0x1040d000c -[NSRunLoop(NSRunLoop) runMode:beforeDate:]
23  0x1040d01e0 -[NSRunLoop(NSRunLoop) run]
24  0x102cdb528 _xpc_objc_main
25  0x102cdd704 xpc_main
26  0x1319bcd90 WebKit::XPCServiceMain(int, char const**)
27  0x133b11094 WKXPCServiceMain
28  0x100723d04 main
29  0x100a91fa0 (null)
30  0x1008b908c (null)
31  0xa451000000000000 (null)

Build URL:
https://build.webkit.org/#/builders/666/builds/3/steps/18/logs/stdio