OSDN Git Service
Siarhei Vishniakou [Wed, 16 Aug 2017 22:00:38 +0000 (22:00 +0000)]
Remove window obscurement information. am:
ff7dd3b9ea am:
f431a7cbf8 am:
3cc2b38fe3 -s ours am:
27f3e039d8 -s ours am:
2f1a072f37 -s ours am:
f5b4455491 -s ours am:
4c0b934cca -s ours am:
56618d838c -s ours am:
fd78a0345a -s ours am:
693e897408 -s ours am:
2a46ddbd61 -s ours am:
2566e4686a -s ours
am:
ce50585702 -s ours
Change-Id: Ifa1dac1ddb5c9ab76527f90e1ca900b79215f5da
Siarhei Vishniakou [Wed, 16 Aug 2017 21:51:09 +0000 (21:51 +0000)]
Remove window obscurement information. am:
ff7dd3b9ea am:
f431a7cbf8 am:
3cc2b38fe3 -s ours am:
27f3e039d8 -s ours am:
2f1a072f37 -s ours am:
f5b4455491 -s ours am:
4c0b934cca -s ours am:
56618d838c -s ours am:
fd78a0345a -s ours am:
693e897408 -s ours am:
2a46ddbd61 -s ours
am:
2566e4686a -s ours
Change-Id: Id8eaeb73beca2ed388f6446a2bca3048c65831fa
Siarhei Vishniakou [Wed, 16 Aug 2017 21:43:04 +0000 (21:43 +0000)]
Remove window obscurement information. am:
ff7dd3b9ea am:
f431a7cbf8 am:
3cc2b38fe3 -s ours am:
27f3e039d8 -s ours am:
2f1a072f37 -s ours am:
f5b4455491 -s ours am:
4c0b934cca -s ours am:
56618d838c -s ours am:
fd78a0345a -s ours am:
693e897408 -s ours
am:
2a46ddbd61 -s ours
Change-Id: I88bc5be0fb0672a9edd7d9571b8bcd7db938a6fc
Siarhei Vishniakou [Wed, 16 Aug 2017 21:33:01 +0000 (21:33 +0000)]
Remove window obscurement information. am:
ff7dd3b9ea am:
f431a7cbf8 am:
3cc2b38fe3 -s ours am:
27f3e039d8 -s ours am:
2f1a072f37 -s ours am:
f5b4455491 -s ours am:
4c0b934cca -s ours am:
56618d838c -s ours am:
fd78a0345a -s ours
am:
693e897408 -s ours
Change-Id: I1368abe1a36bfa8f32fc3d5c7e173e28a9d18ef9
Siarhei Vishniakou [Wed, 16 Aug 2017 21:26:02 +0000 (21:26 +0000)]
Remove window obscurement information. am:
ff7dd3b9ea am:
f431a7cbf8 am:
3cc2b38fe3 -s ours am:
27f3e039d8 -s ours am:
2f1a072f37 -s ours am:
f5b4455491 -s ours am:
4c0b934cca -s ours am:
56618d838c -s ours
am:
fd78a0345a -s ours
Change-Id: I04e14d78a5d0ced89b7ad6220c056efe51dbddc2
Siarhei Vishniakou [Wed, 16 Aug 2017 21:14:32 +0000 (21:14 +0000)]
Remove window obscurement information. am:
ff7dd3b9ea am:
f431a7cbf8 am:
3cc2b38fe3 -s ours am:
27f3e039d8 -s ours am:
2f1a072f37 -s ours am:
f5b4455491 -s ours am:
4c0b934cca -s ours
am:
56618d838c -s ours
Change-Id: Id92244f080cf20e87d76e0b8df1155b6a989cbc3
Siarhei Vishniakou [Wed, 16 Aug 2017 21:07:08 +0000 (21:07 +0000)]
Remove window obscurement information. am:
ff7dd3b9ea am:
f431a7cbf8 am:
3cc2b38fe3 -s ours am:
27f3e039d8 -s ours am:
2f1a072f37 -s ours am:
f5b4455491 -s ours
am:
4c0b934cca -s ours
Change-Id: I45a115d25132a6211c656def10417033ae22296b
Siarhei Vishniakou [Wed, 16 Aug 2017 20:59:30 +0000 (20:59 +0000)]
Remove window obscurement information. am:
ff7dd3b9ea am:
f431a7cbf8 am:
3cc2b38fe3 -s ours am:
27f3e039d8 -s ours am:
2f1a072f37 -s ours
am:
f5b4455491 -s ours
Change-Id: I20195d51ae2fcb2ddee1237d3f7d8013769cd1f2
Siarhei Vishniakou [Wed, 16 Aug 2017 20:51:58 +0000 (20:51 +0000)]
Remove window obscurement information. am:
ff7dd3b9ea am:
f431a7cbf8 am:
3cc2b38fe3 -s ours am:
27f3e039d8 -s ours
am:
2f1a072f37 -s ours
Change-Id: Ie134ebccadc7984c7c674f1515ba7b7b756213ce
Siarhei Vishniakou [Wed, 16 Aug 2017 20:46:40 +0000 (20:46 +0000)]
Remove window obscurement information. am:
ff7dd3b9ea am:
f431a7cbf8 am:
3cc2b38fe3 -s ours
am:
27f3e039d8 -s ours
Change-Id: I7b5770ee14516de87179470d398f33f34b36ad20
Siarhei Vishniakou [Wed, 16 Aug 2017 20:39:48 +0000 (20:39 +0000)]
Remove window obscurement information. am:
ff7dd3b9ea am:
f431a7cbf8
am:
3cc2b38fe3 -s ours
Change-Id: Ia2b6838ce682d4e361c9cff9502d6ed6623704e0
Siarhei Vishniakou [Wed, 16 Aug 2017 20:32:41 +0000 (20:32 +0000)]
Remove window obscurement information. am:
ff7dd3b9ea
am:
f431a7cbf8
Change-Id: Ifdaed9e6e75c06fc89b042c37ded20b2b273531b
Siarhei Vishniakou [Wed, 16 Aug 2017 20:24:33 +0000 (20:24 +0000)]
Remove window obscurement information.
am:
ff7dd3b9ea
Change-Id: I3da41df019f3d660a5fd10d1f4239846158c62fe
Thierry Strudel [Mon, 14 Aug 2017 22:19:37 +0000 (15:19 -0700)]
Revert "Postpone color mode change until after boot animation"
This reverts commit
c53d3558d55dfd1d1c424b0d632fea693113e83e.
To have better control on when the color shift is happening, the
bootloader asset will be aligned with the Android OS applied
saturation. So apply the color setting as soon as SF is up.
Bug:
63520186
Bug:
63823274
Test: Verify that sRGB is applied at the start of boot animation
Change-Id: I611eb61266c909fde50e7ea2b4c1314541228736
Siarhei Vishniakou [Fri, 11 Aug 2017 02:30:36 +0000 (02:30 +0000)]
[automerger] DO NOT MERGE Remove window obscurement information. am:
edac95e737 am:
dda3bdf8a8 am:
3cd049ca28 skipped:
2564b9fdf5 am:
67c9dace8b am:
09c59e7f69 am:
a31fb53edd am:
b63caaf102 skipped:
c2116af15c
am:
dfe44a12ab
Change-Id: I90f59bd979e33e39a9f9cfa8ca8f58d93a00994f
Android Build Merger (Role) [Fri, 11 Aug 2017 00:24:46 +0000 (00:24 +0000)]
[automerger] DO NOT MERGE Remove window obscurement information. am:
edac95e737 am:
dda3bdf8a8 am:
3cd049ca28 skipped:
2564b9fdf5 am:
67c9dace8b am:
09c59e7f69 am:
a31fb53edd am:
b63caaf102 skipped:
c2116af15c
Change-Id: Ieec59681e3dc14340da368355ead622a7f0dcc1c
Android Build Merger (Role) [Fri, 11 Aug 2017 00:24:37 +0000 (00:24 +0000)]
[automerger] DO NOT MERGE Remove window obscurement information. am:
edac95e737 am:
dda3bdf8a8 am:
3cd049ca28 skipped:
2564b9fdf5 am:
67c9dace8b am:
09c59e7f69 am:
a31fb53edd am:
b63caaf102
Change-Id: I6a904953ea2d7f3943dd0daaf3f28efed121f15d
Siarhei Vishniakou [Fri, 11 Aug 2017 00:19:48 +0000 (00:19 +0000)]
[automerger] DO NOT MERGE Remove window obscurement information. am:
edac95e737 am:
dda3bdf8a8 am:
3cd049ca28 skipped:
2564b9fdf5 am:
67c9dace8b am:
09c59e7f69
am:
a31fb53edd
Change-Id: I28d7687ca2590be1e14a0113fdd5734c76310f9d
Siarhei Vishniakou [Thu, 10 Aug 2017 22:18:45 +0000 (22:18 +0000)]
[automerger] DO NOT MERGE Remove window obscurement information. am:
edac95e737 am:
dda3bdf8a8 am:
3cd049ca28 skipped:
2564b9fdf5 am:
67c9dace8b am:
09c59e7f69
Change-Id: Ieedde100761fe504f080fbc4d538353c3dbd59e8
Siarhei Vishniakou [Thu, 10 Aug 2017 22:18:41 +0000 (22:18 +0000)]
[automerger] DO NOT MERGE Remove window obscurement information. am:
edac95e737 am:
dda3bdf8a8 am:
3cd049ca28 skipped:
2564b9fdf5 am:
67c9dace8b
Change-Id: Iabd279c9b858e4117d3f37a2c9dc6b08d18e9b3f
Siarhei Vishniakou [Thu, 10 Aug 2017 22:18:37 +0000 (22:18 +0000)]
[automerger] DO NOT MERGE Remove window obscurement information. am:
edac95e737 am:
dda3bdf8a8 am:
3cd049ca28 skipped:
2564b9fdf5
Change-Id: I9340b61f66403d4a76aef61e8d5c523d46604f34
Siarhei Vishniakou [Thu, 10 Aug 2017 22:18:33 +0000 (22:18 +0000)]
[automerger] DO NOT MERGE Remove window obscurement information. am:
edac95e737 am:
dda3bdf8a8 am:
3cd049ca28
Change-Id: I75bc0db5679a6ae55c647b31f206755128fa47f7
Siarhei Vishniakou [Thu, 10 Aug 2017 22:18:29 +0000 (22:18 +0000)]
[automerger] DO NOT MERGE Remove window obscurement information. am:
edac95e737 am:
dda3bdf8a8
Change-Id: I313f92051e52e6b1b0f3d2f564781c66e6ad4918
Siarhei Vishniakou [Thu, 10 Aug 2017 22:18:25 +0000 (22:18 +0000)]
[automerger] DO NOT MERGE Remove window obscurement information. am:
edac95e737
Change-Id: I61e9a4e826ef2cafd73ad3591f3a3560a7002253
Siarhei Vishniakou [Thu, 10 Aug 2017 20:41:09 +0000 (20:41 +0000)]
DO NOT MERGE Remove window obscurement information. am:
5508ca2c19 am:
3847972ad2 am:
cd71708eca am:
88855f8de7 am:
41f75ecb79 -s ours
am:
d0cd82abe9
Change-Id: I4727fefa936cbafaa2a2d138909ae0a468d76c32
Siarhei Vishniakou [Thu, 10 Aug 2017 20:26:25 +0000 (20:26 +0000)]
DO NOT MERGE Remove window obscurement information. am:
5508ca2c19 am:
3847972ad2 am:
cd71708eca am:
88855f8de7
am:
41f75ecb79 -s ours
Change-Id: Id698475c3c67bbacecdb92b6d5de50e62ecd135c
Siarhei Vishniakou [Thu, 10 Aug 2017 19:46:58 +0000 (19:46 +0000)]
DO NOT MERGE Remove window obscurement information. am:
5508ca2c19 am:
3847972ad2 am:
cd71708eca
am:
88855f8de7
Change-Id: I29b20c983adb81d9a3669f3bae6b1cde4ccd37e0
Siarhei Vishniakou [Thu, 10 Aug 2017 19:40:02 +0000 (19:40 +0000)]
DO NOT MERGE Remove window obscurement information. am:
5508ca2c19 am:
3847972ad2
am:
cd71708eca
Change-Id: I7f55cd96dbf257b25e5b1c6d69d9ae65d0947598
Siarhei Vishniakou [Thu, 10 Aug 2017 19:33:00 +0000 (19:33 +0000)]
DO NOT MERGE Remove window obscurement information. am:
5508ca2c19
am:
3847972ad2
Change-Id: I0761c69032de13e471210a716ccca78e0cb2a36e
Siarhei Vishniakou [Thu, 10 Aug 2017 19:25:29 +0000 (19:25 +0000)]
DO NOT MERGE Remove window obscurement information.
am:
5508ca2c19
Change-Id: Ida11ec9828763593ec0ecceddd9f022ed691ecfa
TreeHugger Robot [Thu, 10 Aug 2017 06:40:10 +0000 (06:40 +0000)]
Merge "Fix DEQP failure regarding VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT:" into oc-dr1-dev
Hsin-Yi Chen [Thu, 10 Aug 2017 06:03:47 +0000 (06:03 +0000)]
Cast binder data type to uint64_t in high bits test
am:
7e04edd5b3
Change-Id: Idad9b44edb27f34ac1bebebfe07b1246c348804e
Courtney Goeltzenleuchter [Mon, 7 Aug 2017 23:13:04 +0000 (17:13 -0600)]
Fix DEQP failure regarding VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT:
Needed to teach GetNativeDataspace about the new color space.
Bug:
64402817
Test: adb -s HT7391A00040 -d shell am start \
-n com.drawelements.deqp/android.app.NativeActivity \
-e cmdLine '"deqp --deqp-case=dEQP-VK.wsi.android.swapchain.* \
--deqp-log-filename=/sdcard/dEQP-Log.qpa"'
Change-Id: I3fe7fefff1f074656d766f2b24639adcdbfd2fb7
(cherry picked from commit
e327e9adfc85028d77d1252746c9ee07ff99f0b3)
Jorim Jaggi [Wed, 9 Aug 2017 16:10:29 +0000 (16:10 +0000)]
Merge "Fix out-of-order transactions (2/2)" into oc-dr1-dev
Hsin-Yi Chen [Fri, 28 Jul 2017 03:28:52 +0000 (11:28 +0800)]
Cast binder data type to uint64_t in high bits test
1. Cast fb->binder to uint64_t before shifting by 32 bits. It avoids
undefined result when binder is 32-bit.
2. Swap EXPECT_EQ arguments. The first one is expected value and the
second is actual value.
Bug:
64118463
Test: ./binderLibTest on x86 emulator
Change-Id: I4f736bd5b55db5af8598db0d5cd5fbd9ef323448
Jorim Jaggi [Tue, 8 Aug 2017 13:22:08 +0000 (15:22 +0200)]
Fix out-of-order transactions (2/2)
The following sequence of order may happen which cause wrong
surface positions:
- WA.animate updates surfaces properties to S
- WA.animate closes the surface transaction
- Since the previous animation transaction wasn't commited yet,
closeSurfaceTransaction blocks and updating the surface properties
on SF side is deferred.
- In the meantime, since we are not holding WM lock, we have
another thread updating surfaces properties to S'
- Closing the transaction in this thread completes immediately
because it's not a synchronous transaction or animation
transaction.
- After a frame has been processed S gets applied on SF side as
the other transaction is done waiting for the frame to complete.
The issue here is that properties are now set to S instead of S'.
Sad!
We originally started calling closeTransaction without the WM
lock being held because it lead to thread starvation (b/
38192114).
However, that fix has this big flaw as described above.
To fix this, we create an empty animation transaction before
updating the animation properties to simulate the back-pressuring
behavior of animation transactions without the WM lock being held.
If that transaction arrives out of order, it doesn't matter at all
because it is empty.
After that, we perform the animation udpate in a transaction that
is not marked as an animation transaction, and thus will not
block, which avoids the starvation issue.
Part of this change is also a change in SF to allow executing
empty animation transactions.
Test: go/wm-smoke
Test: Open VideoPlayer from VRCore, close it, observe no wrong
positiioning of surfaces.
Test: Inspect traces while animating. Ensure back pressuring still
works.
Change-Id: Ie545463e71e0d1bc73439d14381077a290d2f959
Fixes:
63905190
Bug:
38192114
Siarhei Vishniakou [Mon, 31 Jul 2017 21:25:02 +0000 (14:25 -0700)]
Remove window obscurement information.
If ACTION_OUTSIDE_EVENTS contain information about whether the touch is
obscured, then a pattern of invisible, untouchable, unfocusable
SYSTEM_ALERT_WINDOWS can be placed across the screen to determine
approximate locations of touch events without the user knowing.
Bug:
31097064
Test: cts-tradefed run cts --class android.security.cts.MotionEventTest
Merged-In: Ie30dcc2402d5422a19a43ffe7d1411d91681efc2
Change-Id: I1dc5f003ada7ad3c753e078a8c1fbe10a89fb42f
Chia-I Wu [Mon, 7 Aug 2017 22:27:49 +0000 (15:27 -0700)]
libsurfaceflinger: fix screenshot permission check
Fix the logic for layers we check isSecure or isVisible for. It was
regressed by my previous change to support
WINDOW_TYPE_DONT_SCREENSHOT.
Bug:
63311708
Bug:
62656774
Test: CTS
Change-Id: I7768cb590014cc610ec564847958bbd98742c277
TreeHugger Robot [Sat, 5 Aug 2017 03:28:04 +0000 (03:28 +0000)]
Merge "Fix race condition clearing VSYNC enable on VrFlinger startup." into oc-dr1-dev
Siarhei Vishniakou [Fri, 4 Aug 2017 19:37:47 +0000 (12:37 -0700)]
DO NOT MERGE Remove window obscurement information.
If ACTION_OUTSIDE_EVENTS contain information about whether the touch is
obscured, then a pattern of invisible, untouchable, unfocusable
SYSTEM_ALERT_WINDOWS can be placed across the screen to determine
approximate locations of touch events without the user knowing.
Bug:
31097064
Test: cts-tradefed run cts --class android.security.cts.MotionEventTest
Change-Id: Iebbb68231cbb76f87241201e7640a1fe3e188625
Corey Tabaka [Fri, 4 Aug 2017 00:14:08 +0000 (17:14 -0700)]
Fix race condition clearing VSYNC enable on VrFlinger startup.
Fix VrFlinger to avoid touching the VSYNC enable setting in HWC
during startup by avoiding calling the cleanup code when entering
idle state for the first time.
Bug:
63626797
Test: Manual testing.
Change-Id: I5320bd5c1febb51367e759a8619d35f155789628
TreeHugger Robot [Thu, 3 Aug 2017 19:33:53 +0000 (19:33 +0000)]
Merge "Fix missing check on buffer import." into oc-dr1-dev
TreeHugger Robot [Thu, 3 Aug 2017 12:45:02 +0000 (12:45 +0000)]
Merge "libsurfaceflinger: handle WINDOW_TYPE_DONT_SCREENSHOT" into oc-dr1-dev
TreeHugger Robot [Wed, 2 Aug 2017 21:40:32 +0000 (21:40 +0000)]
Merge "Remove constraint on touch location." into oc-dr1-dev
Chia-I Wu [Tue, 1 Aug 2017 18:29:00 +0000 (11:29 -0700)]
libsurfaceflinger: handle WINDOW_TYPE_DONT_SCREENSHOT
When a layer has type WINDOW_TYPE_DONT_SCREENSHOT, hide it from
everywhere but the primary display. This should be reverted when we
switch to use layer hierarchy properly.
Bug:
63311708
Test: screencap, screenrecord, android.view.cts.SurfaceViewSyncTest
Change-Id: I6a8d6b93399b0dc42832588f9a6c5e8879a8b754
Tarandeep Singh [Wed, 2 Aug 2017 20:32:58 +0000 (20:32 +0000)]
Merge changes from topic '
62033391' into oc-dr1-dev
* changes:
Add displayId in InputDispatcher, InputTransport
Enable InputMonitors for non-default display.
TreeHugger Robot [Wed, 2 Aug 2017 18:35:41 +0000 (18:35 +0000)]
Merge changes If4271719,I9c9b5de9,I46a26a67 into oc-dr1-dev
* changes:
Communicate composition buffer dataspace to HWC
Add VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT.
Check wide-color support before adding extensions
TreeHugger Robot [Wed, 2 Aug 2017 18:35:05 +0000 (18:35 +0000)]
Merge "EGL: Add EGL_GL_scrgb extension" into oc-dr1-dev
Tarandeep Singh [Mon, 31 Jul 2017 17:51:54 +0000 (10:51 -0700)]
Add displayId in InputDispatcher, InputTransport
Bug:
62033391
Test: make StructLayout_test
make libinput_tests_InputEvent_test
make libinput_tests_InputPublisherAndConsumer_test
Run tests under /data/nativetest64/libinput_tests/
Change-Id: Id02cab83924d399eae0c1c233dc545fbb64945c2
Courtney Goeltzenleuchter [Thu, 13 Jul 2017 23:54:01 +0000 (17:54 -0600)]
Communicate composition buffer dataspace to HWC
Test: adb shell dumpsys SurfaceFlinger
look for dataspace info in DisplayDevice section
Bug:
63146977
Change-Id: If427171994fbc91faacf5bad9cc736ddfbd35ec3
(cherry picked from commit
79d272442ce13418c3ea81c95d7fea0159b4b481)
Courtney Goeltzenleuchter [Sun, 9 Jul 2017 18:50:57 +0000 (12:50 -0600)]
Add VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT.
Bug:
63077212
Test: CTS basicExtensionTest
Change-Id: I9c9b5de99249a6fdd49df1995971c14915f6a7c8
(cherry picked from commit
edc88e78a30ca412a0a085a21f1fc1be7be5081f)
Courtney Goeltzenleuchter [Fri, 7 Jul 2017 20:55:40 +0000 (14:55 -0600)]
Check wide-color support before adding extensions
Don't want applications seeing the wide-color EGL extensions
if the device or display cannot support wide-color.
Bug:
63170158
Test: adb shell /data/nativetest/test-opengl-gl2_basic/test-opengl-gl2_basic
Verify that EGL_EXT_gl_colorspace_scrgb, EGL_EXT_gl_colorspace_scrgb_linear,
EGL_EXT_gl_colorspace_display_p3_linear and EGL_EXT_gl_colorspace_display_p3
are not present on devices that do not support wide-color, e.g. Nexus 6P
Change-Id: I46a26a67f2d6da9c5aad50d884ef02a62ccb6945
(cherry picked from commit
e5d6f994158d554c692afae0f547d89c75abde71)
Courtney Goeltzenleuchter [Fri, 23 Jun 2017 15:06:52 +0000 (09:06 -0600)]
EGL: Add EGL_GL_scrgb extension
Test: Android CTS
adb -d shell am start \
-n com.drawelements.deqp/android.app.NativeActivity \
-e cmdLine '"deqp --deqp-case=dEQP-EGL.functional.wide_color.* \
--deqp-log-filename=/sdcard/dEQP-Log.qpa"'
Bug:
62424735
Change-Id: I12a0bd64c01bcf314b4a73d8eb3151b09bf9f8ae
(cherry picked from commit
33e2b781a05f1caf274e95c143005a862223e9bf)
TreeHugger Robot [Tue, 1 Aug 2017 16:18:06 +0000 (16:18 +0000)]
Merge "sf: Defer DispSync initialization" into oc-dr1-dev
Siarhei Vishniakou [Tue, 1 Aug 2017 03:33:41 +0000 (20:33 -0700)]
DO NOT MERGE Remove window obscurement information.
If ACTION_OUTSIDE_EVENTS contain information about whether the touch is
obscured, then a pattern of invisible, untouchable, unfocusable
SYSTEM_ALERT_WINDOWS can be placed across the screen to determine
approximate locations of touch events without the user knowing.
Bug:
31097064
Test: cts-tradefed run cts --class android.security.cts.MotionEventTest
Change-Id: Ie30dcc2402d5422a19a43ffe7d1411d91681efc2
Tarandeep Singh [Mon, 17 Jul 2017 18:22:52 +0000 (11:22 -0700)]
Enable InputMonitors for non-default display.
InputFlinger today doesn't deliver InputMonitors for non-deafult
display. In order to support focussing windows on virtual-displays
(like the Vr2dDisplay), we need to be able to send motion events
to them for keyboard to gain focus.
Bug:
62033391
Test: Manual by launching
com.google.vr.vrcore/.daydream.MetaworldActivity & then
com.google.android.apps.nexuslauncher/.NexusLauncherActivity.
Exact steps are mentioned in the bug.
Change-Id: I5954e54cef8c0a29f05bc964debc95ea81f16758
Chris Forbes [Fri, 19 May 2017 21:47:29 +0000 (14:47 -0700)]
vulkan: Translate usage flags before passing to driver
Previously we just cast the 32bit flags and jammed them in the two
gralloc1 slots. Use the helper which does the correct translation.
(Yes, all these gralloc1isms are going away in favor of a single 64bit
flags field, but Vulkan HALs expect us to implement our side of
ANDROID_native_buffer correctly.)
(Cherry-picked from
4744291270cc6 in oc-dev)
Test: boot sailfish, run vulkan demo
Bug:
37686587
Change-Id: I806011986e8140d7f608d281798605bd9ca9a86b
Corey Tabaka [Sat, 29 Jul 2017 02:46:30 +0000 (19:46 -0700)]
Fix missing check on buffer import.
Fix a missing check on the success of importing buffers into the
ConsumerQueue. There is a race condition where the producer can
invalidate its buffers, for example by resizing, before the consumer
has a chance to import the previous buffers. The missing check
causes a crash in SurfaceFlinger and VrCore, which are both
consumers of application VR surface buffers.
Also fix a missing lock around the consumer queues in VR surfaces
found during the analysis of this bug.
Bug:
64042620
Test: Ran test.apk before and after the fix. Observe stable operation
after applying the fix.
Change-Id: I416df3ca47978404dcdb53599ddeec9b4bd6fb1a
Saurabh Shah [Thu, 13 Jul 2017 17:45:07 +0000 (10:45 -0700)]
sf: Defer DispSync initialization
Some DispSync members are initialized based on uninitialized static
members of sf, that are in turn initialized in sf constructor. Fix
the sequence by deferring DispSync initialization.
Current sequence:
sf constructor|-> DispSync constructor -> Access static sf members
|-> Initialize sf static members
New sequence:
sf constructor|-> DispSync constructor
|-> Initialize sf static members
|-> DispSync init -> Access static sf members
Bug:
63671437
Test: "present fences are ignored" not present in SF dumpsys
Change-Id: I618d2bbbbd4e39fc382e67f85dd8d637dd82cf38
(cherry picked from commit
f41745301d5ecfa680dcef3a1948a8a321f80509)
Michael Wright [Wed, 26 Jul 2017 15:19:11 +0000 (16:19 +0100)]
Prevent media keys from waking the device, even if they're external.
Bug:
38258736
Test: manual
Change-Id: I56deb9d99df17172ea063544334c1814a6f31509
Kevin Schoedel [Wed, 26 Jul 2017 14:40:19 +0000 (10:40 -0400)]
Remove constraint on touch location.
InputFlinger does accept and handle 'off-screen' touch input,
and it is sometimes useful, for instance for drag scrolling.
Bug:
64063111
Test: manual on device
Change-Id: I62baf4e01c583c10853518de4b87769aad29dab7
Peng Xu [Tue, 25 Jul 2017 00:50:53 +0000 (17:50 -0700)]
Initialize native Sensor object correctly
This CL gives default values for all fields in Sensor native
object.
Bug:
37640915
Test: added local logging to verify all native sensor objects are
initialized correctly.
Change-Id: I4076756249788f56960c74629cb800f1b2bae79f
TreeHugger Robot [Sat, 22 Jul 2017 01:22:30 +0000 (01:22 +0000)]
Merge "Add dvrReadBufferQueueGetEventFd" into oc-dr1-dev
Jiwen 'Steve' Cai [Fri, 21 Jul 2017 20:33:55 +0000 (13:33 -0700)]
Add dvrReadBufferQueueGetEventFd
We need to expose the read queue's event fd, so that a caller can epoll
on a set of queues' fd for efficient buffer acquisition.
Bug:
62359843
Test: dvrapi-test
Change-Id: I1b9271afed9ee6c6675551402cd3f5a66e98ebe2
Romain Guy [Fri, 21 Jul 2017 01:49:46 +0000 (18:49 -0700)]
Postpone color mode change until after boot animation
sRGB is only set by SurfaceFlinger when the default display is
wide color capable. Since we compute the best color mode on
every frame anyway for wide color capable displays, we can
simply move the sRGB set to the end of the boot animation.
Bug:
63823274
Test: Manual
Change-Id: I11bb6095acb63e66bcf7dff9e3f7b36588e371c1
Chia-I Wu [Fri, 21 Jul 2017 15:28:01 +0000 (15:28 +0000)]
Merge "surfaceflinger: fix initial crop computation" into oc-dr1-dev
TreeHugger Robot [Fri, 21 Jul 2017 06:42:49 +0000 (06:42 +0000)]
Merge "Properly applies the selected saturation boost (vivid mode)" into oc-dr1-dev
Romain Guy [Thu, 20 Jul 2017 19:47:14 +0000 (12:47 -0700)]
Properly applies the selected saturation boost (vivid mode)
The saturation boost setting is read by SurfaceFlinger as a
persistent system property. Unfortunately, persistent props
are only available after Vold is up and /data is decrypted,
which may happen before or after SF attempts to read the
property.
This CL moves the propery lookup to the end of the boot
animation. This solves two issues:
- The saturation boost will not be applied to the boot animation
- The vivid colors user setting is now reliably applied
Bug:
63823274
Test: Manual
Change-Id: Icb8e30c799c30cf674f0fc0bab0369f4c99367ed
Wei Wang [Thu, 20 Jul 2017 03:59:39 +0000 (20:59 -0700)]
SurfaceFlinger: Set property in StartPropertySetThread during init
This is similar to ag/
1849505/ (see b/
34499826), which by setting
property in a separate thread, that CL aims to avoid slow initialization
in SurfaceFlinger::init where SurfaceFlinger is waiting on
property_service.
There is new property_set() call added, and this CL is to move it to the
StartPropertySetThread.
Bug:
63844978
Test: on taimen with simulated delay ag/
2562492/
Change-Id: I31547cb5e75f44eac635386b3cf345a44931c78f
Chia-I Wu [Thu, 20 Jul 2017 21:24:37 +0000 (14:24 -0700)]
surfaceflinger: fix initial crop computation
This function computes the crop of the layer, that is, the region of
the layer to be drawn. We must consider the size of the layer when
applying s.active.crop.
Bug:
63786936
Test: manual
Change-Id: I8000413beba54a054db8d7ad28e868d23b0167ab
Ashutosh Joshi [Wed, 19 Jul 2017 16:52:57 +0000 (09:52 -0700)]
Use appendFormat instead of append when passing arguments
Using append crashes the system.
Bug:
63804323
Test: On a contrived build with no sensors, dumpsys does not crash the
sensorservice.
Change-Id: I4ee942d58af8347388f4f5f71c48da339c1cf7e7
Hsin-Yi Chen [Wed, 19 Jul 2017 03:54:27 +0000 (03:54 +0000)]
Merge "Add target binderDriverInterfaceTest_IPC_32" into oc-dev
am:
72cce2f70a
Change-Id: I7c81227c25df80581ef40b40da84915abcb3b7e9
Hsin-Yi Chen [Wed, 19 Jul 2017 03:54:05 +0000 (03:54 +0000)]
Add binderLibTest_IPC_32
am:
75be4a1000
Change-Id: I1ad068367e6e3c0ddbf44825bbe4e1aadee1948a
Hsin-Yi Chen [Wed, 19 Jul 2017 03:51:43 +0000 (03:51 +0000)]
Merge "Add target binderDriverInterfaceTest_IPC_32" into oc-dev
Chia-I Wu [Tue, 18 Jul 2017 18:30:05 +0000 (11:30 -0700)]
surfaceflinger: fix a nullptr dereference
When the child layer latched a buffer but the fixed-size parent
layer never did (for reasons such as no buffer queued or buffer got
rejected), we could end up with p->mActiveBuffer being nullptr.
Bug:
62996512
Test: manual (I could never repro anyway)
Change-Id: Id7e4c7037633b8a37039baa6e8a306e55170b894
Steven Thomas [Tue, 18 Jul 2017 00:19:04 +0000 (00:19 +0000)]
Merge "Fix concurrent writes to the hardware composer" into oc-dr1-dev
Steven Thomas [Mon, 17 Jul 2017 20:59:23 +0000 (13:59 -0700)]
Fix concurrent writes to the hardware composer
Stale hardware composer layers were causing concurrent writes to the
Composer object from the surface flinger and vr flinger threads, a big
no-no. The concurrent writes would sometimes stomp on each other,
causing the hardware composer service to fail to read the command buffer
containing surface flinger's composer commands, leading to all sorts of
issues.
Bug:
62925812
Test: Locally added logs to surface flinger to catch the concurrent
writes, and confirmed the logs are no longer present with this patch
applied. Went through a bunch of sleep/wake cycles and confirmed the
device continues to function normally.
Change-Id: I70929c4a3c71142f5e9083cac294c122d127aa27
TreeHugger Robot [Mon, 17 Jul 2017 21:35:38 +0000 (21:35 +0000)]
Merge "Fix memory leak." into oc-dr1-dev
Hsin-Yi Chen [Wed, 7 Jun 2017 10:05:05 +0000 (18:05 +0800)]
Add target binderDriverInterfaceTest_IPC_32
Add the target binderDriverInterfaceTest_IPC_32 which tests 32-bit
kernel and is independent from product_variables.
Bug:
62124459
Test: vts-tradefed run commandAndExit vts -m VtsKernelBinderTest
Change-Id: Ifad9ef24c35060179650955e24d1f046af7b7385
(cherry picked from commit
6929575affc7d0037c79a45b2cb0ef7c6020581a)
Hsin-Yi Chen [Thu, 6 Jul 2017 03:40:20 +0000 (11:40 +0800)]
Add binderLibTest_IPC_32
1) Add product_variables to binderLibTest because the test case
CheckHandleZeroBinderHighBitsZeroCookie uses binder data structure.
2) Add binderLibTest_IPC_32 which always compiles the test program for
32-bit binder.
Bug:
63307240
Bug:
62366937
Test: vts-tradefed run commandAndExit vts -m VtsKernelBinderTest
Change-Id: I40c738a039459fbfece9689012249ae7ea93df9d
(cherry picked from commit
f6edfc1b096cba544227d85b0ea3f38a4dd11af5)
Dan Stoza [Fri, 14 Jul 2017 20:38:46 +0000 (20:38 +0000)]
Merge changes I23e6f088,I800208e8,I55123a7a into oc-dr1-dev
* changes:
SF: Move screenshot Surface ops off main thread
SF: Add ImageHolder for screenshot code
SF: Add WindowDisconnector for screenshot code
TreeHugger Robot [Fri, 14 Jul 2017 19:33:18 +0000 (19:33 +0000)]
Merge "Add GraphicBufferMapper::preloadHal" into oc-dr1-dev
Corey Tabaka [Fri, 14 Jul 2017 18:43:49 +0000 (11:43 -0700)]
Fix memory leak.
A missing destructor caused a memory leak in the UDS backend for PDX.
Add the destructor and use std namespace for realloc/malloc/free.
Bug:
63026993
Test: Ran pdx_benchmarks for 400M iterations before and after fix.
Confirmed that heap grows before fix and is stable after fix.
Confirmed that VR service reported in the bug now have stable
memory use.
Change-Id: If870a5db50dfaf5f212285824a1803f34acdabc7
Dan Stoza [Thu, 1 Jun 2017 23:40:30 +0000 (16:40 -0700)]
SF: Move screenshot Surface ops off main thread
This change rearranges the various operations that correspond to
capturing a screenshot such that all of the Surface-related ones
(connect, dequeue, queue, disconnect) are performed on the incoming
Binder thread rather than on SurfaceFlinger's main thread. This has two
major benefits:
1) It reduces the amount of time that the SurfaceFlinger main thread
is blocked while performing a screenshot, often by a considerable
amount. This should reduce the risk of jank when screenshots are
taken, such as for task snapshots during window transitions.
2) It means that the SurfaceFlinger main thread is not susceptible to
being blocked by a badly-performing BufferQueue consumer. This
also enables us to remove the GraphicProducerWrapper class, which
was previously performing a similar role.
Finally, this change also adds a mechanism that detects if the
screenshot would have been performed between the two phases of normal
SurfaceFlinger operation (invalidate and refresh), and defers it if
this condition is detected. This should further reduce the risk of jank
as a screenshot will only occur between frames rather than in the
middle of a frame.
Bug:
62257775
Test: SurfaceFlinger_test and manual verification that screenshots
still work
Change-Id: I23e6f088b4d6e477472dfc2a6c36ef3dd930c047
TreeHugger Robot [Fri, 14 Jul 2017 01:53:23 +0000 (01:53 +0000)]
Merge "Fix ALOGE_IF log in bufferhubqueue" into oc-dr1-dev
TreeHugger Robot [Thu, 13 Jul 2017 23:01:06 +0000 (23:01 +0000)]
Merge "Add sensor HAL process into dump list" into oc-dr1-dev
Jiwen 'Steve' Cai [Wed, 12 Jul 2017 22:08:59 +0000 (15:08 -0700)]
Fix ALOGE_IF log in bufferhubqueue
Bug:
63636350
Test: system builds when with TRACE=1 override
Change-Id: Icc1245191b90aafbb553a1d2b0bce3bae4d0a05a
Dan Stoza [Thu, 1 Jun 2017 21:37:39 +0000 (14:37 -0700)]
SF: Add ImageHolder for screenshot code
Adds a simple ImageHolder class, which holds an EGLImage and destroys
it either when an explicit destroy() method is called or when the class
is destructed (whichever occurs first). This allows us to reduce the
nesting of, and otherwise simplify, the captureScreenImplLocked method
of SurfaceFlinger.
Bug:
62257775
Test: SurfaceFlinger_test and manually verified that screenshots still
work
Change-Id: I800208e8f6bedd2ce66827268ecc64968dbe616d
Dan Stoza [Thu, 1 Jun 2017 21:16:23 +0000 (14:16 -0700)]
SF: Add WindowDisconnector for screenshot code
Adds a simple WindowDisconnector class that holds an ANativeWindow* and
disconnects from it when it goes out of scope. This allows us to
drastically reduce the nesting of the captureScreenImplLocked method
of SurfaceFlinger.
Bug:
62257775
Test: SurfaceFlinger_test and manually verified that screenshots still
work
Change-Id: I55123a7a6b2036158d0959328b0e6f8b206cce5d
Peng Xu [Wed, 12 Jul 2017 04:14:42 +0000 (21:14 -0700)]
Add sensor HAL process into dump list
Test: adb bugreport contains native stack trace for
/vendor/bin/hw/android.hardware.sensors@1.0-service
Bug:
63096400
Change-Id: I2c24d4fd2fab7ed52dbd12b5324ae03aeaec3cda
Jesse Hall [Thu, 6 Jul 2017 21:02:29 +0000 (14:02 -0700)]
Add GraphicBufferMapper::preloadHal
Plumbing to allow Zygote to explicitly preload the a.h.graphics.mapper
HAL. An earlier attempt did this implicitly with a static initializer in
libui.so, but the library is also used by non-Zygote processes that
don't have access to HALs. This way, the HIDL libraries and HAL are only
loaded in Zygote and its children, not random other processes.
Bug:
62353585
Test: check that a.h.graphics.mapper is in /proc/`pid zygote64`/maps
Change-Id: I4989c8089e3a4cfd627f8940f5552950c1c617fc
(cherry picked from commit
5dac7819ac9461c14f0b7c208597579c5c3fb814)
Peng Xu [Tue, 11 Jul 2017 21:49:59 +0000 (21:49 +0000)]
Merge "Synchronous resource recover mechanism for ISensorEventConnection" into oc-dr1-dev
Wei Wang [Tue, 11 Jul 2017 19:49:01 +0000 (19:49 +0000)]
Merge changes from topic 'svcmgr_shutdown_critical' into oc-dr1-dev
* changes:
servicemanager: Mark servicemanager as shutdown critical
servicemanager: Mark vndservicemanager as shutdown critical
Wei Wang [Tue, 11 Jul 2017 17:01:09 +0000 (10:01 -0700)]
servicemanager: Mark servicemanager as shutdown critical
Bug:
62951929,
63514363,
62845700
Test: Build
Change-Id: Ib1b7aec4b6d3c590eb469daeed40b954d37efa18
Roopesh Rajashekharaiah Nataraja [Mon, 10 Jul 2017 23:22:27 +0000 (16:22 -0700)]
servicemanager: Mark vndservicemanager as shutdown critical
vndservicemanager needs to be alive during shutdown to allow vndk
components which may run during shutdown to communicate. The system
ndk servicemanager keeps running throughout shutdown, so this brings
the vndservicemanager on par with that behavior.
Bug:
62951929,
63514363,
62845700
Test: Build
Change-Id: Iba154820ef69c6491a5cb05747b6b905763a825d
TreeHugger Robot [Tue, 11 Jul 2017 16:50:17 +0000 (16:50 +0000)]
Merge "Fix BufferHub state machine to return errors on invalid transitions." into oc-dr1-dev
Peng Xu [Mon, 10 Jul 2017 23:41:08 +0000 (16:41 -0700)]
Synchronous resource recover mechanism for ISensorEventConnection
Add synchronous destroy() function to recover resource used by
remote ISensorEventConnection object.
Bug:
63542033
Test: SensorDirectReportTest pass
Change-Id: If98782ee12c7b1a733eb15a2fd8d7c5dacde243b
TreeHugger Robot [Mon, 10 Jul 2017 20:39:01 +0000 (20:39 +0000)]
Merge "Make default permission checks in performance service more restrictive." into oc-dr1-dev
TreeHugger Robot [Mon, 10 Jul 2017 20:33:44 +0000 (20:33 +0000)]
Merge "Fix concurrent access bug in VrFlinger." into oc-dr1-dev
TreeHugger Robot [Mon, 10 Jul 2017 19:24:27 +0000 (19:24 +0000)]
Merge "Clear callbacks when destroying DvrHwcClient" into oc-dr1-dev