OSDN Git Service

android-x86/frameworks-native.git
7 years agoMerge "Set sensor operation parameter implementation" into oc-dev
Peng Xu [Thu, 6 Apr 2017 00:00:07 +0000 (00:00 +0000)]
Merge "Set sensor operation parameter implementation" into oc-dev

7 years agoFix soong dependency issue
Courtney Goeltzenleuchter [Wed, 5 Apr 2017 21:51:24 +0000 (15:51 -0600)]
Fix soong dependency issue

Test: make

Change-Id: I3ea00a32f08395c81e44625603d878a2f1b6975b

7 years agoMerge changes I9da985a7,I2bd642aa,I9358b3c9,I9d3c60b1 into oc-dev
Courtney Goeltzenleuchter [Wed, 5 Apr 2017 22:23:11 +0000 (22:23 +0000)]
Merge changes I9da985a7,I2bd642aa,I9358b3c9,I9d3c60b1 into oc-dev

* changes:
  Add test for FP16 surface support
  Dump info about wide-color
  Add wide-color support to SurfaceFlinger
  Add debug string functions for graphics.h enums

7 years agoMerge "vrwm: Also recenter the controller when should_recenter_ is set" into oc-dev
Albert Chaulk [Wed, 5 Apr 2017 22:12:14 +0000 (22:12 +0000)]
Merge "vrwm: Also recenter the controller when should_recenter_ is set" into oc-dev

7 years agoMerge "Strip VR daemon binaries." into oc-dev
TreeHugger Robot [Wed, 5 Apr 2017 20:52:08 +0000 (20:52 +0000)]
Merge "Strip VR daemon binaries." into oc-dev

7 years agoMerge "dumpstate: don't read /proc/interrupts" into oc-dev
TreeHugger Robot [Wed, 5 Apr 2017 18:58:19 +0000 (18:58 +0000)]
Merge "dumpstate: don't read /proc/interrupts" into oc-dev

7 years agoStrip VR daemon binaries.
Nick Bray [Wed, 5 Apr 2017 18:45:08 +0000 (11:45 -0700)]
Strip VR daemon binaries.

Stripping was suppressed to assist debugging, but this adds 24+ MB to
release builds.

Bug: none
Test: manual
Change-Id: Ic2a866930cebb67af052b6665af2631b131601ae

7 years agoMerge changes I1ed97f98,I32449355,I5c84d6f2,Ib9652278,I73deaa44 into oc-dev
TreeHugger Robot [Wed, 5 Apr 2017 18:05:44 +0000 (18:05 +0000)]
Merge changes I1ed97f98,I32449355,I5c84d6f2,Ib9652278,I73deaa44 into oc-dev

* changes:
  libgui: Make IConsumerListener a SafeInterface
  libgui: Format IConsumerListener
  libbinder: Support Flattenable in SafeInterface
  libgui: Add missing FenceTime header to GLConsumer
  libgui: Fix naming/enums in ISurfaceComposerClient

7 years agoMerge "dumpstate: add dropbox crashes to bugreport" into oc-dev
Adrian Roos [Wed, 5 Apr 2017 18:02:51 +0000 (18:02 +0000)]
Merge "dumpstate: add dropbox crashes to bugreport" into oc-dev

7 years agoMerge "Use Configstore to test getWideColor function" into oc-dev
TreeHugger Robot [Wed, 5 Apr 2017 17:35:46 +0000 (17:35 +0000)]
Merge "Use Configstore to test getWideColor function" into oc-dev

7 years agodumpstate: add dropbox crashes to bugreport
Adrian Roos [Tue, 4 Apr 2017 23:35:44 +0000 (16:35 -0700)]
dumpstate: add dropbox crashes to bugreport

Adds system crashes from the dropbox to the end of the bugreport
to allow diagnosing issues even after the device has rebooted.

Test: adb bugreport
Bug: 36852229
Bug: 26849505
Change-Id: I11589b81208e916d25d543c43c1283bdbffda949

7 years agoMake init process create PDX sockets for services
Alex Vakulenko [Fri, 24 Mar 2017 00:45:40 +0000 (17:45 -0700)]
Make init process create PDX sockets for services

To help us control the creation of PDX sockets and properly labeling
them for SELinux, let the init process create sockets for us based on
the settings specified in .rc files for service processes.

For (test) services that are meant to be started manually from command
line (e.g. test services), keep the old functionality as an option so
that UDS endpoint can be created in a way that it automatically creates
the socket in the service itself.

Bug: 35220925
Test: `m -j32` succeeds. Ran sailfish in VR mode and made sure all the
      services (surfaceflinger, performanced, sensord, bufferhub).
      `m -j32 checkbuild` succeeds as well.

Change-Id: Ief733b41b534cea19b1bea31de76b06051aa50ab

7 years agoAdd test for FP16 surface support
Courtney Goeltzenleuchter [Tue, 28 Mar 2017 23:29:52 +0000 (17:29 -0600)]
Add test for FP16 surface support

Test: adb shell /data/nativetest/EGL_test/EGL_test
      adb shell /system/bin/test-opengl-gl_basic # look for RED_SIZE: of 16.
Bug: 29940137

Change-Id: I9da985a7574d3582b06cf55bc02515db0869505a

7 years agoDump info about wide-color
Courtney Goeltzenleuchter [Mon, 27 Mar 2017 18:18:12 +0000 (12:18 -0600)]
Dump info about wide-color

Test: adb shell dumpsys SurfaceFlinger
      Look for section titled "Wide-Color information:"
Bug: 29940137

