replicant-frameworks_native/include/gui
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
..
BitTube.h SensorService performance improvements. 2014-07-24 17:23:01 -07:00
BufferItem.h libgui: Pass surface damage through BufferQueue 2015-04-15 13:19:38 -07:00
BufferItemConsumer.h DO NOT MERGE libgui: Remove IGBC::BufferItem 2015-03-20 12:29:04 -07:00
BufferQueue.h DO NOT MERGE libgui: Remove IGBC::BufferItem 2015-03-20 12:29:04 -07:00
BufferQueueConsumer.h SurfaceFlinger: Fix PTS on stale buffers 2015-04-30 15:29:05 -07:00
BufferQueueCore.h SurfaceFlinger: Fix PTS on stale buffers 2015-04-30 15:29:05 -07:00
BufferQueueDefs.h BufferQueue: Increase max slots from 32 to 64 2014-04-18 11:40:14 -07:00
BufferQueueProducer.h libgui: Allow an IGBProducer to disable allocation 2015-04-23 15:28:12 -07:00
BufferSlot.h BufferQueue: Allow detaching/reattaching buffers 2014-03-10 16:45:38 -07:00
ConsumerBase.h libgui: Plumb detachBuffer through ConsumerBase 2015-04-07 15:05:40 -07:00
CpuConsumer.h DO NOT MERGE Add dataSpace to buffer queues; remove old format enums. 2015-03-19 13:56:00 -07:00
DisplayEventReceiver.h make struct Event layout consistent on 32/64-bit 2014-03-20 16:49:06 +08:00
GLConsumer.h DO NOT MERGE libgui: Remove IGBC::BufferItem 2015-03-20 12:29:04 -07:00
GraphicBufferAlloc.h libgui: Enable -Weverything and -Werror 2015-03-18 15:57:27 -07:00
GuiConfig.h Show build config in dumpsys SurfaceFlinger 2012-09-25 11:31:46 -07:00
IConsumerListener.h Frameworks/native: Fix unused parameter warning 2014-11-08 22:18:47 +00:00
IDisplayEventConnection.h Improve the VSYNC api a bit. 2011-12-06 22:43:10 -08:00
IGraphicBufferAlloc.h libgui: Enable -Weverything and -Werror 2015-03-18 15:57:27 -07:00
IGraphicBufferConsumer.h SurfaceFlinger: Fix PTS on stale buffers 2015-04-30 15:29:05 -07:00
IGraphicBufferProducer.h libgui: Allow an IGBProducer to disable allocation 2015-04-23 15:28:12 -07:00
IProducerListener.h BufferQueue: Add producer buffer-released callback 2014-03-31 14:10:07 -07:00
ISensorEventConnection.h SensorService performance improvements. 2014-07-24 17:23:01 -07:00
ISensorServer.h
ISurfaceComposer.h libgui: Enable -Weverything and -Werror 2015-03-18 15:57:27 -07:00
ISurfaceComposerClient.h Turn on support for async cursor update in surfaceflinger. 2014-07-28 22:07:41 +00:00
Sensor.h libgui: Enable -Weverything and -Werror 2015-03-18 15:57:27 -07:00
SensorEventQueue.h Fix sockfd leakage in SensorService. 2014-10-02 18:59:56 -07:00
SensorManager.h SensorManager reconnects to sensor service when the later dies 2011-10-16 22:15:23 -07:00
StreamSplitter.h Add a BufferItem parameter to onFrameAvailable 2014-11-07 10:39:13 -08:00
Surface.h libgui: Change detachNextBuffer to return sp<GB> 2015-04-27 11:16:15 -07:00
SurfaceComposerClient.h libgui: Enable -Weverything and -Werror 2015-03-18 15:57:27 -07:00
SurfaceControl.h libgui: Enable -Weverything and -Werror 2015-03-18 15:57:27 -07:00