OSDN Git Service

android-x86/frameworks-native.git
7 years agoMerge "libGLES_android: Add generic 32bpp BGRA EGLConfig"
Treehugger Robot [Wed, 18 Jan 2017 23:00:41 +0000 (23:00 +0000)]
Merge "libGLES_android: Add generic 32bpp BGRA EGLConfig"

7 years agoMerge "Add systrace details to storage measurements."
Jeff Sharkey [Wed, 18 Jan 2017 01:10:59 +0000 (01:10 +0000)]
Merge "Add systrace details to storage measurements."

7 years agoMerge "servicemanager: selinux: set selinux callbacks early"
Treehugger Robot [Wed, 18 Jan 2017 00:36:55 +0000 (00:36 +0000)]
Merge "servicemanager: selinux: set selinux callbacks early"

7 years agoAdd systrace details to storage measurements.
Jeff Sharkey [Tue, 17 Jan 2017 22:25:01 +0000 (15:25 -0700)]
Add systrace details to storage measurements.

Can be used to find bottlenecks, and confirm that quota stuff is
being used when expected.

Test: builds, boots
Bug: 34341727
Change-Id: Ifefc155e5d3b0c74245e0d287e84df699ce09d16

7 years agoMerge "Handle devices without quota, speed up lookup."
Jeff Sharkey [Tue, 17 Jan 2017 16:54:00 +0000 (16:54 +0000)]
Merge "Handle devices without quota, speed up lookup."

7 years agoservicemanager: selinux: set selinux callbacks early
Sandeep Patil [Tue, 27 Dec 2016 20:40:45 +0000 (12:40 -0800)]
servicemanager: selinux: set selinux callbacks early

SELinux library error logs are never be shown in logcat if
there's a failure before the callbacks are set. We missed
all logs from service context initialization because of this.

Bug: 33746484
Test: Restart new service manager to make sure context init logs
show up in logcat.

Change-Id: I5479cf5fe10ceb1a210eda26946b6ea344792e24
Signed-off-by: Sandeep Patil <sspatil@google.com>
7 years agoMerge changes Ic746ea89,Iebaa8063
Treehugger Robot [Tue, 17 Jan 2017 04:02:45 +0000 (04:02 +0000)]
Merge changes Ic746ea89,Iebaa8063

* changes:
  Wrap all installd operations in lock.
  Mask st_mode before comparing it.

7 years agoHandle devices without quota, speed up lookup.
Jeff Sharkey [Tue, 17 Jan 2017 03:57:45 +0000 (20:57 -0700)]
Handle devices without quota, speed up lookup.

Start tracking which block devices have quota support, and gracefully
clear FLAG_USE_QUOTA when no support is present.

Also build a cached map of mounted volumes that support quota, which
halves the average quota calculation speed from 0.70ms to 0.35ms,
since we're no longer parsing procfs every time.

Test: builds, boots, common operations work
Bug: 34249218
Change-Id: Ie791df7801b67495331f3eea256c018860c9b4f6

7 years agoWrap all installd operations in lock.
Jeff Sharkey [Tue, 17 Jan 2017 02:07:18 +0000 (19:07 -0700)]
Wrap all installd operations in lock.

Historically installd has a single lock up in the framework, but
we're starting to call in from multiple locations, so installd needs
to protect itself.

This specifically applies to any disk measurement requests, which
use the optimized fts(3) mode which uses chdir() internally.

Test: builds, boots, common operations work
Bug: 34330051
Change-Id: Ic746ea890ebcc7b2bf923404874b04dbc19d42ad

7 years agoMask st_mode before comparing it.
Jeff Sharkey [Fri, 13 Jan 2017 02:27:03 +0000 (19:27 -0700)]
Mask st_mode before comparing it.

Otherwise it will never match the requested mode_t.

Test: builds, boots, skips when matching
Bug: 34201111
Change-Id: Iebaa8063a72eb6eaf2e773c1d35204617d0f16b8

7 years agoMerge "liblog: use log/log.h when utilizing ALOG macros"
Mark Salyzyn [Thu, 12 Jan 2017 21:59:57 +0000 (21:59 +0000)]
Merge "liblog: use log/log.h when utilizing ALOG macros"

7 years agoliblog: use log/log.h when utilizing ALOG macros
Mark Salyzyn [Thu, 12 Jan 2017 21:57:51 +0000 (13:57 -0800)]
liblog: use log/log.h when utilizing ALOG macros

Audit dropout because ALOG is behind MYLOG ...

Test: compile
Bug: 34250038
Change-Id: I009478157d2267e10f8c09a7faa4b8f7c7c4a1e7

7 years agoMerge "Don't print error if we can't talk to hwservicemanager."
Treehugger Robot [Thu, 12 Jan 2017 21:20:15 +0000 (21:20 +0000)]
Merge "Don't print error if we can't talk to hwservicemanager."