Change-Id: I2bd642aa026b49bbb9effd5cb1687c7a36dae684

7 years agoAdd wide-color support to SurfaceFlinger
Courtney Goeltzenleuchter [Wed, 22 Mar 2017 19:46:46 +0000 (13:46 -0600)]
Add wide-color support to SurfaceFlinger

Test: manual testing
Bug: 29940137

Change-Id: I9358b3c982e0205e598fd20cbf8d2e956591b3ac

7 years agoAdd debug string functions for graphics.h enums
Courtney Goeltzenleuchter [Wed, 22 Mar 2017 19:09:12 +0000 (13:09 -0600)]
Add debug string functions for graphics.h enums

Test: see dataspace and colormode details when running with debug
Bug: 29940137

Change-Id: I9d3c60b1f9c71c44aba475450c7f867dcd68627e

7 years agoUse Configstore to test getWideColor function
Courtney Goeltzenleuchter [Mon, 13 Mar 2017 20:30:00 +0000 (14:30 -0600)]
Use Configstore to test getWideColor function

Test: make tests in libs/gui/tests/
Test: adb sync
Test: adb shell /data/nativetest/libgui_test/libgui_test --gtest_filter="SurfaceTest.GetWideColorSupport"
Bug: 29940137

Change-Id: I618c300b1882d2ebd7474586d72f4d469e2d41bf

7 years agoimport configstore-utils as a shared library.
Jaesoo Lee [Thu, 30 Mar 2017 06:25:19 +0000 (15:25 +0900)]
import configstore-utils as a shared library.

android.hardware.configstore-utils is now built as a shared library.

Bug: 36275627
Test: Built and check the boot log messages
Change-Id: I44b0f6a69e267f670380e18a37a519bb2ef1ee84

7 years agoimport configstore-utils as a shared library.
Jaesoo Lee [Thu, 30 Mar 2017 06:24:15 +0000 (15:24 +0900)]
import configstore-utils as a shared library.

android.hardware.configstore-utils is now built as a shared library.

Bug: 36275627
Test: Built and check the boot log messages
Change-Id: I83ccebcad8005f39ca8534477d7cd3f69a2041aa

7 years agoMerge "Remove useless GraphicBuffer() constructor" into oc-dev
Mathias Agopian [Wed, 5 Apr 2017 00:42:52 +0000 (00:42 +0000)]
Merge "Remove useless GraphicBuffer() constructor" into oc-dev

7 years agolibgui: Make IConsumerListener a SafeInterface
Dan Stoza [Wed, 29 Mar 2017 00:05:13 +0000 (17:05 -0700)]
libgui: Make IConsumerListener a SafeInterface

Converts IConsumerListener to be a SafeInterface such that all
parceling/unparceling is done automatically.

Test: libgui_tests + manual testing
Change-Id: I1ed97f9802e320662cd29e181539ce839ffe0f3f

7 years agolibgui: Format IConsumerListener
Dan Stoza [Tue, 28 Mar 2017 20:55:48 +0000 (13:55 -0700)]
libgui: Format IConsumerListener

Applies the framework default .clang-format and does a bit of tidying
up (reflowing comments to 100 characters, reordering includes, etc.).

Test: libgui_tests + manual testing
Change-Id: I324493551bca5a6c6a011cbe773021236e11e992

7 years agolibbinder: Support Flattenable in SafeInterface
Dan Stoza [Wed, 29 Mar 2017 00:02:05 +0000 (17:02 -0700)]
libbinder: Support Flattenable in SafeInterface

Adds support for sending and receiving Flattenable parameters as part
of a SafeInterface.

Test: New test in binderSafeInterfaceTest
Change-Id: I5c84d6f27ac1f8c7ad37210e836f390e02b92959

7 years agolibgui: Add missing FenceTime header to GLConsumer
Dan Stoza [Tue, 28 Mar 2017 23:44:21 +0000 (16:44 -0700)]
libgui: Add missing FenceTime header to GLConsumer

GLConsumer had a missing dependency on FenceTime which was hidden by
coincidental includes in other files. This adds the proper include.

Test: GLConsumer compiles
Change-Id: Ib96522787fa22746e4aeb2cf047bfd667869add6

7 years agolibgui: Fix naming/enums in ISurfaceComposerClient
Dan Stoza [Mon, 3 Apr 2017 22:16:27 +0000 (15:16 -0700)]
libgui: Fix naming/enums in ISurfaceComposerClient

Moves the Tag enum out of the ISurfaceComposerClient header and into an
anonymous namespace in the .cpp file, changes it to UPPER_UNDERSCORE
naming, and makes its LAST entry actually point to the last value.

Test: m -j + manual testing
Change-Id: I73deaa446a87709548c2069c3a1f29605967ab97

7 years agodumpstate: don't read /proc/interrupts
Sandeep Patil [Tue, 21 Mar 2017 21:18:12 +0000 (14:18 -0700)]
dumpstate: don't read /proc/interrupts

/proc/interrupts may be dumped by dumpstate HAL if required.
The framework dependency on this file is unnecessary, since the
interrupt names are hardware / kernel dependent anyway.

Bug: 36486169
Test: 'adb shell bugreport' on sailfish
Change-Id: I336318b24ce4bcc5b710645359b7c4ccda3f6989
Signed-off-by: Sandeep Patil <sspatil@google.com>
7 years agoMerge "fix race condition that can cause a use after free" into oc-dev
Mathias Agopian [Tue, 4 Apr 2017 21:51:01 +0000 (21:51 +0000)]
Merge "fix race condition that can cause a use after free" into oc-dev

