OSDN Git Service

android-x86/frameworks-native.git
7 years agoMerge "Move include/binder to libs/binder/include" am: d46d9f1243 am: b212140bbf...
Jiyong Park [Wed, 21 Jun 2017 00:50:46 +0000 (00:50 +0000)]
Merge "Move include/binder to libs/binder/include" am: d46d9f1243 am: b212140bbf  -s ours
am: 7f683a8b8f  -s ours

Change-Id: I0a02efc1cac647857ba32235fac2c160d7dcb8db

7 years agoMerge "Move include/binder to libs/binder/include" am: d46d9f1243
Jiyong Park [Wed, 21 Jun 2017 00:44:55 +0000 (00:44 +0000)]
Merge "Move include/binder to libs/binder/include" am: d46d9f1243
am: b212140bbf  -s ours

Change-Id: If344d9c14b3cf767956d55e0dd5d13b5a700c7a4

7 years agoMerge "Move include/binder to libs/binder/include"
Jiyong Park [Wed, 21 Jun 2017 00:40:25 +0000 (00:40 +0000)]
Merge "Move include/binder to libs/binder/include"
am: d46d9f1243

Change-Id: I41744e18ca3731b3027cb459b97945270a4d94ef

7 years agoMerge "Move include/binder to libs/binder/include"
Treehugger Robot [Wed, 21 Jun 2017 00:27:49 +0000 (00:27 +0000)]
Merge "Move include/binder to libs/binder/include"

7 years agoMerge "Merge "surfaceflinger: fix a potential child layer leak" into oc-dev am: 1b02b...
Android Build Merger (Role) [Tue, 20 Jun 2017 20:33:20 +0000 (20:33 +0000)]
Merge "Merge "surfaceflinger: fix a potential child layer leak" into oc-dev am: 1b02b6329e am: 989ed5c4c1" into oc-dr1-dev-plus-aosp

7 years agoMerge "surfaceflinger: fix a potential child layer leak" into oc-dev am: 1b02b6329e
Chia-I Wu [Tue, 20 Jun 2017 20:32:59 +0000 (20:32 +0000)]
Merge "surfaceflinger: fix a potential child layer leak" into oc-dev am: 1b02b6329e
am: 989ed5c4c1

Change-Id: I1255ff4ef6234b61996e6f7c8dfb86c890e4268e

7 years agoMerge "surfaceflinger: fix a potential child layer leak" into oc-dev am: 1b02b6329e
Chia-I Wu [Tue, 20 Jun 2017 20:32:58 +0000 (20:32 +0000)]
Merge "surfaceflinger: fix a potential child layer leak" into oc-dev am: 1b02b6329e
am: 4d5cc90559

Change-Id: Ib956b914044fee1941ef966bbf96c151bbbcf6a4

7 years agoMerge "surfaceflinger: fix a potential child layer leak" into oc-dev
Chia-I Wu [Tue, 20 Jun 2017 20:28:58 +0000 (20:28 +0000)]
Merge "surfaceflinger: fix a potential child layer leak" into oc-dev
am: 1b02b6329e

Change-Id: I3548aaa0a071f5b1009c5b1070405a09d7841095

7 years agoMerge "surfaceflinger: fix a potential child layer leak" into oc-dev
Chia-I Wu [Tue, 20 Jun 2017 20:28:58 +0000 (20:28 +0000)]
Merge "surfaceflinger: fix a potential child layer leak" into oc-dev
am: 1b02b6329e

Change-Id: Ie2bd5a6d1d37bb5b7c7b679b8c472389ff619188

7 years agoMerge "surfaceflinger: fix a potential child layer leak" into oc-dev
TreeHugger Robot [Tue, 20 Jun 2017 20:15:29 +0000 (20:15 +0000)]
Merge "surfaceflinger: fix a potential child layer leak" into oc-dev

7 years agoMerge "Fix minor version bump reflected in lshal --init-vintf" am: ac6575097d am...
Yifan Hong [Tue, 20 Jun 2017 04:58:16 +0000 (04:58 +0000)]
Merge "Fix minor version bump reflected in lshal --init-vintf" am: ac6575097d am: 99065302ed
am: cf64ff00ea  -s ours

Change-Id: I9811de0500a5d5172744c962549524416c3183e3

7 years agoMerge "Fix minor version bump reflected in lshal --init-vintf" am: ac6575097d
Yifan Hong [Tue, 20 Jun 2017 04:52:23 +0000 (04:52 +0000)]
Merge "Fix minor version bump reflected in lshal --init-vintf" am: ac6575097d
am: 99065302ed

Change-Id: Ic2a1f895312dee90e9e0eaf691edb48df4897c4e

7 years agoMerge "Fix minor version bump reflected in lshal --init-vintf"
Yifan Hong [Tue, 20 Jun 2017 01:10:56 +0000 (01:10 +0000)]
Merge "Fix minor version bump reflected in lshal --init-vintf"
am: ac6575097d

Change-Id: I05dafdba2c7f302dc6200bd2d274e30a33f77de7

7 years agoMerge "Fix minor version bump reflected in lshal --init-vintf"
Treehugger Robot [Tue, 20 Jun 2017 01:06:52 +0000 (01:06 +0000)]
Merge "Fix minor version bump reflected in lshal --init-vintf"

7 years agoFix minor version bump reflected in lshal --init-vintf
Yifan Hong [Tue, 20 Jun 2017 01:02:46 +0000 (01:02 +0000)]
Fix minor version bump reflected in lshal --init-vintf
am: e86f70b474

Change-Id: Id573ba5c3b436249a5f407e575a01a61e7985e62

