Commit Graph

2398 Commits

Author SHA1 Message Date
Dan Stoza
c1ef3efecb Merge "Change BufferQueue into producer/consumer wrapper" 2014-03-05 18:55:13 +00:00
Dan Stoza
3e96f1982f Change BufferQueue into producer/consumer wrapper
Now that BufferQueue has been split into core + producer + consumer,
rewrite BufferQueue to be a thin layer over a producer and consumer
interface. Eventually, this layer will be deprecated in favor of
only using either the producer or consumer interface, as applicable.

Change-Id: I340ae5f5b633b244fb594615ff52ba50b9e2f7e4
2014-03-04 15:58:03 -08:00
Igor Murashkin
8be494eb09 am 1738d4fc: am 462fb3a8: Merge "gui: Fix return code assert in CpuConsumer_test."
* commit '1738d4fca78b7678d09d5c8898e1f80fa63b4a6d':
  gui: Fix return code assert in CpuConsumer_test.
2014-03-04 22:35:04 +00:00
Igor Murashkin
1738d4fca7 am 462fb3a8: Merge "gui: Fix return code assert in CpuConsumer_test."
* commit '462fb3a8d597fffef3d5534544428d5cee9d8c16':
  gui: Fix return code assert in CpuConsumer_test.
2014-03-04 21:10:33 +00:00
Igor Murashkin
462fb3a8d5 Merge "gui: Fix return code assert in CpuConsumer_test." 2014-03-04 21:05:41 +00:00
Dan Stoza
4a07dc8d21 Merge "Split BufferQueue into core + producer + consumer" 2014-03-04 20:03:59 +00:00
Dan Stoza
289ade165e Split BufferQueue into core + producer + consumer
Change-Id: Idc39f1e511d68ce4f02202d35425a419bc0bcd92
2014-03-04 09:33:14 -08:00
Igor Murashkin
c0308d7600 Merge "gui: Surface::dequeueBuffer no locker holds mutex while blocking in binder" 2014-03-03 21:11:55 +00:00
Igor Murashkin
0f1889efe7 gui: Surface::dequeueBuffer no locker holds mutex while blocking in binder
- This also fixes a hang in the camera service when trying to shut down
  if the producer is infinitely blocked while trying to get a new buffer.

Bug: 13250382
Change-Id: I32ca82162bb8645b97dbe084e13e05ca05529a42
2014-03-03 11:42:27 -08:00
Ying Wang
646e2fbd91 am 0a643374: am 6b4e5b7f: Merge "Fix misuse of ."
* commit '0a6433749dcd87039f6e31c04ea662b238310b17':
  Fix misuse of $(my-dir).
2014-03-01 02:22:55 +00:00
Ying Wang
0a6433749d am 6b4e5b7f: Merge "Fix misuse of ."
* commit '6b4e5b7f856c32b75e9a22df4c3f2273ae906acb':
  Fix misuse of $(my-dir).
2014-03-01 02:15:39 +00:00
Ying Wang
a3cc7edfce Fix misuse of $(my-dir).
Change-Id: I8b24f60826abe4b541de646cbc3df66929203301
2014-02-28 18:05:56 -08:00
Arve Hjønnevåg
4cab0fd7f7 Binder: Make sure binder objects do not overlap
Fixes crashing part of bug 11355082.
The driver still leaks references.

Change-Id: Ibc6a63b151c1fc1f7666237f25255ba781e02071
2014-02-24 15:42:13 -08:00
Arve Hjønnevåg
3c98ba77b9 am c5294424: am d1c87d37: Merge changes I3432d9d3,I90fcf538,I64398603
* commit 'c5294424386bedad2a240074d0845999f28e662d':
  Binder: Fix some valgrind errors.
  Binder: Don't cast directly from a pointer to binder_uintptr_t
  Binder: Disable attemptIncStrongHandle
2014-02-22 00:52:18 +00:00
Arve Hjønnevåg
c529442438 am d1c87d37: Merge changes I3432d9d3,I90fcf538,I64398603
* commit 'd1c87d37025c49f6a47fe43328572da495ff04c1':
  Binder: Fix some valgrind errors.
  Binder: Don't cast directly from a pointer to binder_uintptr_t
  Binder: Disable attemptIncStrongHandle
