Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Conversation

@jtmcdole
Copy link
Member

@jtmcdole jtmcdole commented Sep 19, 2024

Address bad developer experience in flutter/flutter#106277

Leave as an error log and hope for more repro reports

sequenceDiagram
  Animator ->> Animator: AwaitVSync
  Animator ->> VsyncWaiter: AsyncWaitForVsync(callback)
  VsyncWaiter -> VsyncWaiterAndroid: AwaitVSync
  note over VsyncWaiterAndroid: GetUITaskRunner
  VsyncWaiterAndroid -> Choreographer: PostFrameCallback
  Choreographer -> NDK: AChoreographer_postFrameCallback64
  note over Choreographer,NDK: The time that the frame is being<br/>rendered as nanoseconds in the <br/>CLOCK_MONOTONIC time base
  NDK --> Choreographer: callback(nanos)
  Choreographer -> VsyncWaiterAndroid: callback
  note over VsyncWaiterAndroid: // Rollback suspicion<br/>if (frame_time > now) frame_time = now;
  VsyncWaiterAndroid -> VsyncWaiterAndroid: OnVsyncFromNDK(frame_nanos)
  VsyncWaiterAndroid -> VsyncWaiter: FireCallback(\n  frame_start_time,\n  target_time)
  VsyncWaiter -> Animator: callback(frame_timings_recorder)

  Animator -> Animator: BeginFrame(frame_timings_recorder)
  Animator -> Shell: OnAnimatorBeginFrame
  Shell -> Engine: BeginFrame(frame_time, frame_number)
  Engine -> RuntimeController: BeginFrame(frame_time, frame_number)
  RuntimeController -> PlatformConfiguration: BeginFrame(frame_time, frame_number)
  PlatformConfiguration -> hooks.dart: begin_frame_
Loading

@flutter-dashboard
Copy link

It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption, contact "@test-exemption-reviewer" in the #hackers channel in Discord (don't just cc them here, they won't see it!).

If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix?

Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. The test exemption team is a small volunteer group, so all reviewers should feel empowered to ask for tests, without delegating that responsibility entirely to the test exemption group.

@jtmcdole
Copy link
Member Author

I'm in no rush to land this.

Copy link
Member Author

@jtmcdole jtmcdole left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now with tests and frame number checking / logging as well.

Address bad developer experience in #106277

Leave as an error log and hope for more repro reports
Copy link
Member

@bdero bdero left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jtmcdole jtmcdole added autosubmit Merge PR when tree becomes green via auto submit App affects: dev experience and removed platform-android labels Sep 24, 2024
@auto-submit
Copy link
Contributor

auto-submit bot commented Sep 24, 2024

auto label is removed for flutter/engine/55310, due to - The status or check suite Linux linux_unopt has failed. Please fix the issues identified (or deflake) before re-applying this label.

@auto-submit auto-submit bot removed the autosubmit Merge PR when tree becomes green via auto submit App label Sep 24, 2024
@jtmcdole jtmcdole merged commit dc47d6d into flutter:main Sep 24, 2024
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Sep 25, 2024
auto-submit bot pushed a commit to flutter/flutter that referenced this pull request Sep 25, 2024
…155648)

flutter/engine@559f2ff...746ce61