7 years agoMerge "Fix incorrect bitness for lshal --init-vintf" am: e162a97703 am: 126eee4d14
Yifan Hong [Mon, 19 Jun 2017 23:23:24 +0000 (23:23 +0000)]
Merge "Fix incorrect bitness for lshal --init-vintf" am: e162a97703 am: 126eee4d14
am: c77bc022f7  -s ours

Change-Id: I69a55e1df55604c5ec36a93fbd070fe333e01cc1

7 years agoMerge "Fix incorrect bitness for lshal --init-vintf" am: e162a97703
Yifan Hong [Mon, 19 Jun 2017 23:08:15 +0000 (23:08 +0000)]
Merge "Fix incorrect bitness for lshal --init-vintf" am: e162a97703
am: 126eee4d14

Change-Id: I435466a45aa5217f99c73007d5f07c1754216995

7 years agoMerge "Fix incorrect bitness for lshal --init-vintf"
Yifan Hong [Mon, 19 Jun 2017 23:02:08 +0000 (23:02 +0000)]
Merge "Fix incorrect bitness for lshal --init-vintf"
am: e162a97703

Change-Id: Ib59a256b4491b2bf93e8eca1fa85d9a193719446

7 years agoMerge "Fix incorrect bitness for lshal --init-vintf"
Treehugger Robot [Mon, 19 Jun 2017 22:51:52 +0000 (22:51 +0000)]
Merge "Fix incorrect bitness for lshal --init-vintf"

7 years agoFix minor version bump reflected in lshal --init-vintf
Yifan Hong [Mon, 19 Jun 2017 22:47:39 +0000 (15:47 -0700)]
Fix minor version bump reflected in lshal --init-vintf

Test: lshal --init-vintf has no warnings, and power@1.1 / vibrator@1.1
      is shown in output.

Bug: 62675393
Change-Id: I1ffd8b6dc7fcadcf7228cf2b8838e918bb3afe6b
Merged-In: I1ffd8b6dc7fcadcf7228cf2b8838e918bb3afe6b

7 years agoFix minor version bump reflected in lshal --init-vintf
Yifan Hong [Mon, 19 Jun 2017 22:47:39 +0000 (15:47 -0700)]
Fix minor version bump reflected in lshal --init-vintf

Test: lshal --init-vintf has no warnings, and power@1.1 / vibrator@1.1
      is shown in output.

Bug: 62675393
Change-Id: I1ffd8b6dc7fcadcf7228cf2b8838e918bb3afe6b
Merged-In: I1ffd8b6dc7fcadcf7228cf2b8838e918bb3afe6b

7 years agoMerge "Fix incorrect bitness for lshal --init-vintf" into oc-dr1-dev
Yifan Hong [Mon, 19 Jun 2017 21:36:03 +0000 (21:36 +0000)]
Merge "Fix incorrect bitness for lshal --init-vintf" into oc-dr1-dev
am: 5cf813eef0

Change-Id: I1267c96addf4c501fd695faddf5e4d59bd51f8a0

7 years agoMerge "Fix incorrect bitness for lshal --init-vintf" into oc-dr1-dev
TreeHugger Robot [Mon, 19 Jun 2017 21:27:01 +0000 (21:27 +0000)]
Merge "Fix incorrect bitness for lshal --init-vintf" into oc-dr1-dev

7 years agoFix incorrect bitness for lshal --init-vintf
Yifan Hong [Mon, 19 Jun 2017 19:27:08 +0000 (12:27 -0700)]
Fix incorrect bitness for lshal --init-vintf

Test: lshal --init-vintf, graphics.mapper has 32+64.

Change-Id: Ic586c8333064cc5636679ce8ad4e1231307191f4
Merged-In: Ic586c8333064cc5636679ce8ad4e1231307191f4
Fixes: 62675393

7 years agoFix incorrect bitness for lshal --init-vintf
Yifan Hong [Mon, 19 Jun 2017 19:27:08 +0000 (12:27 -0700)]
Fix incorrect bitness for lshal --init-vintf

Test: lshal --init-vintf, graphics.mapper has 32+64.

Change-Id: Ic586c8333064cc5636679ce8ad4e1231307191f4
Merged-In: Ic586c8333064cc5636679ce8ad4e1231307191f4
Fixes: 62675393

7 years agoMerge "Merge changes from topic 'layer-wp-race' into oc-dev am: a17b14eb92 am: c35a5e...
Android Build Merger (Role) [Sat, 17 Jun 2017 02:01:09 +0000 (02:01 +0000)]
Merge "Merge changes from topic 'layer-wp-race' into oc-dev am: a17b14eb92 am: c35a5e29f3" into oc-dr1-dev-plus-aosp

7 years agoMerge changes from topic 'layer-wp-race' into oc-dev am: a17b14eb92
Chia-I Wu [Sat, 17 Jun 2017 02:01:00 +0000 (02:01 +0000)]
Merge changes from topic 'layer-wp-race' into oc-dev am: a17b14eb92
am: c35a5e29f3

Change-Id: I590c8667049be99f407972953c41ff88e555bb2a

7 years agoMerge changes from topic 'layer-wp-race' into oc-dev am: a17b14eb92
Chia-I Wu [Sat, 17 Jun 2017 02:00:50 +0000 (02:00 +0000)]
Merge changes from topic 'layer-wp-race' into oc-dev am: a17b14eb92
am: f39c08c906

Change-Id: I579504e93cc6c21dd13e5b8468d8b87037133a0c

7 years agoMerge changes from topic 'layer-wp-race' into oc-dev
Chia-I Wu [Sat, 17 Jun 2017 01:58:33 +0000 (01:58 +0000)]
Merge changes from topic 'layer-wp-race' into oc-dev
am: a17b14eb92

