Commit Graph

47276 Commits

Author SHA1 Message Date
Jean-Baptiste Queru
50d36d5836 am 75bcd737: am 4ddcb758: (-s ours) am 9ef024ec: (-s ours) Reconcile with jb-mr1-release - do not merge
* commit '75bcd737770f85114673c4411b8e2ecc0dd32bdf':
2013-03-11 13:00:44 -07:00
Jean-Baptiste Queru
75bcd73777 am 4ddcb758: (-s ours) am 9ef024ec: (-s ours) Reconcile with jb-mr1-release - do not merge
* commit '4ddcb75861cfb2835fcc20f2071222d2f55450ba':
2013-03-11 12:41:50 -07:00
Jean-Baptiste Queru
4ddcb75861 am 9ef024ec: (-s ours) Reconcile with jb-mr1-release - do not merge
* commit '9ef024ec8ae0318c89cc65dc0591aa40695393fc':
2013-03-11 12:23:09 -07:00
Jean-Baptiste Queru
9ef024ec8a Reconcile with jb-mr1-release - do not merge 2013-03-11 12:19:30 -07:00
Jamie Gennis
6426bd6267 am f53f9c6d: [DO NOT MERGE] GraphicBufferAllocator: stall alloc for async frees
* commit 'f53f9c6d3668490f6c68f5c094c28f645c1b3da3':
  [DO NOT MERGE] GraphicBufferAllocator: stall alloc for async frees
2012-12-10 17:57:40 -08:00
Jamie Gennis
f53f9c6d36 [DO NOT MERGE] GraphicBufferAllocator: stall alloc for async frees
This change makes GraphicBufferAllocator::alloc wait for pending async frees to
complete before attempting to allocate a gralloc buffer if there are more than
8 pending async frees.

Bug: 7696861
Change-Id: I1fae86e13edefcaa153b8ce9fd057f335716059e
2012-12-10 17:19:37 -08:00
Jamie Gennis
d4e706208c am 72c3f7d8: Revert "ConsumerBase: free buffers outside the lock"
* commit '72c3f7d88160b7c279f90f0efe3c1cb12cd140ae':
  Revert "ConsumerBase: free buffers outside the lock"
2012-12-07 11:04:51 -08:00
Jamie Gennis
2d659286b5 am 2e59d2c3: DO NOT MERGE GraphicBufferAllocator: make frees async
* commit '2e59d2c3fdc0bcfedbe9c5d04d7acadc3eff8887':
  DO NOT MERGE GraphicBufferAllocator: make frees async
2012-12-07 10:58:22 -08:00
Jamie Gennis
72c3f7d881 Revert "ConsumerBase: free buffers outside the lock"
This reverts commit b21a4e3b5f.
2012-12-07 10:33:07 -08:00
Jamie Gennis
2e59d2c3fd DO NOT MERGE GraphicBufferAllocator: make frees async
This change makes GraphicBufferAllocator::free queue a job to another thread to
perform the actual free operation.  This prevents potentially slow free
operations from blocking rendering.

Bug: 7675940
Change-Id: Id61099d66bb4c3949d04184e0d7f192ac18076b4
2012-12-07 10:32:13 -08:00
Jamie Gennis
3ed2736c10 am b21a4e3b: ConsumerBase: free buffers outside the lock
* commit 'b21a4e3b5f7f07ed160ca6e1809313e2a8e2a6a4':
  ConsumerBase: free buffers outside the lock
2012-12-06 18:37:24 -08:00
Jamie Gennis
b21a4e3b5f ConsumerBase: free buffers outside the lock
This change makes ConsumerBase::onBuffersReleased hold a reference to all its
gralloc buffers until after the mutex is unlocked.  This prevents slow
gralloc::free calls from causing lock contention with rendering threads.

Bug: 7675940
Change-Id: I0ec805d1b612afeeecfffec03f982371d27d93be
2012-12-06 18:17:35 -08:00
Mathias Agopian
98cbec81be am efd614b8: Merge "make transform hint multi-display aware" into jb-mr1.1-dev
* commit 'efd614b869e952792b009db4ab54f3bb4375d198':
  make transform hint multi-display aware