7 years agoRemove useless GraphicBuffer() constructor
Mathias Agopian [Tue, 4 Apr 2017 00:16:41 +0000 (17:16 -0700)]
Remove useless GraphicBuffer() constructor

Test: compiled & run
Bug: 36869708

Change-Id: I83d80a1cde28671135b7716a434c503aeefcec46

7 years agoMerge "Harden BufferHubQueueProducerTest" into oc-dev
TreeHugger Robot [Tue, 4 Apr 2017 21:32:43 +0000 (21:32 +0000)]
Merge "Harden BufferHubQueueProducerTest" into oc-dev

7 years agoMerge "Offer to "fixup" GIDs used for app data." into oc-dev
TreeHugger Robot [Tue, 4 Apr 2017 21:18:16 +0000 (21:18 +0000)]
Merge "Offer to "fixup" GIDs used for app data." into oc-dev

7 years agovrwm: Also recenter the controller when should_recenter_ is set
Albert Chaulk [Tue, 4 Apr 2017 19:21:20 +0000 (15:21 -0400)]
vrwm: Also recenter the controller when should_recenter_ is set

Bug: 36201389
Test: Manual, recenter controller with vrwm up
Change-Id: I776ac51578d692832baac5aad50993b5ed1b8eea

7 years agofix race condition that can cause a use after free
Mathias Agopian [Tue, 4 Apr 2017 00:14:31 +0000 (17:14 -0700)]
fix race condition that can cause a use after free

Bug: 33004354
Test: manual
Change-Id: I9b38ee644b02268c9b995a330db758aa2e568399

7 years agoSet sensor operation parameter implementation
Peng Xu [Fri, 17 Mar 2017 00:39:43 +0000 (17:39 -0700)]
Set sensor operation parameter implementation

Set operation parameter to sensor HAL. Possible paramters include
local geomagnetic field, local gravity acceleration, device dock
state, whether device should run in high performance mode, and
if a magnetic field calibration guide is in progress.

Bug: 30958130
Test: Tested with marlin. Modified hal implementation can get local
      geomagnetic field.

Change-Id: Idaedd9e616d01383ba244cc64cf3e319ce02191f

7 years agoMerge "Fix pose predictor jank." into oc-dev
TreeHugger Robot [Tue, 4 Apr 2017 18:23:45 +0000 (18:23 +0000)]
Merge "Fix pose predictor jank." into oc-dev

7 years agoMerge "vulkan: update Vulkan headers to 1.0.46" into oc-dev
Jesse Hall [Tue, 4 Apr 2017 18:04:14 +0000 (18:04 +0000)]
Merge "vulkan: update Vulkan headers to 1.0.46" into oc-dev

7 years agovulkan: update Vulkan headers to 1.0.46
Jesse Hall [Mon, 20 Mar 2017 20:09:19 +0000 (13:09 -0700)]
vulkan: update Vulkan headers to 1.0.46

- Add VK_EXT_swapchain_colorspace
- Add VK_KHR_incremental_present

Test: dEQP-VK.api.smoke.*
      dEQP-VK.wsi.android.incremental_present.*
Bug: 36886707
Change-Id: I70ffd56a63da39301cd9706b1b91cf3643aab916

7 years agoFix pose predictor jank.
Okan Arikan [Fri, 31 Mar 2017 21:04:51 +0000 (14:04 -0700)]
Fix pose predictor jank.

There were two issues:
- A math error in angular velocity computation.
  This has unit tests and they were failing.
  Need to make sure these units tests get executed.

- There is an inherent sensor latency that we need to account for.

Bug: 3669359636196200
Test: Run VrHome, see less hanky result.
Change-Id: Ifcf191f16de9ee64aa14bcbb74c9126db18ebaa8

7 years agoMerge "libui: clean up GraphicBuffer interface" into oc-dev
Chia-I Wu [Tue, 4 Apr 2017 16:16:23 +0000 (16:16 +0000)]
Merge "libui: clean up GraphicBuffer interface" into oc-dev

7 years agoMerge "VR: Move VR HWC DVR API to libdvr" into oc-dev
TreeHugger Robot [Tue, 4 Apr 2017 16:14:03 +0000 (16:14 +0000)]
Merge "VR: Move VR HWC DVR API to libdvr" into oc-dev

7 years agoMerge "pdx: Rework error reporting when transfering file and channel handles" into...
Alex Vakulenko [Tue, 4 Apr 2017 15:31:24 +0000 (15:31 +0000)]
Merge "pdx: Rework error reporting when transfering file and channel handles" into oc-dev

7 years agoMerge "Remove driver workaround" into oc-dev
Courtney Goeltzenleuchter [Tue, 4 Apr 2017 12:59:41 +0000 (12:59 +0000)]
Merge "Remove driver workaround" into oc-dev

7 years agoVR: Move VR HWC DVR API to libdvr
Daniel Nicoara [Mon, 27 Mar 2017 20:56:05 +0000 (16:56 -0400)]
VR: Move VR HWC DVR API to libdvr

Moved VR HWC API into a common API library.

Bug: 36050795
Test: Compiled
Change-Id: I1af32f4dedb7a6d4bb77a18d3c48cfbc8ea00a66
(cherry picked from commit 3d3fb3960f9c3956074496fd7fa1beb230ac1043)

7 years agoMerge "Fix typo causing GL_EXT_debug_marker to disappear" into oc-dev
TreeHugger Robot [Tue, 4 Apr 2017 05:57:05 +0000 (05:57 +0000)]
Merge "Fix typo causing GL_EXT_debug_marker to disappear" into oc-dev

