OSDN Git Service
Dan Stoza [Tue, 30 Jun 2015 17:11:08 +0000 (17:11 +0000)]
Merge "sf: Initialize EventThread before creating HWC"
John Reck [Mon, 29 Jun 2015 14:17:43 +0000 (14:17 +0000)]
Merge "Fix async_stop"
John Reck [Fri, 15 May 2015 17:00:34 +0000 (10:00 -0700)]
Fix async_stop
Change-Id: I68a258cf71cfcd999bbd568ab3c96255c11bec41
(cherry picked from commit
2c237ee1d5961b9d11618e0c5a97b3bb7fb694b2)
Saurabh Shah [Tue, 16 Jun 2015 00:55:51 +0000 (17:55 -0700)]
sf: Initialize EventThread before creating HWC
Once HWC is created, it could use any of the provided hooks, which
could lead to a crash if the EventThread (handler) isn't initialized
prior to creating HWC.
Change-Id: I5ea35fe9bcb150fb74aae1295b798bd787ad6cee
Mark Salyzyn [Mon, 15 Jun 2015 14:27:10 +0000 (14:27 +0000)]
Merge "dumpstate: modify logcat timeout to compensate for storage speed"
Mark Salyzyn [Fri, 12 Jun 2015 19:28:24 +0000 (12:28 -0700)]
dumpstate: modify logcat timeout to compensate for storage speed
Discover the logcat buffer size, divide by the worst storage
speed in kb/s, and multiply by ten to estimate the timeout in
ms for each named buffer. If that value is less than 20 seconds,
then select 20 seconds. Apply this to each logcat request.
Bug:
21555259
Change-Id: Id36aebff83cb06e94350e4a84fa266b66a8444fc
Dan Stoza [Fri, 12 Jun 2015 16:47:21 +0000 (16:47 +0000)]
Merge "sf: Fix incorrect state reporting in dumpsys"
Manoj Kumar AVM [Thu, 11 Jun 2015 21:18:14 +0000 (14:18 -0700)]
sf: Fix incorrect state reporting in dumpsys
Dumpsys utility accesses layer compositionType variable
with out proper protection. These variables are modified
during hwc_prepare call. Existing HAL lock protection is not
sufficient to address this issue. Failure to do this will
result in incorrect state reporting in dumpsys.
A new displayLock mutex in HWComposer will be used in both
dumpsys and draw calls to ensure correct state is accessed.
Change-Id: I8a57de59525adc0e089b3bed95c067c01e42b666
Dan Stoza [Thu, 11 Jun 2015 19:31:43 +0000 (19:31 +0000)]
Merge "sf: Add a NULL check in getDisplayConfigs"
Tatenda Chipeperekwa [Wed, 29 Oct 2014 23:47:19 +0000 (16:47 -0700)]
sf: Add a NULL check in getDisplayConfigs
Validate the display binder by adding a NULL check in getDisplayConfigs.
This will prevent a false match if the caller queries the display
configs for an inactive display (whose binder is NULL by default).
Without this change we might end up attempting to index the display
config array, which is unpopulated for inactive displays, and this will
result in a crash. (See getDisplayInfo in SurfaceComposerClient.cpp for
an example of this scenario)
Change-Id: Ib32a7dc8378d3438df0dba1ecd608bbcfc837717
Dan Stoza [Thu, 11 Jun 2015 17:34:15 +0000 (17:34 +0000)]
Merge "GLConsumer: Fix crop math"
Dan Stoza [Tue, 9 Jun 2015 22:05:23 +0000 (15:05 -0700)]
GLConsumer: Fix crop math
When we have excess pixels that need to be removed from (for example)
the left and right sides, we currently do something like:
left += excess / 2;
right -= excess / 2;
If excess is odd, however, this removes 1 too few pixels since the odd
pixel gets rounded down twice. This changes the math to effectively:
left += excess / 2;
right -= (excess - excess / 2);
Which removes the correct total number of pixels.
Bug:
19611086
Change-Id: I8d1ad9fe7ba67c149794c148663d12acbccccef0
(cherry picked from commit
ec4cb387502d5bd09e49b55605cf679fe3a0207a)
Dan Stoza [Wed, 10 Jun 2015 18:10:07 +0000 (18:10 +0000)]
Merge "SF: Swap w/h when capturing rotated screenshots"
Dan Stoza [Tue, 9 Jun 2015 23:44:40 +0000 (16:44 -0700)]
SF: Swap w/h when capturing rotated screenshots
Swaps width and height when capturing a screenshot that is rotated by
90 or 270 degrees.
Bug:
8433742
Change-Id: Ibf0b604f541e3cc271e56fe0ad04dc366beb5d79
(cherry picked from commit
3502416204d9dbd905012ee586d8bd145323809f)
Dan Stoza [Tue, 9 Jun 2015 20:28:59 +0000 (20:28 +0000)]
Merge "SF: Don't crop surface damage against viewport"
Dan Stoza [Fri, 5 Jun 2015 02:40:03 +0000 (19:40 -0700)]
SF: Don't crop surface damage against viewport
Apply the display transform to surface damage, but don't intersect it
with the viewport.
Bug:
21486007
Change-Id: I94e697cea52096a960385d5f3b89609fdcf30a02
(cherry picked from commit
17833a1b0d70cd5cea342cadea9fdbbf16748bc6)
Dan Stoza [Tue, 9 Jun 2015 18:34:10 +0000 (18:34 +0000)]
Merge "libgui/SurfaceFlinger: Add getConsumerName"
Dan Stoza [Mon, 8 Jun 2015 16:32:50 +0000 (09:32 -0700)]
libgui/SurfaceFlinger: Add getConsumerName
Adds a getConsumerName method to IGraphicBufferProducer and Surface.
Currently, the name is cached inside of IGBP and is update on connect
and dequeueBuffer, which should be good enough for most uses.
Bug:
6667401
Change-Id: I22c7881d778e495cf8276de7bbcd769e52429915
(cherry picked from commit
c6f30bdee1f634eb90d68cb76efe935b6535a1e8)
Dan Stoza [Tue, 9 Jun 2015 18:23:48 +0000 (18:23 +0000)]
Merge "libgui: Add generation numbers to BufferQueue"
Dan Stoza [Tue, 2 Jun 2015 22:45:22 +0000 (15:45 -0700)]
libgui: Add generation numbers to BufferQueue
This change allows producers to set a generation number on a
BufferQueue. This number will be embedded in any new GraphicBuffers
created in that BufferQueue, and attempts to attach buffers which have
a different generation number will fail.
It also plumbs the setGenerationNumber method through Surface, with the
additional effect that any buffers attached to the Surface after
setting a new generation number will automatically be updated with the
new number (as opposed to failing, as would happen on through IGBP).
Bug:
20923096
Change-Id: I32bf726b035f99c3e5834beaf76afb9f01adcbc2
(cherry picked from commit
812ed0644f8f8f71ca403f4e5793f0dbc1fcf9b2)
Nick Kralevich [Wed, 3 Jun 2015 13:33:36 +0000 (13:33 +0000)]
Merge "Call selinux_status_open() prior to use of selinux_status_updated()."
Stephen Smalley [Wed, 3 Jun 2015 13:25:37 +0000 (09:25 -0400)]
Call selinux_status_open() prior to use of selinux_status_updated().
The selinux_status_*() interfaces require calling selinux_status_open()
first. Since this was not being called by servicemanager, the
selinux_status_updated() call was always failing and servicemanager
was not reloading service_contexts upon a policy reload.
Change-Id: I6ac62e114bbca99c5f0999feb918fcde15009274
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Dan Stoza [Mon, 1 Jun 2015 21:59:20 +0000 (21:59 +0000)]
Merge "libgui: Propagate error by clearing sp<GB>"
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
(cherry picked from commit
6a04e5fcf67e754b215301fe38a6401db567f4b5)
Dan Stoza [Mon, 1 Jun 2015 18:31:19 +0000 (18:31 +0000)]
Merge "Fix libgui crop matrix test."
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
(cherry picked from commit
04b00cea67b406c4a971b24b9f91e95c754813ed)
Dan Stoza [Mon, 1 Jun 2015 18:27:35 +0000 (18:27 +0000)]
Merge "SF: Reduce resync samples without present"
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
(cherry picked from commit
9c64757f6530a0510f15f8bd75b1925a3001f83a)
Dan Stoza [Mon, 1 Jun 2015 18:25:50 +0000 (18:25 +0000)]
Merge "libui: Apply GRALLOC_USAGE_ALLOC_MASK during alloc"
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
(cherry picked from commit
b8efdc40039e4900ae2c64fbdfa03906c867ec84)
Dan Stoza [Mon, 1 Jun 2015 18:18:42 +0000 (18:18 +0000)]
Merge "Check that width and height parameters are small."
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
(cherry picked from commit
1c4537e2e80aa776a61517be8b1605e36432287a)
Dan Stoza [Thu, 28 May 2015 21:25:10 +0000 (21:25 +0000)]
Merge "SurfaceFlinger: Tweak whitespace in DdmConnection"
Dan Stoza [Thu, 28 May 2015 21:23:54 +0000 (14:23 -0700)]
SurfaceFlinger: Tweak whitespace in DdmConnection
Change-Id: I99e7b09e4bc3611ffb790eddfbb9b3c8b9bc5d4c
Dan Stoza [Thu, 28 May 2015 21:21:27 +0000 (21:21 +0000)]
Merge "Bypass surface flinger permission check for calls from system."
Dan Stoza [Thu, 28 May 2015 21:20:59 +0000 (21:20 +0000)]
Merge "surfaceflinger: Fix range check for getFormat"
Jeff Brown [Sat, 11 Apr 2015 03:20:13 +0000 (20:20 -0700)]
Bypass surface flinger permission check for calls from system.
Early during the boot, before activity manager is ready to handle
permission checks, the system needs to be able to change the display
state. Added a hardcoded exemption for AID_SYSTEM (which already
has permission to talk to surface flinger anyhow).
Bug:
19029490
Change-Id: I6222edcab8e394e5fb6adf7a982be446e4505a1e
(cherry picked from commit
3bfe51d7901e99e7f122f76ed2708e2b67b71cf9)
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
(cherry picked from commit
4e3e30c2d5a2a6f7dc4ee8696b1ac2a52dffd5dc)
Dan Stoza [Thu, 28 May 2015 21:10:35 +0000 (21:10 +0000)]
Merge "Modify EGL to disconnect the window when the surface gets destroyed."
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
(cherry picked from commit
00699fa64197cc72a160d69e1f0003cdd43dc136)
Dan Stoza [Thu, 28 May 2015 21:02:22 +0000 (21:02 +0000)]
Merge "SF: Skip render-to-texture for color transforms"
Dan Stoza [Thu, 28 May 2015 20:59:43 +0000 (20:59 +0000)]
Merge "Add hotplug support for primary display."
Dan Stoza [Thu, 28 May 2015 20:57:47 +0000 (20:57 +0000)]
Merge "libgui: Fix surface damage on rotated buffers"
Dan Stoza [Thu, 28 May 2015 20:55:43 +0000 (20:55 +0000)]
Merge "Fix surfaceflinger tests."
Dan Stoza [Thu, 28 May 2015 20:54:05 +0000 (20:54 +0000)]
Merge "Fix libgui tests."
Dan Stoza [Thu, 28 May 2015 20:51:55 +0000 (20:51 +0000)]
Merge "fix BufferItem flatten/unflatten alignment"
Dan Stoza [Thu, 28 May 2015 20:48:47 +0000 (20:48 +0000)]
Merge "Refactor ConsumerBase and it's derived classes."
Jesse Hall [Thu, 28 May 2015 20:46:44 +0000 (20:46 +0000)]
Merge "Fix EGL shim extension injection for GL ES 3 drivers."
Dan Stoza [Thu, 28 May 2015 20:39:59 +0000 (20:39 +0000)]
Merge "Add ConsumerBase::isAbandoned"
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
(cherry picked from commit
f008799d3753e52c10849824ff8146985ea66284)
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
(cherry picked from commit
10613dc3b565e95d3d5f459ec70fd2f6a77f807a)
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
(cherry picked from commit
0e65e6c283c96d514c5ecefbb46a976939cfa64a)
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
(cherry picked from commit
5a16a62950de06d48769e29f0c68a154ed7a7a89)
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
(cherry picked from commit
d8ead0ccd4b700e43a78efe9b140d4a069dc343d)
Chong Zhang [Fri, 22 May 2015 17:54:25 +0000 (10:54 -0700)]
fix BufferItem flatten/unflatten alignment
bug:
21370100
Change-Id: Ia3991dc591c176bdbd1d78d1804aa22777525b62
(cherry picked from commit
47f674dfeca31b29810ecb90f1277918b67c4cf8)
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
(cherry picked from commit
847f11e215e86b107ab50c1359fc7bc3cd7a3a11)
John Reck [Thu, 14 May 2015 22:55:11 +0000 (15:55 -0700)]
Add ConsumerBase::isAbandoned
Bug:
20105644
Change-Id: I21526b5397ea51a15500c44a99daa9d75fc4ea67
(cherry picked from commit
e478305181bb8dc8706361bc702256fe73f958de)
David Srbecky [Thu, 28 May 2015 18:37:35 +0000 (18:37 +0000)]
Merge "Rename --include-cfi to --generate-debug-info."
David Srbecky [Thu, 28 May 2015 15:55:50 +0000 (16:55 +0100)]
Rename --include-cfi to --generate-debug-info.
This follows a change in dex2oat.
Change-Id: I6b2df1668fdd09d82cfe86e6e51360b954b6c8a9
Johan Euphrosine [Wed, 27 May 2015 21:30:37 +0000 (21:30 +0000)]
Merge "framework/native/docs: remove doc footer for jd output"
Johan Euphrosine [Wed, 27 May 2015 17:13:35 +0000 (10:13 -0700)]
framework/native/docs: remove doc footer for jd output
Change-Id: Ib65a436f4846eb5c02e42c6f1cbda5eab58c68ab
Johan Euphrosine [Fri, 22 May 2015 22:28:24 +0000 (22:28 +0000)]
Merge "frameworks/native/docs: add doxygen configuration"
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.
Johan Euphrosine [Thu, 21 May 2015 08:15:34 +0000 (01:15 -0700)]
frameworks/native/docs: add doxygen configuration
Change-Id: I7803d9beceac46488869e4874f6f5f7a7925a796
Elliott Hughes [Sat, 16 May 2015 00:26:09 +0000 (00:26 +0000)]
Merge "Don't use TEMP_FAILURE_RETRY on close in frameworks/native."
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
Dan Stoza [Thu, 14 May 2015 17:56:27 +0000 (17:56 +0000)]
Merge "SurfaceFlinger: Handle EGL errors more cleanly"
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
(cherry picked from commit
65476f3332641066a99e22338bf5cf49ce4af642)
Hiroshi Yamauchi [Wed, 13 May 2015 22:47:42 +0000 (22:47 +0000)]
Merge "Replace JNI primitive array critical calls with non-critical ones."
Hiroshi Yamauchi [Wed, 13 May 2015 20:11:30 +0000 (13:11 -0700)]
Replace JNI primitive array critical calls with non-critical ones.
The glgen part.
(cherry pick commit
4e7de461c18278a31be83e7c9074a02fbb6e9475)
Bug:
19235243
Change-Id: I0d1e78acf39feb37a67e857216a6d52f4cede180
Dan Stoza [Wed, 13 May 2015 17:53:22 +0000 (17:53 +0000)]
Merge "Fix PTS handling for buffer replacement"
Dan Stoza [Wed, 13 May 2015 17:52:46 +0000 (17:52 +0000)]
Merge "binder: add uint64 support to Parcel."
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
(cherry picked from commit
a4650a50a0b35e9e4342d6600b6eb24fd94bb8e5)
Ronghua Wu [Mon, 16 Mar 2015 18:11:07 +0000 (11:11 -0700)]
binder: add uint64 support to Parcel.
Bug:
19620911
Change-Id: Ifce5319e4e35afd344dead67ab7ba1cd399476a3
(cherry picked from commit
2d13afdfa1f43973bf3cb917c7d6496a38baa446)
Dan Stoza [Tue, 12 May 2015 22:33:38 +0000 (22:33 +0000)]
Merge "libgui: Always allow allocation on connect"
Johan Euphrosine [Tue, 12 May 2015 22:05:21 +0000 (22:05 +0000)]
Merge "frameworks/native: document native types and enums"
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
(cherry picked from commit
2b83cc920ac98498bee161e2b0e7befdfc82ca2b)
Johan Euphrosine [Sat, 28 Mar 2015 00:15:43 +0000 (17:15 -0700)]
frameworks/native: document native types and enums
Change-Id: Id94b610f27b87426abb30e13484cbd16990aa995
Dan Stoza [Tue, 12 May 2015 17:18:11 +0000 (17:18 +0000)]
Merge "libgui: Hook up onFrameReplaced"
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
(cherry picked from commit
dc13c5b85b099050c73297a19f1ef89308f7620b)
Jesse Hall [Mon, 11 May 2015 21:31:44 +0000 (21:31 +0000)]
Merge "libEGL: whitelist the EGL_KHR_create_context_no_error extension"
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
Chris Craik [Thu, 7 May 2015 16:20:52 +0000 (16:20 +0000)]
Merge "Added Voltage and Current regulator ftrace events to atrace"
Dan Stoza [Wed, 6 May 2015 16:50:38 +0000 (16:50 +0000)]
Merge "SF: Apply pending transactions to new sidebands"
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:57:53 +0000 (16:57 +0000)]
Merge "libgui: Clear frame number while freeing slot"
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
(cherry picked from commit
52937cd9a543fe66696c38ae50ec141aa70ec1e4)
Mark Salyzyn [Fri, 1 May 2015 21:48:51 +0000 (21:48 +0000)]
Merge "dumpstate: report per-partition MMC performance"
Dan Stoza [Fri, 1 May 2015 20:28:47 +0000 (20:28 +0000)]
Merge "SurfaceFlinger: Fix PTS on stale buffers"
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
Dan Stoza [Thu, 30 Apr 2015 22:09:37 +0000 (22:09 +0000)]
Merge "SurfaceFlinger: Limit to 4k Layers"
Dan Stoza [Thu, 30 Apr 2015 21:57:15 +0000 (21:57 +0000)]
Merge "SurfaceFlinger: Fix integer overflow in Mesh ctor"
Dan Stoza [Thu, 30 Apr 2015 21:49:39 +0000 (21:49 +0000)]
Merge "Close Fence FDs in error cases of Surface and GraphicBufferMapper"
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
Mark Salyzyn [Thu, 30 Apr 2015 16:49:41 +0000 (09:49 -0700)]
dumpstate: report per-partition MMC performance
Change-Id: If5cabe186d8377056effa1c0672a90e277cd7221
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
Dan Stoza [Thu, 30 Apr 2015 19:36:24 +0000 (19:36 +0000)]
Merge "Remove gamma correction from color correction shader"
Dan Stoza [Thu, 30 Apr 2015 16:34:11 +0000 (16:34 +0000)]
Merge "Avoid closing invalid FD in Surface and GraphicBufferMapper"
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
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