2024-09-25 [email protected] Roll Dart SDK from 7af8c4882e07 to eda9ae15367e (2 revisions) (flutter/engine#55417)
2024-09-25 [email protected] [Flutter GPU] Add CullMode. (flutter/engine#55409)
2024-09-25 [email protected] Roll Skia from 2e92f0b443f4 to 3541cdf2fae6 (1 revision) (flutter/engine#55412)
2024-09-24 [email protected] [Impeller] fix Impeller on windows. (flutter/engine#55323)
2024-09-24 [email protected] [Impeller] add basic culling checks during text frame dispatcher. (flutter/engine#55168)
2024-09-24 [email protected] Move each dart GN rule to a standalone file. (flutter/engine#55404)
2024-09-24 [email protected] Roll Skia from 118914b760cb to 2e92f0b443f4 (1 revision) (flutter/engine#55406)
2024-09-24 [email protected] [Impeller] Pack impeller:Path into 2 vecs instead of 3. (flutter/engine#55028)
2024-09-24 [email protected] Disallow time traveling frame times (flutter/engine#55310)
2024-09-24 [email protected] [Impeller] Delete command pools held by the CommandPoolRecyclerVK after decoding an image on the IO thread (flutter/engine#55398)
2024-09-24 [email protected] Roll Skia from cf28f9dd411d to 118914b760cb (1 revision) (flutter/engine#55405)
2024-09-24 [email protected] [Flutter GPU] Add pipeline stencil config. (flutter/engine#55272)
2024-09-24 [email protected] Roll Skia from 6e5ff9253147 to cf28f9dd411d (1 revision) (flutter/engine#55399)
2024-09-24 [email protected] [Impeller] delete expensive trace event. (flutter/engine#55400)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
@jtmcdole jtmcdole deleted the timeTravelers branch September 25, 2024 16:21
thejitenpatel pushed a commit to thejitenpatel/flutter that referenced this pull request Sep 26, 2024
…lutter#155648)

flutter/engine@559f2ff...746ce61

2024-09-25 [email protected] Roll Dart SDK from 7af8c4882e07 to eda9ae15367e (2 revisions) (flutter/engine#55417)
2024-09-25 [email protected] [Flutter GPU] Add CullMode. (flutter/engine#55409)
2024-09-25 [email protected] Roll Skia from 2e92f0b443f4 to 3541cdf2fae6 (1 revision) (flutter/engine#55412)
2024-09-24 [email protected] [Impeller] fix Impeller on windows. (flutter/engine#55323)
2024-09-24 [email protected] [Impeller] add basic culling checks during text frame dispatcher. (flutter/engine#55168)
2024-09-24 [email protected] Move each dart GN rule to a standalone file. (flutter/engine#55404)
2024-09-24 [email protected] Roll Skia from 118914b760cb to 2e92f0b443f4 (1 revision) (flutter/engine#55406)
2024-09-24 [email protected] [Impeller] Pack impeller:Path into 2 vecs instead of 3. (flutter/engine#55028)
2024-09-24 [email protected] Disallow time traveling frame times (flutter/engine#55310)
2024-09-24 [email protected] [Impeller] Delete command pools held by the CommandPoolRecyclerVK after decoding an image on the IO thread (flutter/engine#55398)
2024-09-24 [email protected] Roll Skia from cf28f9dd411d to 118914b760cb (1 revision) (flutter/engine#55405)
2024-09-24 [email protected] [Flutter GPU] Add pipeline stencil config. (flutter/engine#55272)
2024-09-24 [email protected] Roll Skia from 6e5ff9253147 to cf28f9dd411d (1 revision) (flutter/engine#55399)
2024-09-24 [email protected] [Impeller] delete expensive trace event. (flutter/engine#55400)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
thejitenpatel pushed a commit to thejitenpatel/flutter that referenced this pull request Sep 26, 2024
…lutter#155648)

flutter/engine@559f2ff...746ce61

2024-09-25 [email protected] Roll Dart SDK from 7af8c4882e07 to eda9ae15367e (2 revisions) (flutter/engine#55417)
2024-09-25 [email protected] [Flutter GPU] Add CullMode. (flutter/engine#55409)
2024-09-25 [email protected] Roll Skia from 2e92f0b443f4 to 3541cdf2fae6 (1 revision) (flutter/engine#55412)
2024-09-24 [email protected] [Impeller] fix Impeller on windows. (flutter/engine#55323)
2024-09-24 [email protected] [Impeller] add basic culling checks during text frame dispatcher. (flutter/engine#55168)
2024-09-24 [email protected] Move each dart GN rule to a standalone file. (flutter/engine#55404)
2024-09-24 [email protected] Roll Skia from 118914b760cb to 2e92f0b443f4 (1 revision) (flutter/engine#55406)
2024-09-24 [email protected] [Impeller] Pack impeller:Path into 2 vecs instead of 3. (flutter/engine#55028)
2024-09-24 [email protected] Disallow time traveling frame times (flutter/engine#55310)
2024-09-24 [email protected] [Impeller] Delete command pools held by the CommandPoolRecyclerVK after decoding an image on the IO thread (flutter/engine#55398)
2024-09-24 [email protected] Roll Skia from cf28f9dd411d to 118914b760cb (1 revision) (flutter/engine#55405)
2024-09-24 [email protected] [Flutter GPU] Add pipeline stencil config. (flutter/engine#55272)
2024-09-24 [email protected] Roll Skia from 6e5ff9253147 to cf28f9dd411d (1 revision) (flutter/engine#55399)
2024-09-24 [email protected] [Impeller] delete expensive trace event. (flutter/engine#55400)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
thejitenpatel pushed a commit to thejitenpatel/flutter that referenced this pull request Sep 27, 2024
…lutter#155648)

flutter/engine@559f2ff...746ce61

2024-09-25 [email protected] Roll Dart SDK from 7af8c4882e07 to eda9ae15367e (2 revisions) (flutter/engine#55417)
2024-09-25 [email protected] [Flutter GPU] Add CullMode. (flutter/engine#55409)
2024-09-25 [email protected] Roll Skia from 2e92f0b443f4 to 3541cdf2fae6 (1 revision) (flutter/engine#55412)
2024-09-24 [email protected] [Impeller] fix Impeller on windows. (flutter/engine#55323)
2024-09-24 [email protected] [Impeller] add basic culling checks during text frame dispatcher. (flutter/engine#55168)
2024-09-24 [email protected] Move each dart GN rule to a standalone file. (flutter/engine#55404)
2024-09-24 [email protected] Roll Skia from 118914b760cb to 2e92f0b443f4 (1 revision) (flutter/engine#55406)
2024-09-24 [email protected] [Impeller] Pack impeller:Path into 2 vecs instead of 3. (flutter/engine#55028)
2024-09-24 [email protected] Disallow time traveling frame times (flutter/engine#55310)
2024-09-24 [email protected] [Impeller] Delete command pools held by the CommandPoolRecyclerVK after decoding an image on the IO thread (flutter/engine#55398)
2024-09-24 [email protected] Roll Skia from cf28f9dd411d to 118914b760cb (1 revision) (flutter/engine#55405)
2024-09-24 [email protected] [Flutter GPU] Add pipeline stencil config. (flutter/engine#55272)
2024-09-24 [email protected] Roll Skia from 6e5ff9253147 to cf28f9dd411d (1 revision) (flutter/engine#55399)
2024-09-24 [email protected] [Impeller] delete expensive trace event. (flutter/engine#55400)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
thejitenpatel pushed a commit to thejitenpatel/flutter that referenced this pull request Sep 27, 2024
…lutter#155648)

flutter/engine@559f2ff...746ce61

2024-09-25 [email protected] Roll Dart SDK from 7af8c4882e07 to eda9ae15367e (2 revisions) (flutter/engine#55417)
2024-09-25 [email protected] [Flutter GPU] Add CullMode. (flutter/engine#55409)
2024-09-25 [email protected] Roll Skia from 2e92f0b443f4 to 3541cdf2fae6 (1 revision) (flutter/engine#55412)
2024-09-24 [email protected] [Impeller] fix Impeller on windows. (flutter/engine#55323)
2024-09-24 [email protected] [Impeller] add basic culling checks during text frame dispatcher. (flutter/engine#55168)
2024-09-24 [email protected] Move each dart GN rule to a standalone file. (flutter/engine#55404)
2024-09-24 [email protected] Roll Skia from 118914b760cb to 2e92f0b443f4 (1 revision) (flutter/engine#55406)
2024-09-24 [email protected] [Impeller] Pack impeller:Path into 2 vecs instead of 3. (flutter/engine#55028)
2024-09-24 [email protected] Disallow time traveling frame times (flutter/engine#55310)
2024-09-24 [email protected] [Impeller] Delete command pools held by the CommandPoolRecyclerVK after decoding an image on the IO thread (flutter/engine#55398)
2024-09-24 [email protected] Roll Skia from cf28f9dd411d to 118914b760cb (1 revision) (flutter/engine#55405)
2024-09-24 [email protected] [Flutter GPU] Add pipeline stencil config. (flutter/engine#55272)
2024-09-24 [email protected] Roll Skia from 6e5ff9253147 to cf28f9dd411d (1 revision) (flutter/engine#55399)
2024-09-24 [email protected] [Impeller] delete expensive trace event. (flutter/engine#55400)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC [email protected],[email protected],[email protected] on the revert to ensure that a human
is aware of the problem.

To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants