OSDN Git Service
TreeHugger Robot [Thu, 11 May 2017 01:03:27 +0000 (01:03 +0000)]
Merge "Surfaceflinger: Propagate type & UID from parent layers" into oc-dev
Albert Chaulk [Thu, 4 May 2017 20:59:44 +0000 (16:59 -0400)]
Surfaceflinger: Propagate type & UID from parent layers
Bug:
36589137
Test: Launch chrome in VR (surfaceview has a parent)
Change-Id: I9320a8df249d1d5790323b22f0ba88a792f9468f
TreeHugger Robot [Wed, 10 May 2017 20:25:35 +0000 (20:25 +0000)]
Merge "Revert "atrace: Poke PDX services using utility class."" into oc-dev
Quddus Chong [Wed, 10 May 2017 19:52:40 +0000 (19:52 +0000)]
Merge "docs: Fixed comments to generate API refs correctly. Test: Verified by manually generating the API refs." into oc-dev
TreeHugger Robot [Wed, 10 May 2017 19:19:59 +0000 (19:19 +0000)]
Merge "SF: Use last call time to rate limit resyncs" into oc-dev
Alex Vakulenko [Wed, 10 May 2017 18:32:52 +0000 (18:32 +0000)]
Revert "atrace: Poke PDX services using utility class."
This reverts commit
f70680e995d6df4604c9b34f6a5afebe613d7feb.
There appears to be a bug in the current build system that does not
cleanly rebuild all targets using static libraries built across
different build systems (Soong/make). With the recent change to PDX
connection handshake, it is important that all clients and services are
rebuilt to include the new protocol changes. However this is not the
case when doing incremental builds. Some services remain untouched
during global builds and hence there is a disparity in clients' and
services' implementations of the protocol.
atrace being one of the clients is affected (the symptom is that when
started atrace just hangs waiting for connection to a PDX service).
While there is nothing wrong with the current state of code, but the
issue of incomplete incremental builds is causing headaches for people
trying to chase performance issues in O with systrace (since it is
unclear that they need to do a clean build).
Reverting the dependency on PDX in atrace for now until the build system
issue is identified and fixed property. This change can be re-landed then.
Bug:
38201226
Change-Id: Ica0efc38f600295ef6f64b9f9584ac41cb84f424
TreeHugger Robot [Wed, 10 May 2017 17:31:52 +0000 (17:31 +0000)]
Merge "Otapreopt: Work around bug
38186355" into oc-dev
Quddus Chong [Tue, 9 May 2017 21:43:16 +0000 (14:43 -0700)]
docs: Fixed comments to generate API refs correctly.
Test: Verified by manually generating the API refs.
Change-Id: I77f2072d2aa83a6c71e11b216e206c4e6563ab88
Andreas Gampe [Wed, 10 May 2017 15:18:06 +0000 (08:18 -0700)]
Otapreopt: Work around bug
38186355
Temporarily also accept a malformed string for null.
Bug:
38186355
Test: m
Test: manual OTA
Change-Id: I19d527d04b86596551f7bed54221c67be06c34c7
TreeHugger Robot [Wed, 10 May 2017 14:40:19 +0000 (14:40 +0000)]
Merge "Correct PowerManager transaction IDs." into oc-dev
Mike Stroyan [Wed, 10 May 2017 13:57:06 +0000 (13:57 +0000)]
Merge "egl: recover from failed eglMakeCurrent" into oc-dev
Nicolas Geoffray [Wed, 10 May 2017 10:48:14 +0000 (10:48 +0000)]
Merge "Always unlink the out_vdex_file." into oc-dev
Nicolas Geoffray [Tue, 9 May 2017 13:20:09 +0000 (14:20 +0100)]
Always unlink the out_vdex_file.
Even if we pass the same vdex file as input and output to
dex2oat, make sure we unlink it if dex2oat failed.
bug:
38113240
Test: manual, killing dex2oat invocation
(cherry picked from commit
7bb165779f59bfa1324ca991f64ab98331a410b5)
Change-Id: I157b3d33179b5bff1ca38750bee24aab01c5a19b
Luke Song [Wed, 10 May 2017 05:16:03 +0000 (05:16 +0000)]
Merge "Move sensord" into oc-dev
TreeHugger Robot [Wed, 10 May 2017 02:51:50 +0000 (02:51 +0000)]
Merge "bufferqueue: allow null stream in H2BGBP::setSidebandStream" into oc-dev
TreeHugger Robot [Wed, 10 May 2017 02:46:32 +0000 (02:46 +0000)]
Merge "Split libdvr_headers from libdvr: Step 1" into oc-dev
Lajos Molnar [Tue, 9 May 2017 20:52:30 +0000 (13:52 -0700)]
bufferqueue: allow null stream in H2BGBP::setSidebandStream
Bug:
38172844
Change-Id: I585e1dc01f2e7f955c39046c1592bda7bea45a23
Quddus Chong [Tue, 9 May 2017 17:39:23 +0000 (10:39 -0700)]
docs: Fixed doc comments to enable Doxygen to generate code block correctly.
Test: Verified by manually generating docs.
Change-Id: Id79a77e71deb26e0dd5d22843c2f09d9000e587d
Jiwen 'Steve' Cai [Tue, 9 May 2017 00:07:52 +0000 (17:07 -0700)]
Split libdvr_headers from libdvr: Step 1
Converts libdvr's Android file into Android.bp as now we have no Java
deps anymore. Then we added header only library libdvr_headers for all
headers.
Next step is to figure out how to split out public headers and make them
easy to be copied into Google3.
Bug:
37578558
Test: dvr_api-test
Change-Id: Idf15cfd5aa61cd7d6f5cc15c4db7cce485b3b293
Daniel Nicoara [Mon, 8 May 2017 20:44:42 +0000 (16:44 -0400)]
Remove vr_wm service (try 2)
VR Window Manager has moved to VrCore. Removing deprecated code.
Bug:
36051907
Test: Compiled and verified VR still works.
Change-Id: Iea0c7646df8a068c058099cf19ef7d76bbf89192
TreeHugger Robot [Tue, 9 May 2017 10:00:37 +0000 (10:00 +0000)]
Merge "dvrapi: Pass layer_count down" into oc-dev
TreeHugger Robot [Tue, 9 May 2017 08:03:02 +0000 (08:03 +0000)]
Merge "Remove slices from buffers" into oc-dev
TreeHugger Robot [Tue, 9 May 2017 06:37:01 +0000 (06:37 +0000)]
Merge "Remove framebuffer_target" into oc-dev
Hendrik Wagenaar [Mon, 8 May 2017 05:19:17 +0000 (22:19 -0700)]
dvrapi: Pass layer_count down
* We were missing layer count, which would prevent multiview
from working
Bug:
37245304
Test: MultiLayerBufferQueue
Change-Id: I88b41f1aa7665df01e89a7386cbc23b15c9a79b0
Hendrik Wagenaar [Sun, 7 May 2017 05:36:04 +0000 (22:36 -0700)]
Remove slices from buffers
* code no longer required, as it will be handled in vrcore
Bug:
38076195
Test: Manually ran testing
Change-Id: Id28918a3bf73b99cbb57aad4c21251b7a9623074
TreeHugger Robot [Tue, 9 May 2017 05:06:15 +0000 (05:06 +0000)]
Merge "remove vr/libeds" into oc-dev
TreeHugger Robot [Tue, 9 May 2017 01:29:31 +0000 (01:29 +0000)]
Merge "Fix BufferHubQueueProducer::dequeueBuffer" into oc-dev
TreeHugger Robot [Tue, 9 May 2017 00:32:21 +0000 (00:32 +0000)]
Merge "Prevent buggy display orientation when exiting vr" into oc-dev
TreeHugger Robot [Mon, 8 May 2017 23:50:34 +0000 (23:50 +0000)]
Merge "Return an error if apiVersion is 1.1+." into oc-dev
Jiwen 'Steve' Cai [Mon, 8 May 2017 23:02:36 +0000 (16:02 -0700)]
Fix BufferHubQueueProducer::dequeueBuffer
Seems this might just be a rebase glitch.
Bug:
38137230
Test: buffer_hub_queue_producer-test
Change-Id: I94ce059475fad4cf31cec52a9661eb6fc9cd2e00
TreeHugger Robot [Mon, 8 May 2017 23:20:12 +0000 (23:20 +0000)]
Merge "Do not return an error if the dalvik-cache odex is missing" into oc-dev
Ian Elliott [Mon, 8 May 2017 21:59:09 +0000 (15:59 -0600)]
Return an error if apiVersion is 1.1+.
The Vulkan loader is supposed to check the requested apiVersion and return
VK_ERROR_INCOMPATIBLE_DRIVER if the requested version is not supported. The
loader wasn't performing the check, nor returning the error. A log message is
also issued, explaining why the application failed to create an instance.
Bug:
38040828
Test: Modify cube to use 1.0 or 1.1 and ensure proper return value.
Change-Id: I8cc792305a346c6e1db40f61d5235c301d8ae848
Hendrik Wagenaar [Mon, 8 May 2017 21:45:44 +0000 (14:45 -0700)]
Remove framebuffer_target
* Remove unused variable
Bug:
38132845
Test: Compiled
Change-Id: I08afba75b72c3d27aca042755bf36584979c7f0c
Calin Juravle [Thu, 4 May 2017 00:22:27 +0000 (17:22 -0700)]
Do not return an error if the dalvik-cache odex is missing
Test: adb shell /data/nativetest/installd_service_test/installd_service_test
Tried uninstalling an updated version of prebuilt app.
Didn't find the error message in the logcat.
Bug:
35804241
Change-Id: Iec045fa9c9ac8f036785fe5cbd0f7e43f2b680c1
Dan Stoza [Mon, 8 May 2017 21:03:54 +0000 (14:03 -0700)]
SF: Use last call time to rate limit resyncs
SurfaceFlinger has a method which tells it to resync to hardware vsync
as long as it hasn't resynced too recently. This is used when we
receive a request for a Choreographer wakeup since if it has been a
while since we animated, we have likely drifted.
To determine whether we should actually resync or whether we should
instead rate-limit the call, we compare the current time to the last
time we drew, but this is problematic. When we first start animating
after a period of inactivity, this triggers a resync every time the
method is called until we receive the first frame and draw it, even if
we are already mid-resync, which delays the time until we can lock onto
the hardware vsync phase and has the side-effect of causing weird wakeup
times in both Choreographer and SurfaceFlinger.
This change instead keeps a local timestamp which is updated every time
the method is called and therefore effectively rate limits even before
the first frame is received.
Bug:
38117777
Test: ApiDemos/ListView + manual inspection of systraces
Change-Id: I7210594f9ed6ed5397bb0f3f14a8966503454643
Mike Stroyan [Mon, 8 May 2017 16:47:24 +0000 (10:47 -0600)]
egl: recover from failed eglMakeCurrent
Some drivers don't actually restore current context when
eglMakeCurrent fails. Restore the current context directly.
Bug:
37244059
Change-Id: I857da78078dd212b523d690415cf525ecd463961
Fixes:
37244059
Test: android.server.cts.ActivityManagerDisplayTests
Jim Kaye [Mon, 8 May 2017 16:07:27 +0000 (09:07 -0700)]
Fix enforcement of sensor's slowest rate
This code calculates a sensor's maximum sample
period in nanoseconds. This is stored as a 64-bit
value, as required for periods greater than ~2.1
seconds.
The calculation was done with 32-bit arithmetic,
sometimes resulting in overflow. This caused the
sensor to run at its maximum rate.
(The requested period is first clipped to the maximum
period. When the maximum period appears negative, it
is always used. The now-negative period is then clipped
to the minimum period, resulting in the sensor's maximum
supported rate.)
Bug:
37465457
Test: Verified correct operation with Goldfish accelerometer,
which has a 60-second maximum period.
Change-Id: Ic75a9dc7c4e7c9ca690eafbfa51ee50540ca5aaf
TreeHugger Robot [Sun, 7 May 2017 16:30:05 +0000 (16:30 +0000)]
Merge "libpdx_uds: Always create channel sockets in the server process" into oc-dev
Hendrik Wagenaar [Sun, 7 May 2017 03:45:09 +0000 (20:45 -0700)]
remove vr/libeds
* libeds is no longer needed
Bug:
38075841
Test: compiled
Change-Id: I61b7edb284633ab8e960387c0479b1a924d68222
Martijn Coenen [Sat, 6 May 2017 04:46:45 +0000 (04:46 +0000)]
Merge "Correctly set minimum priority on nodes." into oc-dev
Jeff Sharkey [Sat, 6 May 2017 01:58:07 +0000 (01:58 +0000)]
Merge "Clear cached files on external storage." into oc-dev
Jeff Sharkey [Wed, 3 May 2017 17:36:42 +0000 (11:36 -0600)]
Clear cached files on external storage.
When clearing cached files belonging to an app, include any cached
files on external storage. Since we need to keep sdcardfs in the
loop about any file deletions, we always mutate by going through the
sdcardfs layer instead of behind its back.
Test: cts-tradefed run commandAndExit cts-dev -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.StorageHostTest
Bug:
37486230,
37566983,
37913442,
37914374
Change-Id: If174bf7eaf682da83cf0ab1b4938fe9a5956d464
TreeHugger Robot [Fri, 5 May 2017 20:37:26 +0000 (20:37 +0000)]
Merge changes from topic 'o-compositor-unification' into oc-dev
* changes:
Remove the VR compositor from the framework.
Remove unnecessary clients and rename files.
Support multiple consumer queues.
Return pdx::Status<T> from BufferHubQueue::Dequeue.
Add support for consumer queue initial import and hangup.
TreeHugger Robot [Fri, 5 May 2017 20:32:30 +0000 (20:32 +0000)]
Merge "Revert "Deprecate producer/consumer usage: Step 3"" into oc-dev
TreeHugger Robot [Fri, 5 May 2017 20:02:52 +0000 (20:02 +0000)]
Merge "Switch touch input device on hover events." into oc-dev
Martijn Coenen [Fri, 5 May 2017 18:16:59 +0000 (11:16 -0700)]
Correctly set minimum priority on nodes.
It looks like libbinder has always set the minimum priority
for a node to 0x7f (127). This is an invalid value as far
as the kernel is concerned, since the current driver only
accepts positive nice values (0..19). The effect of using
0xf7 is that the nice value was clamped to MAX_NICE (19) -
so effectively the kernel never raised the priority
based on the min_priority setting of a node. Correct this
by just using MAX_NICE directly.
Additionally, a recent change removed the use of the
gDisableBackgroundScheduling flag, which system_server
used to make sure that incoming transactions were not
executed at a lower priority. That behavior is actually
still desired, so this change sets the min_priorirty
value to 0 for processes that have requested background
scheduling to be disabled. The effect of that is that
all transactions into those nodes will be executed with
a priority of at least nice 0 (and potentially higher,
depending on the priority of the caller).
Bug:
37677242
Test: verified /d/binder output
Change-Id: I7cbfd309d04cbd052f868fbfe0930529ff21a48a
Corey Tabaka [Fri, 5 May 2017 18:14:54 +0000 (18:14 +0000)]
Revert "Deprecate producer/consumer usage: Step 3"
These changes are effectively handled as part of another, higher priority CL.
This reverts commit
7cab28591d5cdc26913a0882df1b28e3f5393066.
Change-Id: I4cf47eee219870b2758997fe5bd6019d83b82451
Jiwen Cai [Fri, 5 May 2017 16:58:47 +0000 (16:58 +0000)]
Merge "Deprecate producer/consumer usage: Step 3" into oc-dev
Daniel Nicoara [Fri, 5 May 2017 15:20:25 +0000 (15:20 +0000)]
Merge "Revert "Remove vr_wm service"" into oc-dev
Daniel Nicoara [Fri, 5 May 2017 15:08:12 +0000 (15:08 +0000)]
Revert "Remove vr_wm service"
This reverts commit
efd3e0873e24f25e855bb64fae8485fc04690d56.
Reason for revert: IVrWindowManager.aidl is still used in frameworks/base
Change-Id: Id52fb8cf482ea5ab141ebf6b304c12b18a9d8070
Daniel Nicoara [Fri, 5 May 2017 14:56:17 +0000 (14:56 +0000)]
Merge "Remove vr_wm service" into oc-dev
Corey Tabaka [Thu, 20 Apr 2017 23:04:07 +0000 (16:04 -0700)]
Remove the VR compositor from the framework.
Remove the VR compositor framework and enable out-of-process VR composition
in VrCore.
This CL seems large due to the ripple effect of changing the VrFlinger
API and protocol types. There are three major modules that require
concurrent changes:
1. Protocol definitions and low-level VrFlinger API in libdisplay.
* Additional changes needed to keep old interfaces working for
a short time while replacing the dependent code (dvrGraphics*).
2. VrFlinger service implementation changes to support VrCore compositor
and the removal of the internal compositor.
3. Changes to libdvr platform library API due to changes in #1 and #2.
Because of the nature of the interdependence of types and other defs it is
difficult to break this CL into smaller chunks. However, review of the three
major modules (libdisplay, libdvr, and libvrflinger) may be done separately
to ease the mental burden on reviewers.
Change Summary:
- Remove obsolete screenshot service. VR screenshots will be implemented
by VrCore.
- Update display protocol definitions for changes in VrFlinger service
requirements. The majority of the changes in libdisplay are a
consequence of these protocol and service changes.
- Update VrFlinger to support two kinds of surfaces:
1. Application - use by VR apps.
2. Direct - used by VrCore (protected by permission check).
- Remove VrFlinger internal compositor and GL context.
- Remove obsolete debug console.
- Update VrFlinger hardware composer interface to handle direct
surfaces only, removing the concept of GPU (compositor) layers.
- Update display manager to expose access to application surface info
to VrCore (protected by permission check).
- Update libdvr platform library interfaces for changes to VrFlinger
API / protocol.
- Clean up libdvr API struct setup using a common include.
- Add C++ header-only helpers for DVR platform library opaque types.
Bug:
36401174
Test: Build; run VrFlinger display test tool.
Change-Id: I15abfde5f72dbb3725a3f58621486afba6b64902
TreeHugger Robot [Fri, 5 May 2017 00:43:40 +0000 (00:43 +0000)]
Merge "surfaceflinger: make EventThread FIFO" into oc-dev
TreeHugger Robot [Fri, 5 May 2017 00:38:32 +0000 (00:38 +0000)]
Merge "Revert "Set the atrace clock to boot when possible and mono otherwise."" into oc-dev
Corey Tabaka [Thu, 20 Apr 2017 21:42:08 +0000 (14:42 -0700)]
Remove unnecessary clients and rename files.
- Remove clients for obsolete services.
- Rename display protocol defs file to match purpose.
- Rename display manager client file. "impl" does not match naming
conventions used by DVR libraries.
- Remove video mesh surface interface. This will be replaced by more
general surface support in the unified O compositor.
Bug:
36401174
Test: Build; run cube sea.
Change-Id: Idb782623319329f6fa1b0aa45005d9fee3b9957d
Corey Tabaka [Thu, 4 May 2017 17:56:05 +0000 (10:56 -0700)]
Support multiple consumer queues.
- Add support for importing posted buffers when spawing a new
consumer queue.
- Correctly handle adding signaled buffers to epoll with edge
triggered mode set.
- Add test for multi-consumer behavior.
Bug:
36401174
Test: buffer_hub_queue-test passes.
Change-Id: Id09f01502a1b18bf80a0ae465c2941b548cde2e4
Ajay Panicker [Thu, 4 May 2017 22:56:16 +0000 (22:56 +0000)]
Merge "Re-enable the zipping of bluetooth logs" into oc-dev
Corey Tabaka [Tue, 25 Apr 2017 23:47:44 +0000 (16:47 -0700)]
Return pdx::Status<T> from BufferHubQueue::Dequeue.
Switch to using Status<T> to return buffers or meaningful errors
from BufferHubQueue::Dequeue. This enables determining whether an
error is normal (e.g. timeout) or abnormal (e.g. disconnect).
Bug:
36401174
Test: buffer_hub_queue-test passes.
Change-Id: Ifef5f737a5e737b70d19bdbffd7544a993438e1c
Corey Tabaka [Thu, 20 Apr 2017 20:42:02 +0000 (13:42 -0700)]
Add support for consumer queue initial import and hangup.
- Add support for consumer queues to import buffers that are created
before the consumer queue is created, making multi-consumer queue
patterns possible. This is essential for VrFlinger operation.
- Add support for notifying consumer queues when the producer queue
hangs up.
- Correct the epoll event loop to check for hangups even when buffers
are available.
- Add method to retrieve the event fd from a queue.
- Add trace logging and minor cleanup.
- Improve bufferhubd dump state output.
Bug:
36401174
Test: build; bufferhub tests pass.
Change-Id: Idd6f38a3341c048192062734e288d11de48bc4d4
TreeHugger Robot [Thu, 4 May 2017 22:16:53 +0000 (22:16 +0000)]
Merge "Deprecate producer/consumer usage: Step 2" into oc-dev
Carmen Jackson [Thu, 4 May 2017 22:01:33 +0000 (15:01 -0700)]
Revert "Set the atrace clock to boot when possible and mono otherwise."
This change broke CTS tests.
This reverts commit
56a2ba0b0009b6a8db7c385489e5fef4c0d32d0a.
Bug:
37906221
Test: cts-tradefed run singleCommand cts-dev --module
CtsAtraceHostTestCases passes locally.
Change-Id: Ia82732eac33fbde8bddc1e8de7a68c20befe760e
Tim Murray [Thu, 4 May 2017 20:38:49 +0000 (13:38 -0700)]
surfaceflinger: make EventThread FIFO
Jitter in EventThread scheduling was contributing to SystemUI jank.
Test: thread is FIFO
bug
36631902
Change-Id: I930c729b27403ef8941e9a1e0ef8ec57a3d323a0
Kevin Schoedel [Wed, 3 May 2017 17:58:56 +0000 (13:58 -0400)]
Switch touch input device on hover events.
On a phone in a Mirage headset, two touch nubs are in continuous
contact with the screen while in VR. In order to pass virtual
touchpad events to embedded 2D content that is confined to the
physical display (e.g. permission dialogues), allow a hover event
(as generated for the user's controller pointer) to initiate a
new event.
Bug:
36686408
Test: manual on device
Change-Id: I868472721599843b183b2615aac8e6cd87a58e8e
TreeHugger Robot [Thu, 4 May 2017 01:44:30 +0000 (01:44 +0000)]
Merge "Correct sensor handle for operation parameter" into oc-dev
TreeHugger Robot [Wed, 3 May 2017 22:45:11 +0000 (22:45 +0000)]
Merge "Fix lshal --init-vintf may have empty <instance> tags." into oc-dev
Peng Xu [Mon, 1 May 2017 22:09:49 +0000 (15:09 -0700)]
Correct sensor handle for operation parameter
Sensor handle 0 is a valid sensor handle. Use SENSORS_HANDLE_BASE - 1
instead in inject_sensor_data for operation parameter.
Test: sensor cts passes
Bug:
37956047
Change-Id: I138c2e21d74f532526a53a76be857866764a3d53
Alex Vakulenko [Tue, 2 May 2017 00:48:35 +0000 (17:48 -0700)]
libpdx_uds: Always create channel sockets in the server process
Whenever a client connects to PDX service endpoint, the connected
socket was being used as the channel connection. This makes it
difficult to ensure that the socket has the appropriate SELinux
label applied.
Changed the implementation to make sure that the actual channel socket
pair is created in one place in the server process.
The new Endpoint::CreateChannelSocketPair() is now being used to
create the channel sockets when an incoming connection is accepted
and when PushChannel request is received.
The newly created channel socket is sent to the client in response
to connection request.
Bug:
37646189
Test: Device boots. CubeSea launches.
Change-Id: Id3158484aeb18007f18b279afc60613076f80f14
Yifan Hong [Wed, 3 May 2017 20:13:23 +0000 (13:13 -0700)]
Fix lshal --init-vintf may have empty <instance> tags.
Test: on bullhead, lshal --init-vintf | grep "<instance></instance>"
Change-Id: Ic6ab977adcdc5293015e9daba506b625629e5352
Fixes:
37311367
Jiwen 'Steve' Cai [Tue, 2 May 2017 22:43:11 +0000 (15:43 -0700)]
Deprecate producer/consumer usage: Step 3
Remove all remaining client side reference to producer/consumer usage
and update dvr_xxx API.
Bug:
37881101
Test: Build, flash, ran particles.apk and dvr_api-test
Change-Id: I6a60b8f97264f131cd5b9a5de8db0ca178d55097
TreeHugger Robot [Wed, 3 May 2017 17:28:01 +0000 (17:28 +0000)]
Merge "Remove newline from "capturing trace..."" into oc-dev
TreeHugger Robot [Wed, 3 May 2017 17:27:09 +0000 (17:27 +0000)]
Merge "SurfaceFlinger: Select which layer state to visit" into oc-dev
Michael Wright [Tue, 2 May 2017 17:38:43 +0000 (18:38 +0100)]
Correct PowerManager transaction IDs.
Test: build, compare to java aidl output
Change-Id: I74022bf5a5e7f685a7dfaf99d6863f27d01be706
TreeHugger Robot [Wed, 3 May 2017 11:56:22 +0000 (11:56 +0000)]
Merge "Revert "Disable input-vdex when doing speed-profile."" into oc-dev
Nicolas Geoffray [Wed, 3 May 2017 08:04:28 +0000 (08:04 +0000)]
Merge "Update installd to new compiler filters." into oc-dev
Carmen Jackson [Tue, 2 May 2017 23:55:33 +0000 (16:55 -0700)]
Remove newline from "capturing trace..."
Turns out this broke a test.
Bug:
37906221
Test: Compiled
Change-Id: I750a2831114071de2627da08de033cbe7924b51b
Jiwen 'Steve' Cai [Tue, 2 May 2017 18:21:18 +0000 (11:21 -0700)]
Deprecate producer/consumer usage: Step 2
Clean up bufferhub_rpc, display_rpc and service side producer/consumer
usage reference.
Next (final) step is to remove all remaining client side reference to
producer/consumer usage and update dvr_xxx API.
This also fixes a minor typo in dvr_named_buffer-test
Bug:
37881101
Test: Build, flash, ran particles.apk and buffer_hub_queue-test
Change-Id: Ibae4376c1fd1ed964843d8b2ad2fb27204fe5e28
Dan Stoza [Thu, 27 Apr 2017 20:42:17 +0000 (13:42 -0700)]
SurfaceFlinger: Select which layer state to visit
Modifies the traverseIn[Reverse]ZOrder methods to also take an enum
value specifying whether to traverse the current state or the drawing
state.
This has the effect of fixing a bug where we weren't performing
transactions on a child layer because its parent was only visiting its
drawing layers (rather than its current layers) and was thus skipping
the child, which had not yet been moved from current to drawing.
Bug:
36858924
Test: ChildLayerTest.Bug36858924 doesn't hang
Change-Id: I1959f40bc07e77864ba024511d429592a398a67a
Jiwen 'Steve' Cai [Tue, 2 May 2017 05:43:21 +0000 (22:43 -0700)]
Deprecate producer/consumer usage: Step 1
Clean up producer/consumer usage from IonBuffer.
Bug:
37881101
Test: Build, flash, ran particles.apk
Change-Id: I66a8c4db2348b014a7b458b69157ed7c150112e1
Nicolas Geoffray [Mon, 24 Apr 2017 13:34:59 +0000 (13:34 +0000)]
Revert "Disable input-vdex when doing speed-profile."
https://android-review.googlesource.com/#/c/377754/ is fixing vdex and delayout.
bug:
37558732
Test: device boots, vdex works on OTA, input-vdex is passed
for speed-profile
This reverts commit
a2dbefc7a51482acb8d5d139c9e2f01306ef9ceb.
(cherry picked from commit
3c95f2da655567d9fcc28d7a35dcc79d75cb61f6)
Change-Id: I4d36ec79ca681e20ffb181ec099ce5b229e38aed
Nicolas Geoffray [Tue, 25 Apr 2017 11:28:28 +0000 (12:28 +0100)]
Update installd to new compiler filters.
bug:
34715556
Test: build and boot aosp bullhead
(cherry picked from commit
4b64ed991b23dc1215ce10fce69c3e2595dd34b7)
Change-Id: Ib94bda97ed131878c3be092d58920500d2d8d556
Jiwen 'Steve' Cai [Sat, 22 Apr 2017 01:49:53 +0000 (18:49 -0700)]
BufferQueue: plumbing mConsumerIsProtected
This replaces current logic in BufferQueue that uses
GRALLOC_USAGE_PROTECTED to indicate whether an ANativeWindow is capable
of handling hardware protected gralloc buffers. Current logic is
problematic as it enforces producer to use protected buffer no matter
whether producer side is capable of writing into a protected buffer.
This new solution, however, introduces a new NATIVE_WINDOW_* flag that
consumer can set on IGraphicBufferConsumer to indicate its capacity,
which can then be queried by producer via Surface::query (or
IGraphicBufferProducer::query).
When consumer is capable of reading protected buffer (e.g. a protected
GL context), the producer can generate either a protected or unprotected
buffer.
When consumer is not capable of reading protected buffer, the producer
should only generate unprotected buffer.
Bug:
35726763
Test: videoplayer-nodrm-protected.apk and videoplayer-drm-protected.apk
both works.
Change-Id: I1bf6814c9f1f81f9e04f0e89646b0733ff1a4758
Yifan Hong [Mon, 1 May 2017 22:02:15 +0000 (22:02 +0000)]
Merge "Fix lshal not to squash HAL entries incorrectly." into oc-dev
TreeHugger Robot [Mon, 1 May 2017 20:26:21 +0000 (20:26 +0000)]
Merge "Call validateDisplay() when skipping frames" into oc-dev
Yifan Hong [Tue, 18 Apr 2017 21:19:40 +0000 (14:19 -0700)]
Fix lshal not to squash HAL entries incorrectly.
Bug:
37311367
Test: lshal --init-vintf
Change-Id: I693b53f5f342c7600e4031d020792fd347e3ae83
TreeHugger Robot [Fri, 28 Apr 2017 22:39:33 +0000 (22:39 +0000)]
Merge "Set the atrace clock to boot when possible and mono otherwise." into oc-dev
Carmen Jackson [Fri, 28 Apr 2017 17:34:50 +0000 (10:34 -0700)]
Set the atrace clock to boot when possible and mono otherwise.
Bug:
32379831
Test: Inspected the trace_clock while running atrace, without including the .rc file change:
$ adb shell
marlin:/ # cat /d/tracing/trace_clock
[local] global counter uptime perf mono boot
marlin:/ # atrace --async_start freq
capturing trace...
marlin:/ # cat /d/tracing/trace_clock
local global counter uptime perf mono [boot]
marlin:/ # atrace --async_stop > /dev/null
marlin:/ # cat /d/tracing/trace_clock
local global counter uptime perf mono [boot]
marlin:/ # exit
Test: Inspected the trace_clock while running atrace, after the .rc file change:
$ adb shell
marlin:/ # cat /d/tracing/trace_clock
local global counter uptime perf mono [boot]
marlin:/ # atrace --async_start freq
capturing trace...
marlin:/ # cat /d/tracing/trace_clock
local global counter uptime perf mono [boot]
Change-Id: I9ec88df109b311b90c9d88fe3a70f9ce090b4d15
Daniel Nicoara [Thu, 20 Apr 2017 21:42:27 +0000 (17:42 -0400)]
Remove vr_wm service
VR Window Manager has moved to VrCore. Removing deprecated code.
Bug:
36051907
Test: Compiled and verified VR still works.
Change-Id: I892c6cf3ffa16c1891c18a0b3f57b00ca0565fc7
Daniel Nicoara [Fri, 28 Apr 2017 15:15:17 +0000 (15:15 +0000)]
Merge changes from topic 'allow-vrcore' into oc-dev
* changes:
Check for caller permissions in virtual touchpad service
Restrict VR HWC access to services with RESTRICTED_VR_ACCESS permission
Mathias Agopian [Wed, 26 Apr 2017 00:38:08 +0000 (17:38 -0700)]
AHardwareBuffer now reports its stride
Test: compile / manual
Bug:
37686713
Change-Id: I1d75c67816717dc5d8ef4c71c1ca45d1d86aefb3
Mathias Agopian [Thu, 20 Apr 2017 23:35:39 +0000 (16:35 -0700)]
Plumb gralloc producer/consumer bits correctly
Bug:
33350696
Test: compile, boot device, cts
Change-Id: I2f078cf4bbdf0db49f2e914b051f55629fb37eb6
TreeHugger Robot [Thu, 27 Apr 2017 22:51:39 +0000 (22:51 +0000)]
Merge "SurfaceFlinger: Correct extra parent scaling with buffer transforms." into oc-dev
Ajay Panicker [Thu, 27 Apr 2017 21:04:32 +0000 (14:04 -0700)]
Re-enable the zipping of bluetooth logs
Bug:
35998031
Test: Enable snoop logs in developer settings then take a bugreport
Change-Id: Id17c27a659b3e53a0435867ce76fa3de110f1c0c
Robert Carr [Thu, 27 Apr 2017 01:32:15 +0000 (18:32 -0700)]
SurfaceFlinger: Correct extra parent scaling with buffer transforms.
We need to account for the buffer transform when calculating the extra
parent scaling.
Bug:
37673612
Test: Regression test included in Transaction_test
Change-Id: Ice21f1ecf3789358646d95c753ee361f50c0d246
TreeHugger Robot [Thu, 27 Apr 2017 19:37:49 +0000 (19:37 +0000)]
Merge "Fix minor corner cases in BufferHubQueueProducer" into oc-dev
Steven Thomas [Wed, 26 Apr 2017 21:34:01 +0000 (14:34 -0700)]
Call validateDisplay() when skipping frames
Layer management was getting screwed up in vr flinger in the following
scenario:
1. In frame X, post a new buffer to layer L.
2. Decide to skip frame X (e.g. because we're behind our target
schedule).
3. In frame X+1, delete layer L.
When we skip the frame in step 2, we weren't calling validateDisplay()
or presentDisplay() on the hardware composer, so the composer's internal
command queue wasn't being flushed. When we called validateDisplay() for
frame X+1 the update buffer call from frame X would be run, referencing
the deleted layer L, causing a crash.
Now we always call validateDisplay() when we change the layer state,
even if we decide to skip the frame.
I also added code to explicitly clear the Composer object's internal
command buffer when we transfer control from surface flinger to vr
flinger and back. There were certain cases where there could be commands
left in the command buffer after the display handoff.
Bug:
37159844
Test: I used an app switcher script that quickly switches vr apps, which
would consistently trigger the setLayerBuffer crash. I confirmed with
this CL applied I can run the app switcher until surface flinger runs
out of file descriptors (that's a separate bug), and I never see the
setLayerBuffer crash. I also confirmed from the log output there are no
additional hardware composer errors.
Change-Id: I85832b87f393754dc6b034eb38f2937d7b58ed74
TreeHugger Robot [Wed, 26 Apr 2017 21:50:15 +0000 (21:50 +0000)]
Merge "Newly create idmap only when it is outdated" into oc-dev
Peng Xu [Wed, 26 Apr 2017 17:42:33 +0000 (17:42 +0000)]
Merge "Sensor: Limit delay to maximum possible value before sending to HAL" into oc-dev
Jaekyun Seok [Wed, 19 Apr 2017 02:01:38 +0000 (11:01 +0900)]
Newly create idmap only when it is outdated
For now, OverlayManagerService calls Installd.idmap() whenever a user
is changed, and then a idmap is re-generated even though there are no
changes on its target apk and overlay apk.
This CL is to avoid such unnecessary re-generation of idmap. Instead
only a group id will be updated when the idmap isn't outdated.
Test: building succeeded and tested on sailfish.
Bug:
37179531
Change-Id: Id726cbbc621bd64f2a329798b2ab5436f0c28d70
Jiwen 'Steve' Cai [Sat, 15 Apr 2017 00:56:55 +0000 (17:56 -0700)]
Fix minor corner cases in BufferHubQueueProducer
1/ Set reasonable return value BufferHubQueueProducer::query.
2/ Don't error out for setSharedBufferMode(false),
setAutoRefresh(false), as they are just setting default values again.
3/ Supports addition buffer metadata: transformt, crop,
data_format (a.k.a. color_format).
4/ This also changes BufferHubQueueProducer to be based of
BnInterface<IGraphicBufferProducer> so that itself can be passed via Binder.
Bug:
37342387
Bug:
36907193
Test: exoplayer_demo
Change-Id: Ie00bb79f6a249e09905ae52f85a85a67744cc90d
Chia-I Wu [Tue, 25 Apr 2017 22:12:56 +0000 (22:12 +0000)]
Merge "VR: fix libvr_hwc-hal build" into oc-dev