Commit Graph

49261 Commits

Author SHA1 Message Date
Christopher Tate
bb686c25b2 Disregard alleged binder entities beyond parcel bounds
When appending one parcel's contents to another, ignore binder
objects within the source Parcel that appear to lie beyond the
formal bounds of that Parcel's data buffer.

Bug 17312693

Change-Id: If592a260f3fcd9a56fc160e7feb2c8b44c73f514
(cherry picked from commit 27182be9f2)
2015-06-24 20:46:58 +00:00
Adam Lesinski
4ff0cb4404 Verify that the native handle was created
The inputs to native_handle_create can cause an overflowed allocation,
so check the return value of native_handle_create before accessing
the memory it returns.

Bug:19334482
Change-Id: I1f489382776c2a1390793a79dc27ea17baa9b2a2
(cherry picked from commit eaac99a717)
2015-05-13 17:16:00 +00:00
Michael Lentine
da9fd70de1 am 2758eb2e: am fde92eb0: Update maxNumber to be smaller.
* commit '2758eb2e67d935cf1f04e3d713438c6ac7fe8b89':
  Update maxNumber to be smaller.
2015-02-19 00:15:40 +00:00
Michael Lentine
2758eb2e67 am fde92eb0: Update maxNumber to be smaller.
* commit 'fde92eb0ffcc37106d5fe85bf1f1ba30d8639d17':
  Update maxNumber to be smaller.
2015-02-19 00:10:11 +00:00
Michael Lentine
fde92eb0ff Update maxNumber to be smaller.
There shouldn't be more than 4096 fds (probably signficantly smaller) and
there shouldn't be more than 4096 ints.

Bug: 18076253

Change-Id: I3a3e50ee3078a4710e9737114e65afc923ed0573
2015-02-18 10:34:37 -08:00
Michael Lentine
76ebd319d9 am 3d89edca: am e6f7a44e: Fix for corruption when numFds or numInts is too large.
* commit '3d89edca65e07319c9ac3b9bb9889e80e8c40578':
  Fix for corruption when numFds or numInts is too large.
2014-12-02 17:52:00 +00:00
Michael Lentine
3d89edca65 am e6f7a44e: Fix for corruption when numFds or numInts is too large.
* commit 'e6f7a44e835d320593fa33052f35ea52948ff0b2':
  Fix for corruption when numFds or numInts is too large.
2014-12-02 17:45:44 +00:00
Michael Lentine
e6f7a44e83 Fix for corruption when numFds or numInts is too large.
Bug: 18076253
Change-Id: I4c5935440013fc755e1d123049290383f4659fb6
2014-11-21 17:18:59 -08:00
Xia Wang
9c7db08049 Build the benchmark test to /data/local/tmp/ for automated test
Change-Id: I27a5ee24636ff9752a35dbab793821f6b7a79221
(cherry picked from commit b7925f1364)
2014-03-24 18:13:19 +00:00
Marco Nelissen
897fe45cf7 am 23c2fcbb: (-s ours) am c0af9caf: am b14d72bc: am d070009e: am df6774c9: am 7c1cdbdd: am e23f8b8f: am 1f70863d: am 37b44969: Add support for writing byte arrays to parcels
* commit '23c2fcbbf4be87580e64132150aa554b764425c2':
  Add support for writing byte arrays to parcels
2014-03-20 20:48:45 +00:00
Marco Nelissen
23c2fcbbf4 am c0af9caf: am b14d72bc: am d070009e: am df6774c9: am 7c1cdbdd: am e23f8b8f: am 1f70863d: am 37b44969: Add support for writing byte arrays to parcels
* commit 'c0af9cafba1217e2585777964730c70e40957dcd':
  Add support for writing byte arrays to parcels
2014-03-20 13:26:08 -07:00
Marco Nelissen
c0af9cafba am b14d72bc: am d070009e: am df6774c9: am 7c1cdbdd: am e23f8b8f: am 1f70863d: am 37b44969: Add support for writing byte arrays to parcels
* commit 'b14d72bce04e990639305890b2aca3ccad5b3ebb':
  Add support for writing byte arrays to parcels
2014-03-20 13:13:23 -07:00
Marco Nelissen
b14d72bce0 am d070009e: am df6774c9: am 7c1cdbdd: am e23f8b8f: am 1f70863d: am 37b44969: Add support for writing byte arrays to parcels
* commit 'd070009ecdb9e8c58ce5d1540d5bcba5587a0448':
  Add support for writing byte arrays to parcels
2014-03-20 11:11:18 -07:00
Marco Nelissen
d070009ecd am df6774c9: am 7c1cdbdd: am e23f8b8f: am 1f70863d: am 37b44969: Add support for writing byte arrays to parcels
* commit 'df6774c9a3c1460554208925f38dde08953b6d0b':
  Add support for writing byte arrays to parcels
