OSDN Git Service
Michael Wright [Fri, 12 Jun 2015 12:25:11 +0000 (13:25 +0100)]
Send cancelation events to monitors when injection fails.
Bug:
20649729
Change-Id: I46cd14ac1f040d404c0b1581b38fa07a944e5fb9
Michael Wright [Wed, 10 Jun 2015 14:26:13 +0000 (15:26 +0100)]
Only log dropped input when disabled for the first event.
Bug:
19851495
Change-Id: I8cb8076723c1ca1732c3bc37f283d8eb48b7bee0
Lajos Molnar [Tue, 2 Jun 2015 04:13:47 +0000 (21:13 -0700)]
fix build: media: add back legacy name for VideoGrallocMetadata
Change-Id: Ie101eb355887072b2ab92f489b86115a40952bd1
Lajos Molnar [Tue, 2 Jun 2015 03:32:00 +0000 (03:32 +0000)]
Merge "media: refine kMetadataBufferTypes" into mnc-dev
Ruben Brunk [Tue, 2 Jun 2015 01:48:21 +0000 (01:48 +0000)]
Merge "Track camera and flashlight usage in battery stats." into mnc-dev
Christopher Tate [Tue, 2 Jun 2015 01:05:46 +0000 (01:05 +0000)]
Merge "Disregard alleged binder entities beyond parcel bounds" into mnc-dev
Ruben Brunk [Wed, 27 May 2015 00:30:11 +0000 (17:30 -0700)]
Track camera and flashlight usage in battery stats.
Bug:
15986092
Change-Id: I272ec070113a0bfc41c637c45a6e1a2ab346e87b
Dan Stoza [Mon, 1 Jun 2015 20:59:15 +0000 (13:59 -0700)]
libgui: Propagate error by clearing sp<GB>
Clears the sp<GraphicBuffer> returned by createGraphicBuffer when there
is an error during unflattening.
Bug:
21498231
Change-Id: I886da4474fc06853cc59188d62044b7d7549126b
Dan Stoza [Mon, 1 Jun 2015 16:30:46 +0000 (16:30 +0000)]
Merge "SF: Reduce resync samples without present" into mnc-dev
Dan Stoza [Mon, 1 Jun 2015 16:30:31 +0000 (16:30 +0000)]
Merge "libui: Apply GRALLOC_USAGE_ALLOC_MASK during alloc" into mnc-dev
Lajos Molnar [Sat, 16 May 2015 03:31:57 +0000 (20:31 -0700)]
media: refine kMetadataBufferTypes
- Fix kMetadataBufferTypeANWBuffer, so that it only relies on
system/core structures. This resolves potential linker issues if
the framework changes.
- Add fence to be passed with kMetadataBufferTypeANWBuffer.
- Add utility structures to access the metadata buffer layouts.
Related-bug:
19614055
Bug:
13222807
Bug:
12386081
Change-Id: I608958fd394b08cc3396bcbd5cdd350b87bc66f3
Michael Lentine [Fri, 29 May 2015 23:05:36 +0000 (16:05 -0700)]
Fix libgui crop matrix test.
On devices that have the crop image extension the crop is not applied to the
transform matrix so we have to expect different results in this case.
Change-Id: If62dec1111fb77c9fa2c4332d121665960ce0216
Dan Stoza [Fri, 29 May 2015 20:00:23 +0000 (13:00 -0700)]
SF: Reduce resync samples without present
Reduces the number of resync samples that DispSync will attempt to
collect without an intervening present from 12 to 4. The former value
was causing excessive power draw for some vendors' implementations, and
reducing it doesn't seem to harm anything.
Bug:
20724456
Change-Id: Ifd6e0490be67756ed001d509a38e8a36953b4618
Dan Stoza [Fri, 29 May 2015 19:48:04 +0000 (12:48 -0700)]
libui: Apply GRALLOC_USAGE_ALLOC_MASK during alloc
Applies GRALLOC_USAGE_ALLOC_MASK to the incoming usage bits before
calling alloc on the gralloc module. This filters out the new flag
GRALLOC_USAGE_FOREIGN_BUFFERS, which is used to send a hint to the
producer, but which does not affect the allocation of buffers.
Bug:
19801661
Change-Id: Ia37a3eddba2e97598e50ac3e10877430adfa9247
Michael Lentine [Fri, 29 May 2015 00:43:06 +0000 (17:43 -0700)]
Check that width and height parameters are small.
The product of width and height should be less than UINT32_MAX (in practice
smaller). Adding the checks prevents overflows when allocating buffers.
Bug:
20726612
Change-Id: I9769edf0688a9bfe69906d49fa0540cadf4c49b0
Michael Lentine [Thu, 28 May 2015 23:48:08 +0000 (16:48 -0700)]
Revert "Modify EGL to disconnect the window when the surface gets destroyed."
This reverts commit
00699fa64197cc72a160d69e1f0003cdd43dc136.
Alistair Strachan [Fri, 22 May 2015 21:10:09 +0000 (14:10 -0700)]
Fix EGL shim extension injection for GL ES 3 drivers.
The Android EGL shim injects GL_EXT_debug_marker into the ES driver
EXTENSIONS string for the OpenGL ES 1.x and 2.0/3.0/3.1 drivers if
the extension is not already provided. This feature is used by
GLES_trace.
In Open GL ES 3.0 it became possible to query an indexed version of
the EXTENSIONS string via GetStringi(). NUM_EXTENSIONS Gets were
also added to the specification (taken from Open GL).
If the shim does not have to inject the extension, then there is no
problem, as glGetString() and glGetStringi() / NUM_EXTENSIONS will
be consistent. However, if the Android EGL shim injects the
extension, NUM_EXTENSIONS and GetStringi() will report one less
extension than is really available.
Consistency between these methods is tested by the dEQP framework
with the dEQP-GLES3.functional.state_query.string.extensions test.
If the driver does not provide GL_EXT_debug_marker, this test
fails.
This change wraps all of the affected entry points so that the
wrapped driver extensions are never visible directly to dEQP,
eliminating the inconsistency.
Christopher Tate [Thu, 28 May 2015 00:53:02 +0000 (17:53 -0700)]
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
Dan Stoza [Mon, 20 Oct 2014 22:46:09 +0000 (15:46 -0700)]
SF: Skip render-to-texture for color transforms
In cases where SurfaceFlinger is applying a color matrix (usually for
accessibility features), we previously would perform a render-to-
texture for the initial composition, and then apply the matrix during
a copy to the framebuffer. This changes that behavior to just apply the
matrix during composition without a render-to-texture pass.
This may result in a perceived change of the image in cases with alpha
blending, since the blending is performed at a different stage of the
pipeline and the system effectively performs non-linear blends.
However, neither this nor the prior render-to-texture pass is strictly
correct in that regard, and this approach is less error-prone and
likely faster.
Change-Id: I2110ff0374f61d76df7b087dde8a1ed98990440c
Michael Lentine [Wed, 27 May 2015 17:39:55 +0000 (17:39 +0000)]
Merge "Add hotplug support for primary display." into mnc-dev
Dan Stoza [Tue, 26 May 2015 20:22:27 +0000 (13:22 -0700)]
libgui: Fix surface damage on rotated buffers
Flips the width and height when the buffer comes in with a 90 degree
rotation so that performing the Y-flip from GL works correctly.
Bug:
20761426
Change-Id: I41c9edc8549c6cbdb534277b996ff20c59034582
Michael Lentine [Fri, 22 May 2015 20:16:10 +0000 (20:16 +0000)]
Merge "Fix surfaceflinger tests." into mnc-dev
Michael Lentine [Fri, 22 May 2015 20:16:01 +0000 (20:16 +0000)]
Merge "Fix libgui tests." into mnc-dev
Michael Lentine [Wed, 13 May 2015 01:04:26 +0000 (18:04 -0700)]
Add hotplug support for primary display.
When the primary is connected/disconnected on tv devices HWComposer updates
it's display parameters but doesn't destroy or recreate the display.
Bug:
18698244
Change-Id: I759c8f75d3e3a7462b85eb51973fb5072b71a702
Michael Lentine [Thu, 21 May 2015 20:48:24 +0000 (13:48 -0700)]
Fix surfaceflinger tests.
Update the screenshot code and add correct return values to surface flinger's
capturescreenshot function.
Buf:
18138368
Change-Id: Ieb42d289088589f941502fbd69da7aa939265e07
Michael Lentine [Tue, 19 May 2015 22:23:43 +0000 (15:23 -0700)]
Fix libgui tests.
Update IGraphicsBufferProducerTest to the new maximum enum value which is now
NATIVE_WINDOW_BUFFER_AGE. Update SurfaceTextureGLToGL_test to use the correct
counts for GraphicsBuffer refs.
Buf:
18138368
Change-Id: Ie2f7e00b414d63100b16944e3ab36b1ffceecd57
Chong Zhang [Fri, 22 May 2015 19:04:05 +0000 (19:04 +0000)]
Merge "fix BufferItem flatten/unflatten alignment" into mnc-dev
Chong Zhang [Fri, 22 May 2015 17:54:25 +0000 (10:54 -0700)]
fix BufferItem flatten/unflatten alignment
bug:
21370100
Change-Id: Ia3991dc591c176bdbd1d78d1804aa22777525b62
Adam Powell [Mon, 18 May 2015 21:30:15 +0000 (21:30 +0000)]
Merge "Adding round qualifier constant to native API." into mnc-dev
Michael Lentine [Mon, 18 May 2015 21:29:39 +0000 (21:29 +0000)]
Merge "Refactor ConsumerBase and it's derived classes." into mnc-dev
Michael Lentine [Mon, 18 May 2015 20:41:23 +0000 (13:41 -0700)]
Refactor ConsumerBase and it's derived classes.
Move setDefaultBufferSize, setDefaultBufferFormat, and
setDefaultBufferDataSpace into ConsumerBase and remove them from
CpuConsumer and BufferItemConsumer.
Bug:
19977701
Change-Id: Ic68992464c5da6da7a41c4063a53029a69efcd1b
Elliott Hughes [Sat, 16 May 2015 00:05:40 +0000 (17:05 -0700)]
Don't use TEMP_FAILURE_RETRY on close in frameworks/native.
Bug: http://b/
20501816
Change-Id: Id13a62f02243c6c4831e2f47944dc34fa822f5b6
(cherry picked from commit
997abb668b9248c2174c6cf169a0b7c6a02fd2cb)
Adam Lesinski [Thu, 14 May 2015 21:28:32 +0000 (14:28 -0700)]
Adding round qualifier constant to native API.
Change-Id: I43e6c029412d0ed1d345c16fdce90e2879c52a8e
John Reck [Fri, 15 May 2015 17:00:34 +0000 (10:00 -0700)]
Fix async_stop
Change-Id: I68a258cf71cfcd999bbd568ab3c96255c11bec41
John Reck [Thu, 14 May 2015 23:27:45 +0000 (23:27 +0000)]
Merge "Add ConsumerBase::isAbandoned" into mnc-dev
John Reck [Thu, 14 May 2015 22:55:11 +0000 (15:55 -0700)]
Add ConsumerBase::isAbandoned
Bug:
20105644
Change-Id: I21526b5397ea51a15500c44a99daa9d75fc4ea67
Dan Stoza [Thu, 14 May 2015 17:42:20 +0000 (17:42 +0000)]
Merge "SurfaceFlinger: Handle EGL errors more cleanly" into mnc-dev
Dan Stoza [Thu, 14 May 2015 16:27:25 +0000 (09:27 -0700)]
SurfaceFlinger: Handle EGL errors more cleanly
Adds some more safety checking for cases where we get an error while
trying to create the EGLImage. The checking puts the Layer into a
failed state after detecting an error, since the shadow queue may no
longer be synchronized.
Bug:
20957332
Change-Id: I68b4c40eab3e58731b875ed5752f2c7d17f14bcb
Michael Lentine [Thu, 14 May 2015 16:39:27 +0000 (16:39 +0000)]
Merge "Modify EGL to disconnect the window when the surface gets destroyed." into mnc-dev
Michael Wright [Thu, 14 May 2015 15:31:10 +0000 (15:31 +0000)]
Merge changes from topic 'button_actions' into mnc-dev
* changes:
Fix input tests to work with new MotionEvent member
Revert "Revert "Add new MotionEvent actions for button press and release.""
Michael Wright [Thu, 14 May 2015 15:29:13 +0000 (16:29 +0100)]
Fix input tests to work with new MotionEvent member
Change-Id: I0dde0f91f693903f26edc116b5dbcbf33bac2b93
Michael Wright [Thu, 14 May 2015 13:48:03 +0000 (14:48 +0100)]
Revert "Revert "Add new MotionEvent actions for button press and release.""
This reverts commit
70b41ef580644fd0fe6fa9b8ac7e4a745cfb6db3.
Michael Wright [Thu, 14 May 2015 13:47:07 +0000 (13:47 +0000)]
Merge "Revert "Add new MotionEvent actions for button press and release."" into mnc-dev
Michael Wright [Thu, 14 May 2015 13:46:17 +0000 (14:46 +0100)]
Revert "Add new MotionEvent actions for button press and release."
This reverts commit
48a8a0e4322969e1551536d6183af3a1faa2240b.
Michael Wright [Thu, 14 May 2015 13:31:24 +0000 (13:31 +0000)]
Merge "Add new MotionEvent actions for button press and release." into mnc-dev
Michael Wright [Mon, 11 May 2015 18:52:27 +0000 (19:52 +0100)]
Add new MotionEvent actions for button press and release.
Introduce ACTION_BUTTON_PRESS and ACTION_BUTTON_RELEASE as actions to
signal a button press or release. If these actions happen
simulanteously with a DOWN or UP event then they're explicitly
ordered to happen after the DOWN or preceding the UP in order to send
them to the most recently targeted view.
Also, introduce new stylus button constants that differ from the
constants we use for mouse buttons.
Bug:
20704355
Change-Id: Ib960a5004db5429ad2fc8db020704773e2978327
Michael Lentine [Wed, 23 Jul 2014 17:19:41 +0000 (10:19 -0700)]
Modify EGL to disconnect the window when the surface gets destroyed.
Bug:
14445579
Change-Id: I1d263ff6cffcb6e448761fca7ca4b06466ad65aa
Dmitriy Ivanov [Wed, 13 May 2015 22:11:17 +0000 (22:11 +0000)]
Merge "Switch libGLESv1_CM/libGLESv2 to hash-style=both" into mnc-dev
Dmitriy Ivanov [Wed, 13 May 2015 22:05:07 +0000 (15:05 -0700)]
Switch libGLESv1_CM/libGLESv2 to hash-style=both
Old version of unity uses custom linker to link
itself and libmono. The custom linker does not
support lookups with gnu-hash style. Switching
libraries needed by libunity.so to --hash-style=both
fixes this problem.
Bug: http://b/
20093774
Change-Id: I2a4887cf7a5ee80a8976ecaad54b52dc62518e55
Hiroshi Yamauchi [Wed, 13 May 2015 18:37:56 +0000 (18:37 +0000)]
Merge "Replace JNI primitive array critical calls with non-critical ones." into mnc-dev
Michael Wright [Wed, 13 May 2015 16:56:05 +0000 (16:56 +0000)]
Merge "Use previous pressure value if the current fusion data is zero." into mnc-dev
Michael Wright [Wed, 13 May 2015 16:55:47 +0000 (16:55 +0000)]
Merge "Synthesize events for pressure and button changes." into mnc-dev
Dan Stoza [Wed, 13 May 2015 16:34:05 +0000 (16:34 +0000)]
Merge "Fix PTS handling for buffer replacement" into mnc-dev
Adam Lesinski [Wed, 13 May 2015 03:38:35 +0000 (03:38 +0000)]
Merge "Verify that the native handle was created" into mnc-dev
Adam Lesinski [Wed, 13 May 2015 00:35:48 +0000 (17:35 -0700)]
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
Dan Stoza [Tue, 12 May 2015 21:57:27 +0000 (21:57 +0000)]
Merge "libgui: Always allow allocation on connect" into mnc-dev
Dan Stoza [Tue, 12 May 2015 21:55:15 +0000 (14:55 -0700)]
libgui: Always allow allocation on connect
This change places BufferQueue into a predictable state where
allocation is allowed whenever a producer connects. This allows clients
to disconnect and reconnect without having to worry about being locked
out of allocation.
Bug:
20554276
Change-Id: Ic0f920a3d4204f2cafdfa69e46f3bb4204571d7e
Hiroshi Yamauchi [Sat, 9 May 2015 00:54:55 +0000 (17:54 -0700)]
Replace JNI primitive array critical calls with non-critical ones.
The glgen part.
Bug:
19235243
Change-Id: I69dfa84f15366808b964517c1ba270ddeb3c5940
Dan Stoza [Tue, 12 May 2015 19:56:16 +0000 (12:56 -0700)]
Fix PTS handling for buffer replacement
This changes the way that SurfaceFlinger's shadow buffer management
works such that instead of tracking the size of the shadow queue in the
BufferQueue, SF tracks the last frame number it has seen, and passes
that into the acquireBuffer call. BufferQueueConsumer then ensures that
it never returns a buffer newer than that frame number, even if that
means that it must return PRESENT_LATER for an otherwise valid buffer.
Change-Id: I3fcb45f683ed660c3f18a8b85ae1f8a962ba6f0e
Aravind Akella [Tue, 12 May 2015 19:12:42 +0000 (19:12 +0000)]
Merge "Improve logging in SensorService dump output." into mnc-dev
Aravind Akella [Thu, 7 May 2015 19:40:52 +0000 (12:40 -0700)]
Improve logging in SensorService dump output.
Maintain a per sensor circular buffer of last 10 sensor_events and the wall clock time
at which each event is received.
Change-Id: Ia50c825ab5a7aaf0932ce7dce7ac8b9be7071e77
Jesse Hall [Tue, 12 May 2015 17:31:23 +0000 (17:31 +0000)]
Merge "libEGL: whitelist the EGL_KHR_create_context_no_error extension" into mnc-dev
Jesse Hall [Fri, 24 Apr 2015 08:40:42 +0000 (01:40 -0700)]
libEGL: whitelist the EGL_KHR_create_context_no_error extension
Allow EGL implementations to expose the
EGL_KHR_create_context_no_error extension if they wish.
https://www.khronos.org/registry/egl/extensions/KHR/EGL_KHR_create_context_no_error.txt
Change-Id: I3290ccc2a69a1fa0b00ec3f1aa4f876906c64bfb
Michael Wright [Thu, 23 Apr 2015 16:39:53 +0000 (17:39 +0100)]
Use previous pressure value if the current fusion data is zero.
Occasionally we'll receive the stylus up signal (pressure = 0) before
we receive the touch screen up signal. Rather than giving pointer a
pressure value of 0 (which is one of the signals of hovering) or
falling back to the touchscreen pressure values (which would make for
an inconsistent stream), use the previous pressure value which should
always be non-zero for a stream of fused data.
Bug:
20449776
Change-Id: I71eb97e7c4ea53e42b0eb54fc1f8ae7f89aad9d1
Michael Wright [Tue, 21 Apr 2015 18:02:58 +0000 (19:02 +0100)]
Synthesize events for pressure and button changes.
Even when there isn't movement on the touchscreen we should produce
events for pressure and button state changes generated by external
stylii.
Change-Id: I9fd7ba85902d5d6bfb28d5e5ff5d8f340a94c2bf
Dan Stoza [Mon, 11 May 2015 22:33:01 +0000 (15:33 -0700)]
libgui: Hook up onFrameReplaced
This completes the plumbing from ConsumerListener::onFrameReplaced into
SurfaceFlinger (and other consumers that may care).
Change-Id: I376e78ace95d6748e8662e6b4d47c0dfa697a300
Aravind Akella [Sat, 9 May 2015 00:17:40 +0000 (00:17 +0000)]
Merge "Fix the arguments to memcpy." into mnc-dev
Aravind Akella [Fri, 8 May 2015 22:59:23 +0000 (15:59 -0700)]
Fix the arguments to memcpy.
Change-Id: Ieaee26f46f43a9d412537047566178985370198b
Dan Stoza [Fri, 8 May 2015 16:32:26 +0000 (16:32 +0000)]
Merge "SF: Apply pending transactions to new sidebands" into mnc-dev
Pat Tjin [Thu, 7 May 2015 20:57:48 +0000 (20:57 +0000)]
Merge "surfaceflinger: Fix range check for getFormat" into mnc-dev
Ajay Dudani [Sun, 3 May 2015 18:44:55 +0000 (11:44 -0700)]
surfaceflinger: Fix range check for getFormat
Fix potential buffer overflow error in getFormat with indices
greater than MAX_HWC_DISPLAYS.
Change-Id: I5e5b69d8d043e900f5e33ca9a62e94ae5f857b68
Svet Ganov [Thu, 7 May 2015 17:50:59 +0000 (10:50 -0700)]
Fix broken NDK sensor manager API.
Change-Id: I21bb8b0dcfd3f1c812753a9fd77dea792e7155f2
Aaron Schulman [Wed, 25 Feb 2015 16:37:09 +0000 (08:37 -0800)]
Added Voltage and Current regulator ftrace events to atrace
Cherry-pick of
c2c6ecd1195481f5813a721a7d20a73c0795c135 from AOSP
Tracing the state of the voltage and current regulators enables a developer
to attribute power consumption measurements to specific perhipherals and
cores. Unlike other indirect methods of tracing when peripherals and cores
are toggled, the regulator ftrace event indicates the exact point in time
when the kernel switches on or off the device. For example, in the following
trace, a developer can see exactly when the krait2 core starts receiving
power, and and when the voltage is set for voltage scaling.
mpdecision-2172 [000] ...1 1566.665481: regulator_enable: name=krait2
mpdecision-2172 [000] ...1 1566.665493: regulator_enable_delay: name=krait2
mpdecision-2172 [000] ...1 1566.665495: regulator_enable_complete: name=krait2
<...>-4133 [002] ...1 1566.666891: regulator_set_voltage: name=krait2 (
1075000-
1100000)
Change-Id: Ia322206ef74496daf1d9baa03545d8e89e398487
Signed-off-by: Aaron Schulman <aschulman@google.com>
Dan Stoza [Tue, 5 May 2015 21:00:52 +0000 (14:00 -0700)]
SF: Apply pending transactions to new sidebands
When a Layer's sideband stream is set, apply any pending transactions.
Otherwise they would never be applied since sideband streams don't
trigger updates by pushing new buffers.
Bug:
20125898
Change-Id: I0c7a91cdf84e6205801f4ab64eee0b09e4c0b3e0
(cherry picked from commit
3b04e1383eca6cb1d43ebe23a421c427007690c7)
Dan Stoza [Mon, 4 May 2015 16:33:46 +0000 (16:33 +0000)]
Merge "libgui: Clear frame number while freeing slot" into mnc-dev
Sasha Levitskiy [Sun, 3 May 2015 04:03:44 +0000 (21:03 -0700)]
SensorServiceTest: Fix build, warnings.
Change-Id: I3ed5247d3eb6c43d185049cf9011c2ee01b5662e
Signed-off-by: Sasha Levitskiy <sanek@google.com>
Dan Stoza [Fri, 1 May 2015 23:42:55 +0000 (16:42 -0700)]
libgui: Clear frame number while freeing slot
Clears the frame number of a slot when it is freed, since it is used
to determine if a released buffer is stale.
Bug:
20445852
Change-Id: I02415e7b25a1eafe7414d6eb1cedf62ac5543cd9
Svetoslav [Fri, 1 May 2015 23:10:55 +0000 (23:10 +0000)]
Merge "Add body sensors app op - framework native" into mnc-dev
Mark Salyzyn [Thu, 30 Apr 2015 16:49:41 +0000 (09:49 -0700)]
dumpstate: report per-partition MMC performance
(Cherry pick from commit
540e3de99fa1baa5eaf3eb3d49f4e98fd9f5bd91)
Change-Id: If5cabe186d8377056effa1c0672a90e277cd7221
Dan Stoza [Fri, 1 May 2015 21:44:06 +0000 (21:44 +0000)]
Merge "SurfaceFlinger: Fix PTS on stale buffers" into mnc-dev
Svetoslav [Wed, 29 Apr 2015 23:50:41 +0000 (16:50 -0700)]
Add body sensors app op - framework native
Change-Id: I727a2bb1e28ae9158f2df9c74dd0aee977dfd47f
Dan Stoza [Tue, 28 Apr 2015 21:42:06 +0000 (14:42 -0700)]
SurfaceFlinger: Fix PTS on stale buffers
SurfaceFlinger's (Layer's) shadow copy of the BufferQueue queue was
getting out of sync for a few reasons. This change fixes these by
doing the following:
- Adds a check to re-synchronize the shadow copy every time we
successfully acquire a buffer by first dropping stale buffers before
removing the current buffer.
- Avoids trying to perform updates for buffers which have been rejected
(for incorrect dimensions) by SurfaceFlinger.
- Adds IGraphicBufferConsumer::setShadowQueueSize, which allows the
consumer to notify the BufferQueue that it is maintaining a shadow
copy of the queue and prevents it from dropping so many buffers
during acquireBuffer that it ends up returning a buffer for which the
consumer has not yet received an onFrameAvailable call.
Bug:
20096136
Change-Id: I78d0738428005fc19b3be85cc8f1db498043612f
(cherry picked from commit
2e36f2283f48ab764b496490c73a132acf21df3a)
Jeff Sharkey [Fri, 1 May 2015 16:22:40 +0000 (16:22 +0000)]
Merge "Offer to move both code and data together." into mnc-dev
Jeff Sharkey [Thu, 30 Apr 2015 22:58:19 +0000 (15:58 -0700)]
Offer to move both code and data together.
We now move code under /data/app/com.example when a complete move
is requested. This really only works for new cluster-style installs
that also have native libraries and OAT contained inside.
Teach measuring code about cluster-style installs when measuring
app footprint. Also offer to measure private data space for all
users.
Bug:
19993667,
20275578
Change-Id: I6df7b947cb5cc8a4552f56f4b64a661e8512389f
Dan Stoza [Thu, 30 Apr 2015 22:12:46 +0000 (22:12 +0000)]
Merge "SurfaceFlinger: Limit to 4k Layers" into mnc-dev
Dan Stoza [Thu, 30 Apr 2015 20:29:25 +0000 (13:29 -0700)]
SurfaceFlinger: Limit to 4k Layers
Sets a limit of 4k Layers which SurfaceFlinger will allow to be in
existence at any given time. An attempt to create Layers in excess of
this limit will fail with NO_MEMORY.
Bug:
20674586
Change-Id: I2dfaf59643d826f982b2fa44e8a9ed643176d972
(cherry picked from commit
e7f8dde3f3c398c1ea1bec14e76725a760f71d31)
Dan Stoza [Thu, 30 Apr 2015 21:59:39 +0000 (21:59 +0000)]
Merge "SurfaceFlinger: Fix integer overflow in Mesh ctor" into mnc-dev
Dan Stoza [Wed, 29 Apr 2015 20:30:31 +0000 (13:30 -0700)]
SurfaceFlinger: Fix integer overflow in Mesh ctor
Performs range checking on the inputs to Mesh::Mesh() before allocating
the storage array.
Bug:
20674682
Change-Id: I4fc918a8c312d967dd6d9f91a098b2e0a7081027
(cherry picked from commit
ab79e33ef3a21a2b14bf15bc4c85aef247b4ad95)
Taiju Tsuiki [Thu, 30 Apr 2015 13:15:33 +0000 (22:15 +0900)]
Close Fence FDs in error cases of Surface and GraphicBufferMapper
Surface::{cancel,queue}Buffer and GraphicBufferMapper::lockAsyncYCbCr take the
ownership of |fenceFd|s. Though they don't close it on error cases.
Change-Id: I49a7ce8837d5c510c4ac4ad4649f310d18610e80
(cherry picked from commit
c7263fb43297744eb04b11025424c0c526d5584c)
Taiju Tsuiki [Thu, 30 Apr 2015 13:13:14 +0000 (22:13 +0900)]
Avoid closing invalid FD in Surface and GraphicBufferMapper
GraphicBufferMapper::lockAsync{,YCbCr} close the fence FD even when the FD
is invalid.
Change-Id: Ia2b4dae3b2c06426e34f623f19ba92435f486ab7
(cherry picked from commit
dcfe91e1f3f15b68793a69650f9bd0ca6a58ff4c)
Svet Ganov [Wed, 29 Apr 2015 19:34:17 +0000 (19:34 +0000)]
Merge "Respect the record audio app op - frameworks native" into mnc-dev
Alan Viverette [Wed, 29 Apr 2015 16:38:56 +0000 (16:38 +0000)]
Merge "Remove gamma correction from color correction shader" into mnc-dev
Nick Kralevich [Tue, 28 Apr 2015 23:21:30 +0000 (16:21 -0700)]
Parcel.cpp: use calloc instead of malloc
(cherrypicked from commit
6329f0199ed04030e6c2bd7aecd036387b732c71)
Bug:
20669363
Change-Id: Ia4c8d8ca9d8b4b87954d7267e8b1c94cf4e570e1
Ashish Sharma [Wed, 29 Apr 2015 02:37:06 +0000 (02:37 +0000)]
Merge "Inclide checkin format of dumpsys package in bugreport." into mnc-dev
Alan Viverette [Wed, 29 Apr 2015 00:15:57 +0000 (17:15 -0700)]
Remove gamma correction from color correction shader
Gamma correction was incorrectly skewing both color inversion and
Daltonization, which resulted in washed-out colors.
Bug:
20346301
Change-Id: I34d879f902c3be115b2d23f09c3ed3902799759e
Svet Ganov [Tue, 28 Apr 2015 19:09:01 +0000 (12:09 -0700)]
Respect the record audio app op - frameworks native
Change-Id: Id747767377953fd644a538aad3f603d6c50875a2
Dan Stoza [Tue, 28 Apr 2015 21:20:04 +0000 (14:20 -0700)]
libgui: Fix buffer age on 64-bit targets
Changes a %llu to a PRIu64 to fix compilation on 64-bit targets.
Change-Id: I8ba982662dbe8ee2e1e47c4f6ce4bbdbe2020960
Dan Stoza [Thu, 26 Feb 2015 00:49:08 +0000 (16:49 -0800)]
BufferQueue: Add NATIVE_WINDOW_BUFFER_AGE query
Adds a NATIVE_WINDOW_BUFFER_AGE query, which returns the age of the
contents of the most recently dequeued buffer as the number of frames
that have elapsed since it was last queued.
Change-Id: Ib6fd62945cb62d1e60133a65beee510363218a23
(cherry picked from commit
49f810c72df8d1d64128e376757079825c8decd4)
Ashish Sharma [Tue, 28 Apr 2015 20:32:54 +0000 (13:32 -0700)]
Inclide checkin format of dumpsys package in bugreport.
Change-Id: I809377f80e314b358eba22fa916e53c81cac2c47
Dan Stoza [Tue, 28 Apr 2015 20:18:07 +0000 (13:18 -0700)]
libgui: Implement onTransact for sideband streams
Implements the GET_SIDEBAND_STREAM case of
IGraphicBufferConsumer::onTransact
Change-Id: I46138b87ce2d70dde48b3561dcd378ce5fd8f383
(cherry picked from commit
17166698d935a004adab216aca83a585f91e9d96)