Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
A
angle
  • Project
    • Overview
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Chen Yisong
  • angle
  • Repository

Switch branch/tag
  • angle
  • src
  • tests
  • egl_tests
  • EGLSurfaceTest.cpp
Find file
BlameHistoryPermalink
  • Michael Spang's avatar
    Fuchsia: Limit number of concurrent presents in ScenicWindow · f63fbcd5
    Michael Spang authored Jan 29, 2020
    The test suite occasionally runs into the following error:
    
    [02036.794449][326733][326738][klog] INFO: [ERROR:src/ui/scenic/lib/scenic/session.cc(412)] Scenic session error (session_id: 1): Present2() called with no more present calls allowed. Terminating session.
    
    This is actually a problem with the test harness as resetting the window
    triggers a present with no fences and no OnFramePresentedCallback which
    means there is no way to know if we will exceed the limit.
    
    Add an OnFramePresentedCallback and count presents to stay under the
    limit. This blocks if there's more than 2 in flight presents. A dedicated
    async loop is used to avoid re-entering other code while waiting to
    present (there is no such case in the ANGLE test suite currently, but
    better safe than sorry).
    
    Typically if we run the whole suite there will be a failure in the
    middle, but re-trying the test that failed won't repro the issue. Add a
    test that reliably exhausts the limit by calling resetNativeWindow() in a
    loop.
    
    Bug: angleproject:4360
    Change-Id: I24eb01fd72fc0be57c36e49b5875023a80d6ab91
    Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/2027934
    Commit-Queue: Michael Spang <spang@chromium.org>
    Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
    f63fbcd5
EGLSurfaceTest.cpp 34.6 KB
EditWeb IDE
×

Replace EGLSurfaceTest.cpp

Attach a file by drag & drop or click to upload


Cancel
A new branch will be created in your fork and a new merge request will be started.