2014-03-20 11:06:54 -07:00
Marco Nelissen
df6774c9a3 am 7c1cdbdd: am e23f8b8f: am 1f70863d: am 37b44969: Add support for writing byte arrays to parcels
* commit '7c1cdbdd68c4f809dc5616654740ea98a275892d':
  Add support for writing byte arrays to parcels
2014-03-20 10:55:05 -07:00
Marco Nelissen
7c1cdbdd68 am e23f8b8f: am 1f70863d: am 37b44969: Add support for writing byte arrays to parcels
* commit 'e23f8b8f0bf32e79c1d0f9183c064ab61354c452':
  Add support for writing byte arrays to parcels
2014-03-20 10:48:35 -07:00
Marco Nelissen
e23f8b8f0b am 1f70863d: am 37b44969: Add support for writing byte arrays to parcels
* commit '1f70863d13668dc97047df15cce547ebc8435ff2':
  Add support for writing byte arrays to parcels
2014-03-20 10:33:12 -07:00
Marco Nelissen
1f70863d13 am 37b44969: Add support for writing byte arrays to parcels
* commit '37b44969c0ca1d00e213da685dfbb2807f2bab30':
  Add support for writing byte arrays to parcels
2014-03-20 10:04:42 -07:00
Kenny Root
5b61ad2cda Check the padded size of the read byte array
Bug: 13509200
Change-Id: Id93894fcc617ec1cd4ce66921c6e1f1c3cf40b09
2014-03-17 13:18:16 -07:00
Marco Nelissen
37b44969c0 Add support for writing byte arrays to parcels
b/13418320

Cherrypicked from f0190bff38
https://googleplex-android-review.git.corp.google.com/#/c/433320/

Change-Id: I2285df9e9d3dc8a6a54055b13b352b81660bf45d
2014-03-17 11:13:30 -07:00
Marco Nelissen
f0190bff38 Add support for writing byte arrays to parcels
b/13418320

Change-Id: I2285df9e9d3dc8a6a54055b13b352b81660bf45d
2014-03-13 14:17:40 -07:00
Aravind Akella
19d6481956 Bug fix for SensorFusion data rate.
SensorFusion is always returning data at the slowest possible sampling rate (5 Hz). batch() is getting called twice, first time with the requested rate and second time with the slowest rate (which overwrites the requested rate). Fix batch call in SensorFusion::activate()

Bug: 12064319
Change-Id: If62f3e514233f69810336fd22b136b4395b667d3
(cherry picked from commit 8850909038)
2014-03-06 19:07:18 +00:00
Aravind Akella
4b84704b97 Ignore flush complete events when recording last value for a sensor.
Bug: 11822806
Change-Id: I1402d6684ed71ed413aef6a7be3aad945b331ec2
2014-03-06 00:48:59 +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
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
Jesse Hall
14e8b01a76 Don't change the framebuffer target until we render a new one
Continuing to send the last-rendered framebuffer to HWC on subsequent
frames allows the HWC to read partially-composed regions that haven't
changed, instead of re-composing from scratch.

Bug: 11573910
Change-Id: I8829877d2a06001f1e1b3f168cbba71c7b217b2d
2013-11-07 12:37:13 -08:00
Jesse Hall
356c23865d Merge "Provide virtual display output buffer to HWC in prepare" into klp-dev 2013-11-07 04:43:20 +00:00
Jesse Hall
493186312a Merge "Don't use implementation-defined format with CPU consumers" into klp-dev 2013-11-06 15:35:09 +00:00
Jesse Hall
f7a675837b Provide virtual display output buffer to HWC in prepare
We were already making sure the HWComposer class had the handle before
prepare, but it wasn't passing the handle along to HWC as intended.

Partial fix for bug: 11430248
Change-Id: I25f672c4fdfaa6a81fe0acb24d9ad05153ee17dc
2013-11-05 16:27:14 -08:00
Jesse Hall
497ba0e085 Don't use implementation-defined format with CPU consumers
If the virtual display surface is being consumed by the CPU, it can't
be allowed with HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED since there is
no way for the CPU consumer to find out what format gralloc chose. So
for CPU-consumer surfaces, just use the BufferQueue's default format,
which can be set by the consumer.

A better but more invasive change would be to let the consumer require
a certain format (or set of formats?), and disallow the producer from
requesting a different format.

Bug: 11479817
Change-Id: I5b20ee6ac1146550e8799b806e14661d279670c0
2013-11-04 16:43:03 -08:00
Jamie Gennis
ee874caa81 Merge "DispSync: remove delay when enabling vsync events" into klp-dev 2013-11-04 22:47:31 +00:00
Jamie Gennis
41c3c496ff DispSync: remove delay when enabling vsync events
This change fixes a bug that caused an extra frame of latency when enabling
vsync event callbacks in DispSync.  The bug was related to the logic that
prevents the two events from firing with very little time between them due to
updates to the vsync model.

