OSDN Git Service
Jamie Gennis [Fri, 5 Oct 2012 01:34:01 +0000 (18:34 -0700)]
BufferQueue: alloc without holding the lock
This change makes BufferQueue::dequeueBuffer release its mutex before
allocating new buffers. This should alleviate lock contention in
SurfaceFlinger where SF's main thread can get blocked waiting for an allocation
operation to complete.
Bug:
7335075
Change-Id: I1b000539cc616a695afab2e9c68507db69e57b13
Andy McFadden [Thu, 11 Oct 2012 02:34:11 +0000 (19:34 -0700)]
Merge "Fix HDMI unblank behavior" into jb-mr1-dev
Andy McFadden [Thu, 11 Oct 2012 01:17:51 +0000 (18:17 -0700)]
Fix HDMI unblank behavior
Two issues:
(1) We were announcing the hotplug event before we were ready to
handle blank/unblank events, so we were losing the initial unblank
that power manager sends us when HDMI is first plugged in. This
left the display blank until you toggled the device power off/on.
(2) We were retaining fbTargetHandle for HDMI after the display was
disconnected. The value didn't get updated when HDMI was reconnected
because the display was blank, so we didn't go through that code
path. So, when HDMI was re-connected, we passed stale data into
the HWC.
Bug
7323938
Change-Id: I2335d24fd7b0f00bb23fc63aa7bcf44cb8857c73
Chet Haase [Mon, 8 Oct 2012 20:19:08 +0000 (13:19 -0700)]
Revert "Add GL Error logs (temporary)"
This reverts commit
2da2c15068327a4fdad411f638905abcb2209d8a.
Mathias Agopian [Tue, 9 Oct 2012 23:52:37 +0000 (16:52 -0700)]
Merge "fix typo that prevented proper loging of EGL error code" into jb-mr1-dev
Jeff Brown [Tue, 9 Oct 2012 23:50:55 +0000 (16:50 -0700)]
Merge "don't automatically unblank external displays" into jb-mr1-dev
Mathias Agopian [Tue, 9 Oct 2012 23:43:50 +0000 (16:43 -0700)]
fix typo that prevented proper loging of EGL error code
needed for investigating
7309949
Bug:
7309949
Change-Id: If29a5c08d0e87f46b44ba2e1030be61cb4d1403b
Mathias Agopian [Tue, 9 Oct 2012 23:36:30 +0000 (16:36 -0700)]
Merge "Fence didn't manager sync_wait error codes properly" into jb-mr1-dev
Mathias Agopian [Mon, 8 Oct 2012 22:12:36 +0000 (15:12 -0700)]
don't automatically unblank external displays
this should be handled by the display-manager. we were doing
that in SF because until recently we didn't have enough support
in the HAL. however, this is now causing other problems when
plugging hdmi while the screen is off for instance.
Bug:
7150885
Change-Id: I739b209056a765d38d05295cf202f67ee0f506ae
Mathias Agopian [Tue, 9 Oct 2012 21:38:19 +0000 (14:38 -0700)]
Fence didn't manager sync_wait error codes properly
error codes are returned in errno, this caused ::waitForwever()
to only wait for 1 second and return improper error code (-1).
needed to help debugging
7316632
Bug:
7316632
Change-Id: Ie144f614a88393393972a3a770c6b4b0581f961a
Jeff Brown [Tue, 9 Oct 2012 02:13:57 +0000 (19:13 -0700)]
Add blankDisplay/unblankDisplay to SurfaceComposerClient.
Bug:
7309812
Change-Id: Ia401d642094a46c62f0d26c65da1d11341e203a1
Mathias Agopian [Thu, 4 Oct 2012 22:58:54 +0000 (15:58 -0700)]
fix dumpsys Layer name when using multiple displays
Bug:
7288401
Change-Id: I14beeef58fac5270cef3b611e18c163060efe6c3
Mathias Agopian [Sun, 7 Oct 2012 23:41:12 +0000 (16:41 -0700)]
fix SurfaceFlinger DDMS debugging
DdmHandleAppName.setAppName() signature changed which broke
this debugging feature.
Needed for debugging b\
7267680
Change-Id: I4482bf5a441e91bef89d1ddea9a4152333be7f88
Dave Burke [Sun, 7 Oct 2012 08:06:14 +0000 (01:06 -0700)]
Merge "Revert "ugly, temporary, workaroung for a problem where a binder thread spins forever"" into jb-mr1-dev
Dave Burke [Sun, 7 Oct 2012 06:20:00 +0000 (23:20 -0700)]
Revert "ugly, temporary, workaroung for a problem where a binder thread spins forever"
This reverts commit
0845d0245e09548110cacb0f20e9934753388aab
Change-Id: I395037cb9427cd11f7de6bb78fbdfa917fc6263a
Dave Burke [Sat, 6 Oct 2012 06:25:57 +0000 (23:25 -0700)]
Merge "ugly, temporary, workaroung for a problem where a binder thread spins forever" into jb-mr1-dev
Mathias Agopian [Sat, 6 Oct 2012 00:28:04 +0000 (17:28 -0700)]
ugly, temporary, workaroung for a problem where a binder thread spins forever
Bug:
7289992
Change-Id: I0c3d482a1af57e5f444be2ba7f2751ac3e954af2
Jesse Hall [Fri, 5 Oct 2012 21:34:21 +0000 (14:34 -0700)]
Fix race condition in ConsumerBase::addReleaseFence()
This needs the ConsumerBase mutex locked, but wasn't locking it. Two
of the four places that called it already held the lock so were fine.
Now addReleaseFence() takes the lock itself, and I added
addReleaseFenceLocked() for the two already-locked callers, since in
one of them dropping the lock would be inconvenient.
Bug:
7289269
Change-Id: I7a5628adb516f8eec782aa6c14128202f96d7b0a
Stephen Hines [Fri, 5 Oct 2012 04:42:29 +0000 (21:42 -0700)]
Merge "Fix missing parens in CleanSpec.mk." into jb-mr1-dev
Mathias Agopian [Fri, 5 Oct 2012 03:24:17 +0000 (20:24 -0700)]
Merge "Tone down a fatal assert" into jb-mr1-dev
Stephen Hines [Thu, 4 Oct 2012 18:38:41 +0000 (11:38 -0700)]
Fix missing parens in CleanSpec.mk.
Change-Id: I0440a942d3e685d619ec9cc402d3293cb3f52df1
Chet Haase [Fri, 5 Oct 2012 02:45:16 +0000 (19:45 -0700)]
Merge "Add GL Error logs (temporary)" into jb-mr1-dev
Andy McFadden [Fri, 5 Oct 2012 02:09:45 +0000 (19:09 -0700)]
Tone down a fatal assert
The new disconnectDisplay function doesn't handle virtual displays,
but it may be called for them. Return without doing anything.
Bug
7281786
Change-Id: I62607f2ae6073fa66b393f55932604aeb8e03566
Raph Levien [Fri, 5 Oct 2012 02:00:45 +0000 (19:00 -0700)]
Fix broken CleanSpec.mk in libs/gui
The CleanSpec is missing parens, which causes $P to be interpreted as a
single variable, and the following printed to the log:
Clean step: rm -rf RODUCT_OUT/obj/SHARED_LIBRARIES/libgui_intermediates
This patch adds parens as needed.
Change-Id: I587998fa67a4884418c286360a577cdbb6ea9a21
Chet Haase [Fri, 5 Oct 2012 00:15:59 +0000 (17:15 -0700)]
Add GL Error logs (temporary)
Adding logs to tell which specific methods throw OpenGL errors.
Change-Id: I1d73c7566ed1ea6610392020411762c6255a0ede
Jesse Hall [Thu, 4 Oct 2012 23:29:19 +0000 (16:29 -0700)]
Ignore display state changes for disconnected displays
When a display is disconnected, removing it from SurfaceFlinger's
display list is non-atomic with removing it from the Display Manager
and any in-flight transactions. So SurfaceFlinger might get a display
state change transaction for a display it has already forgotten about.
Just ignore these.
Bug:
7288082
Change-Id: Ic27e55377f3db40fb34e3b1cd67e43297df117a2
Mathias Agopian [Thu, 4 Oct 2012 09:34:38 +0000 (02:34 -0700)]
make sure we don't call into the HWC HAL when not needed
when enabling/disabling vsync we now make sure to
not call into the HAL if the state wouldn't change.
Bug:
7274951
Change-Id: Ie24a6d68888a51b577acf9c2a973d85437cbacaf
Andy McFadden [Wed, 3 Oct 2012 02:04:45 +0000 (19:04 -0700)]
Fix crashes after HDMI disconnect
The display was being removed from SurfaceFlinger's list before we
had a chance to reset HWComposer's layer list, so we were passing
stale data into the hardware composer (which has its own per-display
data). This resulted in "invalid gralloc handle" complaints.
We now clear the layer list immediately after removing the display.
The display was being removed while its EGLSurface was still
"current", resulting in "cancelBuffer: BufferQueue has been
abandoned" complaints. We now call makeCurrent on the primary
display before removing the external display.
Bug
7274254
Change-Id: Ia59e3a61d7ec46488b96bf93ec5e4ed3488b70e4
Jamie Gennis [Fri, 28 Sep 2012 00:58:24 +0000 (17:58 -0700)]
libgui: enable fence support for exynos5
Change-Id: Iffc48412b8c951116a956a3ac7dab8d75eed13da
Bug:
7238122
Jamie Gennis [Tue, 2 Oct 2012 23:40:30 +0000 (16:40 -0700)]
libgui: fix up compile options
This change adds debug info to SurfaceFlinger's dumpsys to indicate that the
USE_WAIT_SYNC compile option was enabled, and it removes the
ALLOW_DEQUEUE_CURRENT_BUFFER option.
Bug:
7238122
Change-Id: I70e08e34c2ef58aa6d2f88229e781a119f84b5a9
Dianne Hackborn [Wed, 3 Oct 2012 19:09:12 +0000 (12:09 -0700)]
Merge "Fix issue #
7271589: Cannot set Ocean HD live wallpaper" into jb-mr1-dev
Dianne Hackborn [Wed, 3 Oct 2012 16:43:01 +0000 (09:43 -0700)]
Fix issue #
7271589: Cannot set Ocean HD live wallpaper
Change-Id: Id7662c503815293040c240232a6622bd6f6eab37
Jesse Hall [Mon, 1 Oct 2012 21:05:20 +0000 (14:05 -0700)]
Add Fence::waitForever which logs a warning timeout, and use it
Bug:
7217641
Change-Id: If0c1a613ead307c4045a47824174bf40c72bc7d7
Mathias Agopian [Tue, 2 Oct 2012 03:23:55 +0000 (20:23 -0700)]
Revert "improve sensor fusion" -- DO NOT MERGE
This reverts commit
bdf277355dcd647bd5d27b38fc107243a2247a02.
This reverts commit
dc5b63e40ee697324d39fe105d6f12c2bb031fc6.
it might be responsible for a regression that makes the
rotation vector spin.
Bug:
7267330
Change-Id: Ifb10e933537e70c1d85a7ba73a7e3ae59002fe62
Jeff Sharkey [Mon, 1 Oct 2012 20:08:21 +0000 (13:08 -0700)]
Merge "Include Global table in bugreports." into jb-mr1-dev
Jeff Sharkey [Mon, 1 Oct 2012 19:52:42 +0000 (12:52 -0700)]
Include Global table in bugreports.
Bug:
7257648
Change-Id: I84c7230fd115cf9d7269bc5367026b52cbcc86ac
Jamie Gennis [Mon, 1 Oct 2012 03:02:03 +0000 (20:02 -0700)]
SurfaceFlinger: reset the FB_TGT acquire fence
This change makes SurfaceFlinger reset the acquire fence fd to -1 after each
call to HWComposer::commit. The HWComposer implementation is resonsible for
closing the fd, so SurfaceFlinger should make sure not to pass it to HWC
multiple times.
Change-Id: I79554d9f6d6ef2b77d632d40251516c1f5b16ddb
Bug:
7258954
Dianne Hackborn [Mon, 1 Oct 2012 18:38:19 +0000 (11:38 -0700)]
Merge "Fix issue #
7257947: Need to fix heap limits on Mako" into jb-mr1-dev
Mathias Agopian [Sun, 30 Sep 2012 23:43:20 +0000 (16:43 -0700)]
save/restore viewport properly when taking screenshot
Bug:
7241739
Change-Id: Iba8b9ffc75ab47fbc56169e65da26d96850a9297
Dianne Hackborn [Sun, 30 Sep 2012 23:20:34 +0000 (16:20 -0700)]
Fix issue #
7257947: Need to fix heap limits on Mako
Change-Id: Id8014b19195b8740bccf000ab66c1b599ba3a1a0
Mathias Agopian [Fri, 28 Sep 2012 08:00:47 +0000 (01:00 -0700)]
reset GL viewport and project when caputring the screen
Bug:
7241739
Change-Id: I3bb5214b070384de9be2026647865c6c236a4331
Andy McFadden [Thu, 27 Sep 2012 23:02:06 +0000 (16:02 -0700)]
Pass display arg to blank/unblank
This allows us to blank and unblank displays other than the built-in
display (e.g. HDMI).
Bug:
7240511
Change-Id: I89ea13f9e497be74c3e1231d0c62fb558e93e0f8
Chet Haase [Fri, 28 Sep 2012 19:38:29 +0000 (12:38 -0700)]
Merge "Re-enable FAST_TLS in gl2 code" into jb-mr1-dev
Andreas Huber [Fri, 28 Sep 2012 19:31:32 +0000 (12:31 -0700)]
Merge "Add a way to configure an OMX encoder to emit SPS/PPS before IDR frames." into jb-mr1-dev
Chet Haase [Fri, 28 Sep 2012 18:56:48 +0000 (11:56 -0700)]
Re-enable FAST_TLS in gl2 code
Temporarily changed USE_FAST_TLS_KEY ifdef during debugging. Changing it
back now.
Change-Id: I7c2fcf7265b3d545e31ff7683bd7614100fad3e5
Andreas Huber [Fri, 28 Sep 2012 18:32:16 +0000 (11:32 -0700)]
Add a way to configure an OMX encoder to emit SPS/PPS before IDR frames.
Change-Id: I71ce254533c8e99bc54d199d8a9828397fe3d99d
related-to-bug:
7245308
Jamie Gennis [Wed, 26 Sep 2012 03:26:00 +0000 (20:26 -0700)]
SurfaceFlinger: don't always set HWC_GEOM_CHGD
This change fixes a bug in SurfaceFlinger that caused the HWC_GEOMETRY_CHANGED
flag to be set every flip.
Change-Id: I4f395a2883bcbb53b23b3d14941aff108739c9f0
Bug:
7234237
Romain Guy [Thu, 27 Sep 2012 23:04:03 +0000 (16:04 -0700)]
Merge "New compile-time flags to make debugging easier for us poor souls Bug #
7195815" into jb-mr1-dev
Iliyan Malchev [Thu, 27 Sep 2012 22:08:29 +0000 (15:08 -0700)]
Revert "Compatibility work around for bad graphics driver dependency."
This reverts commit
a50b51c03aca449920fc8581a738032a7bce7150
Change-Id: Ibdcd776a7f241dbb2475403ea04f939249774c41
Romain Guy [Thu, 27 Sep 2012 22:47:10 +0000 (15:47 -0700)]
New compile-time flags to make debugging easier for us poor souls
Bug #
7195815
Change-Id: I23e7ac991891b9586cb8ed20b1305c8b1b3e2b43
Mathias Agopian [Thu, 27 Sep 2012 01:48:54 +0000 (18:48 -0700)]
Merge "assert -eng builds when calling a GL function without a context" into jb-mr1-dev
Mathias Agopian [Thu, 27 Sep 2012 00:19:48 +0000 (17:19 -0700)]
assert -eng builds when calling a GL function without a context
Bug:
7241626
Change-Id: I0f1f9361e75e9186af8cff8d98a7d2224b266765
Andy McFadden [Thu, 27 Sep 2012 00:27:42 +0000 (17:27 -0700)]
Merge "Recompute visible regions more vigorously" into jb-mr1-dev
Andy McFadden [Wed, 26 Sep 2012 23:19:12 +0000 (16:19 -0700)]
Recompute visible regions more vigorously
Some of the code in latchBuffer was calling invalidateHwcGeometry,
but that didn't cause the SurfaceFlinger visible region code to
re-evaluate the layer's visibility. Set the recomputeVisibleRegions
"out" parameter instead.
Bug
7235797
Change-Id: If6ba33fbd1a594cd64cc5253aebf752d6ceda1c9
Jesse Hall [Tue, 25 Sep 2012 20:25:04 +0000 (13:25 -0700)]
Stop using transparent region for computing visible regions
The transparent region hint is computed only from view layout
locations, ignoring post-layout translation. If a SurfaceView is layed
out with no other views above it, but a view is moved above it
post-layout, that view's layout bounds would be subtracted from the
window's transparent region instead of its drawing bounds. Prior to
this change, the view would not be visible (except where its layout
bounds and drawing bounds overlap).
With this change, composition uses visible regions computed without
regard to the transparent regions. However, if all of a layer's
visible region is transparent, it will be removed from the list of
layers to composite. This doesn't fix the root problem of incorrect
transparent regions, and doesn't prevent bad composition in all cases.
But it does avoid it for some existing apps, whiel still allowing the
transparent region hint to save power in the important
fullscreen-video-in-a-SurfaceView case.
Bug:
7179570
Change-Id: I47cf939e12129b167afa344b8b036e8827103ac8
Mathias Agopian [Wed, 26 Sep 2012 05:56:29 +0000 (22:56 -0700)]
Merge "add support for EGL_FRAMEBUFFER_TARGET_ANDROID" into jb-mr1-dev
Mathias Agopian [Wed, 26 Sep 2012 02:16:28 +0000 (19:16 -0700)]
only abort when errors happen on the main display
Bug:
7232690
Change-Id: I2c4b35a82f131da26deea738ef294e100e536d15
Mathias Agopian [Wed, 26 Sep 2012 01:24:31 +0000 (18:24 -0700)]
add support for EGL_FRAMEBUFFER_TARGET_ANDROID
we now try first with EGL_FRAMEBUFFER_TARGET_ANDROID, and
pick the first config we find. Otherwise, we revert to
the old algorithm.
Bug:
7232584
Change-Id: I8d5c5a4ce48420832c2e2828718a8f53325effb0
Mathias Agopian [Tue, 25 Sep 2012 22:28:44 +0000 (15:28 -0700)]
fix a crasher when running out of memory
MemoryHeapBase::getBase() returns MAP_FAILED in case or
OOM, not null which is what SF was checking against.
This addresses one of the issues of bug
7230543.
Bug:
7230543
Change-Id: I763a88f64a2f9ff75eb139cfbaf9a1a9746c5577
Mathias Agopian [Tue, 25 Sep 2012 04:27:29 +0000 (21:27 -0700)]
When "show visible regions" is enabled we were missing a call to HWC
Bug:
7204034
Change-Id: I64dd78362fa75149513a7d9ff92dde175e9b4958
Andy McFadden [Tue, 25 Sep 2012 20:48:15 +0000 (13:48 -0700)]
Merge "Show build config in dumpsys SurfaceFlinger" into jb-mr1-dev
Ian Rogers [Tue, 25 Sep 2012 18:36:22 +0000 (11:36 -0700)]
Merge "Configure GC free to be 8MB for devices with >512MB RAM." into jb-mr1-dev
Andy McFadden [Tue, 25 Sep 2012 02:07:20 +0000 (19:07 -0700)]
Show build config in dumpsys SurfaceFlinger
This adds a line to the "dumpsys SurfaceFlinger" output that shows
build-time configuration values.
Example:
Build configuration: [sf HAS_CONTEXT_PRIORITY] [libui] \
[libgui USE_FENCE_SYNC]
Bug
7206633
Change-Id: Ibe1856b459d34a4be6ee83a4ebfd2807e6cc68a0
Mathias Agopian [Tue, 25 Sep 2012 05:01:01 +0000 (22:01 -0700)]
fix Layer croping in SurfaceFlinger
Bug:
7224628
Change-Id: I9421f0a06b9a27fe00eefaa1dfab8c4309c380c9
Mathias Agopian [Tue, 25 Sep 2012 02:26:11 +0000 (19:26 -0700)]
fix a crasher in SurfaceTexture's setFilteringEnabled
bug:
7211067
Change-Id: Id8658a8df429d76c20ab9112858b38e52343dc9c
Mathias Agopian [Tue, 25 Sep 2012 01:31:48 +0000 (18:31 -0700)]
Merge changes I47cd25c9,I7638ffe8 into jb-mr1-dev
* changes:
don't call eglMakeCurrent() before calling HWC commit() on HWC 1.1
handle EGL errors
Jamie Gennis [Tue, 25 Sep 2012 01:21:13 +0000 (18:21 -0700)]
Merge "EGL: add the EGL_ANDROID_framebuffer_target enum" into jb-mr1-dev
Jamie Gennis [Tue, 25 Sep 2012 01:20:51 +0000 (18:20 -0700)]
Merge "EGL: expose the EXT_create_context_robustness ext" into jb-mr1-dev
Mathias Agopian [Tue, 25 Sep 2012 01:12:35 +0000 (18:12 -0700)]
don't call eglMakeCurrent() before calling HWC commit() on HWC 1.1
this call is not needed and misleading on HWC 1.1; it can also have
a negative performance impact when multiple displays are used.
Bug:
7124069
Change-Id: I47cd25c9d6e69abcc9333b9ecd5044e8fb1919ec
Mathias Agopian [Tue, 25 Sep 2012 01:07:21 +0000 (18:07 -0700)]
handle EGL errors
for now we just restart the runtime.
bug:
7225248
Change-Id: I7638ffe82075a4db9e7e6f9e35cf48afcb5a387a
Mathias Agopian [Tue, 25 Sep 2012 00:57:48 +0000 (17:57 -0700)]
log an error when eglCreateContext() fails in an inconsistant way
this will help debugging bug:
7216919
Change-Id: I54ac65f20c5ed55cc93a5cbc5350fadfb0fcb804
Jamie Gennis [Mon, 24 Sep 2012 20:34:18 +0000 (13:34 -0700)]
EGL: add the EGL_ANDROID_framebuffer_target enum
Change-Id: Id8b1b114e2a7a88956b857c63a0429e9b33fdb5c
Jamie Gennis [Thu, 20 Sep 2012 22:47:44 +0000 (15:47 -0700)]
EGL: expose the EXT_create_context_robustness ext
Change-Id: I1db43e96aa5e9e91a6176a4a3e5aa9d1f3ee4a7e
Jamie Gennis [Mon, 24 Sep 2012 20:36:55 +0000 (13:36 -0700)]
Merge "ConsumerBase: make fence names meaningful" into jb-mr1-dev
Jamie Gennis [Mon, 24 Sep 2012 19:25:15 +0000 (12:25 -0700)]
ConsumerBase: make fence names meaningful
Change-Id: I3580120cb63c027c327e80ec70e68650b75395de
Ian Rogers [Sun, 23 Sep 2012 23:41:57 +0000 (16:41 -0700)]
Configure GC free to be 8MB for devices with >512MB RAM.
b/
6606849
Change-Id: Idad46032b4b5d309db0319caeb7a1dfc0550f9f7
Eino-Ville Talvala [Sun, 23 Sep 2012 17:20:53 +0000 (10:20 -0700)]
Merge "Add android.hardware.camera.any feature to camera permissions." into jb-mr1-dev
Eino-Ville Talvala [Sun, 23 Sep 2012 16:42:12 +0000 (09:42 -0700)]
Add android.hardware.camera.any feature to camera permissions.
Bug:
6847310
Change-Id: I9283932a7c211cd08b3b9fe6a93d8f219e6c9767
Mathias Agopian [Sat, 22 Sep 2012 01:26:16 +0000 (18:26 -0700)]
add/remove displays properly on hotplug events
Bug:
7191563
Change-Id: I8f0fbf3b29658c9479443141798e6f288a1f2d52
Mathias Agopian [Fri, 21 Sep 2012 06:24:19 +0000 (23:24 -0700)]
Display events now always carry the display id they happened on
Change-Id: I12de1d883c23927722bc3a71b782f0079de4e831
Mathias Agopian [Fri, 21 Sep 2012 06:14:05 +0000 (23:14 -0700)]
fix an issue where hotplug events were not dispatched
Change-Id: I527eec77f338cd6f1a9021aa4c9d384dbddd6d2a
Jamie Gennis [Fri, 21 Sep 2012 20:43:23 +0000 (13:43 -0700)]
Merge "SurfaceTexture: fix an out of bounds array write" into jb-mr1-dev
Jamie Gennis [Fri, 21 Sep 2012 19:16:37 +0000 (12:16 -0700)]
Merge "Add a spec for EGL_ANDROID_framebuffer_target." into jb-mr1-dev
Jamie Gennis [Fri, 21 Sep 2012 18:55:35 +0000 (11:55 -0700)]
SurfaceTexture: fix an out of bounds array write
This change fixes an issue causing the mEglContext member of a SurfaceTexture
to get incorrectly zeroed out. This would happen when a call to
ConsumerBase::releaseBufferLocked resulted in the current buffer being freed.
Freeing the current buffer would set SurfaceTexture::mCurrentTexture to -1,
which would then be used by SurfaceTexture::releaseBufferLocked to reset the
current slot's EGLSyncKHR to EGL_NO_SYNC_KHR (= 0). This would overwrite the
mEglContext field, resulting in context mismatch errors in
SurfaceTexture::doGLFenceWaitLocked.
The fix is to simply use the buffer slot that's passed in to
SurfaceTexture::releaseBufferLocked rather than mCurrentTexture.
Change-Id: I0e5e2bd88fcbb354c35a3744f317716fff3e0e41
Jamie Gennis [Thu, 20 Sep 2012 20:55:24 +0000 (13:55 -0700)]
Add a spec for EGL_ANDROID_framebuffer_target.
This change adds a new extension for EGL implementations to indicate the
EGLConfigs that support use as a HWComposer framebuffer target layer.
Change-Id: Ia7c8fbe8da09d57b4ec8bf1d9ddb67ca21aa2885
Mathias Agopian [Fri, 21 Sep 2012 04:28:12 +0000 (21:28 -0700)]
return an error, as expected, when querying a disconnected display
Change-Id: I405a3a7bb42b9bbd2ec7bfe09e60e1b7acf7389d
Mathias Agopian [Fri, 21 Sep 2012 02:27:07 +0000 (19:27 -0700)]
fix a typo preventing pre hwc-1.1 devices from booting
Change-Id: Icf01254689633d04967872749ac947a671e47ed8
Mathias Agopian [Thu, 20 Sep 2012 01:16:22 +0000 (18:16 -0700)]
we now correctly set-up connected screens during boot
Change-Id: Ie8b1a3b97ad1821cc970e43abe96c8cec7135b66
Mathias Agopian [Thu, 20 Sep 2012 00:31:36 +0000 (17:31 -0700)]
We now report hotplug events to the framework
Change-Id: I2d6b7787d39e5929485a551e4982498c5053c211
Mathias Agopian [Wed, 19 Sep 2012 04:54:42 +0000 (21:54 -0700)]
one more step toward HDMI support
getDisplayInfo() now returns proper information for
HWC managed displays.
hotplug is sitll not supported; so this is not fully correct
as the information returned will be bogus if the HDMI screen
is not plugged in.
Bug:
7191563
Change-Id: If55d8e829fae0443571548155007f486cdf9bc9f
Mathias Agopian [Thu, 20 Sep 2012 06:14:45 +0000 (23:14 -0700)]
calculate wether we filter on a per-display basis
Change-Id: I79d80b432b20b3d02428da19add464ac1e2b9378
Mathias Agopian [Thu, 20 Sep 2012 23:54:14 +0000 (16:54 -0700)]
GraphicBufferAlloc class was declared twice
this was confusing because the one in FramebufferSurface
wasn't in fact being used
Change-Id: Ied45aec20d804cfbe52440f9b2f2852a85c757cf
Ben Cheng [Thu, 20 Sep 2012 20:17:42 +0000 (13:17 -0700)]
Merge "Disable the use of clock_gettime for now." into jb-mr1-dev
Andreas Huber [Thu, 20 Sep 2012 16:29:41 +0000 (09:29 -0700)]
Merge "frameworks/native: Amend HDCP API" into jb-mr1-dev
Jesse Hall [Thu, 20 Sep 2012 05:30:55 +0000 (22:30 -0700)]
Merge "Allow 16-bit color EGLConfigs" into jb-mr1-dev
Mathias Agopian [Thu, 20 Sep 2012 05:05:14 +0000 (22:05 -0700)]
am
516efc1b: am
8a2b5423: Merge "libagl: Transform the vertex if using eye space lighting with point lights"
* commit '
516efc1bea1c05492c5d4636a589cfc686661842':
libagl: Transform the vertex if using eye space lighting with point lights
Jesse Hall [Thu, 20 Sep 2012 04:00:49 +0000 (21:00 -0700)]
Allow 16-bit color EGLConfigs
The emulator without GPU acceleration only supports 16-bit
framebuffers.
Bug:
7185810
Change-Id: I883180367bf5b291d5e70427ab586d2e17868a96
Mathias Agopian [Thu, 20 Sep 2012 03:39:05 +0000 (20:39 -0700)]
am
8a2b5423: Merge "libagl: Transform the vertex if using eye space lighting with point lights"
* commit '
8a2b54235a45f92827b13723380065d1ce308236':
libagl: Transform the vertex if using eye space lighting with point lights
Mathias Agopian [Thu, 20 Sep 2012 02:31:52 +0000 (19:31 -0700)]
Merge "libagl: Transform the vertex if using eye space lighting with point lights"
Mathias Agopian [Wed, 19 Sep 2012 23:26:30 +0000 (16:26 -0700)]
Merge changes I561c198c,Id4865f3c into jb-mr1-dev
* changes:
improve sensor battery usage tracking
track UID with connections