7 years agoMerge changes from topic 'sensors_framework_hal' into oc-dev
TreeHugger Robot [Tue, 4 Apr 2017 05:43:52 +0000 (05:43 +0000)]
Merge changes from topic 'sensors_framework_hal' into oc-dev

* changes:
  android.frameworks.sensorservice@1.0: make classes final
  android.frameworks.sensorservice@1.0: ashmem direct channel check sizes.
  android.frameworks.sensorservice@1.0: fix configureDirectChannel return positive integer.
  Implement android.frameworks.sensorservice@1.0::IEventQueue.
  Renamed HIDL SensorManager::mManager -> mInternalManager.

7 years agoMerge "ANativeWindow_toSurface header" into oc-dev
TreeHugger Robot [Tue, 4 Apr 2017 04:30:11 +0000 (04:30 +0000)]
Merge "ANativeWindow_toSurface header" into oc-dev

7 years agoMerge "vndservicemanager: load vendor service_contexts." into oc-dev
Martijn Coenen [Tue, 4 Apr 2017 03:41:46 +0000 (03:41 +0000)]
Merge "vndservicemanager: load vendor service_contexts." into oc-dev

7 years agoANativeWindow_toSurface header
Jiwen 'Steve' Cai [Fri, 31 Mar 2017 18:19:37 +0000 (11:19 -0700)]
ANativeWindow_toSurface header

This enables the conversion from an ANativeWindow (created by NDK API
such as: AImageReader_create) to a Java Surface, so that developers can
hookup a Java Producer to a native buffer consumer.

Bug: 36862948
Test: android.media.cts.NativeImageReaderTest
Change-Id: I11962bc791680a62579e51c32f2d51911cac48f8

7 years agoandroid.frameworks.sensorservice@1.0: make classes final
Yifan Hong [Tue, 4 Apr 2017 02:08:16 +0000 (19:08 -0700)]
android.frameworks.sensorservice@1.0: make classes final

Make SensorManager and DirectReportChannel final.

Test: pass
Change-Id: Idc7f7fcacf1ad1ad6282a603538529ff99f88184

7 years agoandroid.frameworks.sensorservice@1.0: ashmem direct channel check sizes.
Yifan Hong [Mon, 3 Apr 2017 21:59:47 +0000 (14:59 -0700)]
android.frameworks.sensorservice@1.0: ashmem direct channel check sizes.

Test: VtsHalSensorManagerV1_0TargetTest
Change-Id: I18b87128da2607f82ffddb260bf440786c378010

7 years agoandroid.frameworks.sensorservice@1.0: fix configureDirectChannel return positive...
Yifan Hong [Mon, 3 Apr 2017 19:52:24 +0000 (12:52 -0700)]
android.frameworks.sensorservice@1.0: fix configureDirectChannel return positive integer.

SensorManager::configureDirectChannel can return a positive integer
as the token to indicate success. android.frameworks.sensorservice@1.0
doesn't care about the token.

Test: VtsHalSensorManagerV1_0TargetTest
Change-Id: I6bcbbe5dc747a0d93d2a0fd37f0b7187cb681101

7 years agoImplement android.frameworks.sensorservice@1.0::IEventQueue.
Yifan Hong [Wed, 29 Mar 2017 02:07:17 +0000 (19:07 -0700)]
Implement android.frameworks.sensorservice@1.0::IEventQueue.

Test: pass
Bug: 35219747
Change-Id: I52ddd64db500c23db22768fc0603bce0cc14f8c6

7 years agoMerge "Add VNDK API to access AHardwareBuffer from ANativeWindowBuffer" into oc-dev
Mathias Agopian [Tue, 4 Apr 2017 01:49:08 +0000 (01:49 +0000)]
Merge "Add VNDK API to access AHardwareBuffer from ANativeWindowBuffer" into oc-dev

7 years agoVR: Update VR Window Manager to use the VR Hardware Composer service
Daniel Nicoara [Fri, 10 Mar 2017 18:02:09 +0000 (13:02 -0500)]
VR: Update VR Window Manager to use the VR Hardware Composer service

Decouples VR HWC from VR Window Manager.

Bug: 36051907
Test: Compiled and ran on device in VR mode.
Change-Id: Ifd76e742148765b3cf3e71b0cf538b920814eb7b

7 years agoFix typo causing GL_EXT_debug_marker to disappear
Pyry Haulos [Tue, 4 Apr 2017 01:22:58 +0000 (18:22 -0700)]
Fix typo causing GL_EXT_debug_marker to disappear

Android EGL wrapper is supposed to always insert GL_EXT_debug_marker
implementation. A small typo in recent refactoring broke this logic.

Bug: 36865892
Test: dEQP-GLES2.functional.debug_marker.supported

7 years agoMerge "Surface: add getRemovedBuffer API" into oc-dev
TreeHugger Robot [Tue, 4 Apr 2017 00:33:14 +0000 (00:33 +0000)]
Merge "Surface: add getRemovedBuffer API" into oc-dev

7 years agoMerge "add surfaceflinger and servicemanager to animation class" into oc-dev
TreeHugger Robot [Mon, 3 Apr 2017 23:51:34 +0000 (23:51 +0000)]
Merge "add surfaceflinger and servicemanager to animation class" into oc-dev

7 years agopdx: Rework error reporting when transfering file and channel handles
Alex Vakulenko [Sat, 1 Apr 2017 01:06:19 +0000 (18:06 -0700)]
pdx: Rework error reporting when transfering file and channel handles

There is a lot of confusion about reporting errors when passing file
and channel handles over PDX transport between client and service.

