Commit Graph

47985 Commits

Author SHA1 Message Date
Siva Velusamy a73a97728b gltrace: Add support for tracing running applications.
Currently, to activate OpenGL tracing, an application has to be
start with --opengl-trace option (or have a debug prop set).

This CL adds support for tracing an application which may already
be running. This is implemented as follows:
    - DDMS initiates a JDWP message to the VM indicating that
      opengl traces be enabled.
    - When that message is received, a flag is set that indicates
      that tracing should be enabled.
    - The trace flag is checked during every eglSwap() operation,
      and if it finds that tracing should be active and it isn't,
      then it starts the tracing component.

Change-Id: I3347fe89fc06c7404d7aa9360f4b21e5bf36ebcb
2012-12-20 10:38:47 -08:00
Igor Murashkin 0859b78db2 Merge "utils: fix warnings for unused parameters" 2012-12-12 12:47:29 -08:00
Jamie Gennis 189b270ae4 Merge "stop using a deprecated SurfaceTextureClient ctor" 2012-12-12 12:44:29 -08:00
Nick Kralevich 603b6c1975 Merge "remove unused code." 2012-12-12 12:43:19 -08:00
Jamie Gennis c911ea5318 stop using a deprecated SurfaceTextureClient ctor
Change-Id: I8c8282a0debd551db290dd6849faf272a88c704c
2012-12-12 12:38:36 -08:00
Jamie Gennis 3c1ada9822 Merge "SurfaceTextureClient: remove a deprecated ctor" 2012-12-12 12:16:21 -08:00
Jamie Gennis 4def860030 SurfaceTextureClient: remove a deprecated ctor
Change-Id: Ibf2746fdca26851677cd90199c60eab80f6d0c73
2012-12-12 12:13:54 -08:00
Jamie Gennis c6f04666c2 Merge "SurfaceFlinger: Move GraphicBufferAlloc to libgui" 2012-12-12 10:56:42 -08:00
Nick Kralevich f62d2851a8 remove unused code.
Change-Id: Iacc8b2664a0e404dfa554f223a44126c41581ae4
2012-12-12 10:38:54 -08:00
Jamie Gennis 392edd88cb SurfaceFlinger: Move GraphicBufferAlloc to libgui
This change moves the GraphicBufferAlloc class from SurfaceFlinger to libgui.

Change-Id: Idf31d2004efa2651b60590733f73c4a7b831e8a9
2012-12-11 17:54:29 -08:00
Andy McFadden 97eba8904c Avoid unnecessary texture bind
In SurfaceFlingerConsumer, check to see if native fence sync is
enabled.  If so, defer the texture binding step to Layer::onDraw.

Change-Id: I7d4034a31c0143207eea2509dfa13ef3820f9b8c
2012-12-11 16:26:51 -08:00
Andy McFadden 3325fe16e6 Merge "Refactor SurfaceTexture a bit." 2012-12-11 13:13:32 -08:00
The Android Open Source Project 3a6efcb8ce am 0c6fff72: (-s ours) Reconcile with jb-mr1.1-release - do not merge
* commit '0c6fff72f78e4f80b28ccccac9584255591dd1a2':
2012-12-11 11:57:07 -08:00
The Android Open Source Project 0c6fff72f7 Reconcile with jb-mr1.1-release - do not merge
Change-Id: I946e9036a50464f974bc2d12df9d8b119f86fa00
2012-12-11 11:54:26 -08:00
Andy McFadden bf974abe92 Refactor SurfaceTexture a bit.
Rearranges updateTexImage() so that the SurfaceFlinger-specific
behavior is in a new SurfaceFlingerConsumer subclass.

SurfaceTexture behavior should not be altered.  Instead of
acquire-bind-release we now do acquire-release-bind, but since
it's all done with the lock held there shouldn't be any
externally-visible change.

Change-Id: Ia566e4727945e2cfb9359fc6d2a8f8af64d7b7b7
2012-12-11 09:42:51 -08:00
The Android Automerger 529cb9ed9c merge in jb-mr1.1-release history after reset to jb-mr1.1-dev 2012-12-10 19:33:41 -08:00
Jamie Gennis 0e1e53e376 am 884e3bc2: (-s ours) am 6426bd62: am f53f9c6d: [DO NOT MERGE] GraphicBufferAllocator: stall alloc for async frees
* commit '884e3bc29ed190a856f7562a73548868a7ecef2f':
  [DO NOT MERGE] GraphicBufferAllocator: stall alloc for async frees
2012-12-10 17:59:34 -08:00
Jamie Gennis 884e3bc29e am 6426bd62: am f53f9c6d: [DO NOT MERGE] GraphicBufferAllocator: stall alloc for async frees
* commit '6426bd62676c743b0b5bdc397bcab5c669c6e51f':
  [DO NOT MERGE] GraphicBufferAllocator: stall alloc for async frees
2012-12-10 17:58:33 -08: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
The Android Open Source Project acdbbdcecb am 064d2529: (-s ours) Reconcile with jb-mr1.1-release - do not merge
* commit '064d252918c23cc4c90f8bc62f9ae47ba7afa4d5':
2012-12-10 15:23:22 -08:00
The Android Open Source Project 064d252918 Reconcile with jb-mr1.1-release - do not merge
Change-Id: I97991f966ea0d3a6f3bad87c82d9926d55e6d63c
2012-12-10 15:19:43 -08:00
Jamie Gennis 92573f1ba0 atrace: fix the help string
Change-Id: I19f0093d65d64e669ad71c600c103f4080bfa2c2
2012-12-07 16:29:03 -08:00
Jamie Gennis 46b6bce198 SurfaceFlinger: work around a driver bug
Change-Id: I4490f308b12e9b6fda2ea7255eb19d867d6d008c
2012-12-07 15:43:02 -08:00
Jamie Gennis 6eea6fb259 atrace: clean up tracing option enabling
This change switches atrace to use a table-driven approach to enabling and
disabling options.  It unifies how framework and kernel tracing are enabled,
and causes userland tracing options to be picked up by currently running
processes.

