New issue
Advanced search Search tips
Starred by 1 user

Issue metadata

Status: Started
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac
Pri: 2
Type: Bug

Blocked on:
issue 915458



Sign in to add a comment
link

Issue 883592: viz: Turn on presentation-feedback by default for all frames

Reported by sadrul@chromium.org, Sep 13 Project Member

Issue description

The display-compositor currently sends presentation-feedback to clients only for the frames where the client explicitly requests for it. Instead of this, we would like to send the presentation time to the client for all frames, so that the client has better information about how it is doing in terms of performance.

Turning on presentation-feedback for a lot of frames has previously caused regressions [1], so we need to do this cautiously and in small steps. I think we can take the following sub-steps to turn this on:
 . Turn on presentation-time for each frame from OutputSurface back to Display.
 . Always send the presentation-times back to client.
 . Report the presentation-times in telemetry tests and UMA.
 . Cleanup of code no-longer needed (e.g. LayerTreeSettings::always_request_presentation_time etc.)

[1] https://bugs.chromium.org/p/chromium/issues/detail?id=851088#c5
 

Comment 1 by fsam...@chromium.org, Sep 13

Do we know why there was a regression last time?

Comment 2 by sadrul@chromium.org, Sep 13

We understand at least parts of the regression, yes. One was that perfetto was also turned on at the same time, which caused regression of the trace-events (and specifically how FrameMetrics uses trace-events). We believe FrameMetrics itself also does too much work for each frame. yiyix@ is working on making that better. At the same time, turning this on for each frame also results in at least one additional ipc for each frame back to each contributing client. So there are several issues at play, which is why I think we need to do this slowly and in small steps so we can validate each step (and more easily identify the exact cause of possible regressions).

Comment 3 by piman@chromium.org, Sep 13

This will always have overhead because of extra wakeups / PostTask (fortunately no longer IPCs with OOP-D), as well as the driver-level things (queries / fences). Are we sure we need the data for every frame in production?

Comment 4 by bugdroid1@chromium.org, Sep 13

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/catapult/+/62c9dfc9791f3a44619a374ee9056fe649347938

commit 62c9dfc9791f3a44619a374ee9056fe649347938
Author: Sadrul Habib Chowdhury <sadrul@chromium.org>
Date: Thu Sep 13 21:51:39 2018

rendering: Ignore trace-events for canceled draws.

Canceled draws can be followed by draws with trace-events with the same
id. So ignore the trace-events for canceled draws.

BUG=chromium:883592

Change-Id: I5b7791d874bde0d10c4a6a0122324f0357319fd9
Reviewed-on: https://chromium-review.googlesource.com/1222238
Reviewed-by: Ben Hayden <benjhayden@chromium.org>
Commit-Queue: Sadrul Chowdhury <sadrul@chromium.org>

[modify] https://crrev.com/62c9dfc9791f3a44619a374ee9056fe649347938/tracing/tracing/metrics/rendering/pipeline.html
[modify] https://crrev.com/62c9dfc9791f3a44619a374ee9056fe649347938/tracing/tracing/metrics/rendering/pipeline_test.html

Comment 5 by bugdroid1@chromium.org, Sep 13

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ce6f33d2b7bd8330abddbb198299f60c9c3f4c4f

commit ce6f33d2b7bd8330abddbb198299f60c9c3f4c4f
Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Date: Thu Sep 13 23:36:02 2018

Roll src/third_party/catapult 572c25286dc6..62c9dfc9791f (1 commits)

https://chromium.googlesource.com/catapult.git/+log/572c25286dc6..62c9dfc9791f


git log 572c25286dc6..62c9dfc9791f --date=short --no-merges --format='%ad %ae %s'
2018-09-13 sadrul@chromium.org rendering: Ignore trace-events for canceled draws.


Created with:
  gclient setdep -r src/third_party/catapult@62c9dfc9791f