Methods like Message::PushFileHandle return an integer which means
both a file handle reference value (if positive) and a possible error
code (if negative). But file handles could contain negative values too
(when they are empty). This is used frequently when passing buffer
fences around (when a fence is not being used, its fd is set to -1).

This results in a special case of when PushFileHandle is called with
a file handle with value of -1, the return value is actually "-errno"
which becomes dependent on a global state (errno is not set by
PushFileHandle itself in case file handle value is negative) and results
in unpredicted behavior (sometimes errno is 0, sometimes its >0).

Cleaned this all up by using Status<T> everywhere we used an int to
pass value payload along with possible error code.

Now the semantics of the calls are more clear.

Bug: 36866492
Test: `m -j32` for sailfish-eng succeeds
      Ran unit tests on device (pdx_tests, libpdx_uds_tests, bufferhub_tests,
      buffer_hub_queue-test, buffer_hub_queue_producer-test), all pass
      Ran CubeSea, NativeTreasureHunt and Ithaca on Sailfish with vrflinger
      enabled, was able to use controller and screen rendered correctly.

Change-Id: I0f40c3f356fcba8bc217d5219a0ddf9685e57fd7

7 years agoRemove driver workaround
Courtney Goeltzenleuchter [Mon, 3 Apr 2017 22:11:30 +0000 (16:11 -0600)]
Remove driver workaround

Appears that the workaround for bug #34177594 is no longer
necessary, so removing.
Bug: 34177594
Test: Run Vulkan app

Change-Id: Id574760bdea775ac7541a9657b5a8124eb9064ef

7 years agoMerge "Use gralloc1 usage in AHardwareBuffer_describe" into oc-dev
TreeHugger Robot [Mon, 3 Apr 2017 22:54:33 +0000 (22:54 +0000)]
Merge "Use gralloc1 usage in AHardwareBuffer_describe" into oc-dev

7 years agoOffer to "fixup" GIDs used for app data.
Jeff Sharkey [Mon, 3 Apr 2017 22:41:02 +0000 (16:41 -0600)]
Offer to "fixup" GIDs used for app data.

We recently started tracking cached app data using a per-app GID for
the "cache" and "code_cache" directories and their contents.  For
upgraded devices, we ideally want to "fixup" the GIDs of any existing
data while the device is still showing the boot animation, instead of
blocking the user when they unlock the device.

Since all the information we need is available in metadata, we can
update GIDs before the user has unlocked data.  We're pretty paranoid
and we only pivot between the normal app GID and the cache GID; any
other GID values are ignored.

This "fixup" method can also be used in the future to ensure
consistency of the files on disk.  Also fix bug by always using
"fts_path" instead of "fts_accpath" which is based on racy chdir().

Test: /data/nativetest/installd_service_test/installd_service_test
Bug: 3420111135084485
Change-Id: Ia52694f3763cba09926082c08f0766477e03e39c

7 years agoAdd VNDK API to access AHardwareBuffer from ANativeWindowBuffer
Mathias Agopian [Mon, 3 Apr 2017 22:34:13 +0000 (15:34 -0700)]
Add VNDK API to access AHardwareBuffer from ANativeWindowBuffer

this is to allow vendors to use AHardwareBuffer’s
lock/unlock on buffer dequeued from an
ANativeWindow.

Test: compiled
Bug: 36866217
Change-Id: If630105572ae0e57f6fda19c13e82150f415ed6b

7 years agoSurface: add getRemovedBuffer API
Yin-Chia Yeh [Wed, 29 Mar 2017 02:07:39 +0000 (19:07 -0700)]
Surface: add getRemovedBuffer API

This allows clients to optionally sign up to track
buffers going out of Surface.

Test: compile
Bug: 34461678
Change-Id: I8696b304c169099c872bd9ba783015c0f0dad73a

7 years agovndservicemanager: load vendor service_contexts.
Martijn Coenen [Fri, 31 Mar 2017 23:12:12 +0000 (16:12 -0700)]
vndservicemanager: load vendor service_contexts.

Also, don't crash when /dev/vndbinder is not
accessible.

Bug: 36052864
Test: loads vendor service contexts
Test: doesn't crash without /dev/vndbinder, works with it
Change-Id: Ida9dd94791206e14246348a8b8e66be09ed8fca7

7 years agoHarden BufferHubQueueProducerTest
Jiwen 'Steve' Cai [Fri, 24 Mar 2017 21:03:06 +0000 (14:03 -0700)]
Harden BufferHubQueueProducerTest

This is a test that covers our implementation of bufferhubqueue-based
IGraphicBufferProducer, which eventually enables VrCore/VrFlinger to
access buffers produced from other Android compontents. Note that the
gtest itself is a (slightly) modified version of
IGraphicBufferProducer_test.cpp.

This also improves BufferHubQueue in the following way to support more
features of android::BufferQueue.
1/ Supports more buffer queue parameters that we query.
2/ BufferHubQueue (the PDX client) now supports default width, height,
and format configuration.
3/ Change default max_dequeue_buffer_count to 1 (which is the same
behavior current android::BufferQueue adopts).
4/ Fill in |QueueBufferOutput| during |enqueueBuffer|.

Bug: 34197998
Bug: 36266201
Test: build and run buffer_hub_queue_producer-test
Change-Id: I9d3e8bb66dbfb66e67ab7b0e5093e49a3f374e9c

7 years agoRenamed HIDL SensorManager::mManager -> mInternalManager.
Yifan Hong [Wed, 29 Mar 2017 00:21:21 +0000 (17:21 -0700)]
Renamed HIDL SensorManager::mManager -> mInternalManager.

Use "Internal" to represent objects of the wrapped type.

Test: pass
Change-Id: I4f86bc2c7c272c9abb0c5b4c2837baccfdc2a748

7 years agolibui: clean up GraphicBuffer interface
Chia-I Wu [Tue, 21 Mar 2017 20:15:39 +0000 (13:15 -0700)]
libui: clean up GraphicBuffer interface

Other than transferring the ownership, some callers want to control
whether to register or to clone the handle when creating a
GraphicBuffer from a handle.  Add a new constructor with
HandleWrapMethod for finer controls, to replace the one that has
only a boolean, keepOwnership.

The motivation is to enable users to construct GraphicBuffer without
fighting with GraphicBufferMapper::registerBuffer first.  More
generally, GraphicBufferMapper::{registerBuffer,unregisterBuffer} is
tricky to use correctly.  They should really be considered private
by most.

While at it, deprecate constructors that do not distinguish
producer/consumer usage.  It turns out GraphicBuffer is used by some
proprietary libraries.  I have to maintain the ABI and cannot remove
the deprecated constructors.

Bug: 36355756
Test: boots
Change-Id: Ieea618d8495f06a6233299d076fb821127cd6bf8

7 years agoMerge "We really want f_frsize." into oc-dev
TreeHugger Robot [Mon, 3 Apr 2017 07:37:44 +0000 (07:37 +0000)]
Merge "We really want f_frsize." into oc-dev

7 years agoMerge "Define upper-bound disk quotas for all apps." into oc-dev
TreeHugger Robot [Mon, 3 Apr 2017 05:46:04 +0000 (05:46 +0000)]
Merge "Define upper-bound disk quotas for all apps." into oc-dev

7 years agoWe really want f_frsize.
Jeff Sharkey [Mon, 3 Apr 2017 05:29:30 +0000 (23:29 -0600)]
We really want f_frsize.

It's confusing, but f_bsize is not the value you're looking for; the
real block size is f_frsize.  Fix all those bugs.

Test: builds, boots
Bug: 36840579
Change-Id: I2846b8998c27f3e9a71dbf573a0a22158215a3bd

7 years agoDefine upper-bound disk quotas for all apps.
Jeff Sharkey [Mon, 3 Apr 2017 03:53:14 +0000 (21:53 -0600)]
Define upper-bound disk quotas for all apps.

Abusive or broken apps can go crazy and try allocating all of the
disk space on the device.  To mitigate the impact on system health,
set hard limits to block any given app from using more than 90% of
disk blocks, or 50% of disk inodes.

Also define the hard limit for AID_MEDIA_RW to avoid filling up the
device via the SD card.

Kick QUOTAON when scanning devices, since ext4 doesn't toggle
DQUOT_LIMITS_ENABLED during initial mount.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.StorageHostTest
Test: cts-tradefed run commandAndExit cts-dev -m CtsOsTestCases -t android.os.cts.EnvironmentTest#testSaneInodes
Bug: 36450358
Change-Id: Iaa2bc6a2f0bc9047ee54c1d1a49bbda92142457a

7 years agoMerge "surfaceflinger: Generate unique layer names" into oc-dev
Cody Northrop [Sun, 2 Apr 2017 13:52:40 +0000 (13:52 +0000)]
Merge "surfaceflinger: Generate unique layer names" into oc-dev

7 years agoMerge "[libadapter] Fix nullpointer in acceptchanges" into oc-dev
TreeHugger Robot [Sat, 1 Apr 2017 22:15:50 +0000 (22:15 +0000)]
Merge "[libadapter] Fix nullpointer in acceptchanges" into oc-dev

7 years ago[libadapter] Fix nullpointer in acceptchanges
Fabien Sanglard [Thu, 30 Mar 2017 23:27:02 +0000 (16:27 -0700)]
[libadapter] Fix nullpointer in acceptchanges

Check the layer still exists upon accepting changes.

Bug: 36205238
Test: AUPT
Change-Id: I8443265ecc7b8b0a12347439fd75b138d14c7e3a

7 years agoDO NOT MERGE: ConsumerBase: call freeBufferLocked when a slot is overwritten
Yin-Chia Yeh [Thu, 30 Mar 2017 20:13:36 +0000 (13:13 -0700)]
DO NOT MERGE: ConsumerBase: call freeBufferLocked when a slot is overwritten

Cherrypicked from master.

Test: the CL + camera service side fix pass ReprocessCaptureTest
Bug: 34461678
Change-Id: Ia7863321bcb46cba53532fc1570c5facd9280aaa

7 years agoMerge "vulkan: Dequeue the shared buffer again after presenting" into oc-dev
TreeHugger Robot [Sat, 1 Apr 2017 06:08:37 +0000 (06:08 +0000)]
Merge "vulkan: Dequeue the shared buffer again after presenting" into oc-dev

7 years agoMerge "vulkan: Don't dequeue in AcquireNextImageKHR if in shared mode" into oc-dev
TreeHugger Robot [Sat, 1 Apr 2017 05:46:12 +0000 (05:46 +0000)]
Merge "vulkan: Don't dequeue in AcquireNextImageKHR if in shared mode" into oc-dev

7 years agoMerge "Allow VirtualDisplay's to use hardware composer when in VR mode even if physic...
TreeHugger Robot [Sat, 1 Apr 2017 04:45:36 +0000 (04:45 +0000)]
Merge "Allow VirtualDisplay's to use hardware composer when in VR mode even if physical composer does not support them." into oc-dev