Bug: 11479720
Change-Id: Ie7eaff9e92ffb7b7b6cb4d3d4402c96cbd29af7e
2013-11-01 13:58:56 -07:00
Igor Murashkin
40da5283eb Merge "EGL: rename CallStack::dump into CallStack::log" into klp-dev 2013-10-30 21:09:40 +00:00
Igor Murashkin
1f8363329c EGL: rename CallStack::dump into CallStack::log
Bug: 11324229
Change-Id: Ibac1be182c336e7aa5ac098f08d18b3c188964b4
2013-10-25 17:13:57 -07:00
Aravind Akella
46417b845a Merge "Bug fixes for SensorService" into klp-dev 2013-10-25 23:16:59 +00:00
Aravind Akella
b4099e77ec Bug fixes for SensorService
i) Emulate Flush for AOSP Fusion Sesnsors on newer HALs that support batching.
ii) Early return if there are no events for the current SensorEventConnection.

Bug: 11325707, 11376538

Change-Id: Idb856302463649a99d3d5d0c965bb06ba06b8e1d
2013-10-25 13:58:58 -07:00
Marco Nelissen
708cc794f6 Native counterpart of new power manager method
Cherrypicked from master.

b/9464621

Change-Id: I54c0ed50a57ac870da91db8589a73a2c792dbd8d
2013-10-25 12:50:04 -07:00
Jesse Hall
c354effe97 Fix handling of undefined TARGET_FORCE_HWC_FOR_VIRTUAL_DISPLAYS
related to b/8316155 - Implement HWComposer 1.3 w/ virtual display support
Change-Id: I2dc8d65a74174aa833cc491264f97f1f2df49307
2013-10-25 17:48:09 +00:00
Jesse Hall
93fcb82361 Merge "Add a boardconfig to force HWC composition of virtual displays" into klp-dev 2013-10-23 22:12:54 +00:00
Jesse Hall
c5807f90f8 Merge "Use implementation-defined format when HWC writes to output buffer" into klp-dev 2013-10-23 22:12:37 +00:00
Michael Wright
3223217aed Only consume touches up until the frame time
When resampling is disabled, it's currently possible to consume
touches after the current frame time. This breaks some guarantees and
could cause unexpected behaviors.

Change-Id: I99908a2cac2df9f795dd4a07188b4451213cf3e4
2013-10-21 23:57:17 +00:00
Andy McFadden
8507586903 Wait for buffers to drain
When a BufferQueue producer disconnects and reconnects, we retain
the previously-queued buffers but empty the slots.  This allows
the number of queued buffers to grow without limit.  The low-memory
killer does not approve.

Bug 11069934

Change-Id: Ia2eaa954c7a3904b54209a3701dba01689e204d8
2013-10-18 23:10:16 +00:00
Naseer Ahmed
6a968462f9 Add a boardconfig to force HWC composition of virtual displays
When this boardconfig is defined, even when all virtual display
composition is done by GLES, the HWC will be forced to copy from the
GLES framebuffer to the output buffer. On some hardware this allows
HWC to do format conversions that would otherwise have to be done by
the consumer, with worse power and/or performance.

Bug: 8316155
Change-Id: If980ecc589f138cef063eafa757f7f748196713e
2013-10-17 13:57:58 -07:00
Jesse Hall
1e27ba234c Use implementation-defined format when HWC writes to output buffer
When GLES isn't writing to the output buffer directly, request an
implementation-defined format with minimal usage flags, leaving the
format choice up to gralloc. On some hardware this allows HWC to do
format conversions during composition that would otherwise need to be
done (with worse power and/or performance) by the consumer.

Bug: 8316155
Change-Id: Iee6ee8404282036f9fd1833067cfe11dbadbf0bf
2013-10-17 11:20:22 -07:00
Ed Heyl
dacd415963 merge in klp-release (no-op) 2013-10-16 17:43:06 -07:00
The Android Automerger
993da5c301 merge in klp-release history after reset to klp-dev 2013-10-15 21:14:09 -07:00
The Android Automerger
288515bf44 merge in klp-release history after reset to klp-dev 2013-10-15 15:55:41 -07:00
Jamie Gennis
0a645cc5a9 SurfaceFlinger: give SF its own vsync phase
This change allows SurfaceFlinger to run at a different vsync phase offset from
that used by external listeners.

Bug: 11175503
Change-Id: I561c53a5659fa6dc1e3e4ae30340f3c1a6adceb4
2013-10-15 14:31:41 -07:00
Jamie Gennis
d1700756ec SurfaceFlinger: Add EventControlThread
This change adds a new thread for calling HWComposer's eventControl
asynchronously.  The DispSync-based vsync approach ends up enabling and
disabling HWComposer's vsync callbacks at arbitrary times, and some HWComposer
implementations do not have these calls optimized.

Bug: 11175503
Change-Id: I719be82bd200b391c61d40863b991c7b59acdfd6
2013-10-15 14:31:41 -07:00
Jesse Hall
247423751f Merge "Disable hardware vsync when blanking the screen" into klp-dev 2013-10-15 19:53:11 +00:00