Change-Id: I1af51f57255024d36e9cae5c221361f36cb28da4

7 years agoMerge changes from topic 'layer-wp-race' into oc-dev
Chia-I Wu [Sat, 17 Jun 2017 01:58:31 +0000 (01:58 +0000)]
Merge changes from topic 'layer-wp-race' into oc-dev
am: a17b14eb92

Change-Id: I2fb898abae8b4602aa7257b45293f582f0641f24

7 years agoMerge changes from topic 'layer-wp-race' into oc-dev
TreeHugger Robot [Sat, 17 Jun 2017 01:51:06 +0000 (01:51 +0000)]
Merge changes from topic 'layer-wp-race' into oc-dev

* changes:
  surfaceflinger: Layer::getParent requires state lock held
  surfaceflinger: distinguish mCurrentParent/mDrawingParent
  surfaceflinger: protect Client::mParentLayer with a lock

7 years agoMerge "Add method to explicitly create Surface. am: 4e623e259c am: 84051d9c97" into...
Android Build Merger (Role) [Fri, 16 Jun 2017 23:34:58 +0000 (23:34 +0000)]
Merge "Add method to explicitly create Surface. am: 4e623e259c am: 84051d9c97" into oc-dr1-dev-plus-aosp

7 years agoAdd method to explicitly create Surface. am: 4e623e259c
Bryce Lee [Fri, 16 Jun 2017 23:33:15 +0000 (23:33 +0000)]
Add method to explicitly create Surface. am: 4e623e259c
am: 84051d9c97

Change-Id: I4368e31fdb9b7ec0912bddbe75399c7d778383b8

7 years agoAdd method to explicitly create Surface. am: 4e623e259c
Bryce Lee [Fri, 16 Jun 2017 23:33:12 +0000 (23:33 +0000)]
Add method to explicitly create Surface. am: 4e623e259c
am: 05e6335833

Change-Id: Id470d62303b9055522d1cb6ad456bcbe4d320cfd

7 years agosurfaceflinger: fix a potential child layer leak
Chia-I Wu [Thu, 15 Jun 2017 19:53:59 +0000 (12:53 -0700)]
surfaceflinger: fix a potential child layer leak

We should not remove a child layer from its already removed parent.
Call p->removeChild only after we've checked that the ancestor is
alive.

Apply e6b63e1ae12692327f7e46d5f10d6ade5a7bf192 and this fix to
SurfaceFlinger_hwc1.cpp as well.

Bug: 37121786
Test: manual stress test
Change-Id: I7b811450a998acc4ad9690bd4eda058ce6588e14

7 years agosurfaceflinger: Layer::getParent requires state lock held
Chia-I Wu [Thu, 15 Jun 2017 19:53:59 +0000 (12:53 -0700)]
surfaceflinger: Layer::getParent requires state lock held

We rely on mStateLock to synchronize accesses to
Layer::mCurrentParent.

Bug: 38505866
Test: manual stress test
Change-Id: I5f8ec358ed7e35df28f8c6aec31ae6ee51cb5b93

7 years agoAdd method to explicitly create Surface.
Bryce Lee [Fri, 16 Jun 2017 23:24:47 +0000 (23:24 +0000)]
Add method to explicitly create Surface.
am: 4e623e259c

Change-Id: I22ff0cd39e80478a74e4589084d5ccabfbe54443

7 years agoAdd method to explicitly create Surface.
Bryce Lee [Fri, 16 Jun 2017 23:24:46 +0000 (23:24 +0000)]
Add method to explicitly create Surface.
am: 4e623e259c

Change-Id: Ie3755008a75dc67f1d01a0a5fc8bf4e953c8cf9d

7 years agoMerge "libui: Load a.h.graphics.mapper passthrough service on library load" into...
Jesse Hall [Fri, 16 Jun 2017 22:53:34 +0000 (22:53 +0000)]
Merge "libui: Load a.h.graphics.mapper passthrough service on library load" into oc-dr1-dev
am: 90254a8d57

Change-Id: I4e1b88ca22dc7ca4bb1be792f17b03cad5e75f10

7 years agoMerge "libui: Load a.h.graphics.mapper passthrough service on library load" into...
Jesse Hall [Fri, 16 Jun 2017 22:45:37 +0000 (22:45 +0000)]
Merge "libui: Load a.h.graphics.mapper passthrough service on library load" into oc-dr1-dev

7 years agoMerge "Fix virtual touchpad scroll events." into oc-dr1-dev
Kevin Schoedel [Fri, 16 Jun 2017 21:04:13 +0000 (21:04 +0000)]
Merge "Fix virtual touchpad scroll events." into oc-dr1-dev
am: 23970309e2

Change-Id: I89257f0a2b434016601aac06a9ed8cbbf5be1bd1

7 years agoMerge "Fix virtual touchpad scroll events." into oc-dr1-dev
Kevin Schoedel [Fri, 16 Jun 2017 20:56:33 +0000 (20:56 +0000)]
Merge "Fix virtual touchpad scroll events." into oc-dr1-dev

7 years agoAdd method to explicitly create Surface.
Bryce Lee [Fri, 16 Jun 2017 14:06:17 +0000 (07:06 -0700)]
Add method to explicitly create Surface.

It is sometimes necessary for a SurfaceControl client to request the
associated Surface object be created rather than reuse the cached
value. This changelist adds an additional method that performs the
same creation operations as if the Surface object was created for the
first time.

Bug: 62108743
Test: go/wm-smoke
Change-Id: I2f460f20b2d16ed9ff81cb36842bcd2f8641e03c

