Skip to content
  • Neil Roberts's avatar
    tests: Test whether a simple EGL main loop uses too many buffers · 40c0c3f9
    Neil Roberts authored
    This adds a test that tries to simulate a simple game loop that would
    be like this:
    
    while (1) {
            draw_something();
            eglSwapBuffers();
    }
    
    In this case the test is relying on eglSwapBuffers to throttle to a
    sensible frame rate.
    
    The test then verifies that only 2 EGL buffers are used. This is done
    via a new request and event in the wayland-test protocol.
    
    Currently this causes 3 buffers to be created because the release
    event generated by the swap buffers is not processed by Mesa until it
    blocks for the frame complete event in the next swap buffers call, but
    that is too late.
    
    This can be fixed in Mesa by issuing a sync request after the swap
    buffers and blocking on it before deciding whether to allocate a new
    buffer.
    40c0c3f9