Bug 139933

Summary: DumpRenderTree crashes are mis-reported as timeouts on Yosemite
Product: WebKit Reporter: Alexey Proskuryakov <ap>
Component: Tools / TestsAssignee: Alexey Proskuryakov <ap>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, dbates, ddkilzer, glenn, mrowe
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=139143
Attachments:
Description Flags
proposed fix dbates: review+

Description Alexey Proskuryakov 2014-12-23 22:35:54 PST
Generating a crash log takes ~2 minutes on my machine, which is longer than what run-webkit-tests waits before deciding that the tool crashed. Looking at bots, crashes are mis-reported as timeouts too.

See also: <rdar://problem/18701447>.
Comment 1 Alexey Proskuryakov 2014-12-23 23:16:09 PST
Created attachment 243727 [details]
proposed fix
Comment 2 Daniel Bates 2014-12-23 23:51:14 PST
Comment on attachment 243727 [details]
proposed fix

View in context: https://bugs.webkit.org/attachment.cgi?id=243727&action=review

> Tools/DumpRenderTree/mac/DumpRenderTree.mm:1141
>      NSString *identifier = [[NSBundle mainBundle] bundleIdentifier];
>      const char *stdinPath = [[NSString stringWithFormat:@"/tmp/%@_IN", identifier] UTF8String];
>      const char *stdoutPath = [[NSString stringWithFormat:@"/tmp/%@_OUT", identifier] UTF8String];

This code (lines 1139 thru 1149 in the proposed patch) is specific to the iOS LayoutTestRelay infrastructure (*) and hence should be guarded with PLATFORM(IOS). That is, we should only move the SIGNAL(3) calls outside the PLATFORM(IOS)-guard (lines 1151 thru 1154 in the proposed patch).

(*) On iOS we indirectly launch DumpRenderTree.app/WebKitTestRunnerApp.app using a helper app, LayoutTestRelay. We use FIFOs (see MKFIFO(1)) as the communication medium between LayoutTestRelay and DumpRenderTree.app/WebKitTestRunnerApp.app instead of using pipes because of limitations with respect to launching a process in the iOS Simulator.
Comment 3 Alexey Proskuryakov 2014-12-24 00:35:20 PST
Ah, so that's what this sorcery is about. Thanks!

Committed <http://trac.webkit.org/r177722>.