7 years agosurfaceflinger: distinguish mCurrentParent/mDrawingParent
Chia-I Wu [Tue, 13 Jun 2017 21:10:56 +0000 (14:10 -0700)]
surfaceflinger: distinguish mCurrentParent/mDrawingParent

Updates to wp<> is not atomic.  We cannot use/update it at the same
time from the main thread and a binder thread.  With this change,
binder threads use mCurrentParent with the external state lock held.
The main thread uses mDrawingParent.

This is also an alternative fix to bug 62099658 and allows us to
revert "SurfaceFlinger: Update parent pointer while performing
transaction."

Bug: 38505866
Bug: 62099658
Test: boots and no repro (but I can never repro)
Change-Id: Id286a437537daaeec5eee5de62b1d9df245ece53

7 years agosurfaceflinger: protect Client::mParentLayer with a lock
Chia-I Wu [Thu, 15 Jun 2017 21:01:18 +0000 (14:01 -0700)]
surfaceflinger: protect Client::mParentLayer with a lock

Updates to wp<> is not atomic.  Use Client::mLock to protect
mParentLayer.

Bug: 38505866
Test: camera and youtube work
Change-Id: I2739382d5bb99961a47c1011963b6f676d34eec6

7 years agoFix virtual touchpad scroll events.
Kevin Schoedel [Thu, 15 Jun 2017 15:21:13 +0000 (11:21 -0400)]
Fix virtual touchpad scroll events.

1. Correctly configure the uinput device to pass REL_*WHEEL events.

2. Configure the virtual touchpad as a 'rotary encoder', which is
   an inputflinger device class originally provided for the G1 scroll
   ball. This provides two advantages over the default mouse-wheel
   interpretation:
   - It works without an associated mouse pointer to determine the
     event target.
   - It allows for higher resolution through a scale factor (the
     scaling here is chosen by experiment to feel no worse than wheel
     mode, but might benefit from future adjustment).
   There is one accompanying disadvantage: inputflinger only handles
   vertical scrolling (REL_WHEEL) and ignores the horizontal axis
   (REL_HWHEEL).

Bug: 62632827
Test: manual on sailfish
Change-Id: Ic8edad01796d75e8c94fa20f05a5badb0727a948

7 years agoSet the vr hwc vsync rate to match the native vsync
Stephen Kiazyk [Fri, 16 Jun 2017 16:20:59 +0000 (16:20 +0000)]
Set the vr hwc vsync rate to match the native vsync
am: 22c1462add

Change-Id: I3b4ebea0ad9e8249d6dec76e798e67724a84761d

7 years agoMove include/binder to libs/binder/include
Jiyong Park [Fri, 16 Jun 2017 06:16:33 +0000 (15:16 +0900)]
Move include/binder to libs/binder/include

Also moved include/private/binder to libs/binder/include/private/binder.
This allows libbinder to be compiled without depending on global
headers.

Bug: 33241851
Test: Build, flash, and run sailfish.
Test: Try building with BOARD_VNDK_VERSION := current
Change-Id: I266d5338677a92dd0563b311a479e7ad27bbaf55
Merged-In: I0a82b733353add589de26eb2db7af5a246e5c97f

7 years agolibui: Load a.h.graphics.mapper passthrough service on library load
Jesse Hall [Wed, 7 Jun 2017 21:44:46 +0000 (14:44 -0700)]
libui: Load a.h.graphics.mapper passthrough service on library load

Zygote loads libui, this helps complete the chain from
  zygote -> libui -> a.h.graphics.mapper -> gralloc
so that all of these libraries which are used by nearly every app are
loaded by zygote and shared.

Bug: 62353585
Test: boot to launcher, run calculator, confirm a.h.graphics.mapper
      implementation library is in /proc/`pid zygote64`/maps

Change-Id: Ib505c926a410191e3e2ad809bfe98a73b21fac90

7 years agoSet the vr hwc vsync rate to match the native vsync
Stephen Kiazyk [Thu, 15 Jun 2017 22:53:59 +0000 (15:53 -0700)]
Set the vr hwc vsync rate to match the native vsync

This simple modification reduces the motopho latency from 85ms to 65ms.
However, this is not a final solution, and we should continue to look
for how to address the issue of difference in vsync reporting.

Bug: 36493906
Test: Run motopho, latency is now much lower.
Change-Id: Id52689900a5fe58dfc9d7790b7c3746903380972

7 years agoMerge "Fix vr flinger post thread to resume correctly" into oc-dr1-dev
Steven Thomas [Thu, 15 Jun 2017 21:45:05 +0000 (21:45 +0000)]
Merge "Fix vr flinger post thread to resume correctly" into oc-dr1-dev
am: 4bfb7550af

Change-Id: I2957b1b32bf8378f4b965d1f60dcafd4c48f938e

7 years agoMerge "Fix vr flinger post thread to resume correctly" into oc-dr1-dev
TreeHugger Robot [Thu, 15 Jun 2017 21:35:32 +0000 (21:35 +0000)]
Merge "Fix vr flinger post thread to resume correctly" into oc-dr1-dev

7 years agoFix vr flinger post thread to resume correctly
Steven Thomas [Thu, 15 Jun 2017 18:38:40 +0000 (11:38 -0700)]
Fix vr flinger post thread to resume correctly

After being paused, the vr flinger post thread remained paused until it
was enabled by requesting display ownership, but the request for display
ownership was made from the vr flinger post thread, causing the post
thread to get stuck in the paused state forever. I moved the display
ownership request to the vr flinger dispatcher thread, so the post
thread can be resumed.

Bug: 62666511

Test: Put a device through a sleep/wake cycle and confirmed the vr
flinger post thread resumes as expected.