7 years agoDon't print error if we can't talk to hwservicemanager.
Martijn Coenen [Thu, 12 Jan 2017 16:16:31 +0000 (17:16 +0100)]
Don't print error if we can't talk to hwservicemanager.

This currently fails as a non-root user due to SEPolicy,
and is causing CTS test failures. Until we figure out
the policy on b/34242478, don't print an error to allow
the test to pass again.

Test: cts-tradefed run cts --module CtsAtraceHostTestCases --test
android.atrace.cts.AtraceHostTest#testSimpleRun

Bug: 33814619
Change-Id: Ie5578639028e7890284d71bbf1b753f5803ca4af

7 years agoMerge "Replace cutils/log.h and rationalize log/log.h and android/log.h"
Mark Salyzyn [Thu, 12 Jan 2017 15:19:07 +0000 (15:19 +0000)]
Merge "Replace cutils/log.h and rationalize log/log.h and android/log.h"

7 years agoReplace cutils/log.h and rationalize log/log.h and android/log.h
Mark Salyzyn [Thu, 29 Sep 2016 15:08:05 +0000 (08:08 -0700)]
Replace cutils/log.h and rationalize log/log.h and android/log.h

- cutils/log.h treat as deprecated and lead by example
- android/log.h to be used instead of log/log.h if possible
- add system includes that are assumed as side effects
- define LOG_TAG first

Test: compile
Bug: 31289077
Bug: 30465923
Change-Id: I8d99b24c333578c9b5aa9f2a01324bd0bba268dd

7 years agoMerge "Added test cases to dumpsys."
Treehugger Robot [Wed, 11 Jan 2017 18:51:14 +0000 (18:51 +0000)]
Merge "Added test cases to dumpsys."

7 years agoMerge "Cleanup code given PATCHOAT_FOR_RELOCATION has been removed."
Treehugger Robot [Wed, 11 Jan 2017 10:28:16 +0000 (10:28 +0000)]
Merge "Cleanup code given PATCHOAT_FOR_RELOCATION has been removed."

7 years agoAdded test cases to dumpsys.
Felipe Leme [Wed, 3 Aug 2016 01:57:37 +0000 (18:57 -0700)]
Added test cases to dumpsys.

BUG: 28980245
BUG: 33382892

Test: dumpsys_test passes

Change-Id: Ief6c21022abc74022256431351fd6eef789faf39
(cherry picked from commit b6e244914deaffcdeea02deebf7c0da2643f601c)

7 years agoMerge "Methods to calculate user and external disk usage."
Jeff Sharkey [Tue, 10 Jan 2017 04:30:46 +0000 (04:30 +0000)]
Merge "Methods to calculate user and external disk usage."

7 years agoMethods to calculate user and external disk usage.
Jeff Sharkey [Sat, 7 Jan 2017 16:19:35 +0000 (09:19 -0700)]
Methods to calculate user and external disk usage.

Add method to calculate user disk usage, which will be faster than
making a Binder call for every single appId under a user.  Add method
to calculate external disk usage, which uses file extensions to track
usage with "audio", "video", and "images" categories.

Add script to generate optimized file extension matcher logic.

Start measuring internal and external storage space separately; new
GIDs are coming in a future CL.  Pass down all package names, inodes,
and code paths, since shared UIDs host more than one.

Test: builds, boots, stats are consistent
Bug: 2794881732206268
Change-Id: Icb9843ac5159e0e5f1503d9b64e0bcae407e1a5d

7 years agoMerge "Surface: Use async lock/unlock in copyBlt"
Jesse Hall [Mon, 9 Jan 2017 05:07:29 +0000 (05:07 +0000)]
Merge "Surface: Use async lock/unlock in copyBlt"

7 years agoMerge "egl: Add NULL check for num_config parameter"
Jesse Hall [Sat, 7 Jan 2017 23:44:22 +0000 (23:44 +0000)]
Merge "egl: Add NULL check for num_config parameter"

7 years agoMerge "Unversion NDK stub libraries."
Treehugger Robot [Fri, 6 Jan 2017 20:53:07 +0000 (20:53 +0000)]
Merge "Unversion NDK stub libraries."

7 years agoUnversion NDK stub libraries.
Dan Albert [Thu, 5 Jan 2017 23:58:50 +0000 (15:58 -0800)]
Unversion NDK stub libraries.

The system versions of these libraries aren't versioned yet.

Bug: https://github.com/android-ndk/ndk/issues/278
Test: make ndk
Change-Id: I73e4ebcac151c4039df6261aa6674accb0204706

7 years agoMerge "Add android/log.h to Rect.h"
Treehugger Robot [Fri, 6 Jan 2017 02:08:15 +0000 (02:08 +0000)]
Merge "Add android/log.h to Rect.h"

