Commit Graph

48744 Commits

Author SHA1 Message Date
Mathias Agopian
4e620ddce3 free EGL resources associated to a thread when it terminates
destroyed but current-to-a-thread resources are only destroyed
when they're made not-current; however, we were not destroying
those when the thread itself terminated, causing these resources
to be leaked forever.

we now install a tls-key destructor that takes care of this
by calling eglReleaseThread upon thread termination.

Bug: 9209776
Change-Id: I88298a34e3a27488eb81eab76717715569c7d57c
2013-05-30 16:07:36 -07:00
Lajos Molnar
9e3cb55b8f BufferQueue: remove freeAllBuffersExceptHeadLocked()
Now that we are having separate buffer-instances for the buffer-
queue, we can free all buffers; we don't have to keep the head
alive.

Change-Id: I023e9161a2501d99333f8868ce438afa914ec50f
Signed-off-by: Lajos Molnar <lajos@google.com>
Related-to-bug: 7093648
2013-05-23 22:21:13 +00:00
Lajos Molnar
c5d7b7d323 BufferQueue: track buffer-queue by instance vs. by reference
Instead of representing the buffer-queue as a vector of buffer
indices, represent them as a vector of BufferItems (copies).
This allows modifying the buffer slots independent of the queued
buffers.

As part of this change, BufferSlot properties that are only
been relevant in the buffer-queue have been removed.

Also, invalid scalingMode in queueBuffer now returns an error.

ConsumerBase has also changed to allow reuse of the same
buffer slots by different buffers.

Change-Id: If2a698fa142b67c69ad41b8eaca6e127eb3ef75b
Signed-off-by: Lajos Molnar <lajos@google.com>
Related-to-bug: 7093648
2013-05-23 22:17:54 +00:00
Tim Murray
d837969640 Make trace macros slightly more robust
Change-Id: I9544eb7b27fc1a971cabadd8d5b4b4b80678febf
2013-05-23 13:44:08 -07:00
Dianne Hackborn
80d7fd86e0 Power manager now takes calling package name arg.
Change-Id: Iae57b8eb7abe4e66f0d2645db8cdf57acf7dcd3e
2013-05-20 16:50:10 -07:00
The Android Open Source Project
41d9c2ff21 am f0e52b64: (-s ours) Reconcile with jb-mr2-release - do not merge
* commit 'f0e52b648b435634d8cbcf52cac86c8dac9e4a63':
2013-05-20 08:22:44 -07:00
The Android Open Source Project
f0e52b648b Reconcile with jb-mr2-release - do not merge
Change-Id: I400727c668eff57b5760595787d21dd021464587
2013-05-20 08:20:26 -07:00
The Android Automerger
3042131d29 merge in jb-mr2-release history after reset to jb-mr2-dev 2013-05-19 05:55:29 -07:00
Chong Zhang
cb5368356e Merge "wifi-display: add support for metadata mode on encoder output" 2013-05-18 00:02:10 +00:00
Nick Kralevich
058219f51d Merge "Remove unnecessary header file." 2013-05-17 21:58:50 +00:00
Mathias Agopian
58d4a86639 am 2cad801d: (-s ours) am 23dacde4: [DO NOT MERGE] fix a bug where surfaceflinger and system_server could deadlock
* commit '2cad801d0d05190cf4ab7edc7ecffc5862ee18dd':
  [DO NOT MERGE] fix a bug where surfaceflinger and system_server could deadlock
2013-05-17 13:55:28 -07:00
Mathias Agopian
2cad801d0d am 23dacde4: [DO NOT MERGE] fix a bug where surfaceflinger and system_server could deadlock
* commit '23dacde4b624921df4f2c9646d20ca7acae357b6':
  [DO NOT MERGE] fix a bug where surfaceflinger and system_server could deadlock
2013-05-17 13:53:31 -07:00
Mathias Agopian
23dacde4b6 [DO NOT MERGE] fix a bug where surfaceflinger and system_server could deadlock
because surfaceflinger handles screenshot in a different
thread from the binder thread that requested it and because
the IGraphicBufferProducer is a synchronous interface
calling back into the system server; it is possible for
the latter to run out of binder threads (b/c it holds
a lock while calling into SF).

The solution is to make sure all calls on IGraphicBufferProducer
happen on the incoming binder thread. We achieve this by creating
a IGBP wrapper which is given to the screenshot code.

Bug: 8734824
Change-Id: Ife2441c7322e51ecfb20e0df03dacf6bce49578e
2013-05-17 13:20:53 -07:00
Nick Kralevich
06a582e8b5 Remove unnecessary header file.
In b2cac4ff37, the last
reference to property_get was removed, but the include
file remained. Remove it.

This is causing me unrelated problems.