Change-Id: Ic57adb7376c8f2b5760bfaa4a5a30b58894a7ab7

7 years agoMerge "Use _exit for profile copy dexopt command" into oc-dr1-dev
Mathieu Chartier [Thu, 15 Jun 2017 18:54:54 +0000 (18:54 +0000)]
Merge "Use _exit for profile copy dexopt command" into oc-dr1-dev
am: de65cb8e1f

Change-Id: I1d53221347533d9d7b393141b4262b66cee53134

7 years agoMerge "Use _exit for profile copy dexopt command" into oc-dr1-dev
Mathieu Chartier [Thu, 15 Jun 2017 18:47:18 +0000 (18:47 +0000)]
Merge "Use _exit for profile copy dexopt command" into oc-dr1-dev

7 years agoMerge "Fix getDisplayInfo() for SurfaceFlinger in HWC2 mode. am: c175253b6d am: f86e1...
Android Build Merger (Role) [Thu, 15 Jun 2017 17:33:32 +0000 (17:33 +0000)]
Merge "Fix getDisplayInfo() for SurfaceFlinger in HWC2 mode. am: c175253b6d am: f86e12ba89" into oc-dr1-dev-plus-aosp

7 years agoFix getDisplayInfo() for SurfaceFlinger in HWC2 mode. am: c175253b6d
Alistair Strachan [Thu, 15 Jun 2017 17:33:17 +0000 (17:33 +0000)]
Fix getDisplayInfo() for SurfaceFlinger in HWC2 mode. am: c175253b6d
am: d8449e55a6

Change-Id: I400998a8226e19fb54f5cb981630841ee8d288ef

7 years agoFix getDisplayInfo() for SurfaceFlinger in HWC2 mode. am: c175253b6d
Alistair Strachan [Thu, 15 Jun 2017 17:33:17 +0000 (17:33 +0000)]
Fix getDisplayInfo() for SurfaceFlinger in HWC2 mode. am: c175253b6d
am: f86e12ba89

Change-Id: I56fcdd654db56912fe2a04457946eef468b1825f

7 years agoFix getDisplayInfo() for SurfaceFlinger in HWC2 mode.
Alistair Strachan [Thu, 15 Jun 2017 17:30:19 +0000 (17:30 +0000)]
Fix getDisplayInfo() for SurfaceFlinger in HWC2 mode.
am: c175253b6d

Change-Id: I55ca473facef90f00eb1a401d9bc8ad7a36e4878

7 years agoFix getDisplayInfo() for SurfaceFlinger in HWC2 mode.
Alistair Strachan [Thu, 15 Jun 2017 17:30:17 +0000 (17:30 +0000)]
Fix getDisplayInfo() for SurfaceFlinger in HWC2 mode.
am: c175253b6d

Change-Id: I8a1db090809ec0354dda54a6202ff92b76681bb4

7 years agoFix getDisplayInfo() for SurfaceFlinger in HWC2 mode.
Alistair Strachan [Wed, 7 Jun 2017 23:34:44 +0000 (16:34 -0700)]
Fix getDisplayInfo() for SurfaceFlinger in HWC2 mode.

When HWC2 mode is enabled in SurfaceFlinger, the getDisplayInfo()
function would fail to return the correct active mode in some cases.

This bug was only noticable if you had more than one mode registered
by the HWC2 backend.

The SurfaceComposerClient::getDisplayInfo() function works by calling
getDisplayConfigs(), and de-referencing the config at the index
returned by getActiveConfig(). The active config returned was correct,
but the getDisplayConfigs() array was not properly sorted.

Tracing this back, this problem occurs because the configId is stored
alongside the config in an unordered_map, so when this is converted
to a vector and the configId is discarded, the conversion must be
sorted correctly; it can't just be the hash order returned from
the unordered_map.

There are a few ways to fix this problem, but the easiest was to nip
the problem in the bud by not allowing an unsorted list of configs
to exist on the base HWC2 class. It may be better still to just get
rid of the map and go back to a vector, as this data is more often
used as an array than it is indexed by configId, so the use of an
unordered_map was probably overkill.

Change-Id: Ibfb015a6d9b49c870f37a1c892f15f90abbd1e2c
Bug: 62617569
Test: ./cts-tradefed run cts -m CtsViewTestCases -t android.view.cts.DisplayRefreshRateTest#testRefreshRate

7 years agoUse _exit for profile copy dexopt command
Mathieu Chartier [Wed, 14 Jun 2017 20:02:26 +0000 (13:02 -0700)]
Use _exit for profile copy dexopt command

Previously we used exit(0), but this called global destructors and
could cause problems depending on the state when the forking
happened.

Using _exit avoids calling hte global destructors in the child
process.

Test: Delete packages.xml and flash to simulate first boot
Bug: 62597429
Change-Id: I3a6dcd5f05ca85e1488df154ec283c2ec842e59f

7 years agoMerge "Merge changes Ibc1444b8,I14c200d1 into oc-dev am: fd43dc6723 am: eb444d602c...
Android Build Merger (Role) [Wed, 14 Jun 2017 08:15:48 +0000 (08:15 +0000)]
Merge "Merge changes Ibc1444b8,I14c200d1 into oc-dev am: fd43dc6723 am: eb444d602c" into oc-dr1-dev-plus-aosp

7 years agoMerge changes Ibc1444b8,I14c200d1 into oc-dev am: fd43dc6723
Eino-Ville Talvala [Wed, 14 Jun 2017 08:15:30 +0000 (08:15 +0000)]
Merge changes Ibc1444b8,I14c200d1 into oc-dev am: fd43dc6723
am: b209c12155

