nsurlsessiond blocks and uses 100% CPU

Originator:jakob.magun
Number:rdar://21300082 Date Originated:9. June 2015
Status:Open Resolved:
Product:iOS Product Version:8.3
Classification:Severe Reproducible:Yes
 
Summary:
We have a background content download in our iPad App which downloads 6.4GB in around 10 files, each between 500MB and 700MB. If we initiate the download in the foreground and keep the App there, after around 1.2GB the App stops receiving callbacks and seems to hang, however the download continues by the nsurlsessiond until completion without notifying the App. After completion the nsurlsessiond process remains at 100% CPU.

When the App is force terminated by swiping up and then restarted, it will hang and the Watchdog will terminate it. The stacktrace shows that the nsurlsessiond seems to be waiting on a semaphore.

Steps to Reproduce:
Use supplied code. Please note that the error will only occur on a setup which is capable of downloading at least 100Mbit/s, this requires an iPad Air 2 AND a fast broadband connection AND a good Wi-Fi AP. In this setup the issue is always reproducible for iOS 8.3 and iOS 8.4 Beta 3. It does NOT happen on iOS 8.2

Expected Results:
-

Actual Results:
-

Version:
iOS 8.3, 8.4 beta 3

Notes:


Configuration:
iPad Air 2, Fast Broadband Connection and good Wi-Fi Access Point. Speediest should show at least 100 Mbit/s bandwidth

Attachments:
'MPBackgroundDownload.zip' and 'watchdog_crash.txt' were successfully uploaded.

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!