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

Issue 11195011: Send vsync timebase updates to the browser compositor (Closed)

Created:
8 years, 2 months ago by ajuma
Modified:
8 years, 1 month ago
Reviewers:
jonathan.backer, piman
CC:
chromium-reviews, joi+watch-content_chromium.org, darin-cc_chromium.org, cc-bugs_chromium.org, jam, apatrick_chromium, marcheu, brianderson
Visibility:
Public.

Description

Send vsync timebase updates to the browser compositor This uses the GLX_OML_sync_control extension to get vsync timebase and interval information and forward it to the browser compositor on Aura, and to the renderer compositor on non-Aura. BUG=143466 Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=165389

Patch Set 1 : Send vsync timebase updates to the browser compositor #

Total comments: 3

Patch Set 2 : Use the existing output surface mechanism to feed vsync info into the compositor #

Total comments: 20

Patch Set 3 : Work-in-progress #

Patch Set 4 : Work-in-progress #

Total comments: 14

Patch Set 5 : Address piman@ comments. #

Patch Set 6 : Address backer@ comments. #

Patch Set 7 : Rebased, and added a missing chunk #

Total comments: 10

Patch Set 8 : Address piman@ comments. #

Total comments: 4

Patch Set 9 : Rebase and address nit. #

Patch Set 10 : Rebased again. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+424 lines, -60 lines) Patch
M content/browser/gpu/browser_gpu_channel_host_factory.h View 1 2 3 2 chunks +10 lines, -0 lines 0 comments Download
M content/browser/gpu/browser_gpu_channel_host_factory.cc View 1 2 3 4 5 6 2 chunks +29 lines, -0 lines 0 comments Download
M content/browser/gpu/gpu_process_host.h View 1 2 3 4 5 6 2 chunks +4 lines, -0 lines 0 comments Download
M content/browser/gpu/gpu_process_host.cc View 1 2 3 4 5 6 1 chunk +5 lines, -0 lines 0 comments Download
M content/browser/gpu/gpu_process_host_ui_shim.h View 1 2 3 4 5 6 7 1 chunk +3 lines, -0 lines 0 comments Download
M content/browser/gpu/gpu_process_host_ui_shim.cc View 1 2 3 4 5 6 7 2 chunks +22 lines, -0 lines 0 comments Download
M content/browser/renderer_host/image_transport_factory.cc View 1 2 3 4 5 6 7 4 chunks +151 lines, -9 lines 0 comments Download
M content/common/gpu/gpu_messages.h View 1 2 3 4 5 6 7 1 chunk +6 lines, -0 lines 0 comments Download
M content/common/gpu/image_transport_surface.h View 1 2 3 4 5 6 2 chunks +6 lines, -0 lines 0 comments Download
M content/common/gpu/image_transport_surface.cc View 1 2 3 4 5 6 7 4 chunks +17 lines, -0 lines 0 comments Download
M ui/compositor/compositor.h View 1 2 3 4 5 6 7 2 chunks +5 lines, -5 lines 0 comments Download
M ui/compositor/compositor.cc View 1 2 3 4 5 6 7 4 chunks +41 lines, -46 lines 0 comments Download
M ui/gl/generate_bindings.py View 1 2 3 4 5 6 1 chunk +10 lines, -0 lines 0 comments Download
M ui/gl/gl_surface.h View 1 2 3 chunks +13 lines, -0 lines 0 comments Download
M ui/gl/gl_surface.cc View 1 2 3 4 5 6 7 8 2 chunks +10 lines, -0 lines 0 comments Download
M ui/gl/gl_surface_glx.h View 1 2 2 chunks +3 lines, -0 lines 0 comments Download
M ui/gl/gl_surface_glx.cc View 1 2 3 4 5 6 7 5 chunks +89 lines, -0 lines 0 comments Download

Messages