Change-Id: I9da639be63a43343d236c865aa810957290e2e49

7 years agoMerge changes Ibc1444b8,I14c200d1 into oc-dev am: fd43dc6723
Eino-Ville Talvala [Wed, 14 Jun 2017 08:15:30 +0000 (08:15 +0000)]
Merge changes Ibc1444b8,I14c200d1 into oc-dev am: fd43dc6723
am: eb444d602c

Change-Id: I5c01a250bf9422b23210fc6860676c60ed33c172

7 years agoMerge changes Ibc1444b8,I14c200d1 into oc-dev
Eino-Ville Talvala [Wed, 14 Jun 2017 08:13:01 +0000 (08:13 +0000)]
Merge changes Ibc1444b8,I14c200d1 into oc-dev
am: fd43dc6723

Change-Id: Iae111bcc2770c1e75aba29021e31d07ff89243ab

7 years agoMerge changes Ibc1444b8,I14c200d1 into oc-dev
Eino-Ville Talvala [Wed, 14 Jun 2017 08:13:00 +0000 (08:13 +0000)]
Merge changes Ibc1444b8,I14c200d1 into oc-dev
am: fd43dc6723

Change-Id: I7a63dd4d785a3bc4e386cc10a427b12d678e7b28

7 years agoMerge changes Ibc1444b8,I14c200d1 into oc-dev
Eino-Ville Talvala [Wed, 14 Jun 2017 08:09:40 +0000 (08:09 +0000)]
Merge changes Ibc1444b8,I14c200d1 into oc-dev

* changes:
  ConsumerBase: discardFreeBuffers() also needs to dump its own cache
  BufferQueueProducer: Call onBuffersReleased() in detachNextBuffer

7 years agoMerge changes from topic 'sensor_looper_crash' into oc-dev am: 638055ef41
Peng Xu [Wed, 14 Jun 2017 06:32:24 +0000 (06:32 +0000)]
Merge changes from topic 'sensor_looper_crash' into oc-dev am: 638055ef41
am: 642e5511f4

Change-Id: I5c5bacff22639e8e5457cc9bfdc9ac728a76473c

7 years agoSensorManager: attach background thread to JavaVM am: 09034f076e
Yifan Hong [Wed, 14 Jun 2017 06:32:14 +0000 (06:32 +0000)]
SensorManager: attach background thread to JavaVM am: 09034f076e
am: e1ae771108

Change-Id: I9565d4edc4e56589f38fe297b19a4a5abb87c7ac

7 years agoFramework sensor manager init not depends on ::android::SensorManager. am: 542eace6bf
Yifan Hong [Wed, 14 Jun 2017 06:32:05 +0000 (06:32 +0000)]
Framework sensor manager init not depends on ::android::SensorManager. am: 542eace6bf
am: 7c4c5860c0  -s ours

Change-Id: Ic92c39e375542d214273c7ba89dcb0020a34bd93

7 years agoMerge changes from topic 'sensor_looper_crash' into oc-dev am: 638055ef41
Peng Xu [Wed, 14 Jun 2017 06:28:22 +0000 (06:28 +0000)]
Merge changes from topic 'sensor_looper_crash' into oc-dev am: 638055ef41
am: 91768a2bfe

Change-Id: Ib1eabf66f2658de1adca4133c20fb4b9fdc71526

7 years agoSensorManager: attach background thread to JavaVM am: 09034f076e
Yifan Hong [Wed, 14 Jun 2017 06:28:11 +0000 (06:28 +0000)]
SensorManager: attach background thread to JavaVM am: 09034f076e
am: fc045b9de4

Change-Id: I2a0ddc2040000e6c7cc27d70812f9429fcea6c61

7 years agoFramework sensor manager init not depends on ::android::SensorManager. am: 542eace6bf...
Yifan Hong [Wed, 14 Jun 2017 06:28:01 +0000 (06:28 +0000)]
Framework sensor manager init not depends on ::android::SensorManager. am: 542eace6bf  -s ours
am: 401b0f43ee  -s ours

Change-Id: Ib932c565af2ee3d968595b265a259f988fca57a0

7 years agoMerge changes from topic 'sensor_looper_crash' into oc-dev
Peng Xu [Wed, 14 Jun 2017 06:20:52 +0000 (06:20 +0000)]
Merge changes from topic 'sensor_looper_crash' into oc-dev
am: 638055ef41

Change-Id: I774229e9c84e7b390861638e478e2330b66c3d57

7 years agoMerge changes from topic 'sensor_looper_crash' into oc-dev
Peng Xu [Wed, 14 Jun 2017 06:20:49 +0000 (06:20 +0000)]
Merge changes from topic 'sensor_looper_crash' into oc-dev
am: 638055ef41

Change-Id: Ib48966c671e1cedb7ed1d26498b8389a62e30921

7 years agoSensorManager: attach background thread to JavaVM
Yifan Hong [Wed, 14 Jun 2017 06:20:42 +0000 (06:20 +0000)]
SensorManager: attach background thread to JavaVM
am: 09034f076e

Change-Id: I07364b649a58f9ca0891407540a607967155bf4b

7 years agoSensorManager: attach background thread to JavaVM
Yifan Hong [Wed, 14 Jun 2017 06:20:40 +0000 (06:20 +0000)]
SensorManager: attach background thread to JavaVM
am: 09034f076e

Change-Id: Ib32d5a33c7de35d9d1181fc737848ba63fe94171

7 years agoFramework sensor manager init not depends on ::android::SensorManager.
Yifan Hong [Wed, 14 Jun 2017 06:20:31 +0000 (06:20 +0000)]
Framework sensor manager init not depends on ::android::SensorManager.
am: 542eace6bf