2014-02-22 00:41:31 +00:00
Arve Hjønnevåg
ee319ab1d2 am 6f286114: Revert "Fix "Binder: Make sure binder objects do not overlap" to work old binder kernel interface"
* commit '6f286114ec1d597f3dae987bba6e72dbbc404e32':
  Revert "Fix "Binder: Make sure binder objects do not overlap" to work old binder kernel interface"
2014-02-20 21:27:53 +00:00
Arve Hjønnevåg
5febeff15f am 9b5c3b91: am d5a354c6: am d06f6b00: am 67903293: Fix "Binder: Make sure binder objects do not overlap" to work old binder kernel interface
* commit '9b5c3b9132831ba9078fc7c4001821bcfe8dd39d':
  Fix "Binder: Make sure binder objects do not overlap" to work old binder kernel interface
2014-02-20 14:59:14 +00:00
Arve Hjønnevåg
6f286114ec Revert "Fix "Binder: Make sure binder objects do not overlap" to work old binder kernel interface"
This branch has the new driver interface so it should not have this change.

This reverts commit 6790329358.

Change-Id: I9b6d0d653d98dbdb521ef964c5e7c2f14859d340
2014-02-19 20:42:41 -08:00
Dan Stoza
fb83d84694 Merge "Fix calls to captureScreen" 2014-02-20 02:43:37 +00:00
Dan Stoza
8d7599633f Fix calls to captureScreen
Change-Id: Ic0ff47afa29f143131906082dff79d4e907b7143
2014-02-19 18:35:30 -08:00
Dan Stoza
da03fe4bfc Merge "Allow disabling layer rotation during screenshots" 2014-02-20 00:56:34 +00:00
Arve Hjønnevåg
9b5c3b9132 am d5a354c6: am d06f6b00: am 67903293: Fix "Binder: Make sure binder objects do not overlap" to work old binder kernel interface
* commit 'd5a354c6b7f2ae0b93e018f3024a2fca5f6543a1':
  Fix "Binder: Make sure binder objects do not overlap" to work old binder kernel interface
2014-02-20 00:52:13 +00:00
Arve Hjønnevåg
d5a354c6b7 am d06f6b00: am 67903293: Fix "Binder: Make sure binder objects do not overlap" to work old binder kernel interface
* commit 'd06f6b001484c28a6ede3f1ad83d23dcb9ad3ccf':
  Fix "Binder: Make sure binder objects do not overlap" to work old binder kernel interface
2014-02-20 00:04:44 +00:00
Arve Hjønnevåg
d06f6b0014 am 67903293: Fix "Binder: Make sure binder objects do not overlap" to work old binder kernel interface
* commit '6790329358d1c84af2fe9ba093bcfc1c6176e758':
  Fix "Binder: Make sure binder objects do not overlap" to work old binder kernel interface
2014-02-20 00:00:49 +00:00
Arve Hjønnevåg
6790329358 Fix "Binder: Make sure binder objects do not overlap" to work old binder kernel interface
DO NOT MERGE into any branch that uses the new interface

Change-Id: Id54308a89327e69a389ac5916c052ad97f57cb28
2014-02-19 15:35:52 -08:00
Arve Hjønnevåg
79aa621330 am 7cc5b880: am e45636a8: am d437364e: am f50b9eaa: Binder: Make sure binder objects do not overlap
* commit '7cc5b8800c22790b0db9ea0af62fcad2cc998303':
  Binder: Make sure binder objects do not overlap
2014-02-19 22:06:09 +00:00
Arve Hjønnevåg
7cc5b8800c am e45636a8: am d437364e: am f50b9eaa: Binder: Make sure binder objects do not overlap
* commit 'e45636a8674b9cbb9305648e21316210e1daf920':
  Binder: Make sure binder objects do not overlap