7 years agoAdd android/log.h to Rect.h
Steve Paik [Thu, 5 Jan 2017 17:09:56 +0000 (09:09 -0800)]
Add android/log.h to Rect.h

Rect.h uses definitions from log.h.

Test:  Build succeeds when C file doesn't include log.h.
Change-Id: Ia85372ca61edafadea92165121dc6fbd1546674b

7 years agoCleanup code given PATCHOAT_FOR_RELOCATION has been removed.
Richard Uhler [Thu, 8 Dec 2016 10:46:35 +0000 (10:46 +0000)]
Cleanup code given PATCHOAT_FOR_RELOCATION has been removed.

Test: make, device boots.
Bug: 33192586
Change-Id: Ic3937708a7dfcd16f02cf68fc20674ec457d60b7

7 years agoMerge "Pass the same fd when compiling due to boot image update."
Treehugger Robot [Thu, 5 Jan 2017 14:56:01 +0000 (14:56 +0000)]
Merge "Pass the same fd when compiling due to boot image update."

7 years agoPass the same fd when compiling due to boot image update.
Nicolas Geoffray [Tue, 20 Dec 2016 15:03:56 +0000 (15:03 +0000)]
Pass the same fd when compiling due to boot image update.

Test: device boots, apps get installed, OTA uses same vdex.
Change-Id: I913062630640f31a18d23b2f62afd74986322e6a

7 years agoSurface: Use async lock/unlock in copyBlt
Francis Hart [Fri, 9 Jan 2015 09:10:54 +0000 (11:10 +0200)]
Surface: Use async lock/unlock in copyBlt

The Surface::lock() function now uses the asynchronous versions of
gralloc lock/unlock when copying the previously drawn content to the
backbuffer. This allows for optimisations in the gralloc module
implementation and so can improve performance and avoid CPU waits.

Change-Id: I57193f327db2ff0422e1b58b3484f613201d994c

7 years agoMerge "Callback elision for HIDL interfaces."
Martijn Coenen [Thu, 5 Jan 2017 09:40:55 +0000 (09:40 +0000)]
Merge "Callback elision for HIDL interfaces."

7 years agoCallback elision for HIDL interfaces.
Martijn Coenen [Mon, 2 Jan 2017 14:17:11 +0000 (15:17 +0100)]
Callback elision for HIDL interfaces.

Test: mma
Bug: 31380743
Change-Id: I33080b61d6233b63106b2602a628bfcdaa878a90

7 years agoMerge "Surface: Ensure synchronisation of copyBlt"
Treehugger Robot [Wed, 4 Jan 2017 20:33:09 +0000 (20:33 +0000)]
Merge "Surface: Ensure synchronisation of copyBlt"

7 years agoMerge "Mark libGLESv3 as unversioned until android-24."
Treehugger Robot [Wed, 4 Jan 2017 19:00:36 +0000 (19:00 +0000)]
Merge "Mark libGLESv3 as unversioned until android-24."

7 years agoMerge "Reference profiles use shared GID for user 0."
Jeff Sharkey [Tue, 3 Jan 2017 23:37:00 +0000 (23:37 +0000)]
Merge "Reference profiles use shared GID for user 0."

7 years agoMark libGLESv3 as unversioned until android-24.
Dan Albert [Tue, 3 Jan 2017 23:18:48 +0000 (15:18 -0800)]
Mark libGLESv3 as unversioned until android-24.

Test: readelf on android-23 and android-24 outputs to check version
      information.
Bug: https://github.com/android-ndk/ndk/issues/265

Change-Id: I4a9b50b015567c64b75f09e8414682d314a86bc4

7 years agoReference profiles use shared GID for user 0.
Jeff Sharkey [Tue, 3 Jan 2017 21:33:50 +0000 (14:33 -0700)]
Reference profiles use shared GID for user 0.

Test: builds, boots
Bug: 33977235
Change-Id: I4de3852b3f230a6dc874a630e3c1b9fff2d83169

7 years agoMerge "Offer to measure disk stats using quotas."
Jeff Sharkey [Tue, 3 Jan 2017 19:08:07 +0000 (19:08 +0000)]
Merge "Offer to measure disk stats using quotas."

7 years agoOffer to measure disk stats using quotas.
Jeff Sharkey [Tue, 13 Dec 2016 00:32:56 +0000 (17:32 -0700)]
Offer to measure disk stats using quotas.

Now we're getting somewhere!  This CL starts using quotactl() to read
UID/GID quota statistics when called with FLAG_USE_QUOTA, otherwise
it continues using the old heavy-weight traversal for calculation.

We now set the recently defined per-app GID used for identifying
cached data, and we use the sticky GID bit on cache directories to
ensure that newly created data inherits the GID for tracking
purposes.  For any existing apps during an upgrade, an initial
bootstrapping case will recursively set this new GID.

This change also shuffles around a bunch of the tedious manual
accounting logic so that we exactly match the new quota statistics.

Test: builds, boots, quota stats match manual stats
Bug: 27948817
Change-Id: I8512c3193ce698f197a3f446e625d6a1c74e7649

7 years agoMerge "Replace cutils/log.h and rationalize log/log.h and android/log.h"
Mark Salyzyn [Wed, 28 Dec 2016 16:48:57 +0000 (16:48 +0000)]
Merge "Replace cutils/log.h and rationalize log/log.h and android/log.h"

7 years agoReplace cutils/log.h and rationalize log/log.h and android/log.h
Mark Salyzyn [Thu, 29 Sep 2016 15:08:05 +0000 (08:08 -0700)]
Replace cutils/log.h and rationalize log/log.h and android/log.h

- cutils/log.h treat as deprecated and lead by example
- android/log.h to be used instead of log/log.h if required
- add system includes that are assumed as side effects of log.h
- modules that use SLOG should use SLOG for all logging (installd)
- define LOG_TAG first
- remove logging infrastructure if not used

Test: build
Bug: 31289077
Change-Id: Iea147a0104c7ab7f12451304131d6500f42141e7

7 years agoMerge "Update for hiding Status from Return<T> object."
Yifan Hong [Thu, 22 Dec 2016 18:04:15 +0000 (18:04 +0000)]
Merge "Update for hiding Status from Return<T> object."

7 years agoUpdate for hiding Status from Return<T> object.
Yifan Hong [Wed, 21 Dec 2016 18:47:56 +0000 (10:47 -0800)]
Update for hiding Status from Return<T> object.

Test: compiles

Change-Id: Ie32514f34efaa1188f34f662b194b60d83c20bf0

7 years agoMerge "Only log restorecon changes for existing dirs."
Jeff Sharkey [Wed, 21 Dec 2016 18:46:27 +0000 (18:46 +0000)]
Merge "Only log restorecon changes for existing dirs."

7 years agoOnly log restorecon changes for existing dirs.
Jeff Sharkey [Wed, 21 Dec 2016 16:33:55 +0000 (09:33 -0700)]
Only log restorecon changes for existing dirs.

If we just created an app private data directory, we're always going
to be relabeling it, so don't log in that case.  Continue logging if
something caused us to relabel an existing app data directory.

Test: builds, boots, only logs for existing dirs
Bug: 31958779
Change-Id: Id03f7c18aed191a4c7fb9dcf9380136c93798a4b

7 years agoMerge "Remove ~1/3 of the installd calls at boot."
Treehugger Robot [Tue, 20 Dec 2016 01:06:22 +0000 (01:06 +0000)]
Merge "Remove ~1/3 of the installd calls at boot."

7 years agoRemove ~1/3 of the installd calls at boot.
Jeff Sharkey [Mon, 19 Dec 2016 23:39:18 +0000 (16:39 -0700)]
Remove ~1/3 of the installd calls at boot.

When preparing CE storage for an app, we always perform a second call
to extract any newly created CE directory inode.  Let's simplify this
and just return the inode number from the createAppData() call.

Test: builds, boots, reads CE inodes after wipe
Bug: 33463450
Change-Id: I68485e4b9b49e9da7b3ac7c66f50c6abc750b7e3

7 years agoMerge "Sensor: Add more comments for ASensorEventQueue_registerSensor() function"
Peng Xu [Sat, 17 Dec 2016 00:02:02 +0000 (00:02 +0000)]
Merge "Sensor: Add more comments for ASensorEventQueue_registerSensor() function"

7 years agoMerge "Handle invalid shared GIDs."
Jeff Sharkey [Thu, 15 Dec 2016 21:59:08 +0000 (21:59 +0000)]
Merge "Handle invalid shared GIDs."

7 years agoHandle invalid shared GIDs.
Jeff Sharkey [Thu, 15 Dec 2016 21:50:11 +0000 (14:50 -0700)]
Handle invalid shared GIDs.

Shared GIDs are only available inside a range from 50000-59999, so
system UIDs (outside the normal app range) don't have a valid GID to
use.  The best we can do is skip the profile setup in those cases.

Test: builds
Bug: 27948817
Change-Id: I8c38a0e3631eafd07e96da3e37e641b3cce195a6

7 years agoMerge "libvulkan: add NULL check to DestroySwapchainKHR"
Treehugger Robot [Thu, 15 Dec 2016 19:09:39 +0000 (19:09 +0000)]
Merge "libvulkan: add NULL check to DestroySwapchainKHR"

7 years agolibvulkan: add NULL check to DestroySwapchainKHR
Daniel Koch [Tue, 13 Dec 2016 23:45:13 +0000 (18:45 -0500)]
libvulkan: add NULL check to DestroySwapchainKHR

vkDestroySwapchainKHR is required to silently ignore NULL handles
that are provided to it to destroy.
This adds an early return if swapchain_handle is NULL.

Test: dEQP-VK.wsi.android.swapchain.destroy.null_handle (VK 1.0.2 CTS)

Change-Id: Ic230f114a680210cb0e0de931b17e4d70fb27f44

7 years agoMerge "Fix unused-parameter warning"
Treehugger Robot [Thu, 15 Dec 2016 07:17:26 +0000 (07:17 +0000)]
Merge "Fix unused-parameter warning"

7 years agoMerge "Fix more warnings in framworks/native/opengl/include"
Colin Cross [Wed, 14 Dec 2016 23:58:54 +0000 (23:58 +0000)]
Merge "Fix more warnings in framworks/native/opengl/include"

7 years agoFix unused-parameter warning
Dan Willemsen [Wed, 14 Dec 2016 05:20:13 +0000 (21:20 -0800)]
Fix unused-parameter warning

This is exposed when frameworks/av/include is moved from being a system
include directory to a normal include directory.

Test: m -j checkbuild
Change-Id: I127ebe25162f3b6dbb9fc564a6c2c851d0c1636f

7 years agoFix more warnings in framworks/native/opengl/include
Colin Cross [Wed, 14 Dec 2016 20:45:27 +0000 (12:45 -0800)]
Fix more warnings in framworks/native/opengl/include

Remove two more visability attributes being applied to typedefs.
The warnings were being hidden by the use of -isystem to include
frameworks/native/opengl/include.

Bug: 31752268
Test: m -j native

Change-Id: Ic6854d934a8d0d03b23e596d5230a6deb69c86bc

7 years agoSensor: Add more comments for ASensorEventQueue_registerSensor() function
Aniroop Mathur [Mon, 12 Dec 2016 18:34:06 +0000 (00:04 +0530)]
Sensor: Add more comments for ASensorEventQueue_registerSensor() function

Lets add more comments to clarify that ASensorEventQueue_disableSensor is
to be used same as before for deactivating the sensor with respect to
sensor activation with ASensorEventQueue_registerSensor function.

Test: Check clarification in comments / spell check

Change-Id: Id38c002b57154c1feedf099f45b0ed8ed004ca39
Signed-off-by: Aniroop Mathur <a.mathur@samsung.com>
7 years agoMerge "egl: add EGL_IMG_context_priority to the whitelist"
Treehugger Robot [Tue, 13 Dec 2016 15:55:29 +0000 (15:55 +0000)]
Merge "egl: add EGL_IMG_context_priority to the whitelist"

7 years agoMerge "Make atrace not depend on /dev/hwbinder."
Treehugger Robot [Tue, 13 Dec 2016 01:12:48 +0000 (01:12 +0000)]
Merge "Make atrace not depend on /dev/hwbinder."

7 years agoMerge "atrace: introduce tracing category for adb."
Josh Gao [Tue, 13 Dec 2016 00:28:09 +0000 (00:28 +0000)]
Merge "atrace: introduce tracing category for adb."

7 years agoMerge "Split all dexopt-related code into dexopt.cpp."
Jeff Sharkey [Tue, 13 Dec 2016 00:01:23 +0000 (00:01 +0000)]
Merge "Split all dexopt-related code into dexopt.cpp."

7 years agoMake atrace not depend on /dev/hwbinder.
Steven Moreland [Mon, 12 Dec 2016 23:18:06 +0000 (15:18 -0800)]
Make atrace not depend on /dev/hwbinder.

Bug: 31262344
Test: compiles
Change-Id: I2b4fa6815723507dd04afda19e99e5a15053dc66

7 years agoMerge "Allow both RENDER and TEXTURE flags when creating native client buffers."
Treehugger Robot [Mon, 12 Dec 2016 22:14:13 +0000 (22:14 +0000)]
Merge "Allow both RENDER and TEXTURE flags when creating native client buffers."

7 years agoMerge "Minor shuffling of installd error reporting."
Treehugger Robot [Mon, 12 Dec 2016 22:06:43 +0000 (22:06 +0000)]
Merge "Minor shuffling of installd error reporting."

7 years agoSplit all dexopt-related code into dexopt.cpp.
Jeff Sharkey [Mon, 12 Dec 2016 21:28:24 +0000 (14:28 -0700)]
Split all dexopt-related code into dexopt.cpp.

Only a few minor changes to return bool instead of binder::Status.

Test: builds, boots, apps install/uninstall fine
Change-Id: I538024c0e9da8ca2c0983a6e779c34bd40752053