7 years agoMerge changes I9ad4588e,I83a676fc,I749242c4,Idc0d3c23 into oc-dev
TreeHugger Robot [Sat, 1 Apr 2017 04:34:44 +0000 (04:34 +0000)]
Merge changes I9ad4588e,I83a676fc,I749242c4,Idc0d3c23 into oc-dev

* changes:
  vulkan: Only cancel buffers during swapchain creation if not shared
  vulkan: Set shared & auto refresh modes earlier
  vulkan: Track whether in shared mode in Swapchain
  vulkan: Always request at least 2 images for swapchain

7 years agoMerge "Add UID in bugreport" into oc-dev
TreeHugger Robot [Sat, 1 Apr 2017 01:01:37 +0000 (01:01 +0000)]
Merge "Add UID in bugreport" into oc-dev

7 years agoUse gralloc1 usage in AHardwareBuffer_describe
Jiwen 'Steve' Cai [Fri, 31 Mar 2017 23:34:45 +0000 (16:34 -0700)]
Use gralloc1 usage in AHardwareBuffer_describe

GraphicBuffer->getUsage() reports gralloc0 usage bits, convert it to
gralloc1 usage first then to AHardwareBuffer bits.

Bug: 35114769
Test: AImageReaderCts now passes with CPU_READ_OFTEN case.
Change-Id: Id461d9f9e98ccc1db8c4b4da79c61b9aedb417bf

7 years agoMerge "Add default .clang-format" into oc-dev
TreeHugger Robot [Fri, 31 Mar 2017 22:51:45 +0000 (22:51 +0000)]
Merge "Add default .clang-format" into oc-dev

7 years agosurfaceflinger: Generate unique layer names
Cody Northrop [Fri, 31 Mar 2017 18:00:08 +0000 (12:00 -0600)]
surfaceflinger: Generate unique layer names

Add a counter to layer names to make it clear when there are duplicates.

    layer foo#0
    layer foo#1
    layer bar#0
    layer bar#1
    layer bar#2

Bug: b/32543755
Test: Build, install, run game with duplicate layers, see unique names.

Change-Id: I915531d7adbdc506c429b86a685665fb6c56d25e

7 years agoadd surfaceflinger and servicemanager to animation class
Keun-young Park [Thu, 23 Mar 2017 20:46:54 +0000 (13:46 -0700)]
add surfaceflinger and servicemanager to animation class

- necessary for running shutdown animation

bug: 36526187
Test: many reboots

Change-Id: Id26f5747a8903e91db8499093a489409dcafa129

7 years agobufferhubd: Fix an error on not closing post_fence explicitly.
Alex Vakulenko [Fri, 31 Mar 2017 16:10:43 +0000 (09:10 -0700)]
bufferhubd: Fix an error on not closing post_fence explicitly.

There is a typo in the code that instead of calling close() on a Post
fence, actually did get_fd() which is really a no-op.

Fixed by changing the call to call() explicitly.

Bug: None
Test: `m -j32` succeeds. Sailfish boots, CubeSea works.
Change-Id: If788aa8ea291317f0618724ecc35a4b355575772

7 years agolibbufferhub: Fix compiler warning with printf format mismatch
Alex Vakulenko [Fri, 31 Mar 2017 15:29:28 +0000 (08:29 -0700)]
libbufferhub: Fix compiler warning with printf format mismatch

std::vector<bool>::at() does not return bool& but a special reference
proxy class. Passing this class on the stack for "%d" printf specifier
is unsafe.

Compiler throws a warning to indicate this problem:

    format specifies type 'int' but the argument has type 'reference'
    (aka '__bit_reference<std::__1::vector<bool, std::__1::allocator<bool>>>')

Fixed by explicitly casting to int before pushing the value onto the stack.

Bug: None
Test: `m -j32` = no more warning
Change-Id: I7b3bc4908e4932c25be60fc350e0e0b439842b66

7 years agolibpdx_uds: Improve client connection logic
Alex Vakulenko [Fri, 24 Mar 2017 00:44:58 +0000 (17:44 -0700)]
libpdx_uds: Improve client connection logic

Handle the case where the service created a socket file but not bound the
socket to it, or not listening for incoming requests yet. Also, if the service
has crashed and left the socket file behind, need to make sure we reconnect
once the service is restarted.

Bug: None
Test: `m -j32` succeeds, device boots and CubeSea app works on Sailfish
Change-Id: I2039cfca6faccd5d1d4b725e454075669484b880
(cherry picked from commit d074fc416a7a90e76a0b28a870080c1dd30079a1)

7 years agoRemove unused dependency on libhardware from bufferhubd
Alex Vakulenko [Thu, 23 Mar 2017 18:52:44 +0000 (11:52 -0700)]
Remove unused dependency on libhardware from bufferhubd

'libhardware' doesn't seem to be used anymore. Remove it.

Bug: None
Test: `m -j32` succeeds.
Change-Id: I2ff002ce17d920f44509347ca86ca5f030348cf5
(cherry picked from commit f9f18b6b5c413ffeb8cc3ac67dd49bc17364a76f)

7 years agolibbufferhubqueue: Fix syntax in Android.bp
Alex Vakulenko [Thu, 30 Mar 2017 17:53:11 +0000 (10:53 -0700)]
libbufferhubqueue: Fix syntax in Android.bp

There was a spelling mistake for cflags property of libbufferhub
cc_library object.

Bug: None
Test: `m -j32` succeeds
Change-Id: I862c2266d86586469dc7299bf727f75bb3df6512
(cherry picked from commit 66fd7cb0f3b1a70121fb223b27a51f06534ebc46)