2014-02-19 21:50:15 +00:00
Arve Hjønnevåg
e45636a867 am d437364e: am f50b9eaa: Binder: Make sure binder objects do not overlap
* commit 'd437364ec156e07c5fbe3fa27a7cd55e5450e9f6':
  Binder: Make sure binder objects do not overlap
2014-02-19 21:47:35 +00:00
Arve Hjønnevåg
d437364ec1 am f50b9eaa: Binder: Make sure binder objects do not overlap
* commit 'f50b9eaaeeaeae16981f11b05d3f3a6fb0dea30d':
  Binder: Make sure binder objects do not overlap
2014-02-19 21:45:25 +00:00
Arve Hjønnevåg
07fd0f195d Binder: Fix some valgrind errors.
When using 64 bit binder pointers, only initializing the 32 bit
handle, in a stack allocated struct, will pass uninitialized stack
data to the kernel and other processes.

Change-Id: I3432d9d36bb251d8ddb0a863661aeb80aabb3d92
2014-02-18 21:14:41 -08:00
Arve Hjønnevåg
87b30d0447 Binder: Don't cast directly from a pointer to binder_uintptr_t
When using the 64 bit binder interface from a 32 bit process the
pointer may get sign extended and cause the kernel to fail to read
from it.

Change-Id: I90fcf53880e2aa92e230a9723f9b3f7696170e32
2014-02-18 21:14:39 -08:00
Andy McFadden
22a5c8b2e3 am 44c35ec4: Allow "opaque" flag to be updated. DO NOT MERGE
* commit '44c35ec4a94eb33f7ee0df085c5d2d56d99962cf':
  Allow "opaque" flag to be updated. DO NOT MERGE
2014-02-18 23:59:43 +00:00
Andy McFadden
44c35ec4a9 Allow "opaque" flag to be updated. DO NOT MERGE
Moves the "opaque layer" from Layer to Layer::State.  This allows
it to be updated as part of a transaction.

Bug 12387406

Change-Id: I0a114ce6adf77cd12fb08f96e0691b76c475768d
2014-02-18 15:55:42 -08:00
Arve Hjønnevåg
11cfdccfd3 Binder: Disable attemptIncStrongHandle
The driver does not support BC_ATTEMPT_ACQUIRE and will return an error.
IPCThreadState does not handle driver errors, and will resend the failed
command blocking all other commands.

Change-Id: I643986037341821b27b62dc82df933844f4842b8
2014-02-14 20:18:13 -08:00
Arve Hjønnevåg
f50b9eaaee Binder: Make sure binder objects do not overlap
Fixes crashing part of bug 11355082.
The driver still leaks references.

Change-Id: Ibc6a63b151c1fc1f7666237f25255ba781e02071
2014-02-15 03:44:17 +00:00
Dan Stoza
c701401f8c Allow disabling layer rotation during screenshots
Add the ability to ignore layers' transformation matrices during
screenshot capture, which will allow the window manager to capture
unrotated images for recents during the device rotation animation.

Bug: 11805195
Change-Id: I854d87bc84ca06ef9a054a454af1c080ee66fbb8
2014-02-14 23:10:42 +00:00
Jeff Brown
eac45b8a53 am ed4d28dd: Add method to apply offset to PointerCoords. (DO NOT MERGE)
* commit 'ed4d28dd70448b13eb74a3166ec8d1c1a530e2d4':
  Add method to apply offset to PointerCoords.  (DO NOT MERGE)
2014-02-12 00:26:19 +00:00
Jeff Brown
f086ddbb97 Add support for injecting events into ActivityContainers.
Enhanced the input system to support concurrent dispatch of touch
events on multiple displays which is required for this to work.

Add method to apply offset to PointerCoords.

Change-Id: I55fe4a9a8785ae5a2d3341d214fa3c5107f3963a
2014-02-11 14:51:24 -08:00
Jeff Brown
ed4d28dd70 Add method to apply offset to PointerCoords. (DO NOT MERGE)
Change-Id: I3dc2ba22b026e5b8e1c3d90f7366ec09a59ce6b6
2014-02-11 14:43:19 -08:00
Michael Wright
1c284a9431 Add contains point method to Region
Change-Id: I553433ff7ac39f14ffca8278960d2abc95b4dd63
2014-02-10 13:00:14 -08:00
Colin Cross
4ba492f23b am 2b957503: am 74be0f7b: Merge "binder: fix all warnings"
* commit '2b957503b77c938e0698ffa8904e20c38c408d81':
  binder: fix all warnings
