Skip to content

android_hardware_smoke_opengles_instrumented_tests is flaky #196453

Open

Activity

  1. self-assigned this
    on Nov 12, 2026
  2. andywolff commented on Nov 12, 2026

    @andywolff
    Contributor

    I believe #196069 is the root cause, and it seems this introduced a real startup error race / deadlock on opengles during engine startup.

    I haven't spent the time to fully understand it, but AI suggests the problem is this: Prewarming default OpenGL ES shaders during engine startup can schedule compilation jobs on the IO thread before the IO thread's EGL context has been made current. Because those jobs are silently skipped and removed from the compile queue without fulfilling their futures, the raster thread later deadlocks indefinitely waiting on those uncompiled shaders during rendering.

    This test shard was particularly impacted by this because it starts a new flutter engine with openGL nine times in one run. This might be the first real issue caught by my suite!

  3. zanderso commented on Nov 12, 2026

    @zanderso
    MemberAuthor

    cc @gaaclarke I think we should probably revert #196069. I'm also seeing that while it improved startup latency on my stress test app that uses a lot of shaders on the first frame, it regressed startup latency on the complex_layout benchmark that only uses a few shaders on the first frame.

  4. zanderso commented on Nov 12, 2026

    @zanderso
    MemberAuthor

    Possibly also more clearly a win with OpenGL than with Vulkan, but needs more investigation.

  5. gaaclarke commented on Nov 12, 2026

    @gaaclarke
    Member

    Interesting, okay. I can give it another look. Thanks guys.

  6. gaaclarke commented on Nov 12, 2026

    @gaaclarke
    Member

    When this is closed I'll file another issue to investigate relanding.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions