OSDN Git Service

android-x86/frameworks-native.git
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
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 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
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 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 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 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 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
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:47:18 +0000 (18:47 +0000)]
Merge "Use _exit for profile copy dexopt command" into oc-dr1-dev

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 [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 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: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
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 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 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
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 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 [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
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
TreeHugger Robot [Mon, 12 Jun 2017 20:44:34 +0000 (20:44 +0000)]
Merge "Re-enable default display when switching to VR mode." into oc-dr1-dev

7 years agoMerge "Add LambdaMessage to SurfaceFlinger" into oc-dr1-dev
TreeHugger Robot [Mon, 12 Jun 2017 20:44:34 +0000 (20:44 +0000)]
Merge "Add LambdaMessage to SurfaceFlinger" into oc-dr1-dev

7 years agodumpstate: Dump all block device stat
Wei Wang [Fri, 9 Jun 2017 21:42:12 +0000 (14:42 -0700)]
dumpstate: Dump all block device stat

We have "UPTIME MMC PERF" but it is limited to MMC and thus has
been broken for a while in recent devices.
This CL is to add dump for all block devices stat information.

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

7 years agoMerge "Move global buffer ops to VR display service." into oc-dr1-dev
TreeHugger Robot [Fri, 9 Jun 2017 21:56:52 +0000 (21:56 +0000)]
Merge "Move global buffer ops to VR display service." into oc-dr1-dev

7 years agoMerge "Add missing VNDK pixel formats to AHardwareBuffer" into oc-dev
Mathias Agopian [Fri, 9 Jun 2017 19:36:27 +0000 (19:36 +0000)]
Merge "Add missing VNDK pixel formats to AHardwareBuffer" into oc-dev
am: 2563c0f3b0

Change-Id: I10e623eebb70da1f4127c0eec2aa85867da0623c

7 years agoMerge "Add missing VNDK pixel formats to AHardwareBuffer" into oc-dev
Mathias Agopian [Fri, 9 Jun 2017 19:02:45 +0000 (19:02 +0000)]
Merge "Add missing VNDK pixel formats to AHardwareBuffer" into oc-dev

7 years agoMerge "Floor height API changes." into oc-dr1-dev
Okan Arikan [Fri, 9 Jun 2017 16:48:47 +0000 (16:48 +0000)]
Merge "Floor height API changes." into oc-dr1-dev

7 years agoRe-enable default display when switching to VR mode.
Alex Sakhartchouk [Mon, 5 Jun 2017 14:37:57 +0000 (10:37 -0400)]
Re-enable default display when switching to VR mode.

Previously, in an attempt to minimize the number of changes that got
reset during VR mode transitions, the primary display was not turned back
on.

Bug: 62215749
Test: Switch device into VR mode, observe primary display invalidations.

Change-Id: Idd883e1522f519a0db06fdd88b071007487b6e70
(cherry picked from commit 933ed5ceb9d70829333ae438985a1bfeec8e79a8)

7 years agoAdd LambdaMessage to SurfaceFlinger
Alex Sakhartchouk [Wed, 7 Jun 2017 15:36:32 +0000 (11:36 -0400)]
Add LambdaMessage to SurfaceFlinger

LambdaMessage allows for a cleaner, more compact way to create and
dispatch messages inside SurfaceFlinger. A follow up CL uses this
method, but it was isolated here to keep added functionality and
helper facilities separate.

Bug: 62215749
Test: Compile
Change-Id: I9e13e04f1b67fd60f01bcab02fe4f19c91c10bd4
(cherry picked from commit 117698b8e51c839e4c3925d66af13f3de3b420ab)

7 years agoFix build
Jorim Jaggi [Fri, 9 Jun 2017 07:59:34 +0000 (07:59 +0000)]
Fix build
am: aaef0983ba

Change-Id: Ia4d360cb942c43180d6077cd01bd9e9eb5b598d5

7 years agoFix build
Jorim Jaggi [Fri, 9 Jun 2017 06:55:29 +0000 (23:55 -0700)]
Fix build

Test: builds
Bug: 36631902
Change-Id: Iec23f8ab2b16c923f07d1857aa3471cfefc057dd

7 years agoProperly run window animations at vsync-sf (2/2)
Jorim Jaggi [Fri, 9 Jun 2017 04:15:20 +0000 (04:15 +0000)]
Properly run window animations at vsync-sf (2/2)
am: b1e2f8deb3

Change-Id: I7fbd22c681688edce1eda7f2786c68e6cbe32a22

7 years agoAdd missing VNDK pixel formats to AHardwareBuffer
Mathias Agopian [Fri, 9 Jun 2017 02:44:17 +0000 (19:44 -0700)]
Add missing VNDK pixel formats to AHardwareBuffer

AHardwareBuffer is now the only API available to
vendors to create graphic buffers in their HAL
implementations, unfortunately AHardwareBuffer
was designed for NDK use and was missing all
HAL specific pixel formats.

This CL adds these missing format to the VNDK-only
header.

The implementation is changed to accept all formats
which means, VNDK formats are indirectly exposed
to the NDK.

Bug: 38466076
Test: manual
Change-Id: I1e752cd33641aa861d9d15432cde6bec5a682e9a

7 years agoProperly run window animations at vsync-sf (2/2)
Jorim Jaggi [Thu, 8 Jun 2017 22:43:59 +0000 (15:43 -0700)]
Properly run window animations at vsync-sf (2/2)

- Add new Choreographer instance that runs on vsync-sf
- Use this new Choreographer for WindowAnimator, and remove all
the hacks around it

Test: Open apps and close apps, notice no stutter
Test: Screen zoom animations
Test: go/wm-smoke
Bug: 36631902
Change-Id: I72a8b39709303a38fc077100229b8a81a153ba3e

7 years agoMove global buffer ops to VR display service.
Corey Tabaka [Thu, 8 Jun 2017 00:54:33 +0000 (17:54 -0700)]
Move global buffer ops to VR display service.

The original home for these ops was the VR display manager service,
which is a protected singleton service that may only have one client.
Since more than one service needs to create global buffers, move these
ops to the display service. They are already protected by permission
checks.

Bug: 62424911
Test: dvr_api-test passes
Change-Id: Ia2f57fdf8a5258b52a652935d160e90db0f1cf9e

7 years agoFloor height API changes.
Okan Arikan [Tue, 6 Jun 2017 16:52:33 +0000 (09:52 -0700)]
Floor height API changes.

The platform does not populate this field yet. This CL is for making the
necessary API change in frameworks/native before we cut the DR branch.

Bug: 38212129
Test: No functional change. Must compile.
Change-Id: Iaa21bbc0cec866bf5325d760e13989e49bce502a

7 years agoMerge "Don't double-count external cached app data." into oc-dev
Jeff Sharkey [Thu, 8 Jun 2017 15:34:49 +0000 (15:34 +0000)]
Merge "Don't double-count external cached app data." into oc-dev
am: b5a1f50f5e

Change-Id: Ia2057fe4522596b4593465db1f5d6cdcbf39c063

7 years agoMerge "Don't double-count external cached app data." into oc-dev
Jeff Sharkey [Thu, 8 Jun 2017 15:27:07 +0000 (15:27 +0000)]
Merge "Don't double-count external cached app data." into oc-dev

7 years agoMerge "No more ashmem equivalent checker false alarm" into oc-dev
Peng Xu [Thu, 8 Jun 2017 10:23:01 +0000 (10:23 +0000)]
Merge "No more ashmem equivalent checker false alarm" into oc-dev
am: d6d91e5833

Change-Id: Ia4dad911062490db360fec8a1dc470b5a7bce9d6

7 years agoMerge "No more ashmem equivalent checker false alarm" into oc-dev
TreeHugger Robot [Thu, 8 Jun 2017 10:16:09 +0000 (10:16 +0000)]
Merge "No more ashmem equivalent checker false alarm" into oc-dev

7 years agoMerge "DO NOT MERGE: Eliminate redundant changes to hardware vsync state." into cw...
Matthew Bouyack [Wed, 7 Jun 2017 23:07:56 +0000 (23:07 +0000)]
Merge "DO NOT MERGE: Eliminate redundant changes to hardware vsync state." into cw-f-dev am: 9e5585930a am: f613f073b2  -s ours
am: 4c0bb0a09a

Change-Id: I579772728ba0f1c12ac6a611c53b0bba6e23c09b

7 years agoMerge "DO NOT MERGE: Eliminate redundant changes to hardware vsync state." into cw...
Matthew Bouyack [Wed, 7 Jun 2017 22:59:18 +0000 (22:59 +0000)]
Merge "DO NOT MERGE: Eliminate redundant changes to hardware vsync state." into cw-f-dev am: 9e5585930a
am: f613f073b2  -s ours

Change-Id: I8a6e0a9b7e7810cfc33db9de074c2cdac139d233

7 years agoMerge "DO NOT MERGE: Eliminate redundant changes to hardware vsync state." into cw...
Matthew Bouyack [Wed, 7 Jun 2017 22:53:37 +0000 (22:53 +0000)]
Merge "DO NOT MERGE: Eliminate redundant changes to hardware vsync state." into cw-f-dev
am: 9e5585930a

Change-Id: I3b534f26c60bd8d6cf0736da7de807cf339a1cdd

7 years agoMerge "DO NOT MERGE: Eliminate redundant changes to hardware vsync state." into cw...
Matthew Bouyack [Wed, 7 Jun 2017 22:46:08 +0000 (22:46 +0000)]
Merge "DO NOT MERGE: Eliminate redundant changes to hardware vsync state." into cw-f-dev

7 years agoDO NOT MERGE: Eliminate redundant changes to hardware vsync state.
Matthew Bouyack [Thu, 1 Jun 2017 21:37:29 +0000 (14:37 -0700)]
DO NOT MERGE: Eliminate redundant changes to hardware vsync state.

When transitioning between NORMAL and DOZE power modes
we were redundantly calling resyncHardwareVsync.

Similarly, when transitioning from DOZE_SUSPEND to OFF
we were redundantly calling disableHardwareVsync.

This change eliminates those redundant calls.

Fixes bug 62235417

Change-Id: I513bbf94a7ab973ab258efe16436441ac2379b70

7 years agoDon't double-count external cached app data.
Jeff Sharkey [Wed, 7 Jun 2017 21:59:03 +0000 (15:59 -0600)]
Don't double-count external cached app data.

Cached app data is already counted in extStats.dataSize, so we don't
need to count it twice.

Test: builds, boots, verified Settings UI before/after
Bug: 62343684
Change-Id: Ic02cbe3f5938949730f9bc8d911ed398436f84d7

7 years agoNo crash from AHardwareBuffer_unlock on NULL fence
Jiwen 'Steve' Cai [Wed, 7 Jun 2017 19:30:47 +0000 (19:30 +0000)]
No crash from AHardwareBuffer_unlock on NULL fence
am: ae6955fda8

Change-Id: I884ab8f0f15ad2e9e838572be638bfeee076686f

7 years agodumpstate: Remove wpa_cli usage
Roshan Pius [Mon, 5 Jun 2017 15:39:59 +0000 (08:39 -0700)]
dumpstate: Remove wpa_cli usage

List of saved networks is dumped out by WifiConfigManager during
bugreport collection. The 'wpa_cli` command in dumpstate.cpp is
non-functional since the saved networks are no longer saved in
wpa_supplicant.

Bug: 62068865
Test: Collected bugreport and ensured that there are no wpa_cli errors.
Change-Id: I0080bf10dafcbd187fcf583232ce64dd3868d818

7 years agoNo crash from AHardwareBuffer_unlock on NULL fence
Jiwen 'Steve' Cai [Fri, 2 Jun 2017 22:23:26 +0000 (15:23 -0700)]
No crash from AHardwareBuffer_unlock on NULL fence

The API document states: "If fence is not NULL then it will be set to a
file descriptor that is signaled when all pending work on the buffer is
completed." As it's too late to change the document, we should probably
update the implement and use GraphicsBuffer::unlock under the hood.

Bug: 62302267
Test: Build, AHardware CTS
Change-Id: Ic0fac5d7addfba67baaa1b5d7c221fc25d02df56
(cherry picked from commit 6cdbb537105b663572e71afe06bde1164fc215f3)

7 years agoMerge changes from topic 'vrflinger-cleanup'
TreeHugger Robot [Wed, 7 Jun 2017 04:05:22 +0000 (04:05 +0000)]
Merge changes from topic 'vrflinger-cleanup'

* changes:
  libbufferhub: Fix native buffer.
  libvrflinger: Move display request to avoid duplicate calls.
  libvrflinger: Remove superfluous update to display manager.
  libvrflinger: Move some tracing to a more verbose level.
  libvrflinger: Add additional info to PDX dump.

7 years agoMerge "Support custom permission, slight adjust of dumpsys print"
Peng Xu [Wed, 7 Jun 2017 03:16:09 +0000 (03:16 +0000)]
Merge "Support custom permission, slight adjust of dumpsys print"

7 years agoMerge "Read saturation boost from a persistent property"
TreeHugger Robot [Wed, 7 Jun 2017 02:36:12 +0000 (02:36 +0000)]
Merge "Read saturation boost from a persistent property"

7 years agolibbufferhub: Fix native buffer.
Corey Tabaka [Wed, 10 May 2017 23:27:21 +0000 (16:27 -0700)]
libbufferhub: Fix native buffer.

This class was broken during a clean up. Fix the code in preparation
for adding tools that will use it again.

Bug: None
Test: build; flash
Change-Id: I8e60c7ba316080a24ff8914807972886e21ebce9

7 years agolibvrflinger: Move display request to avoid duplicate calls.
Corey Tabaka [Tue, 6 Jun 2017 23:33:31 +0000 (16:33 -0700)]
libvrflinger: Move display request to avoid duplicate calls.

Move the request display call to avoid duplicate calls when direct
surfaces change but the current VrFlinger mode does not change.

Bug: 62389162
Test: build; flash; VrFlinger mode works.
Change-Id: I1348ada93e2992306cba7e319f9b20726fb97cb7

7 years agolibvrflinger: Remove superfluous update to display manager.
Corey Tabaka [Tue, 6 Jun 2017 23:16:28 +0000 (16:16 -0700)]
libvrflinger: Remove superfluous update to display manager.

Setting visibility attributes already triggers an update to the
display manager. Avoid the double trigger.

Bug: None
Test: build; run
Change-Id: I4c8a7c814143ccd1a4fc22fe068ba9b05d95cdd6

7 years agolibvrflinger: Move some tracing to a more verbose level.
Corey Tabaka [Tue, 6 Jun 2017 23:14:21 +0000 (16:14 -0700)]
libvrflinger: Move some tracing to a more verbose level.

Quiet the logs when using TRACE=1.

Bug: None
Test: Set TRACE=1; build; observe traces do not appear.
Change-Id: I521fa5cf4b0ab18e73f89a1898bf2d58fc2d1f88

7 years agolibvrflinger: Add additional info to PDX dump.
Corey Tabaka [Fri, 19 May 2017 19:02:58 +0000 (12:02 -0700)]
libvrflinger: Add additional info to PDX dump.

- Add logging for surface and layers.
- Minor cleanup of AcquiredBuffer code.
- Add additional debug tracing.

Bug: None
Test: servicetool --dump /dev/socket/pdx/system/vr/display/client
Change-Id: Ie7cfe46978139e0eef2184b03acb4b9bab428a33

7 years agoMerge "buffer_hub_queue_client: Batch allocate buffers"
TreeHugger Robot [Tue, 6 Jun 2017 23:20:56 +0000 (23:20 +0000)]
Merge "buffer_hub_queue_client: Batch allocate buffers"

7 years agoDo not use default initializer for union
Yi Kong [Tue, 6 Jun 2017 23:05:38 +0000 (23:05 +0000)]
Do not use default initializer for union
am: 584dfc7688

Change-Id: I328296e07f5b6e5c3f880a2b243a7fe2e297252e

7 years agoDo not use default initializer for union
Yi Kong [Thu, 11 May 2017 18:51:08 +0000 (11:51 -0700)]
Do not use default initializer for union

The next Clang update complains about this code pattern. Rewrite default
constructor to explicitly initialize the union field instead of using
the default initializer.

Test: Build
Bug: 37752547
Change-Id: I22a2aa392d7f4803282baed832b0fa2f852016ac
(cherry picked from commit 4fdbdd1692a549a31382f33f5d529fd141453ea1)

7 years agoatrace: setup saved_cmdlines_size and write only if available am: 9351f72049
Joel Fernandes [Tue, 6 Jun 2017 20:56:50 +0000 (20:56 +0000)]
atrace: setup saved_cmdlines_size and write only if available am: 9351f72049
am: 485d70cfa4

Change-Id: I5b0d49466edc2d0824cef0f6b3cef3a5bcf66f09

7 years agoatrace: setup saved_cmdlines_size and write only if available
Joel Fernandes [Tue, 6 Jun 2017 20:54:50 +0000 (20:54 +0000)]
atrace: setup saved_cmdlines_size and write only if available
am: 9351f72049

Change-Id: I6ac54d96cda205bc5d4e4d569b03b2064140e310

7 years agoMerge "Revert "Disable in-place vdex update"" into oc-dev am: 7258088ea5
Nicolas Geoffray [Tue, 6 Jun 2017 20:48:00 +0000 (20:48 +0000)]
Merge "Revert "Disable in-place vdex update"" into oc-dev am: 7258088ea5
am: 0ef3b0eca2

Change-Id: I54f6eea644b392f6aefa9c07e035a1e2478ba311

7 years agoatrace: setup saved_cmdlines_size and write only if available
Joel Fernandes [Tue, 6 Jun 2017 19:20:29 +0000 (12:20 -0700)]
atrace: setup saved_cmdlines_size and write only if available

Older kernels (bullhead etc) don't have saved_cmdlines_size, check and
write only if available. Also make work on non-root by setting
permissions in rc file (thanks John Reck for suggestion).

Bug: 62375794

Change-Id: Iefffc3203afd092ffb6cf420a144b38844aaee39
Signed-off-by: Joel Fernandes <joelaf@google.com>
7 years agoMerge "Revert "Disable in-place vdex update"" into oc-dev
Nicolas Geoffray [Tue, 6 Jun 2017 20:38:42 +0000 (20:38 +0000)]
Merge "Revert "Disable in-place vdex update"" into oc-dev
am: 7258088ea5

Change-Id: I3e36f53541ccac1cccd2361d4d6b752e8e881668

7 years agoMerge "Revert "Disable in-place vdex update"" into oc-dev
Nicolas Geoffray [Tue, 6 Jun 2017 20:20:33 +0000 (20:20 +0000)]
Merge "Revert "Disable in-place vdex update"" into oc-dev

7 years agoatrace: setup saved_cmdlines_size and write only if available
Joel Fernandes [Tue, 6 Jun 2017 19:20:29 +0000 (12:20 -0700)]
atrace: setup saved_cmdlines_size and write only if available

Older kernels (bullhead etc) don't have saved_cmdlines_size, check and
write only if available. Also make work on non-root by setting
permissions in rc file (thanks John Reck for suggestion).

Bug: 62375794

Change-Id: Iefffc3203afd092ffb6cf420a144b38844aaee39
Signed-off-by: Joel Fernandes <joelaf@google.com>
7 years agobuffer_hub_queue_client: Batch allocate buffers
Jiwen 'Steve' Cai [Thu, 25 May 2017 06:16:54 +0000 (23:16 -0700)]
buffer_hub_queue_client: Batch allocate buffers

Bug: 36147743
Test: buffer_hub_queue-test, buffer_hub_queue_producer-test, dvr_api-test
Change-Id: I40a9babfa8d28d4496e27a7ccecb7ae1b9bc7bd5

7 years agoMerge "Add DVR API for scroll event injection."
TreeHugger Robot [Tue, 6 Jun 2017 18:20:31 +0000 (18:20 +0000)]
Merge "Add DVR API for scroll event injection."

7 years agofix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0...
Mathias Agopian [Tue, 6 Jun 2017 18:19:26 +0000 (18:19 +0000)]
fix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0 am: 46361c6c2b am: ee464e00d3 am: 21e9397776 am: 7b8472157a  -s ours
am: 66bc85165a

Change-Id: I977e8a53b3ff189b1740dfd612ec19edf0acc79a

7 years agofix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0...
Mathias Agopian [Tue, 6 Jun 2017 18:18:59 +0000 (18:18 +0000)]
fix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0 am: 46361c6c2b am: ee464e00d3 am: 21e9397776  -s ours am: 1b81145396
am: 390786a204

Change-Id: I606f740ad26e0b415149a657adfe6c2dd879c139

7 years agofix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0...
Mathias Agopian [Tue, 6 Jun 2017 18:06:07 +0000 (18:06 +0000)]
fix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0 am: 46361c6c2b am: ee464e00d3 am: 21e9397776
am: 7b8472157a  -s ours

Change-Id: I5289fea87abce43cb9fa7cf4cb11041b5201800d

7 years agofix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0...
Mathias Agopian [Tue, 6 Jun 2017 18:05:04 +0000 (18:05 +0000)]
fix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0 am: 46361c6c2b am: ee464e00d3 am: 21e9397776  -s ours
am: 1b81145396

Change-Id: I3038e41c1e4b64e397162fea3ddb80eab6374614

7 years agofix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0...
Mathias Agopian [Tue, 6 Jun 2017 17:59:02 +0000 (17:59 +0000)]
fix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0 am: 46361c6c2b am: ee464e00d3
am: 21e9397776  -s ours

Change-Id: If0f229ba54f2c9978ba83beca331896d1d303db4

7 years agofix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0...
Mathias Agopian [Tue, 6 Jun 2017 17:53:01 +0000 (17:53 +0000)]
fix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0 am: 46361c6c2b am: ee464e00d3
am: 21e9397776

Change-Id: Ifffa0ed1d960232754976ebb29b891ec99d62b75

7 years agofix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0...
Mathias Agopian [Tue, 6 Jun 2017 17:46:30 +0000 (17:46 +0000)]
fix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0 am: 46361c6c2b
am: ee464e00d3

Change-Id: Ifb22956eadae06f2ff6b0445d5e92e450c947942

7 years agofix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0
Mathias Agopian [Tue, 6 Jun 2017 17:40:00 +0000 (17:40 +0000)]
fix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0
am: 46361c6c2b

Change-Id: I33758163baac3c96525751d313091a5bce0d5377

7 years agofix race condition that can cause a use after free am: 59485525a6
Mathias Agopian [Tue, 6 Jun 2017 17:33:59 +0000 (17:33 +0000)]
fix race condition that can cause a use after free am: 59485525a6
am: 5da64c91d0

Change-Id: I6358492afbd410f20a96ceccc7957a67112c58bc

7 years agofix race condition that can cause a use after free
Mathias Agopian [Tue, 6 Jun 2017 17:27:59 +0000 (17:27 +0000)]
fix race condition that can cause a use after free
am: 59485525a6

Change-Id: I42d7ee49dc3dcbd9d5d4a86fc9d018ff6c29534d

7 years agoAdd DVR API for scroll event injection.
Kevin Schoedel [Mon, 5 Jun 2017 15:13:20 +0000 (11:13 -0400)]
Add DVR API for scroll event injection.

Bug: 62226675
Test: manual, vrcore build
Change-Id: Ic7d329eba8003b0e294b3a11a83ed5f868b801f8

7 years agoMerge "surfaceflinger: fix layer count" into oc-dev am: 39cf8b4944
Chia-I Wu [Tue, 6 Jun 2017 16:23:38 +0000 (16:23 +0000)]
Merge "surfaceflinger: fix layer count" into oc-dev am: 39cf8b4944
am: 317b493667

Change-Id: Ibc092a475c8733a7a70359516e869a83573c6f5c

7 years agoMerge "surfaceflinger: fix layer count" into oc-dev
Chia-I Wu [Tue, 6 Jun 2017 15:42:52 +0000 (15:42 +0000)]
Merge "surfaceflinger: fix layer count" into oc-dev
am: 39cf8b4944

Change-Id: I6a7c3ebc27831792be6329ac6083c86c61f01499