Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(242)

Issue 2401513002: DrawingBuffer cleanup: Merge structures (Closed)

Created:
4 years, 2 months ago by ccameron
Modified:
4 years, 2 months ago
CC:
chromium-reviews, krit, drott+blinkwatch_chromium.org, blink-reviews-platform-graphics_chromium.org, dshwang, pdr+graphicswatchlist_chromium.org, jbroman, Justin Novosad, Rik, f(malita), blink-reviews, piman+watch_chromium.org, danakj+watch_chromium.org, ajuma+watch_chromium.org, Stephen Chennney, rwlbuis
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

DrawingBuffer cleanup: Merge structures There exist four related structures for storing color textures: TextureInfo, MailboxInfo, RecycledMailbox, and FrontBufferInfo. Merge all of these into one structure, called ColorBuffer. Make ColorBuffer be a refcounted structure. Make the destructor of ColorBuffer destroy the GL resources. Delete all of the various helper functions and calls that existed to destroy GL resources. There are many instances where we look up a MailboxInfo in m_textureMailboxes via its gpu::Mailbox. Change all of these instances to just point to the same structure. BUG=648707 Committed: https://crrev.com/57351f256cfe16ba1718a9a2f3c1ef8c58dceda4 Cr-Commit-Position: refs/heads/master@{#423983}

Patch Set 1 #

Patch Set 2 : Rebase #

Patch Set 3 : Fix dtor ordering #

Total comments: 11

Patch Set 4 : Add DCHECK and rebase #

Total comments: 2

Patch Set 5 : Move frontbuffer reset to mailbox return #

Unified diffs Side-by-side diffs Delta from patch set Stats (+120 lines, -182 lines) Patch
M third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.h View 1 2 7 chunks +35 lines, -46 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp View 1 2 3 4 20 chunks +85 lines, -136 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 36 (23 generated)
ccameron
This is the most complicated of the refactoring changes. I've intentionally left many variable names ...
4 years, 2 months ago (2016-10-06 09:24:53 UTC) #13
ccameron
Adding erikchen
4 years, 2 months ago (2016-10-06 17:54:38 UTC) #17
erikchen
nice CL, I really like this clean up. Thanks! https://codereview.chromium.org/2401513002/diff/40001/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp File third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp (left): https://codereview.chromium.org/2401513002/diff/40001/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp#oldcode601 third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp:601: ...
4 years, 2 months ago (2016-10-06 23:32:52 UTC) #18
ccameron
Thanks -- updated! https://codereview.chromium.org/2401513002/diff/40001/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp File third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp (left): https://codereview.chromium.org/2401513002/diff/40001/third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp#oldcode601 third_party/WebKit/Source/platform/graphics/gpu/DrawingBuffer.cpp:601: DCHECK(mailboxInfo->size == m_size); On 2016/10/06 23:32:51, ...
4 years, 2 months ago (2016-10-07 00:46:51 UTC) #20
erikchen
> > Previously, this sequence would result in solid black being read back (since the ...
4 years, 2 months ago (2016-10-07 00:51:29 UTC) #22
Ken Russell (switch to Gerrit)
On 2016/10/07 00:51:29, erikchen wrote: > > > > Previously, this sequence would result in ...
4 years, 2 months ago (2016-10-07 01:30:04 UTC) #23
Ken Russell (switch to Gerrit)
Thanks for working on this. It's a great cleanup. Overall it looks great. One comment. ...
4 years, 2 months ago (2016-10-07 02:49:30 UTC) #26
ccameron
Thanks! I think I figured out how to sort out the m_frontColorBuffer issue in the ...
4 years, 2 months ago (2016-10-07 08:12:30 UTC) #27
Ken Russell (switch to Gerrit)
It's not clear to me under what circumstances the compositor would release the buffer the ...
4 years, 2 months ago (2016-10-07 18:31:58 UTC) #28
ccameron
Thanks!
4 years, 2 months ago (2016-10-07 20:25:08 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2401513002/80001
4 years, 2 months ago (2016-10-07 20:25:38 UTC) #32
commit-bot: I haz the power
Committed patchset #5 (id:80001)
4 years, 2 months ago (2016-10-07 22:18:25 UTC) #34
commit-bot: I haz the power
4 years, 2 months ago (2016-10-07 22:20:32 UTC) #36
Message was sent while issue was closed.
Patchset 5 (id:??) landed as
https://crrev.com/57351f256cfe16ba1718a9a2f3c1ef8c58dceda4
Cr-Commit-Position: refs/heads/master@{#423983}

Powered by Google App Engine
This is Rietveld 408576698