Change-Id: Iba2a3012ca0a67c4defdd076bce597db26e9f539
2012-12-07 14:03:07 -08:00
The Android Automerger 4f9fb2ba97 merge in jb-mr1.1-release history after reset to jb-mr1.1-dev 2012-12-07 13:26:18 -08:00
Jamie Gennis a436799668 am 50f8d285: am d4e70620: am 72c3f7d8: Revert "ConsumerBase: free buffers outside the lock"
* commit '50f8d2856b6644059b31684687842bf9c1f2e814':
  Revert "ConsumerBase: free buffers outside the lock"
2012-12-07 11:09:12 -08:00
Jamie Gennis 50f8d2856b am d4e70620: am 72c3f7d8: Revert "ConsumerBase: free buffers outside the lock"
* commit 'd4e706208c99ff1716fb0009ec867ff29ff04a7c':
  Revert "ConsumerBase: free buffers outside the lock"
2012-12-07 11:07:03 -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 7e590a04fb am 7df16644: (-s ours) am 2d659286: am 2e59d2c3: DO NOT MERGE GraphicBufferAllocator: make frees async
* commit '7df16644c4e5fbb30d011b9098d9c8833f89f0aa':
  DO NOT MERGE GraphicBufferAllocator: make frees async
2012-12-07 11:00:33 -08:00
Jamie Gennis 7df16644c4 am 2d659286: am 2e59d2c3: DO NOT MERGE GraphicBufferAllocator: make frees async
* commit '2d659286b59dc7ff7378fe967f1c425e92155995':
  DO NOT MERGE GraphicBufferAllocator: make frees async
2012-12-07 10:59:29 -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
The Android Open Source Project f3a736e8f0 am 7bd5a76e: (-s ours) Reconcile with jb-mr1.1-release - do not merge
* commit '7bd5a76e2e89ca6d172539ef2dfa43f42f07c001':
2012-12-07 07:56:46 -08:00
The Android Open Source Project 7bd5a76e2e Reconcile with jb-mr1.1-release - do not merge
Change-Id: Id716af997b29350c4600ae941107e96d27f1b0af
2012-12-07 07:53:15 -08:00
Jamie Gennis b5fe96b813 am 05989772: am 3ed2736c: am b21a4e3b: ConsumerBase: free buffers outside the lock
* commit '05989772d5b46cd5328e88d546f04deef39cc3c8':
  ConsumerBase: free buffers outside the lock
2012-12-06 23:24:25 -08:00
The Android Automerger 2fef5c45e7 merge in jb-mr1.1-release history after reset to jb-mr1.1-dev 2012-12-06 19:36:11 -08:00
Jamie Gennis 05989772d5 am 3ed2736c: am b21a4e3b: ConsumerBase: free buffers outside the lock
* commit '3ed2736c10efb2f18062591e308036837d9725a4':
  ConsumerBase: free buffers outside the lock
2012-12-06 19:00:57 -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
Chris Craik 0a73f822b1 Add LinearAllocator
Moving from external/webkit/Source/WebCore/platform/graphics/android/utils/

Change-Id: If91830aa9b207dbc8692b2ca7c4a0b76778addd5
2012-12-05 17:34:54 -08:00
Igor Murashkin 6dbe6d4d0f utils: fix warnings for unused parameters
Change-Id: Ibfb755a30ba2923669060fe0aed019beecbe38a1
2012-12-05 16:10:26 -08:00
Ying Wang ac0de62ba3 Use LOCAL_REQUIRED_MODULES to establish dependency
instead of using the tricky order-only dependency on a phony target
module name.

Change-Id: I691f2d352d1bd7f619bdb0b75070709e1b8222c0
2012-12-04 12:04:44 -08:00
Alex Ray 653078f652 utils: clarify scoped tracing functionality
ScopedTrace objects were being used in place of ATRACE_NAME because of a
misunderstanding of it's function.  Cleared up documentation for usage.

Also explicitly use global namespace for sysprop callback.

Change-Id: I7c248b486b614ccdb841659ca0dcfc644fda670a
2012-11-30 19:54:00 -08:00
Jesse Hall c342044368 Mark extensions 'Complete', correct some stale version info
Change-Id: I46ccd8eaeacc647399a5531e262c1b01e0a080b0
2012-11-29 16:13:10 -08:00
Chad Jones 4b3c7feb65 Remove copy of atrace imported to wrong location 2012-11-29 15:13:36 -08:00
Chad Jones 6ce1093b8e Merge branch 'master' of https://googleplex-android.googlesource.com/a/platform/frameworks/native 2012-11-29 14:51:39 -08:00
Chad Jones 797105b9b5 Merge "Add the atrace utility." 2012-11-29 14:50:17 -08:00
Chad Jones 9a57c5c69b Merge atrace/ from platform/system/extras to cmds/atrace/ 2012-11-29 14:35:18 -08:00