7 years agoatrace: introduce tracing category for adb.
Josh Gao [Tue, 29 Nov 2016 18:55:21 +0000 (10:55 -0800)]
atrace: introduce tracing category for adb.

Bug: http://b/31289465
Test: systrace
Change-Id: Ida5e898206e5b224771393d2d2ba609183dc3b90

7 years agoMinor shuffling of installd error reporting.
Jeff Sharkey [Mon, 12 Dec 2016 20:18:46 +0000 (13:18 -0700)]
Minor shuffling of installd error reporting.

We actually want to early-return when creating user data fails, and
we want to return an exception when getAppDataInode() is called with
unsupported flags.

Test: builds, boots, apps install/uninstall fine
Bug: 1375896030944031
Change-Id: I69816275a0be7a73a8ae7f3d90f2cdea80d8ebfc

7 years agoAllow both RENDER and TEXTURE flags when creating native client buffers.
Craig Donner [Fri, 9 Dec 2016 23:34:56 +0000 (15:34 -0800)]
Allow both RENDER and TEXTURE flags when creating native client buffers.

Bug: 33057441
Test: Cherrypick from internal repo.
Change-Id: I64ebf6bb5cb534d7f67a9338ebac4bf23a47d607

7 years agoMerge "Return real error strings from installd."
Jeff Sharkey [Mon, 12 Dec 2016 19:38:07 +0000 (19:38 +0000)]
Merge "Return real error strings from installd."

7 years agoReturn real error strings from installd.
Jeff Sharkey [Sat, 10 Dec 2016 01:18:43 +0000 (18:18 -0700)]
Return real error strings from installd.

Now that we've moved installd to Binder, we can return nice detailed
error strings explaining why a call failed.  This is particularly
valuable when we record the error message into the PackageManager
persistent log, because up until now those errors were limited to
an unhelpful "installd returned -1" message.

Also perform uniform enforcement of all incoming package name and
UUID arguments.

Test: builds, boots, apps install/uninstall fine
Bug: 1375896030944031
Change-Id: Ic1f65ce8c10b1329e01d6a49d72cafa879c4d8bc

7 years agoMerge "service_manager.c: remove is_selinux_enabled calls"
Treehugger Robot [Mon, 12 Dec 2016 16:33:05 +0000 (16:33 +0000)]
Merge "service_manager.c: remove is_selinux_enabled calls"

7 years agoMerge "Filename refactoring, remove DEXOPT_OTA flag."
Jeff Sharkey [Sat, 10 Dec 2016 22:57:22 +0000 (22:57 +0000)]
Merge "Filename refactoring, remove DEXOPT_OTA flag."

7 years agoMerge "Final push of installd to Binder; goodbye socket!"
Jeff Sharkey [Sat, 10 Dec 2016 22:54:51 +0000 (22:54 +0000)]
Merge "Final push of installd to Binder; goodbye socket!"

7 years agoservice_manager.c: remove is_selinux_enabled calls
Nick Kralevich [Sat, 10 Dec 2016 01:05:09 +0000 (17:05 -0800)]
service_manager.c: remove is_selinux_enabled calls

SELinux is always enabled. No need to check for it.

Test: Device boots and service manager works without errors.
Change-Id: I12be7336e7c31a5f5796ea1383f3dc934eb3c97c

7 years agoFilename refactoring, remove DEXOPT_OTA flag.
Jeff Sharkey [Sat, 10 Dec 2016 00:06:57 +0000 (17:06 -0700)]
Filename refactoring, remove DEXOPT_OTA flag.

Test: builds, boots
Bug: 1375896030944031
Change-Id: Ib60899fc70b12f76fad9dfad596b513777752703

7 years agoFinal push of installd to Binder; goodbye socket!
Jeff Sharkey [Wed, 7 Dec 2016 19:12:00 +0000 (12:12 -0700)]
Final push of installd to Binder; goodbye socket!

Move last two straggling installd commands to Binder and destroy the
socket-based communication channel forever.

Test: builds, boots, apps install fine, pre-OTA dexopt works
Bug: 1375896030944031
Change-Id: I2ecd604fb6627b9028a7e32f87d0367e4a4afde3

7 years agoSurface: Ensure synchronisation of copyBlt
Francis Hart [Mon, 1 Dec 2014 14:04:49 +0000 (16:04 +0200)]
Surface: Ensure synchronisation of copyBlt

The Surface::lock() function has an optimisation for copying the
previously drawn contents from the frontbuffer to the (current)
backbuffer, so that the client does not have to redraw the whole surface
contents. This logic was not using the sync fence FD from
dequeueBuffer() and so was not correctly synchronised with pending
operations on the backbuffer.

Change-Id: Ib44574d50f8bdb4a23078cd8da1c5c512c876320

7 years agoMerge "Yet another set of installd Binder methods."
Jeff Sharkey [Wed, 7 Dec 2016 22:38:48 +0000 (22:38 +0000)]
Merge "Yet another set of installd Binder methods."

7 years agoYet another set of installd Binder methods.
Jeff Sharkey [Wed, 7 Dec 2016 17:37:27 +0000 (10:37 -0700)]
Yet another set of installd Binder methods.

Pretty straightforward refactoring.

Test: builds, boots, apps install fine
Bug: 1375896030944031
Change-Id: I6e79fe1a3663807c24eb28dca684b539df398c13

7 years agoMerge "Move more installd methods to Binder."
Jeff Sharkey [Wed, 7 Dec 2016 06:39:27 +0000 (06:39 +0000)]
Merge "Move more installd methods to Binder."

7 years agoMerge "Revert "Move installd back to Android.mk.""
Treehugger Robot [Wed, 7 Dec 2016 02:35:35 +0000 (02:35 +0000)]
Merge "Revert "Move installd back to Android.mk.""

7 years agoMove more installd methods to Binder.
Jeff Sharkey [Tue, 6 Dec 2016 06:39:32 +0000 (23:39 -0700)]
Move more installd methods to Binder.

Test: builds, boots, apps install fine
Bug: 1375896030944031
Change-Id: I1fcaaaaad34c2f9a3d6a15443ef1764186669865

7 years agoRevert "Move installd back to Android.mk."
Dan Willemsen [Tue, 6 Dec 2016 23:44:57 +0000 (15:44 -0800)]
Revert "Move installd back to Android.mk."

This reverts commit 00b6f68c5c72252542a1e8c5dda4b420ed02c947 and
converts the new entries to Android.bp now that Soong supports AIDL.

Test: mmma -j framework/native/cmds/installd
Test: /data/nativetest64/installd_utils_test/installd_utils_test; fails
      the same before/after
Change-Id: I327eb0bc28fa84cda669ec0df59da82ee10caf1f

7 years agoMerge remote-tracking branch 'goog/stage-aosp-master' into HEAD
Bill Yi [Tue, 6 Dec 2016 23:07:48 +0000 (15:07 -0800)]
Merge remote-tracking branch 'goog/stage-aosp-master' into HEAD

7 years agoMerge "Shuffle installd Binder implementation around."
Jeff Sharkey [Tue, 6 Dec 2016 22:24:25 +0000 (22:24 +0000)]
Merge "Shuffle installd Binder implementation around."

7 years agoMerge "DO NOT MERGE. Check and restorecon cache/code_cache directories."
Jeff Sharkey [Tue, 6 Dec 2016 22:24:17 +0000 (22:24 +0000)]
Merge "DO NOT MERGE. Check and restorecon cache/code_cache directories."

7 years agoMerge changes I0c8d4018,Ic9dfb243,I7e442b06
Jeff Sharkey [Tue, 6 Dec 2016 16:58:09 +0000 (16:58 +0000)]
Merge changes I0c8d4018,Ic9dfb243,I7e442b06
am: 17892731ec

Change-Id: Iadd662bf024e3acd58cf5c747d1546e457483a7b

7 years agoDO NOT MERGE. Recursively restorecon when SELinux label changes.
Jeff Sharkey [Tue, 6 Dec 2016 16:58:06 +0000 (16:58 +0000)]
DO NOT MERGE. Recursively restorecon when SELinux label changes.
am: 7db6041d15  -s ours

Change-Id: Ie64c33ed2eaded73fe043955e0f954bc76f166f7

7 years agoDO NOT MERGE. Ignore setxattr() failures on tmpfs.
Jeff Sharkey [Tue, 6 Dec 2016 16:57:57 +0000 (16:57 +0000)]
DO NOT MERGE. Ignore setxattr() failures on tmpfs.
am: 4ed6507cfb  -s ours

Change-Id: I5a8fa5606aaeaa75539a38227e78420acd4bf5bc

7 years agoDO NOT MERGE. Record "cache" inodes to clear while CE is locked.
Jeff Sharkey [Tue, 6 Dec 2016 16:57:49 +0000 (16:57 +0000)]
DO NOT MERGE. Record "cache" inodes to clear while CE is locked.
am: 9a998f4762  -s ours

Change-Id: Id413a5bceff13dc717fa82209302662b77276165

7 years agoMerge changes I0c8d4018,Ic9dfb243,I7e442b06
Treehugger Robot [Tue, 6 Dec 2016 16:53:04 +0000 (16:53 +0000)]
Merge changes I0c8d4018,Ic9dfb243,I7e442b06

* changes:
  DO NOT MERGE. Recursively restorecon when SELinux label changes.
  DO NOT MERGE. Ignore setxattr() failures on tmpfs.
  DO NOT MERGE. Record "cache" inodes to clear while CE is locked.

