WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
133471
Prepopulated tiles may never be unparented from TileGrids with aggressive tile retention on
https://bugs.webkit.org/show_bug.cgi?id=133471
Summary
Prepopulated tiles may never be unparented from TileGrids with aggressive til...
Tim Horton
Reported
2014-06-03 02:30:58 PDT
We only unparent tiles that are in the VisibleTileCohort when cleaning up no-longer-visible tiles. If tiles were created via prepopulateRect() and never made it into the VisibleTileCohort, they won't be unparented (and will thus stick around, nonvolatile, forever, until the scale changes or the primary coverage rect moves to intersect them). This is in some cases a huge waste of memory and time. We can't just immediately unparent all non-primary-coverage layers, because that would defeat prepopulateRect(). We may be able to make use of the cohort age and unparent them on a subsequent revalidateTiles (and schedule a revalidation timer when we prepopulate, etc.).
Attachments
patch
(7.55 KB, patch)
2014-06-03 03:29 PDT
,
Tim Horton
simon.fraser
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Tim Horton
Comment 1
2014-06-03 03:29:02 PDT
Created
attachment 232419
[details]
patch
WebKit Commit Bot
Comment 2
2014-06-03 03:30:50 PDT
Attachment 232419
[details]
did not pass style-queue: ERROR: Source/WebCore/platform/graphics/ca/mac/TileGrid.h:125: The parameter name "cohortInfo" adds no information, so it should be removed. [readability/parameter_name] [5] Total errors found: 1 in 4 files If any of these errors are false positives, please file a bug against check-webkit-style.
Simon Fraser (smfr)
Comment 3
2014-06-03 09:03:44 PDT
Comment on
attachment 232419
[details]
patch View in context:
https://bugs.webkit.org/attachment.cgi?id=232419&action=review
> Source/WebCore/platform/graphics/ca/mac/TileController.h:128 > + > +
Blank lines.
> Source/WebCore/platform/graphics/ca/mac/TileGrid.h:125 > + double timeUntilCohortExpires(TileCohortInfo cohortInfo); // move onto cohortinfo?
const TileCohortInfo&. Could be static or moved onto TileCohortInfo.
Tim Horton
Comment 4
2014-06-03 12:01:18 PDT
> > Source/WebCore/platform/graphics/ca/mac/TileGrid.h:125 > > + double timeUntilCohortExpires(TileCohortInfo cohortInfo); // move onto cohortinfo? > > const TileCohortInfo&. Could be static or moved onto TileCohortInfo.
I totally meant to actually do what that comment said, and forgot. Fixed in the patch that landed. Thanks!
http://trac.webkit.org/changeset/169565
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug