New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 726485 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Use ClientCompositorFrameSink in the renderer

Project Member Reported by samans@chromium.org, May 25 2017

Issue description

Currently renderer has its own RendererCompositorFrameSink. In order to de-special-case the renderer, we should either use ClientCompositorFrameSink instead, or RendererCompositorFrameSink should be a very thin wrapper around ClientCompositorFrameSink.
 
Blocking: 601863
Project Member

Comment 2 by bugdroid1@chromium.org, May 26 2017

Project Member

Comment 3 by bugdroid1@chromium.org, May 26 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1bcf030241bb52a9ee770c1c94300128f69fbbb9

commit 1bcf030241bb52a9ee770c1c94300128f69fbbb9
Author: samans <samans@chromium.org>
Date: Fri May 26 15:04:14 2017

Move ClientCompositorFrameSink to components/viz

ClientCompositorFrameSink is used by clients to talk to viz and should be
a part of the viz component. Currently it's located in an aura-only target
which doesn't allow its usage on Mac and Android.

BUG= 726485 
TBR=piman@chromium.org

Review-Url: https://codereview.chromium.org/2907683004
Cr-Commit-Position: refs/heads/master@{#475004}

[add] https://crrev.com/1bcf030241bb52a9ee770c1c94300128f69fbbb9/components/viz/client/BUILD.gn
[add] https://crrev.com/1bcf030241bb52a9ee770c1c94300128f69fbbb9/components/viz/client/DEPS
[rename] https://crrev.com/1bcf030241bb52a9ee770c1c94300128f69fbbb9/components/viz/client/client_compositor_frame_sink.cc
[rename] https://crrev.com/1bcf030241bb52a9ee770c1c94300128f69fbbb9/components/viz/client/client_compositor_frame_sink.h
[modify] https://crrev.com/1bcf030241bb52a9ee770c1c94300128f69fbbb9/content/renderer/DEPS
[modify] https://crrev.com/1bcf030241bb52a9ee770c1c94300128f69fbbb9/content/renderer/mus/BUILD.gn
[modify] https://crrev.com/1bcf030241bb52a9ee770c1c94300128f69fbbb9/content/renderer/mus/renderer_window_tree_client.cc
[modify] https://crrev.com/1bcf030241bb52a9ee770c1c94300128f69fbbb9/content/renderer/mus/renderer_window_tree_client.h
[modify] https://crrev.com/1bcf030241bb52a9ee770c1c94300128f69fbbb9/services/ui/public/cpp/BUILD.gn
[modify] https://crrev.com/1bcf030241bb52a9ee770c1c94300128f69fbbb9/ui/aura/BUILD.gn
[modify] https://crrev.com/1bcf030241bb52a9ee770c1c94300128f69fbbb9/ui/aura/mus/DEPS
[modify] https://crrev.com/1bcf030241bb52a9ee770c1c94300128f69fbbb9/ui/aura/mus/window_port_mus.cc
[modify] https://crrev.com/1bcf030241bb52a9ee770c1c94300128f69fbbb9/ui/aura/mus/window_port_mus.h

Project Member

Comment 4 by bugdroid1@chromium.org, May 26 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3c9b43f529531ba78a9b528e292d92186e021aeb

commit 3c9b43f529531ba78a9b528e292d92186e021aeb
Author: samans <samans@chromium.org>
Date: Fri May 26 17:16:19 2017

Revert of Send FrameSwapMessageQueue's messages in QueueMessageSwapPromise (patchset #5 id:100001 of https://codereview.chromium.org/2899073006/ )

Reason for revert:
This patch might break SynchronousCompositorFrameSink's delivery of frame swap messages on Android WebView.

Original issue's description:
> Send FrameSwapMessageQueue's messages in QueueMessageSwapPromise
>
> In order to simplify RendererCompositorFrameSink and make it more similar
> to ClientCompositorFrameSink, it's better to send swap messages in a swap
> promise as opposed to in the frame sink.
>
> BUG= 726485 
>
> Review-Url: https://codereview.chromium.org/2899073006
> Cr-Commit-Position: refs/heads/master@{#474865}
> Committed: https://chromium.googlesource.com/chromium/src/+/d235f28c7dfeb0351a6b1e214e62d85f57f2a8c6

TBR=fsamuel@chromium.org,piman@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= 726485 

Review-Url: https://codereview.chromium.org/2905313002
Cr-Commit-Position: refs/heads/master@{#475038}

[modify] https://crrev.com/3c9b43f529531ba78a9b528e292d92186e021aeb/content/renderer/gpu/frame_swap_message_queue.cc
[modify] https://crrev.com/3c9b43f529531ba78a9b528e292d92186e021aeb/content/renderer/gpu/frame_swap_message_queue.h
[modify] https://crrev.com/3c9b43f529531ba78a9b528e292d92186e021aeb/content/renderer/gpu/frame_swap_message_queue_unittest.cc
[modify] https://crrev.com/3c9b43f529531ba78a9b528e292d92186e021aeb/content/renderer/gpu/queue_message_swap_promise.cc
[modify] https://crrev.com/3c9b43f529531ba78a9b528e292d92186e021aeb/content/renderer/gpu/queue_message_swap_promise_unittest.cc
[modify] https://crrev.com/3c9b43f529531ba78a9b528e292d92186e021aeb/content/renderer/gpu/renderer_compositor_frame_sink.cc
[modify] https://crrev.com/3c9b43f529531ba78a9b528e292d92186e021aeb/content/renderer/render_widget.cc

Project Member

Comment 5 by bugdroid1@chromium.org, May 30 2017

Comment 6 by samans@chromium.org, May 31 2017

Labels: Merge-Request-60
Seems like the branch was cut between 474865 and its revert at 475038. We should probably merge the revert to m60.
Project Member

Comment 7 by sheriffbot@chromium.org, May 31 2017

Labels: -Merge-Request-60 Hotlist-Merge-Review Merge-Review-60
This bug requires manual review: Reverts referenced in bugdroid comments after merge request.
Please contact the milestone owner if you have questions.
Owners: amineer@(Android), cmasso@(iOS), josafat@(ChromeOS), bustamante@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -Merge-Review-60 Merge-Approved-60
Merge of revert to M60 branch 3112 approved.
Project Member

Comment 9 by bugdroid1@chromium.org, Jun 1 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/26510e44586a955a51499aec887aceca6ba06a4f

commit 26510e44586a955a51499aec887aceca6ba06a4f
Author: samans <samans@chromium.org>
Date: Thu Jun 01 22:29:33 2017

Reland "Send FrameSwapMessageQueue's messages in QueueMessageSwapPromise" with fixes

This CL relands crrev.com/2899073006 with some fixes/tweaks:

- RWHI::DidProcessFrame is not currently called in the
SynchronousCompositor code path. RWHVAndroid::SynchronousFrameMetadata
should call into RWHI::DidProcessFrame.

- SynchronousCFS::SubmitCompositorFrame will not send the frame to
the browser after fallback tick fires. We should make sure
QueueMessageSwapPromise doesn't send the swap messages either.

- There is no reason to pass frame_swap_message_queue to RendererCFS.

BUG= 726485 

Review-Url: https://codereview.chromium.org/2921713002
Cr-Commit-Position: refs/heads/master@{#476457}

[modify] https://crrev.com/26510e44586a955a51499aec887aceca6ba06a4f/content/browser/renderer_host/render_widget_host_impl.h
[modify] https://crrev.com/26510e44586a955a51499aec887aceca6ba06a4f/content/browser/renderer_host/render_widget_host_view_android.cc
[modify] https://crrev.com/26510e44586a955a51499aec887aceca6ba06a4f/content/renderer/android/synchronous_compositor_frame_sink.cc
[modify] https://crrev.com/26510e44586a955a51499aec887aceca6ba06a4f/content/renderer/gpu/frame_swap_message_queue.cc
[modify] https://crrev.com/26510e44586a955a51499aec887aceca6ba06a4f/content/renderer/gpu/frame_swap_message_queue.h
[modify] https://crrev.com/26510e44586a955a51499aec887aceca6ba06a4f/content/renderer/gpu/frame_swap_message_queue_unittest.cc
[modify] https://crrev.com/26510e44586a955a51499aec887aceca6ba06a4f/content/renderer/gpu/queue_message_swap_promise.cc
[modify] https://crrev.com/26510e44586a955a51499aec887aceca6ba06a4f/content/renderer/gpu/queue_message_swap_promise_unittest.cc
[modify] https://crrev.com/26510e44586a955a51499aec887aceca6ba06a4f/content/renderer/gpu/renderer_compositor_frame_sink.cc
[modify] https://crrev.com/26510e44586a955a51499aec887aceca6ba06a4f/content/renderer/gpu/renderer_compositor_frame_sink.h
[modify] https://crrev.com/26510e44586a955a51499aec887aceca6ba06a4f/content/renderer/render_thread_impl.cc
[modify] https://crrev.com/26510e44586a955a51499aec887aceca6ba06a4f/content/renderer/render_widget.cc

Project Member

Comment 10 by sheriffbot@chromium.org, Jun 5 2017

Cc: amineer@chromium.org
This issue has been approved for a merge. Please merge the fix to any appropriate branches as soon as possible!

If all merges have been completed, please remove any remaining Merge-Approved labels from this issue.

Thanks for your time! To disable nags, add the Disable-Nags label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -Merge-Approved-60
Project Member

Comment 12 by bugdroid1@chromium.org, Jun 5 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7e6675cc4392ed5f41a9ebff1fa7f3f968f6374b

commit 7e6675cc4392ed5f41a9ebff1fa7f3f968f6374b
Author: samans <samans@chromium.org>
Date: Mon Jun 05 20:16:08 2017

Remove RendererCompositorFrameSink and use ClientCompositorFrameSink instead

RendererCompositorFrameSink and ClientCompositorFrameSink are pretty much
identical except for the LocalSurfaceId allocation logic. Extract
that logic into LocalSurfaceIdProvider and remove RendererCFS.

BUG= 726485 
TBR=sadrul@chromium.org,danakj@chromium.org

Review-Url: https://codereview.chromium.org/2923583002
Cr-Commit-Position: refs/heads/master@{#477065}

[modify] https://crrev.com/7e6675cc4392ed5f41a9ebff1fa7f3f968f6374b/components/viz/client/BUILD.gn
[modify] https://crrev.com/7e6675cc4392ed5f41a9ebff1fa7f3f968f6374b/components/viz/client/DEPS
[modify] https://crrev.com/7e6675cc4392ed5f41a9ebff1fa7f3f968f6374b/components/viz/client/client_compositor_frame_sink.cc
[modify] https://crrev.com/7e6675cc4392ed5f41a9ebff1fa7f3f968f6374b/components/viz/client/client_compositor_frame_sink.h
[add] https://crrev.com/7e6675cc4392ed5f41a9ebff1fa7f3f968f6374b/components/viz/client/local_surface_id_provider.cc
[add] https://crrev.com/7e6675cc4392ed5f41a9ebff1fa7f3f968f6374b/components/viz/client/local_surface_id_provider.h
[modify] https://crrev.com/7e6675cc4392ed5f41a9ebff1fa7f3f968f6374b/content/renderer/BUILD.gn
[delete] https://crrev.com/27175dace3576a3e351348cf8272c20b0d3aceec/content/renderer/gpu/renderer_compositor_frame_sink.cc
[delete] https://crrev.com/27175dace3576a3e351348cf8272c20b0d3aceec/content/renderer/gpu/renderer_compositor_frame_sink.h
[modify] https://crrev.com/7e6675cc4392ed5f41a9ebff1fa7f3f968f6374b/content/renderer/mus/renderer_window_tree_client.cc
[modify] https://crrev.com/7e6675cc4392ed5f41a9ebff1fa7f3f968f6374b/content/renderer/render_thread_impl.cc
[modify] https://crrev.com/7e6675cc4392ed5f41a9ebff1fa7f3f968f6374b/ui/aura/mus/window_port_mus.cc

Status: Fixed (was: Assigned)
Blocking: -601863
Components: -Internals>MUS Internals>Services>WindowService

Sign in to add a comment