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

Issue 797843005: Add support to delay sending SwapbufferAck as needed. (Closed)

Created:
6 years ago by kalyank
Modified:
6 years ago
CC:
chromium-reviews, darin-cc_chromium.org, jam, piman+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add support to delay sending SwapbufferAck as needed. On platforms (i.e. ChromeOS using Ozone) where Chromium is responsible for displaying the buffers, we want to delay SwapBufferAck till we know that the buffer is displayed on screen. Currently, we block the GPU main thread till that data is available. This patch introduces SwapBufferAsync apis, which are similar to current SwapBuffer calls except that it adds a callback function which can be used to delay sending SwapBufferAck as needed. BUG=443543, chrome-os-partner:34292 Committed: https://crrev.com/ae4355c2148da9d549134da9d81d68fd1892724e Cr-Commit-Position: refs/heads/master@{#309602}

Patch Set 1 #

Total comments: 4

Patch Set 2 : Use WeakPtr #

Patch Set 3 : Fix Android build. #

Patch Set 4 : Add SwapBufferCallBack in Helper. #

Total comments: 5

Patch Set 5 : Fix Android build. #

Patch Set 6 : Review fixes. #

Patch Set 7 : Fix typo. #

Patch Set 8 : Remove GPUMainThread from comments. #

Patch Set 9 : Use WeakptrFactory #

Unified diffs Side-by-side diffs Delta from patch set Stats (+75 lines, -12 lines) Patch
M content/common/gpu/image_transport_surface.h View 1 2 3 4 5 6 7 8 2 chunks +2 lines, -0 lines 0 comments Download
M content/common/gpu/image_transport_surface.cc View 1 2 3 4 5 6 7 8 3 chunks +19 lines, -12 lines 0 comments Download
M ui/gl/gl_surface.h View 1 2 3 4 5 6 3 chunks +26 lines, -0 lines 0 comments Download
M ui/gl/gl_surface.cc View 2 chunks +28 lines, -0 lines 0 comments Download

Messages

Total messages: 23 (5 generated)
kalyank
6 years ago (2014-12-18 10:26:07 UTC) #3
kalyank
On 2014/12/18 10:26:07, kalyank wrote: Relevant discussion here: https://codereview.chromium.org/781683005/
6 years ago (2014-12-18 11:08:12 UTC) #4
alexst (slow to review)
lgtm, we are working on hooking this up for ozone surfaceless.
6 years ago (2014-12-18 13:27:39 UTC) #5
piman
https://codereview.chromium.org/797843005/diff/1/content/common/gpu/image_transport_surface.cc File content/common/gpu/image_transport_surface.cc (right): https://codereview.chromium.org/797843005/diff/1/content/common/gpu/image_transport_surface.cc#newcode218 content/common/gpu/image_transport_surface.cc:218: base::Unretained(this))); Why is Unretained safe? Can you add a ...
6 years ago (2014-12-19 04:10:37 UTC) #6
kalyank
https://codereview.chromium.org/797843005/diff/1/content/common/gpu/image_transport_surface.cc File content/common/gpu/image_transport_surface.cc (right): https://codereview.chromium.org/797843005/diff/1/content/common/gpu/image_transport_surface.cc#newcode218 content/common/gpu/image_transport_surface.cc:218: base::Unretained(this))); On 2014/12/19 04:10:36, piman (Very slow to review) ...
6 years ago (2014-12-19 08:43:03 UTC) #7
piman
https://codereview.chromium.org/797843005/diff/1/content/common/gpu/image_transport_surface.cc File content/common/gpu/image_transport_surface.cc (right): https://codereview.chromium.org/797843005/diff/1/content/common/gpu/image_transport_surface.cc#newcode218 content/common/gpu/image_transport_surface.cc:218: base::Unretained(this))); On 2014/12/19 08:43:03, kalyank wrote: > On 2014/12/19 ...
6 years ago (2014-12-19 20:32:54 UTC) #8
kalyank
On 2014/12/19 20:32:54, piman (Very slow to review) wrote: > https://codereview.chromium.org/797843005/diff/1/content/common/gpu/image_transport_surface.cc > File content/common/gpu/image_transport_surface.cc (right): ...
6 years ago (2014-12-22 09:35:17 UTC) #9
piman
https://codereview.chromium.org/797843005/diff/60001/content/common/gpu/image_transport_surface.cc File content/common/gpu/image_transport_surface.cc (left): https://codereview.chromium.org/797843005/diff/60001/content/common/gpu/image_transport_surface.cc#oldcode182 content/common/gpu/image_transport_surface.cc:182: surface_->SetLatencyInfo(latency_info); Why this change? I don't understand... It will ...
6 years ago (2014-12-22 20:53:16 UTC) #10
kalyank
https://codereview.chromium.org/797843005/diff/60001/content/common/gpu/image_transport_surface.cc File content/common/gpu/image_transport_surface.cc (left): https://codereview.chromium.org/797843005/diff/60001/content/common/gpu/image_transport_surface.cc#oldcode182 content/common/gpu/image_transport_surface.cc:182: surface_->SetLatencyInfo(latency_info); On 2014/12/22 20:53:15, piman (Very slow to review) ...
6 years ago (2014-12-23 09:12:32 UTC) #11
kalyank
https://codereview.chromium.org/797843005/diff/60001/content/common/gpu/image_transport_surface.cc File content/common/gpu/image_transport_surface.cc (left): https://codereview.chromium.org/797843005/diff/60001/content/common/gpu/image_transport_surface.cc#oldcode182 content/common/gpu/image_transport_surface.cc:182: surface_->SetLatencyInfo(latency_info); Added ImageTransportHelperAndroid, which will be used by ImageTransportSurfaceAndroid ...
6 years ago (2014-12-23 11:22:42 UTC) #12
piman
On Tue, Dec 23, 2014 at 1:12 AM, <kalyan.kondapally@intel.com> wrote: > > https://codereview.chromium.org/797843005/diff/60001/ > content/common/gpu/image_transport_surface.cc ...
6 years ago (2014-12-23 18:54:23 UTC) #13
kalyank
> > Any suggestions ? > > > > Use a WeakPtrFactory (as the last ...
6 years ago (2014-12-24 00:01:29 UTC) #14
piman
lgtm
6 years ago (2014-12-24 00:13:42 UTC) #15
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/797843005/160001
6 years ago (2014-12-24 00:14:30 UTC) #17
commit-bot: I haz the power
Try jobs failed on following builders: android_chromium_gn_compile_dbg on tryserver.chromium.linux (http://build.chromium.org/p/tryserver.chromium.linux/builders/android_chromium_gn_compile_dbg/builds/28737)
6 years ago (2014-12-24 00:23:30 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/797843005/160001
6 years ago (2014-12-24 02:01:19 UTC) #21
commit-bot: I haz the power
Committed patchset #9 (id:160001)
6 years ago (2014-12-24 02:02:36 UTC) #22
commit-bot: I haz the power
6 years ago (2014-12-24 02:03:24 UTC) #23
Message was sent while issue was closed.
Patchset 9 (id:??) landed as
https://crrev.com/ae4355c2148da9d549134da9d81d68fd1892724e
Cr-Commit-Position: refs/heads/master@{#309602}

Powered by Google App Engine
This is Rietveld 408576698