Change-Id: I8228b3afec41260135c4123fe8cd9e9dc99f46e5

7 years agoFramework sensor manager init not depends on ::android::SensorManager.
Yifan Hong [Wed, 14 Jun 2017 06:20:31 +0000 (06:20 +0000)]
Framework sensor manager init not depends on ::android::SensorManager.
am: 542eace6bf  -s ours

Change-Id: I846d806f4d135a8c353f10ea514a3cdedd22cd85

7 years agoMerge changes from topic 'sensor_looper_crash' into oc-dev
Peng Xu [Wed, 14 Jun 2017 06:12:37 +0000 (06:12 +0000)]
Merge changes from topic 'sensor_looper_crash' into oc-dev

* changes:
  Fix race condition for SensorManager looper.
  SensorManager: attach background thread to JavaVM
  Framework sensor manager init not depends on ::android::SensorManager.

7 years agoFix race condition for SensorManager looper.
Yifan Hong [Wed, 14 Jun 2017 01:04:25 +0000 (18:04 -0700)]
Fix race condition for SensorManager looper.

Before the fix there could be two background threads started for two
loopers. Add a guard to prevent this from happening.

Test: pass
Bug: 62404135
Change-Id: I8230addaaa6b83670d7b83c96809b00fca95d352

7 years agoSensorManager: attach background thread to JavaVM
Yifan Hong [Wed, 14 Jun 2017 00:51:13 +0000 (17:51 -0700)]
SensorManager: attach background thread to JavaVM

Test: pass
Bug: 62404135

Change-Id: I63a128c3c933904211f5ff2483492674eaba93ed

7 years agoFramework sensor manager init not depends on ::android::SensorManager.
Yifan Hong [Tue, 9 May 2017 22:18:02 +0000 (15:18 -0700)]
Framework sensor manager init not depends on ::android::SensorManager.

Test: photo sphere
Change-Id: Ice37a758421827757226a9898bcf3e00857443ff
Merged-In: Ice37a758421827757226a9898bcf3e00857443ff
Fixes: 36448245

7 years agoMerge "Resurrect the pose tool." into oc-dr1-dev
Okan Arikan [Wed, 14 Jun 2017 00:38:03 +0000 (00:38 +0000)]
Merge "Resurrect the pose tool." into oc-dr1-dev
am: 5af190c517

Change-Id: I8af4bac4553638fb4a2a1994e9d590e96f796a51

7 years agoMerge "Resurrect the pose tool." into oc-dr1-dev
TreeHugger Robot [Wed, 14 Jun 2017 00:22:21 +0000 (00:22 +0000)]
Merge "Resurrect the pose tool." into oc-dr1-dev

7 years agoConsumerBase: discardFreeBuffers() also needs to dump its own cache
Eino-Ville Talvala [Wed, 14 Jun 2017 00:09:11 +0000 (17:09 -0700)]
ConsumerBase: discardFreeBuffers() also needs to dump its own cache

ConsumerBase has its own cached slots with graphic buffer references,
so it's not enough to just ask the buffer queue consumer to free
buffers.

Add code equivalent to what happens in the onBuffersReleased callback.

Test:
Bug: 62593139
Change-Id: Ibc1444b868c6150aa2da1c209e06bdba42f1595d

7 years agoBufferQueueProducer: Call onBuffersReleased() in detachNextBuffer
Eino-Ville Talvala [Tue, 13 Jun 2017 23:39:11 +0000 (16:39 -0700)]
BufferQueueProducer: Call onBuffersReleased() in detachNextBuffer

Like detachBuffer(), detachNextBuffer() needs to inform the consumer,
who generally has a cache of buffer items, that a buffer is no longer
owned by the buffer queue.

Otherwise the consumer layer can leak the buffer reference until
consumer teardown/disconnect.

Test: Camera CTS is fine, using a camera app shows correct memory
  behavior
Bug: 62591036

Change-Id: I14c200d13e60dbbe21261343941f84fb786db117

7 years agoMerge "atrace.rc: Correct path to saved_cmdlines_size when setting permission am...
Android Build Merger (Role) [Tue, 13 Jun 2017 20:22:34 +0000 (20:22 +0000)]
Merge "atrace.rc: Correct path to saved_cmdlines_size when setting permission am: 922e418f45 am: 83e73f35d6" into oc-dr1-dev-plus-aosp

7 years agoatrace.rc: Correct path to saved_cmdlines_size when setting permission am: 922e418f45
Joel Fernandes [Tue, 13 Jun 2017 20:22:16 +0000 (20:22 +0000)]
atrace.rc: Correct path to saved_cmdlines_size when setting permission am: 922e418f45
am: bf16598142

Change-Id: Ia489f46bc7be10fc877d709eedc70ca49be53c3b

7 years agoatrace.rc: Correct path to saved_cmdlines_size when setting permission am: 922e418f45
Joel Fernandes [Tue, 13 Jun 2017 20:22:14 +0000 (20:22 +0000)]
atrace.rc: Correct path to saved_cmdlines_size when setting permission am: 922e418f45
am: 83e73f35d6

Change-Id: I0e081393abcb36b99ced7000a075cc7ef5e1825e

7 years agoatrace.rc: Correct path to saved_cmdlines_size when setting permission
Joel Fernandes [Tue, 13 Jun 2017 20:18:14 +0000 (20:18 +0000)]
atrace.rc: Correct path to saved_cmdlines_size when setting permission
am: 922e418f45

Change-Id: I99862d8e16d1c10405a696b89553a855881c967a

