OSDN Git Service
Robert Carr [Mon, 10 Apr 2017 23:55:57 +0000 (16:55 -0700)]
SurfaceFlinger: Add parent-less relative layering.
This is a temporary functionality for the intermediate state where not
all child-surface like things in WM land are ported to use Child
Surfaces. In particular, we have ported SurfaceView to use child
surfaces and relative Z ordering. However the TV frameworks provide a
View framework component which overlays views over the SurfaceView but
below the main application window. Since we have not ported View
framework surfaces to use child layers, there is nothing the WM or
View Framework can do about this situation. Luckily the WM API's to
have requested this are @hide but we have the one media framework
component using it. In order to solve this issue we provide a method
to set Z ordering relative to another window without inheriting
its coordinate space as a child window would. This way the WM can
recognize these TYPE_APPLICATION_MEDIA_OVERLAY windows and Z-order
them at -1 with respect to the parents (and the SurfaceView can be at
-2).
Test: Included in transaction tests. Also manual test of bug repro steps with accomp frameworks/base CL
Bug:
36693738
Change-Id: I921852d3d34f67f79ec745b9703f9e679867e7a1
Chia-I Wu [Tue, 11 Apr 2017 01:08:37 +0000 (01:08 +0000)]
Merge "libui: update for revised HIDL gralloc" into oc-dev
TreeHugger Robot [Tue, 11 Apr 2017 00:47:50 +0000 (00:47 +0000)]
Merge "Work on issue #
36863299: [Fugu] CTS: PermissionFeatureTest failures:..." into oc-dev
Dianne Hackborn [Mon, 10 Apr 2017 18:55:24 +0000 (11:55 -0700)]
Work on issue #
36863299: [Fugu] CTS: PermissionFeatureTest failures:...
...File ata/etc/tv_core_hardware.xml does not exist
Add new separate file for the CTS feature.
Test: none needed
Change-Id: I3be83072e65781224c735b920b0b4fba22f57e4c
TreeHugger Robot [Mon, 10 Apr 2017 18:45:47 +0000 (18:45 +0000)]
Merge "Get a hack in place for broken quotas." into oc-dev
Chia-I Wu [Thu, 6 Apr 2017 19:34:32 +0000 (12:34 -0700)]
libui: update for revised HIDL gralloc
The revised HIDL gralloc is implementable on top of gralloc0 and
gralloc1, which enables us to remove all legacy code.
However, it lacks the ability to query buffer properties from a
buffer handle. GetBufferFromHandle in VR always fails.
Bug:
36481301
Test: builds and boots on Pixel
Change-Id: Id7cfa2d2172dfc008803860f24fcf4f03ba05f11
TreeHugger Robot [Mon, 10 Apr 2017 15:46:58 +0000 (15:46 +0000)]
Merge "Add missing functor for DVR API" into oc-dev
Polina Bondarenko [Mon, 10 Apr 2017 11:07:31 +0000 (11:07 +0000)]
Merge "Revert "Avoid a potential race condition on mDisplays"" into oc-dev
Polina Bondarenko [Mon, 10 Apr 2017 10:15:42 +0000 (10:15 +0000)]
Revert "Avoid a potential race condition on mDisplays"
This reverts commit
5576a555a14edd8c76addce2cee37b9b9ced2c3f.
Change-Id: I5d5889fccd94acacfbfef29847e4b65ef2543c75
Jeff Sharkey [Mon, 10 Apr 2017 06:19:46 +0000 (00:19 -0600)]
Get a hack in place for broken quotas.
Sadly we mixed together both UID and GID quotas in such a way that
we couldn't detangle the actual data-vs-cache usage in all cases.
Temporarily patch over this to get CTS passing until we can circle
back and try again.
Test: cts-tradefed run commandAndExit cts-dev -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.StorageHostTest
Bug:
36731175,
37193650
Change-Id: I5870b4e9c22398762fc47672e4d5d78c06bef79f
TreeHugger Robot [Mon, 10 Apr 2017 01:53:32 +0000 (01:53 +0000)]
Merge "Load GL graphics drivers explicitly from sphal namespace" into oc-dev
Jiyong Park [Wed, 5 Apr 2017 05:23:52 +0000 (14:23 +0900)]
Load GL graphics drivers explicitly from sphal namespace
In Treble term, GL wrappers (libEGL.so, libGLES*.so, ...) are called
SP-NDK and actual drivers (libEGL_*.so, libGLESv2_*.so, ...)
are called SP-HALs. (SP = Same-Process).
SP-HALs are developed by vendors and thus they can use only a subset of
framework libraries that we call vndk-stable and subset of NDK
libraries. It consists of libc, libm, liblog, libz, libnativewindow,
libc++, ..., but not framework-only libraries such as libui, libandroid,
etc.
In order to enforce such restriction at run-time, we will use the linker
namespace. Specifically, we create a new namespace named 'sphal' and
configure it so that...
1) it can only search and load libraries from /vendor/lib,
2) it redirects the load/link request to the default namespace when the
allowed list of libraries are requested from the caller, and
3) it rejects to search/load any library other than 1) and 2).
The problem here is, GL wrapper need to tell the linker to load the
drivers from the separate namespace (the 'sphal' namespace other than
the default namespace. To specify the namespace, we need to use
android_dlopen_ext() instead of dlopen().`
Bug:
34407260
Bug:
37049319
Test: none, no op for now since we haven't create sphal namespace.
Change-Id: I376dd9e5cc904452f669c27eb85c59b30b43dc39
TreeHugger Robot [Sat, 8 Apr 2017 02:26:56 +0000 (02:26 +0000)]
Merge "Add HIDL Scheduler Service implementation." into oc-dev
Andrii Kulian [Sat, 8 Apr 2017 01:51:23 +0000 (01:51 +0000)]
Merge "Enable FEATURE_ACTIVITIES_ON_SECONDARY_DISPLAYS on phones and tablets" into oc-dev
TreeHugger Robot [Sat, 8 Apr 2017 01:48:20 +0000 (01:48 +0000)]
Merge "Avoid a potential race condition on mDisplays" into oc-dev
Steven Moreland [Fri, 7 Apr 2017 17:46:25 +0000 (10:46 -0700)]
Add HIDL Scheduler Service implementation.
Test: marlin camera successfully sets permissions
Bug:
29251823
Change-Id: Ic7dc0377e5b0c3b08d32cf97dae39b6d35a0f631
TreeHugger Robot [Sat, 8 Apr 2017 00:02:08 +0000 (00:02 +0000)]
Merge "(DO NOT MERGE) media: Add new OMX extension for setting latency." into oc-dev
Stephen Kiazyk [Wed, 5 Apr 2017 23:46:49 +0000 (16:46 -0700)]
Avoid a potential race condition on mDisplays
The race could occur when transitioning in/out of VR flinger mode.
It is now avoided by ensuring that the primary |DisplayDevice| is always
created once |mStateLock| is released, and ensuring that all accesses
to the primary |DisplayDevice| are guarded by |mStateLock|.
Bug:
36194616
Test: Normal behavior is unchanged. Explicitly testing the race
condition required instrumenting code with sleep statements.
Change-Id: I1f8fcf23982c311d47267beca8127b6c29562ce5
Andrii Kulian [Fri, 7 Apr 2017 23:12:44 +0000 (16:12 -0700)]
Enable FEATURE_ACTIVITIES_ON_SECONDARY_DISPLAYS on phones and tablets
Bug:
36776777
Test: android.server.cts.ActivityManagerDisplayTests
Change-Id: If3fbf32f1f6c3de2f12f4b446f9350ea666a0d97
TreeHugger Robot [Fri, 7 Apr 2017 22:53:02 +0000 (22:53 +0000)]
Merge "Don't stack-allocate binder objects." into oc-dev
TreeHugger Robot [Fri, 7 Apr 2017 22:27:03 +0000 (22:27 +0000)]
Merge "Fix binderValueTypeTest" into oc-dev
Tri Vo [Fri, 7 Apr 2017 20:15:06 +0000 (13:15 -0700)]
Fix binderValueTypeTest
Bug:
36903040
Test: compile, push, run on device.
Change-Id: I788dd7f5b5800a894aba4262553c7c6361549850
TreeHugger Robot [Fri, 7 Apr 2017 20:03:29 +0000 (20:03 +0000)]
Merge "Add separate 'vndservice' binary." into oc-dev
TreeHugger Robot [Fri, 7 Apr 2017 18:35:08 +0000 (18:35 +0000)]
Merge "vr_hwc: Address ion buffer leakage" into oc-dev
TreeHugger Robot [Fri, 7 Apr 2017 17:49:22 +0000 (17:49 +0000)]
Merge "libpdx: Fix ThreadLocalBufferTest.InitialValue unittest" into oc-dev
Martijn Coenen [Fri, 7 Apr 2017 17:46:57 +0000 (10:46 -0700)]
Add separate 'vndservice' binary.
This is installed on the vendor partition,
and can be used to call into vndservicemanager
and the services it hosts.
Bug:
36987120
Test: vndservice list works
Change-Id: I2d72312276cd4402ee1b399713cd5322b125b00f
Daniel Nicoara [Thu, 6 Apr 2017 15:10:33 +0000 (11:10 -0400)]
VR HWC: Relax checks around layer presentation
Rather than error out on layers without buffers, simply discard them.
This is more in line with other HWComposer implementations which deal
with this error, since SurfaceFlinger doesn't handle it appropriately.
Bug:
37091090
Test: Ran on device and verified errors are no longer reported in logcat
Change-Id: Iacfd9fa707d86367c7b6dbf62edea297fc9dfb8e
Kevin Schoedel [Thu, 6 Apr 2017 17:49:41 +0000 (13:49 -0400)]
Don't stack-allocate binder objects.
These inherit from RefBase and need to be owned in an sp<>.
Bug:
36854729
Test: manual on Pixel phone
Change-Id: I5ac6f50c1a21d4c8b224d41149b16da4d438dba7
Merged-In: I54dac1298dca1eb3ab5e6751366ba67bb2e1906c
Okan Arikan [Fri, 7 Apr 2017 16:51:21 +0000 (16:51 +0000)]
Merge "Fix the latency model." into oc-dev
TreeHugger Robot [Fri, 7 Apr 2017 16:48:04 +0000 (16:48 +0000)]
Merge changes from topic 'vrflinger-prep' into oc-dev
* changes:
libpdx: Decay variant types to correctly handle cv-reference types.
libpdx: Fix forward declarations using default template args.
Add additional accessors to IonBuffer and BufferHubBuffer.
Update BufferHubQueue in preparation for VrFlinger refactor.
Alex Vakulenko [Fri, 7 Apr 2017 15:55:03 +0000 (08:55 -0700)]
libpdx: Fix ThreadLocalBufferTest.InitialValue unittest
A call to GetBuffer() has been inadvertently removed during code
upstreaming to master. See the BUG below for more details.
Bug:
36456321
Test: `pdx_tests` now succeed on Sailfish
Change-Id: Ic7d6ecbbd9b0e59e74b48a66a9e3701dc44695bc
Okan Arikan [Thu, 6 Apr 2017 23:35:56 +0000 (16:35 -0700)]
Fix the latency model.
We were being too clever in modeling the latency using exponentially
moving average. The issue is that the average changes as new samples come in
which we then use to update the timestamps.
If the sampling rate is high enough (like IMU) then the changes in the average
are close to the delta times between samples. This causes the sample times
to move, and sometimes even change their updated timestamp order. This
causes all kinds of mess when we linearly extrapolate because the slope is bogus.
The fix is to just average a certain number of latency samples and then stick with that
constant average.
Bug:
36997591
Test: Run any 3DOF VR app.
Change-Id: I5411b2a6b7c3f258bf197f0615c0339d68fd2fd7
TreeHugger Robot [Fri, 7 Apr 2017 03:39:19 +0000 (03:39 +0000)]
Merge "Support halt the trace when schd-dbg hit deadline" into oc-dev
TreeHugger Robot [Fri, 7 Apr 2017 02:09:00 +0000 (02:09 +0000)]
Merge "Add option to list vndservicemanager services." into oc-dev
TreeHugger Robot [Fri, 7 Apr 2017 01:45:22 +0000 (01:45 +0000)]
Merge "vrwm: Handle intents launched by the VR app" into oc-dev
TreeHugger Robot [Fri, 7 Apr 2017 01:07:57 +0000 (01:07 +0000)]
Merge "libpdx_uds: Fix RPC channel ID allocation to not recycle values as often" into oc-dev
Calin Juravle [Fri, 7 Apr 2017 00:23:43 +0000 (00:23 +0000)]
Merge changes from topics 'seinfo', 'public_dex' into oc-dev
* changes:
Restore selinux labels for secondary dex oat directory
Fix permission for public secondary dex files
Mark Urbanus [Thu, 6 Apr 2017 22:29:57 +0000 (15:29 -0700)]
vr_hwc: Address ion buffer leakage
Problem:
system is running out of memory while switching between apps back and forth.
Root-cause:
vr_hwc is leaking ion buffers by holding an unreleased reference.
Solution:
No need to register the buffer when getting buffer info. This removes the
additional (unreleased) reference on the buffer.
Test: Validated vr_hwc is no longer leaking ion buffers when switching
apps.
Bug:
36449218
Change-Id: I1c1c5d2cca35c50a4bcbcf7b879d37914b8d835f
Alex Vakulenko [Thu, 6 Apr 2017 21:51:54 +0000 (14:51 -0700)]
libpdx_uds: Fix RPC channel ID allocation to not recycle values as often
The value of channel ID for PDX service on UDS transport was actual file
descriptor value for the data socket. Since channels are open and closed
constantly, it is quite often that channel ID is being reused immediately,
so it is almost impossible to use `cid` as unique identifier for objects
being passed around.
Instead, we now use monotonically growing channel ID value.
To prevent the possibility of using channel ID as the socket FD and vice
versa, changed all helper functions that used to take socket_fd as an int
to explicitly use BorrowedHandle which disables implicit conversion from
int (and hence makes it impossible to mistakenly pass in the channel ID).
Bug:
37082296
Test: `m -j32` succeeds for sailfish-eng
Ran libpdx_uds_tests on the device -> all pass
Device boots and CubeSea and VrHome render correctly with vr_flinger
Change-Id: Ibb8dfee4d6c3f4b6120c0b6e20a253f1b9307c19
TreeHugger Robot [Thu, 6 Apr 2017 22:06:36 +0000 (22:06 +0000)]
Merge "vndservicemanager: use separate SELinux class." into oc-dev
Calin Juravle [Wed, 5 Apr 2017 03:22:50 +0000 (20:22 -0700)]
Restore selinux labels for secondary dex oat directory
Bug:
36896515
Test: adb shell cmd package compile -r bg-dexopt --secondary-dex com.google.android.gms
adb shell ls
/data/user_de/0/com.google.android.gms/app_chimera/m/
0000000c/oat/arm64/
-Z
youtube loads gms modules without extracting from apk
Change-Id: I4e12a6f532a1442a840e3ed8d01b98dd9a328eb6
TreeHugger Robot [Thu, 6 Apr 2017 21:51:17 +0000 (21:51 +0000)]
Merge changes I2f531131,Ibaaca2a1,Ib0cba4c7,I5ea748b8,I046e3f07, ... into oc-dev
* changes:
libgui: Make IDisplayEventConn... a SafeInterface
libgui: Remove RefBase from BitTube
libgui: Make BitTube Parcelable and use unique_fd
libgui: Format BitTube and move into gui namespace
libgui: Move BitTube out of system include dir
libgui: Normalize IDisplayEventConnection methods
libgui: Format IDisplayEventConnection
Albert Chaulk [Thu, 6 Apr 2017 20:36:29 +0000 (16:36 -0400)]
vrwm: Handle intents launched by the VR app
This gives us the following cases
Same appid, vr mode = 1: normal use
Same appid, vr mode = 0: VR app 2D intent
Different appid, vr mode = 1: Switching apps
Different appid, vr mode = 0: 2D app
Bug:
37099690
Test: Manual with calculator and oobetest
Change-Id: I7ba6588fb80d4c8de4f1372d047682f1d5d54860
Hangyu Kuang [Mon, 27 Feb 2017 22:30:39 +0000 (14:30 -0800)]
(DO NOT MERGE) media: Add new OMX extension for setting latency.
Test: Video Recording
Bug:
34221970
Change-Id: I525d86358f3f25a04ae0ac1a80461f8414e5a163
(cherry picked from commit
0c77369428af1e6baaf98a069aa2873bc4d3df1d)
Martijn Coenen [Thu, 6 Apr 2017 20:05:27 +0000 (13:05 -0700)]
vndservicemanager: use separate SELinux class.
For doing access control.
Bug:
36052864
Test: device boots
Change-Id: I263679ed4532ec52b1e64e5e60bdc064b7484073
Dan Stoza [Mon, 3 Apr 2017 20:27:12 +0000 (13:27 -0700)]
libgui: Make IDisplayEventConn... a SafeInterface
Converts IDisplayEventConnection to be a SafeInterface such that all
parceling/unparceling is done automatically.
Test: libgui_test + SurfaceFlinger_test + manual testing
Change-Id: I2f5311315dc4fadbf3599f2b28f150097f53de57
Dan Stoza [Mon, 3 Apr 2017 20:09:08 +0000 (13:09 -0700)]
libgui: Remove RefBase from BitTube
Removes RefBase from BitTube, since because it is not a Binder object,
it doesn't need to be reference-counted in this way.
In the process, we rename IDisplayEventConnection::getDataChannel to
IDEC::stealReceiveChannel to make it clearer that this is a non-const
operation on the remote end that removes its access to the receive
channel.
This also adds a couple of methods for moving the receive file
descriptor out of one BitTube and into another, since this is the
essence of the IDisplayEventConnection::stealReceiveChannel method,
and now with C++11 move semantics, we can do this without needing to
return an sp<> from EventThread's implementation of stealReceiveChannel.
Test: m -j + manual testing
Change-Id: Ibaaca2a14fb6155052fe5434c14bc3e671b43743
Dan Stoza [Sat, 1 Apr 2017 00:10:06 +0000 (17:10 -0700)]
libgui: Make BitTube Parcelable and use unique_fd
This change completes the Parcelable interface for BitTube (it was
semi-Parcelable before as it implemented writeToParcel, but this adds
the complementary readFromParcel).
It also changes the send and receive file descriptors from ints to
android::base::unique_fds, which simplifies some of their lifecycle
management.
Finally, it changes the default constructor to leave the class
uninitialized, adding a BitTube(BitTube::DefaultSize) constructor to
replace that functionality (and paving the way for the ability to
default-construct a BitTube prior to readFromParcel'ing into it).
Test: m -j + manual testing
Change-Id: Ib0cba4c7c443b449a9a1837f07f7334395d4f10d
Dan Stoza [Fri, 31 Mar 2017 23:30:42 +0000 (16:30 -0700)]
libgui: Format BitTube and move into gui namespace
Reformats BitTube using the framework default .clang-format and moves
it into the android::gui namespace.
Test: m -j + manual testing
Change-Id: I5ea748b809f37c2ec4dcfb41e7b84daf7a084368
Dan Stoza [Fri, 31 Mar 2017 23:18:10 +0000 (16:18 -0700)]
libgui: Move BitTube out of system include dir
Moves the BitTube header out of the system include directory and into
libgui's include directory.
Test: m -j
Change-Id: I046e3f07ec4a58736c8de7ea7ba0f43a8e3e328b
Dan Stoza [Thu, 30 Mar 2017 23:37:19 +0000 (16:37 -0700)]
libgui: Normalize IDisplayEventConnection methods
This change modifies the IDisplayEventConnection API such that every
synchronous method returns a status_t (to be able to return transport
errors). This required changing getDataChannel to return its channel by
output parameter rather than return type.
Currently no more error messages are checked than before, but this will
both enable calling code to check error messages if it desires and,
more importantly, allow the Bp/Bn code to be semi-automatically
generated using SafeInterface.
Test: libgui_tests + manual testing
Change-Id: I8d5bc5ef0475cee07b638a97079b234f0384c022
Dan Stoza [Thu, 30 Mar 2017 23:09:13 +0000 (16:09 -0700)]
libgui: Format IDisplayEventConnection
Applies the framework default .clang-format and does a bit of tidying
up (reflowing comments to 100 characters, reordering includes, etc.).
Test: libgui_tests + manual testing
Change-Id: I8b3515339a93dbe42ce4421cb561b78ed2fe9104
Daniel Nicoara [Thu, 6 Apr 2017 17:46:31 +0000 (13:46 -0400)]
Add missing functor for DVR API
Missing initialization of functor.
Bug:
36050795
Test: Ran app using the DVR API and verified API is loaded correctly.
Change-Id: Ia2f7a6cb69e0be724ea0c67ce2d467f8605ec29b
Scott Randolph [Thu, 6 Apr 2017 18:01:41 +0000 (18:01 +0000)]
Merge "Use explicit .c_str() for hidl_string" into oc-dev
Jiwen Cai [Thu, 6 Apr 2017 17:54:38 +0000 (17:54 +0000)]
Merge "dvr_api GetExternalSurface returns ANativeWindow" into oc-dev
Courtney Goeltzenleuchter [Thu, 6 Apr 2017 14:18:34 +0000 (08:18 -0600)]
ifdef HWC2 functionality
Fix build issue for devices that are not using HWC2.
Test: lunch hikey-userdebug; make
Change-Id: I47e9aa09b8db3f0dca6d733e2c8f3b59c45547b2
Calin Juravle [Wed, 5 Apr 2017 03:21:05 +0000 (20:21 -0700)]
Fix permission for public secondary dex files
- make the oat directory accessible by others
- if the dex files is readable by others and we are not doing a speed-
profile compilation make the oat file readable by others.
Bug:
36896515
Test: adb shell cmd package compile -r bg-dexopt --secondary-dex com.google.android.gms
check that the oat directory and files have the right permissions
Change-Id: I1829217004353fb8c86e5a6b7eb570555e36a495
TreeHugger Robot [Thu, 6 Apr 2017 15:38:39 +0000 (15:38 +0000)]
Merge "Check if a visible layer exists instead of an invisible layer exists" into oc-dev
Marco Nelissen [Thu, 6 Apr 2017 14:39:28 +0000 (14:39 +0000)]
Merge "Make sure all HWC2 functionality is ifdef'd" into oc-dev
Courtney Goeltzenleuchter [Thu, 6 Apr 2017 14:18:34 +0000 (08:18 -0600)]
Make sure all HWC2 functionality is ifdef'd
Fix build issue for devices that are not using HWC2.
Test: lunch bat_land, make
Change-Id: If94222cd00f2c8b0b1f7a464ad0378224fc059e7
Daniel Nicoara [Thu, 6 Apr 2017 13:47:26 +0000 (13:47 +0000)]
Merge "VR: Remove HIDL VR Composer from service/vr/vr_window_manager" into oc-dev
Yifan Hong [Thu, 6 Apr 2017 06:23:16 +0000 (06:23 +0000)]
Merge "lshal --init-vintf stripped <impl> tag." into oc-dev
Courtney Goeltzenleuchter [Thu, 6 Apr 2017 00:34:30 +0000 (18:34 -0600)]
Fix build error with configstore
CL I2c0895f8afbbb2947b62164acaf62a491c451dc0 made it necessary
to include android.hardware.configstore-utils as a shared library.
Was causing build error that looked like:
ninja: error:
'out/target/product/generic_x86_64/obj/HEADER_LIBRARIES/android.hardware.configstore-utils_intermediates/export_includes',
needed by
'out/target/product/generic_x86_64/obj/NATIVE_TESTS/EGL_test_intermediates/import_includes',
missing and no known rule to make it
23:25:54 ninja failed with: exit status 1
make: *** [run_soong_ui] Error 1
Happened in tests directory which doesn't get built by default.
Test: build opengl/tests
Change-Id: I2c731c4e1b23888edd67fd9311b797fba61c011f
Peng Xu [Thu, 6 Apr 2017 00:00:07 +0000 (00:00 +0000)]
Merge "Set sensor operation parameter implementation" into oc-dev
Courtney Goeltzenleuchter [Wed, 5 Apr 2017 21:51:24 +0000 (15:51 -0600)]
Fix soong dependency issue
Test: make
Change-Id: I3ea00a32f08395c81e44625603d878a2f1b6975b
Courtney Goeltzenleuchter [Wed, 5 Apr 2017 22:23:11 +0000 (22:23 +0000)]
Merge changes I9da985a7,I2bd642aa,I9358b3c9,I9d3c60b1 into oc-dev
* changes:
Add test for FP16 surface support
Dump info about wide-color
Add wide-color support to SurfaceFlinger
Add debug string functions for graphics.h enums
Albert Chaulk [Wed, 5 Apr 2017 22:01:58 +0000 (18:01 -0400)]
Check if a visible layer exists instead of an invisible layer exists
Multiple layers may exist at index 0 and what we really want to know
is if any of them are active, not if any aren't.
Bug:
36867186,
36036583
Test: Launch ithaca then youtube
Change-Id: I5881a838c7df8670fa42eece558717140d4cb021
Albert Chaulk [Wed, 5 Apr 2017 22:12:14 +0000 (22:12 +0000)]
Merge "vrwm: Also recenter the controller when should_recenter_ is set" into oc-dev
Martijn Coenen [Wed, 5 Apr 2017 21:16:12 +0000 (14:16 -0700)]
Add option to list vndservicemanager services.
Test: adb shell service list -v
Bug:
36987120
Change-Id: I081a0c725ddb4175f4ab43714c25cc41ed2239a3
TreeHugger Robot [Wed, 5 Apr 2017 20:52:08 +0000 (20:52 +0000)]
Merge "Strip VR daemon binaries." into oc-dev
TreeHugger Robot [Wed, 5 Apr 2017 18:58:19 +0000 (18:58 +0000)]
Merge "dumpstate: don't read /proc/interrupts" into oc-dev
Nick Bray [Wed, 5 Apr 2017 18:45:08 +0000 (11:45 -0700)]
Strip VR daemon binaries.
Stripping was suppressed to assist debugging, but this adds 24+ MB to
release builds.
Bug: none
Test: manual
Change-Id: Ic2a866930cebb67af052b6665af2631b131601ae
TreeHugger Robot [Wed, 5 Apr 2017 18:05:44 +0000 (18:05 +0000)]
Merge changes I1ed97f98,I32449355,I5c84d6f2,Ib9652278,I73deaa44 into oc-dev
* changes:
libgui: Make IConsumerListener a SafeInterface
libgui: Format IConsumerListener
libbinder: Support Flattenable in SafeInterface
libgui: Add missing FenceTime header to GLConsumer
libgui: Fix naming/enums in ISurfaceComposerClient
Adrian Roos [Wed, 5 Apr 2017 18:02:51 +0000 (18:02 +0000)]
Merge "dumpstate: add dropbox crashes to bugreport" into oc-dev
TreeHugger Robot [Wed, 5 Apr 2017 17:35:46 +0000 (17:35 +0000)]
Merge "Use Configstore to test getWideColor function" into oc-dev
Adrian Roos [Tue, 4 Apr 2017 23:35:44 +0000 (16:35 -0700)]
dumpstate: add dropbox crashes to bugreport
Adds system crashes from the dropbox to the end of the bugreport
to allow diagnosing issues even after the device has rebooted.
Test: adb bugreport
Bug:
36852229
Bug:
26849505
Change-Id: I11589b81208e916d25d543c43c1283bdbffda949
Alex Vakulenko [Fri, 24 Mar 2017 00:45:40 +0000 (17:45 -0700)]
Make init process create PDX sockets for services
To help us control the creation of PDX sockets and properly labeling
them for SELinux, let the init process create sockets for us based on
the settings specified in .rc files for service processes.
For (test) services that are meant to be started manually from command
line (e.g. test services), keep the old functionality as an option so
that UDS endpoint can be created in a way that it automatically creates
the socket in the service itself.
Bug:
35220925
Test: `m -j32` succeeds. Ran sailfish in VR mode and made sure all the
services (surfaceflinger, performanced, sensord, bufferhub).
`m -j32 checkbuild` succeeds as well.
Change-Id: Ief733b41b534cea19b1bea31de76b06051aa50ab
Courtney Goeltzenleuchter [Tue, 28 Mar 2017 23:29:52 +0000 (17:29 -0600)]
Add test for FP16 surface support
Test: adb shell /data/nativetest/EGL_test/EGL_test
adb shell /system/bin/test-opengl-gl_basic # look for RED_SIZE: of 16.
Bug:
29940137
Change-Id: I9da985a7574d3582b06cf55bc02515db0869505a
Courtney Goeltzenleuchter [Mon, 27 Mar 2017 18:18:12 +0000 (12:18 -0600)]
Dump info about wide-color
Test: adb shell dumpsys SurfaceFlinger
Look for section titled "Wide-Color information:"
Bug:
29940137
Change-Id: I2bd642aa026b49bbb9effd5cb1687c7a36dae684
Courtney Goeltzenleuchter [Wed, 22 Mar 2017 19:46:46 +0000 (13:46 -0600)]
Add wide-color support to SurfaceFlinger
Test: manual testing
Bug:
29940137
Change-Id: I9358b3c982e0205e598fd20cbf8d2e956591b3ac
Courtney Goeltzenleuchter [Wed, 22 Mar 2017 19:09:12 +0000 (13:09 -0600)]
Add debug string functions for graphics.h enums
Test: see dataspace and colormode details when running with debug
Bug:
29940137
Change-Id: I9d3c60b1f9c71c44aba475450c7f867dcd68627e
Courtney Goeltzenleuchter [Mon, 13 Mar 2017 20:30:00 +0000 (14:30 -0600)]
Use Configstore to test getWideColor function
Test: make tests in libs/gui/tests/
Test: adb sync
Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter="SurfaceTest.GetWideColorSupport"
Bug:
29940137
Change-Id: I618c300b1882d2ebd7474586d72f4d469e2d41bf
Howard Chen [Tue, 28 Mar 2017 09:05:11 +0000 (17:05 +0800)]
Support halt the trace when schd-dbg hit deadline
Usage:
start atrace as usual:
>atrace --async_start sched freq ...
then use schd-dbg with -trace arguments
./schd-dbg -trace -deadline_us 2500
This makes schd-dbg to stop trace once it detects a transaction
duration over the deadline. By writing '0' to
/sys/kernel/debug/tracing and halt the process. The tracelog is
then available on /sys/kernel/debug/trace
Bug: b/
36669012
Test: sailfish with prebuilt kernel
Change-Id: I9f81109cd22705f070f3f78ddf3539b8fa1f9973
(cherry picked from commit
f682b13716006d0f41c13a26e34f3592ff28d1cc)
Corey Tabaka [Mon, 3 Apr 2017 19:01:31 +0000 (12:01 -0700)]
libpdx: Decay variant types to correctly handle cv-reference types.
Decay the types used internally for storage in Variant and update
type matching logic to handle the decayed types.
Bug:
36401174
Test: build; pdx_tests passes.
Change-Id: I93c68cce47d6f7d195b901afe3e63685befc08fe
Corey Tabaka [Mon, 27 Mar 2017 23:41:20 +0000 (16:41 -0700)]
libpdx: Fix forward declarations using default template args.
The default expression for the template argument should be part of
the forward declaration rather than the defintion to properly resolve
overloads with nested types that use Serializable.
Bug:
36401174
Test: build; run pdx tests
Change-Id: I520750cdd86bc3141084fbe62412e13635fc7d7b
Corey Tabaka [Tue, 4 Apr 2017 18:07:05 +0000 (11:07 -0700)]
Add additional accessors to IonBuffer and BufferHubBuffer.
- Add accessor to underlying GraphicBuffer in IonBuffer.
- Add const accessors to underlying IonBuffer(s) in BufferHubBuffer.
Bug:
36401174
Test: bufferhub_tests; buffer_hub_queue-test
Change-Id: I24a6c19b141bb50ffa06e861a4533e10d55b5b20
Corey Tabaka [Wed, 22 Mar 2017 09:12:52 +0000 (02:12 -0700)]
Update BufferHubQueue in preparation for VrFlinger refactor.
- Expose buffer hub queue id to the client. This helpful as an id
in queue enumeration in the DisplayManager API.
- Address log convention deviations.
- Clean up BufferHub service error paths.
- Clean up queue importing logic to query the service for queue
parameters to avoid accidental abuse.
- Make spawning consumer queues more efficient in RPC only cases.
- Clean up ConsumerQueue constructor logic; move to pdx::Client
base class (through BufferHubQueue) instead of pdx::ClientBase.
ConsumerQueue::Create doesn't make sense as a ConsumerQueue can
only be created from another queue.
Bug:
36401174
Test: build; run buffer_hub_queue-test
Change-Id: I0530f64ecb514d0f37bb13f9ce201b6ff51502b6
Jaesoo Lee [Thu, 30 Mar 2017 06:25:19 +0000 (15:25 +0900)]
import configstore-utils as a shared library.
android.hardware.configstore-utils is now built as a shared library.
Bug:
36275627
Test: Built and check the boot log messages
Change-Id: I44b0f6a69e267f670380e18a37a519bb2ef1ee84
Jaesoo Lee [Thu, 30 Mar 2017 06:24:15 +0000 (15:24 +0900)]
import configstore-utils as a shared library.
android.hardware.configstore-utils is now built as a shared library.
Bug:
36275627
Test: Built and check the boot log messages
Change-Id: I83ccebcad8005f39ca8534477d7cd3f69a2041aa
Mathias Agopian [Wed, 5 Apr 2017 00:42:52 +0000 (00:42 +0000)]
Merge "Remove useless GraphicBuffer() constructor" into oc-dev
Jiwen 'Steve' Cai [Tue, 4 Apr 2017 22:02:04 +0000 (15:02 -0700)]
dvr_api GetExternalSurface returns ANativeWindow
Now that we have a public NDK API to convert an ANativeWindow to a Java
Surface, we no longer need to mess with Jni and libandroid_runtime in
libdvr.
See more information at:
http://ag/#/q/topic:ANativeWindow_toSurface+(status:open+OR+status:merged)
Also, as a side effect, we are now free to convert this library to use
Android.bp (though we probably want to hold off for a while).
Bug:
36266201
Test: Built and ran dvr_buffer_queue-test
Change-Id: Ia0f6a8735c7d508195c30e3c7d040791e13a6ce3
Dan Stoza [Wed, 29 Mar 2017 00:05:13 +0000 (17:05 -0700)]
libgui: Make IConsumerListener a SafeInterface
Converts IConsumerListener to be a SafeInterface such that all
parceling/unparceling is done automatically.
Test: libgui_tests + manual testing
Change-Id: I1ed97f9802e320662cd29e181539ce839ffe0f3f
Dan Stoza [Tue, 28 Mar 2017 20:55:48 +0000 (13:55 -0700)]
libgui: Format IConsumerListener
Applies the framework default .clang-format and does a bit of tidying
up (reflowing comments to 100 characters, reordering includes, etc.).
Test: libgui_tests + manual testing
Change-Id: I324493551bca5a6c6a011cbe773021236e11e992
Dan Stoza [Wed, 29 Mar 2017 00:02:05 +0000 (17:02 -0700)]
libbinder: Support Flattenable in SafeInterface
Adds support for sending and receiving Flattenable parameters as part
of a SafeInterface.
Test: New test in binderSafeInterfaceTest
Change-Id: I5c84d6f27ac1f8c7ad37210e836f390e02b92959
Dan Stoza [Tue, 28 Mar 2017 23:44:21 +0000 (16:44 -0700)]
libgui: Add missing FenceTime header to GLConsumer
GLConsumer had a missing dependency on FenceTime which was hidden by
coincidental includes in other files. This adds the proper include.
Test: GLConsumer compiles
Change-Id: Ib96522787fa22746e4aeb2cf047bfd667869add6
Dan Stoza [Mon, 3 Apr 2017 22:16:27 +0000 (15:16 -0700)]
libgui: Fix naming/enums in ISurfaceComposerClient
Moves the Tag enum out of the ISurfaceComposerClient header and into an
anonymous namespace in the .cpp file, changes it to UPPER_UNDERSCORE
naming, and makes its LAST entry actually point to the last value.
Test: m -j + manual testing
Change-Id: I73deaa446a87709548c2069c3a1f29605967ab97
Yifan Hong [Tue, 4 Apr 2017 22:33:59 +0000 (15:33 -0700)]
lshal --init-vintf stripped <impl> tag.
<impl> tag is deprecated from the manifest.
Test: lshal --init-vintf
Change-Id: Ifa9336e3dfe7f1091ee61aa6a10df9629ad98b49
Sandeep Patil [Tue, 21 Mar 2017 21:18:12 +0000 (14:18 -0700)]
dumpstate: don't read /proc/interrupts
/proc/interrupts may be dumped by dumpstate HAL if required.
The framework dependency on this file is unnecessary, since the
interrupt names are hardware / kernel dependent anyway.
Bug:
36486169
Test: 'adb shell bugreport' on sailfish
Change-Id: I336318b24ce4bcc5b710645359b7c4ccda3f6989
Signed-off-by: Sandeep Patil <sspatil@google.com>
Mathias Agopian [Tue, 4 Apr 2017 21:51:01 +0000 (21:51 +0000)]
Merge "fix race condition that can cause a use after free" into oc-dev
Mathias Agopian [Tue, 4 Apr 2017 00:16:41 +0000 (17:16 -0700)]
Remove useless GraphicBuffer() constructor
Test: compiled & run
Bug:
36869708
Change-Id: I83d80a1cde28671135b7716a434c503aeefcec46