Change-Id: I87bbfbfa5871f6da4a1b00037a225f67bbd75881
2013-05-17 11:06:39 -07:00
Mathias Agopian
2381033ad0 am e6eef6c1: am ea74d3b7: make the warning timout of Fence::waitForever() implicit and longer
* commit 'e6eef6c136b007f3a7e1e19884875b855c0c5f95':
  make the warning timout of Fence::waitForever() implicit and longer
2013-05-17 10:18:45 -07:00
Mathias Agopian
e6eef6c136 am ea74d3b7: make the warning timout of Fence::waitForever() implicit and longer
* commit 'ea74d3b78d607cde17790a7bb83e6f68ffd34cfd':
  make the warning timout of Fence::waitForever() implicit and longer
2013-05-17 10:16:51 -07:00
Mathias Agopian
a6fee1904f Merge "various fixes to the sensorservice" 2013-05-17 01:49:42 +00:00
Mathias Agopian
0319306670 various fixes to the sensorservice
1) "google" sensors are now reporting AOSP as the vendor string
2) don't expose the system's sensor fusion if the HAL provides it
3) use uncalibrated gyro if availble for the system's sensor fusion

Change-Id: I25140436cdb29d55e39fd6fbbf8c44a410a83d5c
2013-05-16 18:47:21 -07:00
Mathias Agopian
ea74d3b78d make the warning timout of Fence::waitForever() implicit and longer
- timeout is now 3 seconds instead of 1
- simplifies the API a bit
- allows us to change/tweak this timeout globaly

Bug: 8988871

Change-Id: I8d3c6ec43a372f602fb3f29856710339f86c0ec9
2013-05-16 18:15:57 -07:00
Chong Zhang
685e68130b wifi-display: add support for metadata mode on encoder output
Bug: 8968123

Change-Id: I3d2b567d4908f5f49c0694589920babe1f6752cd
2013-05-16 15:58:31 -07:00
The Android Open Source Project
ddd466abc1 am 92cf3553: (-s ours) Reconcile with jb-mr2-release - do not merge
* commit '92cf355308ffb28f8a460d69915ca5955016a632':
2013-05-16 05:48:22 -07:00
The Android Open Source Project
92cf355308 Reconcile with jb-mr2-release - do not merge
Change-Id: Ic457c583534afce9b1697b3b34221a729e2bc5b2
2013-05-16 05:43:41 -07:00
Jesse Hall
59eaeed5fa am 28fc78bf: am e8fed71d: Merge "Abort surface composition if hw surface is invalid"
* commit '28fc78bf5fbb6288a27f3f25565a960a1873b0ef':
  Abort surface composition if hw surface is invalid
2013-05-13 23:31:54 -07:00
Jesse Hall
28fc78bf5f am e8fed71d: Merge "Abort surface composition if hw surface is invalid"
* commit 'e8fed71da2d3e03ef933d308520bab5b860f05aa':
  Abort surface composition if hw surface is invalid
2013-05-13 23:28:45 -07:00
Jesse Hall
e8fed71da2 Merge "Abort surface composition if hw surface is invalid" 2013-05-14 00:24:28 +00:00
Michael Chock
c8c7109619 Abort surface composition if hw surface is invalid
If an invalid display device is detected during surface composition
(e.g., a simulated secondary display is removed), abort the
composition.

Change-Id: Ia6afb2e287882d8ae0614eb25463d3f85b687adf
2013-05-13 13:26:19 -07:00
Jesse Hall
f9872c8124 am 7a486528: am f0dcff89: Merge "gl_code.cpp: Remove a DOS style newline"
* commit '7a4865287460a5f0ff26e22be5f0271735d32ac7':
  gl_code.cpp: Remove a DOS style newline
2013-05-13 13:08:54 -07:00
Jesse Hall
7a48652874 am f0dcff89: Merge "gl_code.cpp: Remove a DOS style newline"
* commit 'f0dcff89acb998179757ca66b5c6a2c585a980e9':
  gl_code.cpp: Remove a DOS style newline
2013-05-13 13:05:36 -07:00
Jesse Hall
f0dcff89ac Merge "gl_code.cpp: Remove a DOS style newline" 2013-05-13 18:53:10 +00:00
The Android Automerger
60b1606061 merge in jb-mr2-release history after reset to jb-mr2-dev 2013-05-13 05:55:40 -07:00
Mathias Agopian
f3e85d4327 take the "transparent region" into account for blending
until now it was only used to discard a layer entirely.
we're now reducing the size of the layer if it is still
visible, if possible.

this works for instance when a surfaceView is used and
only the menu bar is displayed over it.

Change-Id: I3f5527c5cd1e69ecc968272c8948f1513ada8c55
2013-05-10 18:35:43 -07:00
Mathias Agopian
6c7f25afb7 reformat Rect.{cpp|h}
Change-Id: I45b1f6646541a1abacce1e70df00a770e47b820e
2013-05-10 18:03:31 -07:00
Mathias Agopian
b6df7d0e4c make all libsurfaceflinger and libsensorservice symbols's visibility hidden
we only export the main entry-point.
this saves about 150KB.