7 years agoatrace.rc: Correct path to saved_cmdlines_size when setting permission
Joel Fernandes [Tue, 13 Jun 2017 20:18:14 +0000 (20:18 +0000)]
atrace.rc: Correct path to saved_cmdlines_size when setting permission
am: 922e418f45

Change-Id: If92363cbd1ad525aa6b65e255cc86d7d6005ad25

7 years agoResurrect the pose tool.
Okan Arikan [Mon, 5 Jun 2017 23:21:42 +0000 (16:21 -0700)]
Resurrect the pose tool.

Editing the tool to look into the same broadcast ring that
VrCore reads from.

Bug: 62355308
Test: Run pose tool
Change-Id: I270e3934c7df398048701a81851ee860a8acb712
(cherry picked from commit 2a4d63ce1737705fff6def88e68b2e537db9074c)

7 years agoatrace.rc: Correct path to saved_cmdlines_size when setting permission
Joel Fernandes [Tue, 13 Jun 2017 03:47:27 +0000 (20:47 -0700)]
atrace.rc: Correct path to saved_cmdlines_size when setting permission

Bug: 62375794
Test: CTS test

Change-Id: Ie252be152ba26aced63af55734d3155ad93f2919
Signed-off-by: Joel Fernandes <joelaf@google.com>
(cherry picked from commit 0094a2d5962ed81c6c624c900450d84f1967ba49)

7 years agodumpstate: Better format for dumping block stat
Wei Wang [Tue, 13 Jun 2017 18:52:07 +0000 (18:52 +0000)]
dumpstate: Better format for dumping block stat
am: 1dc1ef5af5

Change-Id: Ida45ae1d195ace8aed23e98be6eaf50742e47c7f

7 years agodumpstate: Better format for dumping block stat
Wei Wang [Mon, 12 Jun 2017 18:28:37 +0000 (11:28 -0700)]
dumpstate: Better format for dumping block stat

After CL the format looks like:

------ BLOCK STAT (/sys/block/mmcblk0) ------
Block-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait
/mmcblk0/stat                 :    11299    16093  1262592    31863     3895     2968    63232     6463        0    10260    38243
/mmcblk0/stat                 : perf(ios) rd: 75622KB/s(1322/s) wr: 18671KB/s(2246/s) q: 4
Block-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait
/mmcblk0/mmcblk0p1/stat       :       37       29       66        6        0        0        0        0        0        6        6
/mmcblk0/mmcblk0p1/stat       : perf(ios) rd: 5632KB/s(6167/s) q: 1
Block-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait
/mmcblk0/mmcblk0p24/stat      :       12       32      346        0        1        0        8        0        0        0        0
Block-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait
/mmcblk0/mmcblk0p26/stat      :        0        0        0        0        3      381     3072      296        0      100      296
/mmcblk0/mmcblk0p26/stat      : perf(ios) rd: 0KB/s(0/s) wr: 15729KB/s(30/s) q: 3
Block-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait
/mmcblk0/mmcblk0p30/stat      :       11       33      352       23        0        0        0        0        0       23       23
/mmcblk0/mmcblk0p30/stat      : perf(ios) rd: 7836KB/s(478/s) q: 1
Block-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait
/mmcblk0/mmcblk0p38/stat      :        1        3       32        0        0        0        0        0        0        0        0
Block-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait
/mmcblk0/mmcblk0p39/stat      :      816     1072    47000     3460        0        0        0        0        0      273     3460
/mmcblk0/mmcblk0p39/stat      : perf(ios) rd: 88147KB/s(2989/s) q: 13
Block-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait
/mmcblk0/mmcblk0p40/stat      :       17       13      228        0        4        0       32        3        0        3        3
/mmcblk0/mmcblk0p40/stat      : perf(ios) rd: 0KB/s(0/s) wr: 5461KB/s(1333/s) q: 1
Block-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait
/mmcblk0/mmcblk0p41/stat      :     4831    14319   453376    17336        0        0        0        0        0     3273    17330
/mmcblk0/mmcblk0p41/stat      : perf(ios) rd: 70898KB/s(1476/s) q: 5
Block-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait
/mmcblk0/mmcblk0p42/stat      :        8      124     1056        3        0        0        0        0        0        3        3
/mmcblk0/mmcblk0p42/stat      : perf(ios) rd: 180224KB/s(2667/s) q: 1
Block-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait
/mmcblk0/mmcblk0p45/stat      :     5560      468   760088    11033     3046     2587    60120     5490        0     6840    16453

Bug: 62319771
Test: adb bugreport and check the result
Change-Id: I9464c4758f03479d433bdb7a907dd4953f226e1e

7 years agoMerge "dumpstate: Remove wpa_cli usage" into oc-dr1-dev
Roshan Pius [Tue, 13 Jun 2017 04:24:04 +0000 (04:24 +0000)]
Merge "dumpstate: Remove wpa_cli usage" into oc-dr1-dev
am: 516e0c3738

Change-Id: I7b51227046dd3af58d0b7008f4a3a49d72ad69d5

7 years agoMerge "dumpstate: Remove wpa_cli usage" into oc-dr1-dev
TreeHugger Robot [Tue, 13 Jun 2017 04:18:19 +0000 (04:18 +0000)]
Merge "dumpstate: Remove wpa_cli usage" into oc-dr1-dev

7 years agoMerge "Re-enable default display when switching to VR mode." into oc-dr1-dev
Alex Sakhartchouk [Mon, 12 Jun 2017 20:52:40 +0000 (20:52 +0000)]
Merge "Re-enable default display when switching to VR mode." into oc-dr1-dev
am: efa87ca42e

Change-Id: I149f9ea222d058b6b42405dabd2d27f44706a853