Total messages: 23 (0 generated)
ajuma
8 years, 2 months ago (2012-10-17 14:03:19 UTC) #1
Sam Leffler
Looks like GLX_OML_sync_control is returning CLOCK_REALTIME for the system time component? Reading the extension doc ...
8 years, 2 months ago (2012-10-17 16:07:29 UTC) #2
ajuma
On 2012/10/17 16:07:29, Sam Leffler wrote: > You might be better off just replacing that ...
8 years, 2 months ago (2012-10-17 16:57:01 UTC) #3
jamesr
On 2012/10/17 16:57:01, ajuma wrote: > On 2012/10/17 16:07:29, Sam Leffler wrote: > > You ...
8 years, 2 months ago (2012-10-17 17:04:52 UTC) #4
ajuma
On 2012/10/17 17:04:52, jamesr wrote: > Unix epoch time is pretty much useless - can ...
8 years, 2 months ago (2012-10-17 17:13:31 UTC) #5
piman
https://chromiumcodereview.appspot.com/11195011/diff/10001/cc/gl_renderer.h File cc/gl_renderer.h (right): https://chromiumcodereview.appspot.com/11195011/diff/10001/cc/gl_renderer.h#newcode126 cc/gl_renderer.h:126: virtual void onUpdateVSyncTime(int64) OVERRIDE; There already is a mechanism ...
8 years, 2 months ago (2012-10-17 17:24:46 UTC) #6
ajuma
https://chromiumcodereview.appspot.com/11195011/diff/10001/cc/gl_renderer.h File cc/gl_renderer.h (right): https://chromiumcodereview.appspot.com/11195011/diff/10001/cc/gl_renderer.h#newcode126 cc/gl_renderer.h:126: virtual void onUpdateVSyncTime(int64) OVERRIDE; On 2012/10/17 17:24:47, piman wrote: ...
8 years, 2 months ago (2012-10-17 21:15:22 UTC) #7
ajuma
This now uses the existing path into the compositor instead of adding a new one. ...
8 years, 2 months ago (2012-10-24 16:00:19 UTC) #8
piman
https://chromiumcodereview.appspot.com/11195011/diff/16001/content/browser/gpu/gpu_process_host_ui_shim.h File content/browser/gpu/gpu_process_host_ui_shim.h (right): https://chromiumcodereview.appspot.com/11195011/diff/16001/content/browser/gpu/gpu_process_host_ui_shim.h#newcode24 content/browser/gpu/gpu_process_host_ui_shim.h:24: #include "ipc/ipc_channel_proxy.h" This doesn't seem used in this file. ...
8 years, 2 months ago (2012-10-24 16:56:54 UTC) #9
ajuma
Addressed piman@'s comments. https://chromiumcodereview.appspot.com/11195011/diff/16001/content/browser/gpu/gpu_process_host_ui_shim.h File content/browser/gpu/gpu_process_host_ui_shim.h (right): https://chromiumcodereview.appspot.com/11195011/diff/16001/content/browser/gpu/gpu_process_host_ui_shim.h#newcode24 content/browser/gpu/gpu_process_host_ui_shim.h:24: #include "ipc/ipc_channel_proxy.h" On 2012/10/24 16:56:54, piman ...
8 years, 1 month ago (2012-10-26 20:12:39 UTC) #10
jonathan.backer
http://codereview.chromium.org/11195011/diff/25001/content/browser/renderer_host/image_transport_factory.cc File content/browser/renderer_host/image_transport_factory.cc (right): http://codereview.chromium.org/11195011/diff/25001/content/browser/renderer_host/image_transport_factory.cc#newcode25 content/browser/renderer_host/image_transport_factory.cc:25: #include "content/public/browser/browser_thread.h" still need this? http://codereview.chromium.org/11195011/diff/25001/content/browser/renderer_host/image_transport_factory.cc#newcode291 content/browser/renderer_host/image_transport_factory.cc:291: class BrowserCompositorOutputSurfaceProxy ...
8 years, 1 month ago (2012-10-26 20:31:03 UTC) #11
ajuma
Addressed backer@'s comments. https://chromiumcodereview.appspot.com/11195011/diff/25001/content/browser/renderer_host/image_transport_factory.cc File content/browser/renderer_host/image_transport_factory.cc (right): https://chromiumcodereview.appspot.com/11195011/diff/25001/content/browser/renderer_host/image_transport_factory.cc#newcode25 content/browser/renderer_host/image_transport_factory.cc:25: #include "content/public/browser/browser_thread.h" On 2012/10/26 20:31:03, jonathan.backer ...
8 years, 1 month ago (2012-10-29 17:02:26 UTC) #12
piman
Some nits, and a few rather minor things, but we're close! https://chromiumcodereview.appspot.com/11195011/diff/38001/content/browser/renderer_host/image_transport_factory.cc File content/browser/renderer_host/image_transport_factory.cc (right): ...
8 years, 1 month ago (2012-10-29 20:36:39 UTC) #13
ajuma
Addressed piman@'s comments. https://chromiumcodereview.appspot.com/11195011/diff/38001/content/browser/renderer_host/image_transport_factory.cc File content/browser/renderer_host/image_transport_factory.cc (right): https://chromiumcodereview.appspot.com/11195011/diff/38001/content/browser/renderer_host/image_transport_factory.cc#newcode291 content/browser/renderer_host/image_transport_factory.cc:291: , surface_id_(surface_id) On 2012/10/29 20:36:39, piman ...
8 years, 1 month ago (2012-10-30 21:04:04 UTC) #14
piman
lgtm
8 years, 1 month ago (2012-10-30 21:27:19 UTC) #15
jonathan.backer
https://chromiumcodereview.appspot.com/11195011/diff/42002/ui/gl/gl_surface.cc File ui/gl/gl_surface.cc (right): https://chromiumcodereview.appspot.com/11195011/diff/42002/ui/gl/gl_surface.cc#newcode151 ui/gl/gl_surface.cc:151: base::TimeDelta* interval) { nit: indentation https://chromiumcodereview.appspot.com/11195011/diff/42002/ui/gl/gl_surface_glx.cc File ui/gl/gl_surface_glx.cc (right): ...
8 years, 1 month ago (2012-10-31 13:12:01 UTC) #16
ajuma
Addressed backer@'s comment. https://chromiumcodereview.appspot.com/11195011/diff/42002/ui/gl/gl_surface.cc File ui/gl/gl_surface.cc (right): https://chromiumcodereview.appspot.com/11195011/diff/42002/ui/gl/gl_surface.cc#newcode151 ui/gl/gl_surface.cc:151: base::TimeDelta* interval) { On 2012/10/31 13:12:02, ...
8 years, 1 month ago (2012-10-31 13:50:00 UTC) #17
jonathan.backer
On 2012/10/31 13:50:00, ajuma wrote: > Addressed backer@'s comment. > > https://chromiumcodereview.appspot.com/11195011/diff/42002/ui/gl/gl_surface.cc > File ui/gl/gl_surface.cc ...
8 years, 1 month ago (2012-10-31 13:55:09 UTC) #18
piman
On Wed, Oct 31, 2012 at 6:12 AM, <backer@chromium.org> wrote: > > https://chromiumcodereview.**appspot.com/11195011/diff/** > 42002/ui/gl/gl_surface.cc<https://chromiumcodereview.appspot.com/11195011/diff/42002/ui/gl/gl_surface.cc> ...
8 years, 1 month ago (2012-10-31 19:49:31 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/ajuma@chromium.org/11195011/53001
8 years, 1 month ago (2012-10-31 20:02:35 UTC) #20
commit-bot: I haz the power
Step "update" is always a major failure. Look at the try server FAQ for more ...
8 years, 1 month ago (2012-11-01 00:56:22 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/ajuma@chromium.org/11195011/60002
8 years, 1 month ago (2012-11-01 13:52:45 UTC) #22
commit-bot: I haz the power
8 years, 1 month ago (2012-11-01 15:40:38 UTC) #23
Change committed as 165389

Powered by Google App Engine
This is Rietveld 408576698