TileController hold unparented for a short period of time (1 -3 sec); we should clear these unparented tiles immediately if we are under memory pressure.
<rdar://problem/15715238>
Created attachment 220809 [details] Patch, immediately clear unparented tiles under memory pressure.
Attachment 220809 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/ChangeLog', u'Source/WebCore/WebCore.exp.in', u'Source/WebCore/WebCore.xcodeproj/project.pbxproj', u'Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp', u'Source/WebCore/platform/graphics/ca/mac/TileController.h', u'Source/WebCore/platform/graphics/ca/mac/TileController.mm', u'Source/WebCore/platform/ios/TileControllerMemoryHandlerIOS.cpp', u'Source/WebCore/platform/ios/TileControllerMemoryHandlerIOS.h', u'Source/WebKit/mac/ChangeLog', u'Source/WebKit/mac/WebView/WebView.mm', '--commit-queue']" exit_code: 1 ERROR: Source/WebCore/platform/ios/TileControllerMemoryHandlerIOS.h:26: #ifndef header guard has wrong style, please use: TileControllerMemoryHandlerIOS_h [build/header_guard] [5] ERROR: Source/WebCore/platform/ios/TileControllerMemoryHandlerIOS.h:39: The parameter name "controller" adds no information, so it should be removed. [readability/parameter_name] [5] ERROR: Source/WebCore/platform/ios/TileControllerMemoryHandlerIOS.h:40: The parameter name "controller" adds no information, so it should be removed. [readability/parameter_name] [5] ERROR: Source/WebCore/platform/ios/TileControllerMemoryHandlerIOS.h:44: Missing space inside { }. [whitespace/braces] [5] Total errors found: 4 in 10 files If any of these errors are false positives, please file a bug against check-webkit-style.
Created attachment 220810 [details] Fix style issues.
Comment on attachment 220810 [details] Fix style issues. View in context: https://bugs.webkit.org/attachment.cgi?id=220810&action=review > Source/WebCore/WebCore.xcodeproj/project.pbxproj:17833 > + }; Odd move by Xcode. Maybe skip this part before commit? > Source/WebCore/platform/graphics/ca/GraphicsLayerCA.cpp:3032 > + float maxPixelDimension = systemMemoryLevel() < cMemoryLevelToUseSmallerPixelDimension ? cMaxPixelDimensionLowMemory : cMaxPixelDimension; This should be int since cMaxPixelDimension is int.
Comment on attachment 220810 [details] Fix style issues. View in context: https://bugs.webkit.org/attachment.cgi?id=220810&action=review > Source/WebCore/platform/ios/TileControllerMemoryHandlerIOS.cpp:68 > +void TileControllerMemoryHandler::trimUnparentedTilesToTarget(unsigned target) Use an int for the argument. Surprising things can happen using unsigned math. > Source/WebCore/platform/ios/TileControllerMemoryHandlerIOS.h:40 > + void updateForTileController(TileController*); I think this would be better named tileControllerGainedUnparentedTiles() or similar.
Created attachment 220865 [details] Address review comments before landing.
Comment on attachment 220865 [details] Address review comments before landing. Clearing flags on attachment: 220865 Committed r161675: <http://trac.webkit.org/changeset/161675>
All reviewed patches have been landed. Closing bug.