Go to file
Dan Stoza 2e36f2283f SurfaceFlinger: Fix PTS on stale buffers
SurfaceFlinger's (Layer's) shadow copy of the BufferQueue queue was
getting out of sync for a few reasons. This change fixes these by
doing the following:

- Adds a check to re-synchronize the shadow copy every time we
  successfully acquire a buffer by first dropping stale buffers before
  removing the current buffer.
- Avoids trying to perform updates for buffers which have been rejected
  (for incorrect dimensions) by SurfaceFlinger.
- Adds IGraphicBufferConsumer::setShadowQueueSize, which allows the
  consumer to notify the BufferQueue that it is maintaining a shadow
  copy of the queue and prevents it from dropping so many buffers
  during acquireBuffer that it ends up returning a buffer for which the
  consumer has not yet received an onFrameAvailable call.

Bug: 20096136
Change-Id: I78d0738428005fc19b3be85cc8f1db498043612f
2015-04-30 15:29:05 -07:00
build
cmds
data/etc
include SurfaceFlinger: Fix PTS on stale buffers 2015-04-30 15:29:05 -07:00
libs SurfaceFlinger: Fix PTS on stale buffers 2015-04-30 15:29:05 -07:00
opengl
services SurfaceFlinger: Fix PTS on stale buffers 2015-04-30 15:29:05 -07:00
MODULE_LICENSE_APACHE2
NOTICE