7 years agoShuffle installd Binder implementation around.
Jeff Sharkey [Tue, 6 Dec 2016 16:32:04 +0000 (09:32 -0700)]
Shuffle installd Binder implementation around.

Instead of writing wrapper methods in InstalldNativeService.cpp,
this change shifts the Binder implementation over into the existing
commands.cpp file.  This will let us migrate all methods over, and
then perform one final file rename to InstalldNativeService.cpp.

The downside of this approach is that we no longer have a giant kill
switch to quickly switch back.

Moves the moveCompleteApp() method over to Binder.

Test: builds, boots, apps install fine
Bug: 1375896030944031
Change-Id: I53550e05bc2b65155c3de18424f67b1a95450a6f

7 years agoDO NOT MERGE. Check and restorecon cache/code_cache directories.
Jeff Sharkey [Mon, 31 Oct 2016 17:22:19 +0000 (11:22 -0600)]
DO NOT MERGE. Check and restorecon cache/code_cache directories.

To speed up boot times, we recently relaxed SELinux restorecon logic
to only consider relabeling app storage when the top level SELinux
label changed.

However, if an app manually deletes either their cache or code_cache
directories, installd will helpfully recreate those directories at
the next boot, but they'll be stuck with incorrect SELinux labels
which an app can't fix.  (Our historically aggressive restorecons had
relabeled them, which is why we didn't observe until now.)

This change checks the labels of the cache/code_cache directories,
and runs a restorecon if needed, fixing the issue above.

Test: delete cache and verify recreated with correct label
Bug: 32504081
Change-Id: I0114ae4129223e5909b1075d56a9b1145ebc5ef4

7 years agoDO NOT MERGE. Recursively restorecon when SELinux label changes.
Jeff Sharkey [Wed, 21 Sep 2016 00:21:42 +0000 (18:21 -0600)]
DO NOT MERGE. Recursively restorecon when SELinux label changes.

PackageManager has been pretty aggressive about asking installd to
restorecon over app data when it thinks something might have
changed.  However, in the vast majority of cases these are no-op
requests, and we waste a bunch of time recursively walking all
private data, easily costing 60+ seconds on dogfooder devices.

This change updates the initial "create_app_data" command to kick off
a recursive restorecon if it detects that the top-level SELinux label
on the app private data directory changes.  The "create_app_data"
command is designed to ensure that an app's storage is ready, so
PackageManager always calls it at least once per boot before apps
can run.  (This change means that PackageManager no longer needs to
make separate "restorecon_app_data" calls.)

Test: booted, verified that a label change triggered restorecon
Bug: 30768146
Change-Id: I0c8d4018cf8ff888d0ae07a82adc3d61a6002aad

7 years agoDO NOT MERGE. Ignore setxattr() failures on tmpfs.
Jeff Sharkey [Fri, 22 Jul 2016 17:38:54 +0000 (11:38 -0600)]
DO NOT MERGE. Ignore setxattr() failures on tmpfs.

Bug: 30210614
Change-Id: Ic9dfb2439b4b1056e1a58552be2e84f4e524321e

7 years agoDO NOT MERGE. Record "cache" inodes to clear while CE is locked.
Jeff Sharkey [Fri, 15 Jul 2016 00:16:22 +0000 (18:16 -0600)]
DO NOT MERGE. Record "cache" inodes to clear while CE is locked.

There are two situations where we need to clear cached data from
all users, including those whose CE storage might still be locked:

1. When PackageManager is clearing caches to try making room for
package updates.
2. When the device fingerprint changes, we need to clear code caches
for all apps.

To enable this, we now record the inode number of the "cache" and
"code_cache" directories in xattrs of the parent directory.  This is
just enough information to find the cache directories to enable
deleting files inside.  When preparing CE storage for an app, we now
create these two directories and immediately write the inode numbers.

Bug: 26056125
Change-Id: I7e442b0676a695acf962593469793a93b03c8aee

7 years agoMerge "Check and write some error in atrace."
Yifan Hong [Tue, 6 Dec 2016 15:41:08 +0000 (15:41 +0000)]
Merge "Check and write some error in atrace."
am: 7b50c02030

Change-Id: I562794bbe7dc52268ad2b477e0dca58a7b79d365

7 years agoMerge "Check and write some error in atrace."
Treehugger Robot [Tue, 6 Dec 2016 15:07:54 +0000 (15:07 +0000)]
Merge "Check and write some error in atrace."

7 years agoMerge "Convert vulkan to Android.bp"
Colin Cross [Tue, 6 Dec 2016 01:58:25 +0000 (01:58 +0000)]
Merge "Convert vulkan to Android.bp"
am: e421c0710f

Change-Id: Icd0b77b032179c8e8ce5c6009848e23916c990d5