2014-02-06 03:07:47 +00:00
Colin Cross
6f4f3ab36c binder: fix all warnings
Fix warnings related to casting pointers to ints, using %d or %ld to
print size_t/ssize_t, and unused parameters.

Change-Id: I7a13ba83d402952989c1f795cd9e880a95b98d9e
2014-02-05 17:51:10 -08:00
Arve Hjønnevåg
ba91e5af45 am 8641112a: am 4e7fd950: Merge "Use 64 bit binder interface if TARGET_USES_64_BIT_BINDER _or_ TARGET_IS_64_BIT is set."
* commit '8641112a1c3d4ff3ed68131d07eed01b715ac906':
  Use 64 bit binder interface if TARGET_USES_64_BIT_BINDER _or_ TARGET_IS_64_BIT is set.
2014-02-04 02:10:18 +00:00
Arve Hjønnevåg
f3ad11cf3c Use 64 bit binder interface if TARGET_USES_64_BIT_BINDER _or_ TARGET_IS_64_BIT is set.
Change-Id: I46a29939fa29ec9421ab6dff3285502f69a31745
2014-02-03 14:48:36 -08:00
Arve Hjønnevåg
88f6ad18de am c93865de: am 58242fc2: Merge changes Ib0e5a037,I1bd7c38e,Icfc67c2a,I96c64312,I59528054, ...
* commit 'c93865de80a16d3638936890fb42eb175284044b':
  ServiceManager: Implement PING_TRANSACTION
  ServiceManager: Use 32/64 bit types from new binder header
  Binder: Use 64 bit pointers in 32 processes if selected by the target
  Add BINDER_IPC_32BIT to CFLAGS unless TARGET_USES_64_BIT_BINDER is true
  Binder: Make binder portable
  ServiceManager: Fix the binder interface
  ServiceManager: Store handles in uint32_t instead of void *
  ServiceManager: Generic Fixes
  ServiceManager: Add extra error handling
  ServiceManager: Fix Android.mk
  ServiceManager: Make use of kernel exported structures
2014-02-03 22:11:16 +00:00
Arve Hjønnevåg
84e625ac1e Binder: Use 64 bit pointers in 32 processes if selected by the target
Uses new kernel header where void * has been replaced by binder_uintptr_t

Change-Id: Icfc67c2a279269f700343bd9246fd7cb94efe2c1
2014-01-31 15:51:06 -08:00
Arve Hjønnevåg
e91fff0a2d Add BINDER_IPC_32BIT to CFLAGS unless TARGET_USES_64_BIT_BINDER is true
Change-Id: I96c643123b0314c361b7f48a18d5c22c660d4ff5
2014-01-31 15:50:59 -08:00
Serban Constantinescu
f683e0163a Binder: Make binder portable
Changes include
- Binder attempts to cast pointers to a int datatype
  which is not sufficient on a 64-bit platform.

- This patch introduces new read/write functions into
  Parcel that allow pointers to be written using the
  uintptr_t datatype for compile-time data type size
  selection.

-  Change access specifier for the methods above.

-  Binder uses the 64bit android_atomic_release_cas64
   (aka cmpxchg)

Change-Id: I595280541e0ba1d19c94b2ca2127bf9d96efabf1
Signed-off-by: Matthew Leach <matthew.leach@arm.com>
Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
2014-01-31 10:49:40 +00:00
Andy McFadden
d592f32df9 Merge "Allow "opaque" flag to be updated" 2014-01-30 21:42:02 +00:00
Andy McFadden
4125a4ffaf Allow "opaque" flag to be updated
Moves the "opaque layer" from Layer to Layer::State.  This allows
it to be updated as part of a transaction.

Bug 12387406

Change-Id: I0a114ce6adf77cd12fb08f96e0691b76c475768d
2014-01-29 17:36:49 -08:00