Go to file
Jamie Gennis fa5b40ebb8 libgui: add BQ consumer buffer free notifications
This change adds a new callback for BufferQueue consumers to be notified
when the BufferQueue frees some or all of its buffers.  This is needed
to retain SurfaceTexture behavior where all buffers would be freed when
the producer disconnects.  This change also modifies the
SurfaceTextureGLToGLTest.EglDestroySurfaceUnrefsBuffers test to catch
when the buffers are not freed.

The implementation is a little complicated because it needs to avoid
circular sp<> references across what will be a binder interface (so wp<>
can't be used directly).  It also needs to avoid the possibility of
locking the BufferQueue and consumer (e.g. SurfaceTexture) mutexes in
the wrong order.

This change also includes a few additional fixes and test cleanups.

Change-Id: I27b77d0af15cb4b135f4b63573f634f5f0da2182
2012-03-19 15:09:09 -07:00
cmds/surfaceflinger Move keystore to system/security repo 2012-02-15 15:55:21 -08:00
include libgui: add BQ consumer buffer free notifications 2012-03-19 15:09:09 -07:00
libs libgui: add BQ consumer buffer free notifications 2012-03-19 15:09:09 -07:00
opengl gltrace: Expose a function to set OpenGL trace level. 2012-03-09 16:43:48 -08:00
services/surfaceflinger SurfaceTexture: Fully refactored from BufferQueue 2012-03-13 14:39:07 -07:00
MODULE_LICENSE_APACHE2 auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
NOTICE resolved conflicts for merge of adee6b35 to honeycomb-plus-aosp 2011-01-17 14:17:12 -08:00