2012-11-27 16:08:43 -08:00
Mathias Agopian
efd614b869 Merge "make transform hint multi-display aware" into jb-mr1.1-dev 2012-11-27 16:07:04 -08:00
Andy McFadden
a90173d86d am 762a6d86: Merge "DO NOT MERGE - native_fence_sync: fix an enum name" into jb-mr1.1-dev
* commit '762a6d86de63ad319884ab6e666be6ad0d75996e':
  DO NOT MERGE - native_fence_sync: fix an enum name
2012-11-27 11:31:44 -08:00
Andy McFadden
762a6d86de Merge "DO NOT MERGE - native_fence_sync: fix an enum name" into jb-mr1.1-dev 2012-11-27 07:36:50 -08:00
Jamie Gennis
378787cf62 DO NOT MERGE - native_fence_sync: fix an enum name
This change replaces all references to the "EGL_NO_NATIVE_FENCE_ANDROID" enum
with "EGL_NO_NATIVE_FENCE_FD_ANDROID".

Bug: http://code.google.com/p/android/issues/detail?id=40295

(cherry-pick from master)

Change-Id: Ie25d4ab9721d8b69b8d4afcf18e902ef8e3ad911
2012-11-26 14:26:31 -08:00
Mathias Agopian
8430095879 make transform hint multi-display aware
if a layer is not mirrored, we now use its display
as the source for the transfrom hint calculation
instead of always using the default (main) display.

this change does two thing:
1) we make updateTransformHint take a DisplayDevice
   as a parameter instead of hard-coding the
   main display.

2) each time we do a transaction that could change
   the hint, we go through all layers and
   figure out which display should be used for their
   transform hint.

Bug: 7599344
Change-Id: I9b04a95e6c372dd770bacf81d8ef6f8e31b87b83
2012-11-21 16:03:52 -08:00
Siva Velusamy
c859084ca3 am a9a4cd48: gltrace: Make sure device is debuggable.
* commit 'a9a4cd4806ea5b2cf525c8ab4c6604d78c6e3f8f':
  gltrace: Make sure device is debuggable.
2012-11-20 19:59:23 -08:00
Siva Velusamy
a9a4cd4806 gltrace: Make sure device is debuggable.
(cherry picked from commit 6482fa4db0)

Change-Id: I205aabcab1932025c12e7ba3d1b3cf94684f6758
2012-11-20 15:55:35 -08:00
Mathias Agopian
594a8773c1 am 764c197c: fix typo that broke all the builds
* commit '764c197c6fc2bf10b038c33b320a4e95594d52d8':
  fix typo that broke all the builds
2012-11-19 17:04:44 -08:00
Mathias Agopian
764c197c6f fix typo that broke all the builds
Bug: 7584338
Change-Id: Ieb8c27a544ac583af9aa1e0376e33a673d2d9673
2012-11-19 16:50:24 -08:00
Mathias Agopian
92c3a307d3 am 3e095b25: workaround: don\'t reset compositionType to HWC_FRAMEBUFFER [DO NOT MERGE]
* commit '3e095b251503d71bea04d6b707e8188cd30034e2':
  workaround: don't reset compositionType to HWC_FRAMEBUFFER [DO NOT MERGE]
2012-11-19 15:22:04 -08:00
Mathias Agopian
3e095b2515 workaround: don't reset compositionType to HWC_FRAMEBUFFER [DO NOT MERGE]
This workaround a HWC HAL issue in Nexus 7, which causes videos and live
wallpapers to animate slowly.

Bug: 7563862
Change-Id: I16ad85317e3e7f47f005e7397357c14186b0a13d
2012-11-19 15:07:33 -08:00
Mathias Agopian
1d3612f11c am 2a8c49eb: fix an out-of-bounds memory access
* commit '2a8c49eb5dd51b2e60c9a78bea00870867d91c03':
  fix an out-of-bounds memory access
2012-11-19 14:36:43 -08:00
Mathias Agopian
2a8c49eb5d fix an out-of-bounds memory access
in this particular case, this OOB is always harmless
(and that's why it didn't get fixed from MR1), however,
it interfers with valgrind debugging.

