• kylechar's avatar
    Throttle mostly unresponsive CompositorFrameSinkClients · bf259a00
    kylechar authored
    Unthrottling clients as soon as they acked any begin frame was not
    effective in preventing a huge backlog of OnBeginFrame() IPCs from
    building up. Instead of allowing any ack to unthrottle, instead count
    the number of sent BeginFrameArgs and received BeginFrameAcks.
    
    To avoid problems where clients don't properly ack all OnBeginFrame()
    messages but are still responsive, if the client acks the latest
    BeginFrameArgs then we treat it like they have acked all outstanding
    begin frames.
    
    Bug: 1011441
    Change-Id: I9d0b73a189945d03c4e0590b1acea52df020ee03
    Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1947186
    Commit-Queue: kylechar <kylechar@chromium.org>
    Reviewed-by: default avatarSaman Sami <samans@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#721467}
    bf259a00
begin_frame_tracker.h 1.72 KB