7 years agoAdd default .clang-format
Dan Stoza [Fri, 24 Mar 2017 18:09:55 +0000 (11:09 -0700)]
Add default .clang-format

Adds a default .clang-format for frameworks/native. If this style is
undesirable for a given component in this repo, it can be overriden
with a more local .clang-format file.

Test: None necessary, only for formatting
Change-Id: I0bf6bd9a15255d9a4ce3d485e841912955caa310
(cherry picked from commit ec106f6cc73e2cbe63ad6c8e942c11d764c8158c)

7 years agoAllow VirtualDisplay's to use hardware composer when in VR mode even if
Alex Sakhartchouk [Sun, 26 Mar 2017 16:28:34 +0000 (12:28 -0400)]
Allow VirtualDisplay's to use hardware composer when in VR mode even if
physical composer does not support them.

Bug: 36071574
Test: Applied remaining wip patches, launched 2D activity while in
persistent VR mode. Observed 2D activity rendered in VR in VirtualDisplay.
Further, instrumented SurfaceFlinger code to ensure DisplayDevice's are
created and destroyed with proper composers during VR mode transition.

Change-Id: I12b09f1209fcf33f97abfd77e14c6ce61f45a5e9
(cherry picked from commit d38ec4e294eadd4f655476fc90b675c78c1c8740)

7 years agovulkan: Dequeue the shared buffer again after presenting
Chris Forbes [Thu, 30 Mar 2017 06:48:39 +0000 (19:48 +1300)]
vulkan: Dequeue the shared buffer again after presenting

Ensures that the shared buffer is always dequeued. This is tidier than
the previous hacky approach of dequeueing it on demand just prior to
this.

Test: build
Change-Id: I0202271a12106470329180b51a2eea19ceab31af

7 years agovulkan: Don't dequeue in AcquireNextImageKHR if in shared mode
Chris Forbes [Thu, 30 Mar 2017 06:47:37 +0000 (19:47 +1300)]
vulkan: Don't dequeue in AcquireNextImageKHR if in shared mode

We've already got the shared buffer dequeued. All we need to do here
is make the semaphore and fence work.

Test: build
Change-Id: I77a49c312e91b5e0657b87ac2748428c631bdbc0

7 years agovulkan: Only cancel buffers during swapchain creation if not shared
Chris Forbes [Thu, 30 Mar 2017 06:44:15 +0000 (19:44 +1300)]
vulkan: Only cancel buffers during swapchain creation if not shared

When a buffer queue is in shared mode, we're not allowed to cancel
buffers. Just keep the shared buffer dequeued all the time.

Test: build
Change-Id: I9ad4588ebd792ccdfee247d030579e2ef68aaef1

7 years agovulkan: Set shared & auto refresh modes earlier
Chris Forbes [Thu, 30 Mar 2017 06:37:50 +0000 (19:37 +1300)]
vulkan: Set shared & auto refresh modes earlier

We'd like to be able to remove the 2-buffer-minimum workaround -- but to
make that reasonable, we need the lower layers to know we're trying to
use shared mode. Set the appropriate modes before determining the buffer
counts, as a first step toward that.

Change-Id: I83a676fc1a86510abd4521cf9a5e80c0334d5941
Test: build

7 years agovulkan: Track whether in shared mode in Swapchain
Chris Forbes [Thu, 30 Mar 2017 06:31:40 +0000 (19:31 +1300)]
vulkan: Track whether in shared mode in Swapchain

We need to adjust our behavior in various other places if this is the
case.

Test: build
Change-Id: I749242c4c7f0b19693b6cc5bfcf2dd6e01ed0e5b

7 years agovulkan: Always request at least 2 images for swapchain
Chris Forbes [Thu, 16 Mar 2017 22:28:32 +0000 (11:28 +1300)]
vulkan: Always request at least 2 images for swapchain

For shared mode, we really only care about 1 image, but there are other
changes further down the stack that need to be made for that to really
work. For now, just tell the bufferqueue that we want 2. After that, we
still only dequeue one buffer (as in fact required by BQ in shared mode)
and construct one VkImage over it for giving back to the vulkan app.

[in V1 we were just smashing the buffer count to 2, which is messier and
observable by the app]

Change-Id: Idc0d3c232d56a5c0127f9472611d151f3605939c
Test: build

7 years agoMerge "Add alpha channel for the EGLConfig" into oc-dev
TreeHugger Robot [Thu, 30 Mar 2017 21:58:58 +0000 (21:58 +0000)]
Merge "Add alpha channel for  the EGLConfig" into oc-dev

7 years agoMerge "fix the api style" into oc-dev
TreeHugger Robot [Thu, 30 Mar 2017 20:57:56 +0000 (20:57 +0000)]
Merge "fix the api style" into oc-dev

7 years agoMerge "VR: Pass display size in the HWC observer callback" into oc-dev
TreeHugger Robot [Thu, 30 Mar 2017 20:22:29 +0000 (20:22 +0000)]
Merge "VR: Pass display size in the HWC observer callback" into oc-dev

7 years agoAdd alpha channel for the EGLConfig
neo.he [Tue, 21 Mar 2017 03:48:36 +0000 (11:48 +0800)]
Add alpha channel for  the EGLConfig

If the alpha channel is not assigned,the framebuffer will be Opaque.
And it will mask the underlying video and make the video invisible
when play video width mediaplayer

cherry-picked from AOSP master

Issue: b/36025630
Test: clean build and boot PixelC
Change-Id: If756ad2aaa789f6ddb178333b3e8854f52c8eac3