Change-Id: I55eb2b6705386fdfa43860deb62f9cdd2a0982aa
2013-05-09 16:51:37 -07:00
Mathias Agopian
5d85d72a17 remove unused declarations and reformat
Change-Id: I4e168fb62c275e02621c4b6e0c6000d0f006c327
2013-05-09 14:57:05 -07:00
Mathias Agopian
a6cb0397da remove reserved virtual slots
these consume small amount of space (plt) in every library that
links against libutils.

Change-Id: I1b6b3dd9098aa5a051243f7a5dbf91cd7dcb8b2c
2013-05-09 14:57:05 -07:00
Eino-Ville Talvala
d487ca1ab3 am 87ab83d9: am f743e3db: Merge "Add support for HAL_PIXEL_FORMAT_YCbCr_420_888" into jb-mr2-dev
* commit '87ab83d96b9d826e94a7169a6205bcf9c2ee633a':
  Add support for HAL_PIXEL_FORMAT_YCbCr_420_888
2013-05-09 10:19:01 -07:00
Eino-Ville Talvala
87ab83d96b am f743e3db: Merge "Add support for HAL_PIXEL_FORMAT_YCbCr_420_888" into jb-mr2-dev
* commit 'f743e3db27dd639421913ee5e99d7a13ccc236ea':
  Add support for HAL_PIXEL_FORMAT_YCbCr_420_888
2013-05-09 10:15:17 -07:00
Eino-Ville Talvala
f743e3db27 Merge "Add support for HAL_PIXEL_FORMAT_YCbCr_420_888" into jb-mr2-dev 2013-05-09 17:13:22 +00:00
The Android Automerger
5c469132e2 merge in jb-mr2-release history after reset to jb-mr2-dev 2013-05-09 05:55:26 -07:00
Mathias Agopian
57e5144a31 Merge "new String8, String16 ctors to initialize empty static strings with static linkage" 2013-05-09 01:13:51 +00:00
Mathias Agopian
8050299f5b new String8, String16 ctors to initialize empty static strings with static linkage
when libutils is statically linked, the ordering of the static
initializer is not guaranteed and therefore it's unsafe to use
empty static strings: e.g.:

static String8 sThisStaticStringIsNotSafe;

instead, this new constructor can be used:

static String8 sThisStaticStringIsSafe(kEmptyString);

Change-Id: Ia3daf1cab1c97d021c0ee9c2b394b5e27e8d6c0d
2013-05-08 18:13:07 -07:00
Jesse Hall
c0db61966a am dda42952: am 64f3b2fd: Merge "Remove experimental HWC virtual display support" into jb-mr2-dev
* commit 'dda4295221f831560ca9d554cd9b7be1c672d0b6':
  Remove experimental HWC virtual display support
2013-05-08 15:05:15 -07:00
Jamie Gennis
7f9efade0d am d2a92b5b: am db733579: Merge "atrace: add the \'dalvik\' trace category" into jb-mr2-dev
* commit 'd2a92b5b97b5a107d327744f216abdea8e0cda89':
  atrace: add the 'dalvik' trace category
2013-05-08 15:03:56 -07:00
Jeff Tinker
dc1b01141f am 2c228354: am b84d1cad: Correct native API documentation related to MediaDrm offline use case
* commit '2c2283549c72184145c9f030bbfe6124ee75d169':
  Correct native API documentation related to MediaDrm offline use case
2013-05-08 15:03:40 -07:00
Jesse Hall
dda4295221 am 64f3b2fd: Merge "Remove experimental HWC virtual display support" into jb-mr2-dev
* commit '64f3b2fd1ea9d30df6fd04ecdb086e540465bc18':
  Remove experimental HWC virtual display support
2013-05-08 13:57:56 -07:00
Jesse Hall
64f3b2fd1e Merge "Remove experimental HWC virtual display support" into jb-mr2-dev 2013-05-08 20:53:42 +00:00
The Android Automerger
91d768c9d9 merge in jb-mr2-release history after reset to jb-mr2-dev 2013-05-08 05:55:32 -07:00
Mathias Agopian
002e1e58df libutils clean-up
Change-Id: I6ff4cfc736751de2912c697f954e45e275f2d386
2013-05-07 18:28:11 -07:00
Jamie Gennis
d2a92b5b97 am db733579: Merge "atrace: add the \'dalvik\' trace category" into jb-mr2-dev
* commit 'db733579a4c64eddd7dadb4ac15f54658ccfc0fb':
  atrace: add the 'dalvik' trace category
2013-05-07 18:23:18 -07:00
Jamie Gennis
db733579a4 Merge "atrace: add the 'dalvik' trace category" into jb-mr2-dev 2013-05-08 01:21:17 +00:00