Bug 137362

Summary: [iOS] Networking process stops loading web pages while running Alexa test with random URL list
Product: WebKit Reporter: Pratik Solanki <psolanki>
Component: PlatformAssignee: Pratik Solanki <psolanki>
Status: RESOLVED FIXED    
Severity: Normal CC: ap, benjamin, ddkilzer, mhock, psolanki
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch ap: review+

Pratik Solanki
Reported 2014-10-02 15:03:12 PDT
The networking process stops loading pages after some hours of loading random Alexa urls. When this happens we noticed that the process had hit its limit of dispatch queue threads - we had 64 com.apple.WebKit/CFNetwork threads in the Networking process. Networking comes to a stall and no progress is made until the process is killed and restarted. This can happen if ResourceHandleCFURLConnectionDelegateWithOperationQueue code is waiting for a semaphore signal and the web process dies. The cleanup code for ResourceHandleCFURLConnectionDelegateWithOperationQueue does not signal the semaphore and thus the thread just hangs around forever. Eventually, we can accumulate enough threads to hit the queue thread limit.
Attachments
Patch (4.40 KB, patch)
2014-10-02 15:15 PDT, Pratik Solanki
ap: review+
Pratik Solanki
Comment 1 2014-10-02 15:03:27 PDT
Pratik Solanki
Comment 2 2014-10-02 15:15:51 PDT
Pratik Solanki
Comment 3 2014-10-02 16:39:46 PDT
Note You need to log in before you can comment on or make changes to this bug.