Bug 141313

Summary: [iOS] Run a full garbage collection on memory warning.
Product: WebKit Reporter: Andreas Kling <kling>
Component: JavaScriptCoreAssignee: Andreas Kling <kling>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, commit-queue, ggaren, kling, webkit-bug-importer
Priority: P2 Keywords: InRadar, Performance
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch none

Description Andreas Kling 2015-02-05 16:17:08 PST
In the iOS/WebKit1 world, we would synchronously GC upon receiving a memory warning. We should have the same behavior in iOS/WebKit2.
Comment 1 Radar WebKit Bug Importer 2015-02-05 16:18:09 PST
<rdar://problem/19738024>
Comment 2 Andreas Kling 2015-02-05 17:48:00 PST
Created attachment 246142 [details]
Patch
Comment 3 Chris Dumez 2015-02-05 18:09:46 PST
Comment on attachment 246142 [details]
Patch

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

> Source/WebCore/platform/MemoryPressureHandler.cpp:139
> +#if PLATFORM(IOS)

Since this is iOS-specific, it seems like this should be in MemoryPressureHandler::platformReleaseMemory(bool) in MemoryPressureHandlerCocoa.mm, right?
Comment 4 Andreas Kling 2015-02-05 18:40:23 PST
Created attachment 246143 [details]
Patch

Moved the logic per Chris's excellent suggestion.
Comment 5 Chris Dumez 2015-02-05 18:41:49 PST
Comment on attachment 246143 [details]
Patch

r=me
Comment 6 Andreas Kling 2015-02-05 19:14:25 PST
Comment on attachment 246143 [details]
Patch

Clearing flags on attachment: 246143

Committed r179737: <http://trac.webkit.org/changeset/179737>
Comment 7 Andreas Kling 2015-02-05 19:14:30 PST
All reviewed patches have been landed.  Closing bug.
Comment 8 Geoffrey Garen 2015-02-12 15:19:48 PST
I'm worried about cost here in the edge case of pathological pressure. Let's do what you suggested in person -- GC now in response to background, GC soon in response to memory warning.