Change-Id: Ic977e03287e59c4b124a89146c9023bd0cb540a8
2012-11-15 17:19:48 -08:00
Mathias Agopian
f9730c3b96 am ee932d0a: Reset compositionType to HWC_FRAMEBUFFER before calling prepare()
* commit 'ee932d0ad1a16cc93b4bd9eaf9cb3cc756fb2dfc':
  Reset compositionType to HWC_FRAMEBUFFER before calling prepare()
2012-11-14 16:56:35 -08:00
Mathias Agopian
ee932d0ad1 Reset compositionType to HWC_FRAMEBUFFER before calling prepare()
Honor the documentation. this broke in JB-MR1.

Change-Id: I841a93b409fc940374bc748c4e143d82a192669c
2012-11-14 14:41:42 -08:00
Andy McFadden
434e21bfd6 am 3fdeb48e: Reduce emulator logspam
* commit '3fdeb48e3c89be15fe3b539a26ec9a3cf28c898c':
  Reduce emulator logspam
2012-11-09 22:41:48 -08:00
Andy McFadden
3fdeb48e3c Reduce emulator logspam
The emulator doesn't support systrace, but we should point that out
at most once per process.

Bug 7436352

Change-Id: I06b2c1ea0df6c02c11cd2496423c337f8d7c62a1
2012-11-08 16:40:11 -08:00
Dmitry Shmidt
4bacaec4cd am 0b2c9268: bugreport: Add /proc/interrupts dump
* commit '0b2c9268265e9a165551eaa66cb461d3fab8b564':
  bugreport: Add /proc/interrupts dump
2012-11-07 14:37:14 -08:00
Dmitry Shmidt
61db92e727 am c11f56e5: bugreport: Add wlan FW counters dump for bcmdhd
* commit 'c11f56e5615c5d388c072705322df5bcf22c2012':
  bugreport: Add wlan FW counters dump for bcmdhd
2012-11-07 14:37:11 -08:00
Dmitry Shmidt
0b2c926826 bugreport: Add /proc/interrupts dump
Bug: 7301178

Change-Id: Ifad3b981ac904d4637d69dfc223d5bb2c9d80bda
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2012-11-07 11:09:46 -08:00
Dmitry Shmidt
c11f56e561 bugreport: Add wlan FW counters dump for bcmdhd
Bug: 7494877

Change-Id: I4d24dbcf7596777ec02ab1312c2ab996ba7688f1
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2012-11-07 10:42:05 -08:00
The Android Open Source Project
20152ac797 am d8e8e662: Reconcile with jb-mr1-factory-release jb-mr1-release - do not merge
* commit 'd8e8e66220cd71486a3b545096a1cdc298dee5fd':
  partially implement external display clipping
  Always set vertex alpha when drawing screenshot layers
  SurfaceFlinger: add animation transactions
  ugly, temporary, workaroung for a problem where a binder thread spins forever
  make sure we don't call into the HWC HAL when not needed
  Fix crashes after HDMI disconnect
  Fix issue #7271589: Cannot set Ocean HD live wallpaper
  Revert "Compatibility work around for bad graphics driver dependency."
  only abort when errors happen on the main display
  Check that HWC exists before trying to use it
  Always reset layer acquireFenceFd after commit
  fix a problem where  all hwc layers would have the SKIP flags set
  we were sometimes not setting fences properly
  A vendor ril depends on a native screen shot code.
  Revert "Added display initialization method"
  fix various issues in SF's EventThread
  Revert "SurfaceTexture: inherit from ConsumerBase"
  we were mistakenly optimizing out SF's main transactions in some cases
  Revert "Minimal changes to support multi-display HWC"
2012-11-06 12:20:29 -08:00
The Android Open Source Project
d8e8e66220 Reconcile with jb-mr1-factory-release jb-mr1-release - do not merge
Change-Id: I219247f1b0f5d87b4144dc1535039e93fc636a94
2012-11-06 12:17:20 -08:00
The Android Automerger
f67623632a merge in jb-mr1-release history after reset to jb-mr1-dev 2012-11-05 18:38:55 -08:00
Mathias Agopian
e70fbe8b32 am 02b95105: fix transitions from hwc to GLES composition
* commit '02b95105754b1859a97e234b79f41489a4677c20':
  fix transitions from hwc to GLES composition