The AutoRoll server is located here: https://autoroll.skia.org/r/catapult-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel

BUG=chromium:883592
TBR=sullivan@chromium.org

Change-Id: If075924a071ef37decabb41bca148cc1111d2600
Reviewed-on: https://chromium-review.googlesource.com/1226010
Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#591209}
[modify] https://crrev.com/ce6f33d2b7bd8330abddbb198299f60c9c3f4c4f/DEPS

Comment 6 by bugdroid1@chromium.org, Sep 14

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c741eb8100cf931d3c4a6ffec135dcbc1f42143e

commit c741eb8100cf931d3c4a6ffec135dcbc1f42143e
Author: Sadrul Habib Chowdhury <sadrul@chromium.org>
Date: Fri Sep 14 01:52:43 2018

viz: Fix trace-id for canceled draw events.

It is possible that while waiting for the ack of a previous draw, another
draw is attempted and aborted. In such cases, the trace-event for the
first draw would incorrectly be terminated. Fix that bug by fixing the
trace-id for such canceled draw events. Also, instrument such events so
that telemetry tests can identify such events.

Also, fix the trace-id to be int64_t in SurfaceAggregator, which was
mistakenly left unchanged in crrev.com/590805

BUG=883592,  879884 

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel
Change-Id: Id39bf22559bd9f02e2765e69cc32a8cb1e9c62a2
Reviewed-on: https://chromium-review.googlesource.com/1223326
Reviewed-by: Ehsan Chiniforooshan <chiniforooshan@chromium.org>
Commit-Queue: Sadrul Chowdhury <sadrul@chromium.org>
Cr-Commit-Position: refs/heads/master@{#591259}
[modify] https://crrev.com/c741eb8100cf931d3c4a6ffec135dcbc1f42143e/components/viz/service/display/display.cc
[modify] https://crrev.com/c741eb8100cf931d3c4a6ffec135dcbc1f42143e/components/viz/service/display/surface_aggregator.cc
[modify] https://crrev.com/c741eb8100cf931d3c4a6ffec135dcbc1f42143e/components/viz/service/display/surface_aggregator.h

Comment 7 by sadrul@chromium.org, Sep 14

re comment#3: I think we can get rid of extra IPCs (after OOP-D): https://chromium-review.googlesource.com/c/chromium/src/+/1175492 updates the BeginFrame ipc to carry the presentation-feedback, so clients don't need the additional IPC. viz would receive the feedback presumably when it's already doing work producing frames, so I am hoping that cost of PostTask() to wake up the thread would also be small. I am unsure about the driver level cost though (fence/timer etc.) I am hoping that it would be small, but want to validate that first. What metric do you think would be useful to measure that cost? I am running through pinpoint (android: https://pinpoint-dot-chromeperf.appspot.com/job/15a82bfd640000 Windows: https://pinpoint-dot-chromeperf.appspot.com/job/16a6cb4b640000) to see how the various thread_times* metrics are affected. On Windows, it doesn't seem to affect the metrics too much (pinpoint on android still hasn't finished yet), but I am not entirely sure if the cost would be reflected in there anyway.

Comment 8 by bugdroid1@chromium.org, Sep 14

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8323f92cb0c81332c00abfe5a3bad012a400fd35

commit 8323f92cb0c81332c00abfe5a3bad012a400fd35
Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Date: Fri Sep 14 16:52:21 2018

Roll src/third_party/catapult 3e071665b9f9..9f36d9f78813 (14 commits)

https://chromium.googlesource.com/catapult.git/+log/3e071665b9f9..9f36d9f78813


git log 3e071665b9f9..9f36d9f78813 --date=short --no-merges --format='%ad %ae %s'
2018-09-14 pasko@chromium.org FlushOsPageCaches: wait for dust to settle
2018-09-14 ulan@chromium.org Revert "Output DevTools error messages as warnings while running a story."
2018-09-13 simonhatch@chromium.org Dashboard - Error out on empty or uncompressed uploads
2018-09-13 sadrul@chromium.org rendering: Ignore trace-events for canceled draws.
2018-09-13 vovoy@chromium.org Only download files for filtered stories in story_runner
2018-09-13 chiniforooshan@chromium.org Telemetry: fix a SF stats collector bug
2018-09-13 cbruni@chromium.org Include hash for wprgo archive names to reduce name collisions
2018-09-13 pasko@chromium.org clear_system_cache: update binaries
2018-09-13 anthonyalridge@google.com Create a link to traces from the CFG.
2018-09-13 anthonyalridge@google.com Add clip path at to prevent overlap with x axis label.
2018-09-13 wangge@google.com Add functions to include APK, generate isolate and upload it.
2018-09-13 cbruni@chromium.org Add more helpers in preparation for v8.loading.cluster_telemetry benchmark
2018-09-13 anthonyalridge@google.com Add padding to numeric labels for stacked bar plotter.
2018-09-13 ulan@chromium.org Output DevTools error messages as warnings while running a story.


Created with:
  gclient setdep -r src/third_party/catapult@9f36d9f78813

The AutoRoll server is located here: https://autoroll.skia.org/r/catapult-autoroll

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel

BUG=chromium:811244, chromium:881384 , chromium:883892 , chromium:880432 , chromium:883735 ,chromium:883592, chromium:882291 , chromium:881873 ,chromium:878390, chromium:881384 ,chromium:866423,chromium:866423, chromium:863390 , chromium:883322 ,chromium:866423, chromium:880432 
TBR=sullivan@chromium.org

Change-Id: I934e7e9b842518c75edbeb4a1604c2e06b577861
Reviewed-on: https://chromium-review.googlesource.com/1226380
Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#591375}
[modify] https://crrev.com/8323f92cb0c81332c00abfe5a3bad012a400fd35/DEPS

Comment 9 by piman@chromium.org, Sep 14

@#7: thread_times (namely the GPU main thread) is what I would look for CPU overhead. We don't generally have good metrics for GPU time, beyond presentation latency, I think (which /may/ feed back into throughput, but only for GPU-bound benchmarks).

Comment 10 by bugdroid1@chromium.org, Sep 17

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b7301e6c3f0222d5c1403f797752729b085a367d

commit b7301e6c3f0222d5c1403f797752729b085a367d
Author: Sadrul Habib Chowdhury <sadrul@chromium.org>
Date: Mon Sep 17 19:30:33 2018

viz: Always report presentation-feedback in the service.

Always report presentation-feedback from OutputSurface. Include the
presentation time in the Draw trace-event. Since presentation-feedback
is always reported, OutputSurfaceFrame::need_presentation_feedback and
SwapBufferFlags::kPresentationFeedback are no longer needed, so these
are also removed.

BUG=883592

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I07a85cadc6555eecebb99f5311596b297ab5970d
Reviewed-on: https://chromium-review.googlesource.com/1220736
Commit-Queue: Sadrul Chowdhury <sadrul@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Cr-Commit-Position: refs/heads/master@{#591777}
[modify] https://crrev.com/b7301e6c3f0222d5c1403f797752729b085a367d/components/viz/service/display/display.cc

Comment 11 by bugdroid1@chromium.org, Nov 14

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fd1a4804046eec31e0ba44435cb41aed015266b9

commit fd1a4804046eec31e0ba44435cb41aed015266b9
Author: Sadrul Habib Chowdhury <sadrul@chromium.org>
Date: Wed Nov 14 16:28:16 2018

viz: Include presentation-feedback with begin-frame.

Instead of sending the presentation-feedback over a separate IPC,
include it with the begin-frame messages. The presentation feedback
can be requested for each frame. So this can reduce an extra IPC
per frame for each client.

BUG=883592

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Iab52a29f406078eab79948a942124c8e13cb4332
Reviewed-on: https://chromium-review.googlesource.com/c/1175492
Reviewed-by: Robert Flack <flackr@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Bo <boliu@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Commit-Queue: Sadrul Chowdhury <sadrul@chromium.org>
Cr-Commit-Position: refs/heads/master@{#608002}
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/android_webview/browser/hardware_renderer.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/android_webview/browser/hardware_renderer.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/android_webview/browser/surfaces_instance.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/android_webview/browser/surfaces_instance.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/cc/mojo_embedder/async_layer_tree_frame_sink.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/cc/mojo_embedder/async_layer_tree_frame_sink.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/cc/trees/layer_tree_impl.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/components/viz/service/display/display_unittest.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/components/viz/service/frame_sinks/compositor_frame_sink_support.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/components/viz/service/frame_sinks/compositor_frame_sink_support.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/components/viz/service/frame_sinks/direct_layer_tree_frame_sink.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/components/viz/service/frame_sinks/direct_layer_tree_frame_sink.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/components/viz/service/surfaces/surface_unittest.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/components/viz/test/fake_compositor_frame_sink_client.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/components/viz/test/fake_compositor_frame_sink_client.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/components/viz/test/mock_compositor_frame_sink_client.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/components/viz/test/test_layer_tree_frame_sink.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/components/viz/test/test_layer_tree_frame_sink.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/content/browser/renderer_host/delegated_frame_host.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/content/browser/renderer_host/delegated_frame_host.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/content/browser/renderer_host/delegated_frame_host_client_android.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/content/browser/renderer_host/delegated_frame_host_client_android.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/content/browser/renderer_host/render_widget_host_view_android.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/content/browser/renderer_host/render_widget_host_view_android.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/content/browser/renderer_host/render_widget_host_view_child_frame.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/content/browser/renderer_host/render_widget_host_view_child_frame.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/content/renderer/android/synchronous_layer_tree_frame_sink.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/content/renderer/android/synchronous_layer_tree_frame_sink.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/content/test/fake_renderer_compositor_frame_sink.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/services/viz/public/interfaces/compositing/compositor_frame_sink.mojom
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/third_party/blink/renderer/platform/graphics/begin_frame_provider.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/third_party/blink/renderer/platform/graphics/begin_frame_provider.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/third_party/blink/renderer/platform/graphics/canvas_resource_dispatcher.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/third_party/blink/renderer/platform/graphics/canvas_resource_dispatcher.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/third_party/blink/renderer/platform/graphics/video_frame_submitter.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/third_party/blink/renderer/platform/graphics/video_frame_submitter.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/third_party/blink/renderer/platform/graphics/video_frame_submitter_test.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/ui/android/delegated_frame_host_android.cc
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/ui/android/delegated_frame_host_android.h
[modify] https://crrev.com/fd1a4804046eec31e0ba44435cb41aed015266b9/ui/android/delegated_frame_host_android_unittest.cc

Comment 12 by bugdroid1@chromium.org, Nov 14

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554

commit 68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554
Author: Fernando Serboncini <fserb@chromium.org>
Date: Wed Nov 14 18:01:23 2018

Revert "viz: Include presentation-feedback with begin-frame."

This reverts commit fd1a4804046eec31e0ba44435cb41aed015266b9.

Reason for revert: Broke build.

Original change's description:
> viz: Include presentation-feedback with begin-frame.
> 
> Instead of sending the presentation-feedback over a separate IPC,
> include it with the begin-frame messages. The presentation feedback
> can be requested for each frame. So this can reduce an extra IPC
> per frame for each client.
> 
> BUG=883592
> 
> Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
> Change-Id: Iab52a29f406078eab79948a942124c8e13cb4332
> Reviewed-on: https://chromium-review.googlesource.com/c/1175492
> Reviewed-by: Robert Flack <flackr@chromium.org>
> Reviewed-by: Tom Sepez <tsepez@chromium.org>
> Reviewed-by: Bo <boliu@chromium.org>
> Reviewed-by: Antoine Labour <piman@chromium.org>
> Commit-Queue: Sadrul Chowdhury <sadrul@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#608002}

TBR=sadrul@chromium.org,flackr@chromium.org,boliu@chromium.org,tsepez@chromium.org,piman@chromium.org

Change-Id: Id6732cb3052d7cd2d7c4c8cf9256eb8856ab23d9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: 883592
Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Reviewed-on: https://chromium-review.googlesource.com/c/1336080
Reviewed-by: Fernando Serboncini <fserb@chromium.org>
Commit-Queue: Fernando Serboncini <fserb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#608021}
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/android_webview/browser/hardware_renderer.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/android_webview/browser/hardware_renderer.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/android_webview/browser/surfaces_instance.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/android_webview/browser/surfaces_instance.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/cc/mojo_embedder/async_layer_tree_frame_sink.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/cc/mojo_embedder/async_layer_tree_frame_sink.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/cc/trees/layer_tree_impl.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/components/viz/service/display/display_unittest.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/components/viz/service/frame_sinks/compositor_frame_sink_support.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/components/viz/service/frame_sinks/compositor_frame_sink_support.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/components/viz/service/frame_sinks/direct_layer_tree_frame_sink.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/components/viz/service/frame_sinks/direct_layer_tree_frame_sink.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/components/viz/service/surfaces/surface_unittest.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/components/viz/test/fake_compositor_frame_sink_client.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/components/viz/test/fake_compositor_frame_sink_client.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/components/viz/test/mock_compositor_frame_sink_client.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/components/viz/test/test_layer_tree_frame_sink.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/components/viz/test/test_layer_tree_frame_sink.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/content/browser/renderer_host/delegated_frame_host.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/content/browser/renderer_host/delegated_frame_host.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/content/browser/renderer_host/delegated_frame_host_client_android.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/content/browser/renderer_host/delegated_frame_host_client_android.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/content/browser/renderer_host/render_widget_host_view_android.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/content/browser/renderer_host/render_widget_host_view_android.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/content/browser/renderer_host/render_widget_host_view_child_frame.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/content/browser/renderer_host/render_widget_host_view_child_frame.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/content/renderer/android/synchronous_layer_tree_frame_sink.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/content/renderer/android/synchronous_layer_tree_frame_sink.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/content/test/fake_renderer_compositor_frame_sink.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/services/viz/public/interfaces/compositing/compositor_frame_sink.mojom
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/third_party/blink/renderer/platform/graphics/begin_frame_provider.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/third_party/blink/renderer/platform/graphics/begin_frame_provider.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/third_party/blink/renderer/platform/graphics/canvas_resource_dispatcher.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/third_party/blink/renderer/platform/graphics/canvas_resource_dispatcher.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/third_party/blink/renderer/platform/graphics/video_frame_submitter.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/third_party/blink/renderer/platform/graphics/video_frame_submitter.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/third_party/blink/renderer/platform/graphics/video_frame_submitter_test.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/ui/android/delegated_frame_host_android.cc
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/ui/android/delegated_frame_host_android.h
[modify] https://crrev.com/68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554/ui/android/delegated_frame_host_android_unittest.cc

Comment 13 by bugdroid1@chromium.org, Nov 15

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7

commit 2ef6d91f2490997c2e32ab0dff50c556fc2e51d7
Author: Sadrul Habib Chowdhury <sadrul@chromium.org>
Date: Thu Nov 15 02:51:54 2018

Reland "viz: Include presentation-feedback with begin-frame."

This reverts commit 68dbb3a45c940c5a39ec8d3b4ce3c2f6b86a5554.

Original commit message
=======================
Instead of sending the presentation-feedback over a separate IPC,
include it with the begin-frame messages. The presentation feedback
can be requested for each frame. So this can reduce an extra IPC
per frame for each client.

TBR=flackr@chromium.org,boliu@chromium.org,tsepez@chromium.org,piman@chromium.org
tbr'ing since this is a reland with a trivial build fix.

Bug: 883592
Change-Id: Ia017b14f79eb06b247a9a75a395e4e1d4b51c1db
Reviewed-on: https://chromium-review.googlesource.com/c/1336989
Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org>
Commit-Queue: Sadrul Chowdhury <sadrul@chromium.org>
Cr-Commit-Position: refs/heads/master@{#608235}
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/android_webview/browser/hardware_renderer.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/android_webview/browser/hardware_renderer.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/android_webview/browser/surfaces_instance.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/android_webview/browser/surfaces_instance.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/cc/mojo_embedder/async_layer_tree_frame_sink.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/cc/mojo_embedder/async_layer_tree_frame_sink.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/cc/trees/layer_tree_impl.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/components/viz/service/display/display_unittest.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/components/viz/service/frame_sinks/compositor_frame_sink_support.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/components/viz/service/frame_sinks/compositor_frame_sink_support.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/components/viz/service/frame_sinks/direct_layer_tree_frame_sink.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/components/viz/service/frame_sinks/direct_layer_tree_frame_sink.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/components/viz/service/surfaces/surface_unittest.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/components/viz/test/fake_compositor_frame_sink_client.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/components/viz/test/fake_compositor_frame_sink_client.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/components/viz/test/mock_compositor_frame_sink_client.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/components/viz/test/test_layer_tree_frame_sink.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/components/viz/test/test_layer_tree_frame_sink.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/content/browser/renderer_host/delegated_frame_host.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/content/browser/renderer_host/delegated_frame_host.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/content/browser/renderer_host/delegated_frame_host_client_android.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/content/browser/renderer_host/delegated_frame_host_client_android.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/content/browser/renderer_host/render_widget_host_view_android.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/content/browser/renderer_host/render_widget_host_view_android.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/content/browser/renderer_host/render_widget_host_view_child_frame.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/content/browser/renderer_host/render_widget_host_view_child_frame.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/content/renderer/android/synchronous_layer_tree_frame_sink.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/content/renderer/android/synchronous_layer_tree_frame_sink.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/content/test/fake_renderer_compositor_frame_sink.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/services/viz/public/interfaces/compositing/compositor_frame_sink.mojom
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/third_party/blink/renderer/platform/graphics/begin_frame_provider.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/third_party/blink/renderer/platform/graphics/begin_frame_provider.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/third_party/blink/renderer/platform/graphics/canvas_resource_dispatcher.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/third_party/blink/renderer/platform/graphics/canvas_resource_dispatcher.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/third_party/blink/renderer/platform/graphics/video_frame_submitter.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/third_party/blink/renderer/platform/graphics/video_frame_submitter.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/third_party/blink/renderer/platform/graphics/video_frame_submitter_test.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/ui/android/delegated_frame_host_android.cc
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/ui/android/delegated_frame_host_android.h
[modify] https://crrev.com/2ef6d91f2490997c2e32ab0dff50c556fc2e51d7/ui/android/delegated_frame_host_android_unittest.cc

Comment 14 by bugdroid1@chromium.org, Dec 14

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

commit 7aa12b976402ffce6084fb9b053867a506048b5a
Author: Sadrul Habib Chowdhury <sadrul@chromium.org>
Date: Fri Dec 14 05:08:12 2018

viz: Remove dead code after turning on presentation feedback.

After presentation-feedback is turned on by default for every frame in
crrev.com/591777, the following fields are no longer needed:
 . SwapBuffersFlag for presentation-feedback.
 . OutputSurfaceFrame::need_presentation_feedback.

The change to turn on the presentation-feedback every frame has been
in stable without issues. So remove the dead code no longer needed.

TBR=danakj@: mechanical changes in cc/ and content/browser/compositor
BUG=883592

Change-Id: Id4bbb3bae17c5e808095f6d2aecca0e66b295e3c
Reviewed-on: https://chromium-review.googlesource.com/c/1232513
Commit-Queue: Sadrul Chowdhury <sadrul@chromium.org>
Reviewed-by: Jonathan Backer <backer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#616588}
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/cc/test/pixel_test_output_surface.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/cc/test/pixel_test_output_surface.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display/direct_renderer.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display/display.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display/display.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display/gl_renderer.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display/gl_renderer.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display/gl_renderer_unittest.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display/output_surface_frame.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display/overlay_unittest.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display/skia_renderer.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display/skia_renderer.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display/software_renderer.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display/software_renderer.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display_embedder/gl_output_surface.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display_embedder/gl_output_surface_offscreen.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display_embedder/gl_output_surface_offscreen.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display_embedder/skia_output_surface_impl_on_gpu.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display_embedder/software_output_surface.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/service/display_embedder/software_output_surface.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/test/fake_output_surface.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/components/viz/test/fake_output_surface.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/content/browser/compositor/gpu_browser_compositor_output_surface.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/content/browser/compositor/offscreen_browser_compositor_output_surface.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/content/browser/compositor/offscreen_browser_compositor_output_surface.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/content/browser/compositor/software_browser_compositor_output_surface.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/content/browser/compositor/software_browser_compositor_output_surface.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/content/browser/renderer_host/compositor_impl_android.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/gpu/command_buffer/build_gles2_cmd_buffer.py
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/gpu/command_buffer/common/presentation_feedback_utils.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/gpu/command_buffer/common/presentation_feedback_utils.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/gpu/command_buffer/common/swap_buffers_flags.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/gpu/command_buffer/service/gles2_cmd_validation_implementation_autogen.h
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/gpu/ipc/in_process_command_buffer.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/gpu/ipc/service/gles2_command_buffer_stub.cc
[modify] https://crrev.com/7aa12b976402ffce6084fb9b053867a506048b5a/ui/compositor/test/in_process_context_factory.cc

Comment 15 by bugdroid1@chromium.org, Dec 15

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/609997fe600b963b4830c2a713be6839f1856209

commit 609997fe600b963b4830c2a713be6839f1856209
Author: Sadrul Habib Chowdhury <sadrul@chromium.org>
Date: Sat Dec 15 02:13:18 2018

viz: Always request presentation timestamp from clients.

Turn on CompositorFrameMetadata.request_presentation_feedback by
default. This would start sending presentation-feedback for every frame
submitted by a client. However, the presentation-feedback is now
included with the begin-frame messages (crrev.com/608235}, so there is
no longer an extra IPC per frame. There is one extra ipc that gets sent:
when the client submits the last frame, and does not want any more
begin-frames, it still receives a begin-frame carrying the
presentation-timestamp for the last submitted frame.  But the cost of
this is small.

This now requires that submitted CompositorFrame has a valid token.
A viz::FrameTokenGenerator is introduced to facilitate creating the
tokens from the clients. A DCHECK() is also added in the serializer
to catch clients sending a CompositorFrame without a valid token.

After this stays in tree for a few days, a follow up CL will remove the
CompositorFrameMetadata.requested_presentation_feedback flag, and the
associated code.

TBR=fserb@ for third_party/blink changes.
TBR=Bo for android_webview/ changes.
TBR=oshima@ for ash/ and components/exo changes.
BUG=883592

Change-Id: I70b9b290cab5a31d6cc7597bd737402f9459c10f
Reviewed-on: https://chromium-review.googlesource.com/c/1375641
Commit-Queue: Sadrul Chowdhury <sadrul@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: danakj <danakj@chromium.org>
Cr-Commit-Position: refs/heads/master@{#616913}
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/android_webview/browser/surfaces_instance.cc
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/android_webview/browser/surfaces_instance.h
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/ash/components/fast_ink/fast_ink_view.cc
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/ash/components/fast_ink/fast_ink_view.h
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/components/exo/buffer_unittest.cc
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/components/exo/layer_tree_frame_sink_holder.cc
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/components/exo/layer_tree_frame_sink_holder.h
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/components/exo/surface_tree_host.cc
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/components/exo/surface_tree_host.h
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/components/viz/common/quads/compositor_frame_metadata.h
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/components/viz/service/display/display_unittest.cc
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/components/viz/service/frame_sinks/compositor_frame_sink_support_unittest.cc
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/components/viz/test/compositor_frame_helpers.cc
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/services/viz/public/cpp/compositing/compositor_frame_metadata_struct_traits.h
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/services/viz/public/cpp/compositing/struct_traits_unittest.cc
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/third_party/blink/renderer/platform/graphics/canvas_resource_dispatcher.cc
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/third_party/blink/renderer/platform/graphics/canvas_resource_dispatcher.h
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/third_party/blink/renderer/platform/graphics/video_frame_submitter.cc
[modify] https://crrev.com/609997fe600b963b4830c2a713be6839f1856209/third_party/blink/renderer/platform/graphics/video_frame_submitter.h

Comment 16 by sadrul@chromium.org, Dec 20

Blockedon: 915458

Comment 17 by bugdroid1@chromium.org, Dec 23

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9b83c3deb34a059775ef4cfb4a837804dba073d9

commit 9b83c3deb34a059775ef4cfb4a837804dba073d9
Author: Sadrul Habib Chowdhury <sadrul@chromium.org>
Date: Sun Dec 23 05:20:33 2018

viz: Remove unnecessary flags for presentation feedback.

Clients now always request presentation feedback for every frame (after
crrev.com/616913). So the following flags are no longer needed:

 . CompositorFrameMetadata.request_presentation_feedback
 . LayerTreeSettings.always_request_presentation_time
 . always-request-presentation-time command-line switch.

So remove these flags and associated code.

BUG=883592
TBR=danakj@ mechanical changes in chrome/browser, exo, content/renderer

Change-Id: I6c3032ea78d58fbd2f22ee5994c1def92605d162
Reviewed-on: https://chromium-review.googlesource.com/c/1379313
Commit-Queue: Sadrul Chowdhury <sadrul@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: danakj <danakj@chromium.org>
Cr-Commit-Position: refs/heads/master@{#618778}
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/cc/base/switches.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/cc/base/switches.h
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/cc/trees/layer_tree_host_unittest_animation.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/cc/trees/layer_tree_settings.h
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/chrome/browser/chromeos/login/chrome_restart_request.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/components/exo/surface_tree_host.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/components/viz/common/quads/compositor_frame_metadata.h
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/components/viz/host/host_frame_sink_manager_unittest.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/components/viz/service/display/display_unittest.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/components/viz/service/frame_sinks/compositor_frame_sink_support.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/components/viz/service/frame_sinks/compositor_frame_sink_support.h
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/components/viz/service/frame_sinks/compositor_frame_sink_support_unittest.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/components/viz/service/surfaces/surface_unittest.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/components/viz/test/compositor_frame_helpers.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/components/viz/test/compositor_frame_helpers.h
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/content/browser/renderer_host/render_process_host_impl.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/content/browser/renderer_host/render_widget_host_unittest.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/content/renderer/compositor/layer_tree_view.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/content/renderer/render_widget.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/services/viz/public/cpp/compositing/compositor_frame_metadata_struct_traits.cc
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/services/viz/public/cpp/compositing/compositor_frame_metadata_struct_traits.h
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/services/viz/public/interfaces/compositing/compositor_frame_metadata.mojom
[modify] https://crrev.com/9b83c3deb34a059775ef4cfb4a837804dba073d9/ui/compositor/compositor.cc

Sign in to add a comment