2012-11-05 18:15:56 -08:00
Mathias Agopian
02b9510575 fix transitions from hwc to GLES composition
If we switched from HWC to GLES but the dirty region was empty
(could happen if the dirty region is outside of the screen for instance), we
need to force a full screen composition.

In this change we ignore the dirty region for the purpose of
rejecting the whole update and we rely on the fact that it will later
be expanded to the whole screen. This was the least risky fix.

Bug: 7467760, 7452931
Change-Id: I2132f2f963b00a3ce7150adadb107b0367b3862e
2012-11-05 17:50:57 -08:00
The Android Automerger
f9218b8591 merge in jb-mr1-release history after reset to jb-mr1-dev 2012-10-30 08:52:44 -07:00
Colin Cross
742801c625 am 2281af96: dumpstate: add kernel memory fragmentation unusable index
* commit '2281af967dd840aade7bc55b19ea7df0e6da36f2':
  dumpstate: add kernel memory fragmentation unusable index
2012-10-29 17:08:14 -07:00
Colin Cross
2281af967d dumpstate: add kernel memory fragmentation unusable index
Dump /d/extfrag/unusable_index in bugreports.  It shows the
percentage of memory in each zone that is not available for
allocations for each order.

Change-Id: I2af6680cb609887ea7b3d6107d1aa88bd0206b52
2012-10-28 22:41:06 -07:00
Mathias Agopian
1b10e25356 partially implement external display clipping
we perform external display clipping only on the GL
side (ie: not done on the h/w composer side, which is
harder and would be too risky). in practice this means
that WFD will be clipped properly, while HDMI *may* or
may not depending on how hwc is used.

Bug: 7149437
Change-Id: I92d4d04220db72b6ffb134c7fa7a93af569723a5
2012-10-25 21:42:41 -07:00
Jason Simmons
78b4977efd Merge "Ensure that Vector::erase() returns a valid iterator" into jb-mr1-aah-dev 2012-10-25 18:03:50 -07:00
Jason Simmons
689925caf4 Ensure that Vector::erase() returns a valid iterator
Vector::erase may reallocate the Vector's storage while removing an element.
However, erase() calls begin() before calling removeItemsAt(), thus caching
a pointer the the Vector's old storage.  If the storage is reallocated,
the iterator returned by erase() will be based on the old storage pointer
and will thus be invalid.

Change-Id: I2450c55fd418e6b1c558a4ca7c024573abbaa098
2012-10-25 15:58:43 -07:00
The Android Automerger
faece69c18 merge in jb-mr1-release history after reset to jb-mr1-dev 2012-10-25 13:42:23 -07:00
Mathias Agopian
f45c510009 partially implement external display clipping
we perform external display clipping only on the GL
side (ie: not done on the h/w composer side, which is
harder and would be too risky). in practice this means
that WFD will be clipped properly, while HDMI *may* or
may not depending on how hwc is used.

Bug: 7149437
Change-Id: I92d4d04220db72b6ffb134c7fa7a93af569723a5
2012-10-25 12:42:42 -07:00
Dave Burke
04075569b5 Revert "Revert "put back the unused virtuals in Vector<>""
This reverts commit 225c66a48c

Change-Id: If31a04b81052cbc7dd7bf237c07107c33066d03d
2012-10-25 11:40:51 -07:00
The Android Automerger
12f2c395c6 merge in jb-mr1-release history after reset to jb-mr1-dev 2012-10-22 16:42:08 -07:00
Mathias Agopian
d17e3b5f6c prevent a client from crashing surfaceflinger
a misbehaving or malicious client could cause SF to crash
by providing a "fake" IInterface. we now check the
IInterface we get is our own and local.

Bug: 7278879
Change-Id: Ia19d05902d4b2385c5a16416148378d4998833fd
2012-10-22 14:54:23 -07:00