Commit Graph

7346 Commits

Author SHA1 Message Date
Martijn Coenen
3fa3890183 Merge "Only allow Download authority/MTP/installers to write in Android/." 2020-01-09 07:38:22 +00:00
Martijn Coenen
496ac000f6 Only allow Download authority/MTP/installers to write in Android/.
Previously when FUSE was enabled, we gave all apps requesting
WRITE_MEDIA_STORAGE or install permissions a direct view
to the lower filesystem. This was way too broad for a few reasons:
1) WRITE_MEDIA_STORAGE will be deprecated; holding that permission by
itself shouldn't grant you any special privileges.
2) Installers should only be able to write OBBs

The only other exceptions that are allowed to bypass scoped storage are
the process hosting the DownloadProvider and the process implementing
the MTP server; both of these have legit reasons for writing in
Android/. The way this is currently implemented is by giving these apps
the SDCARD_RW gid, which has write access in the default Android/
sdcardfs view.

Installers will be further scoped down to be only able to access OBB
in a follow-up CL.

Bug: 134706060
Bug: 146490513
Test: DownloadProvider can download
      Play + OBBs work
      Writing in Android/ through MTP works

Change-Id: Iff8681732d0c1124e24e5347f7dcb64b781c1e8c
2020-01-09 07:37:11 +00:00
Jeff Sharkey
b8c30b3449 Merge changes from topic "jan7"
* changes:
  Respond to API council feedback.
  Final push to build against SDK.
2020-01-09 06:11:04 +00:00
TreeHugger Robot
141751afe7 Merge "Propagate exception stacktrace via AndroidFuture IPC" 2020-01-09 06:01:05 +00:00
Eugene Susla
49b8cdf5d0 Propagate exception stacktrace via AndroidFuture IPC
Re-uses the code from Parcel to make it consistent with binder IPC exception
stacktrace propagation behavior.

Test: atest AndroidFutureTest
Change-Id: I5c73c42544af5bf964c7b6cd646bcb347e3ae146
2020-01-08 17:32:00 -08:00
Automerger Merge Worker
e14402b3e2 Merge "PersistableBundle: writeToStream/readFromStream" am: 0204e4a08e am: 083df1ec90 am: 869646b5ab
Change-Id: I059547d4a8ed075c82cf483b2b226b3e337203c2
2020-01-09 00:33:44 +00:00
Automerger Merge Worker
869646b5ab Merge "PersistableBundle: writeToStream/readFromStream" am: 0204e4a08e am: 083df1ec90
Change-Id: I8823618f688d781f5a96549da695b45b0f561878
2020-01-09 00:19:20 +00:00
Peter Wang
3e2fb955a8 Merge "[Telephony Mainline] Refactored ServiceManager calls" 2020-01-08 23:57:48 +00:00
Meng Wang
0204e4a08e Merge "PersistableBundle: writeToStream/readFromStream" 2020-01-08 23:47:40 +00:00
Meng Wang
2536134b12 PersistableBundle: writeToStream/readFromStream
Bug: 143911192
Test: manual sanity test
Change-Id: I208487d572c8148f28fac3307873dfdc90996ae1
2020-01-08 13:44:15 -08:00
Neil Fuller
540f003086 Merge "Rename android.util.TimestampedValue to android.os" 2020-01-08 19:35:27 +00:00
Automerger Merge Worker
b809033d0c Merge changes from topics "vab_allocate", "vab_wait" am: d0c62b9dab am: dbdfc27520 am: 0d962baeea
Change-Id: I10c7a1e44f818487e3c63b937399f5edd9d929e8
2020-01-08 18:54:38 +00:00
Automerger Merge Worker
0d962baeea Merge changes from topics "vab_allocate", "vab_wait" am: d0c62b9dab am: dbdfc27520
Change-Id: I2e6c97a2340b55dc8795767706c15588da1048f8
2020-01-08 18:44:43 +00:00
Jeff Sharkey
197fe1f90f Final push to build against SDK.
The bulk of the work needed to get MediaProvider building against
the "system_current" SDK surface has been slowly merged over the
last few months, and this change makes the last few adjustments.

This adds a new StorageVolumeCallback which is simpler version of
StorageEventListener that simply delivers the changed StorageVolume.

Move DownloadManager logic into a onMediaStoreDownloadsDeleted()
method which hides the implementation details of how the OS connects
with that implementation.

Make local copies of some ExifInterface parsing logic; they could
be added to the androidx version in an unbundled release.  Make a
local copy of RedactingFileDescriptor, since it's only needed for
the next few weeks until FUSE is globally enabled.

Bug: 137890034
Test: atest --test-mapping packages/providers/MediaProvider
Change-Id: Ib416eb8724781bdd234c8b7d728dee8b695ad6ac
2020-01-08 11:44:28 -07:00
Yifan Hong
d0c62b9dab Merge changes from topics "vab_allocate", "vab_wait"
* changes:
  Use @ErrorCode for UpdateEngineCallback
  Add @ErrorCode annotation to UpdateEngine APIs
  Add UpdateEngine.cleanupSuccessfulUpdate
  Add UpdateEngine.allocateSpace
2020-01-08 18:37:16 +00:00
Neil Fuller
d159015e54 Rename android.util.TimestampedValue to android.os
Rename android.util.TimestampedValue to android.os to avoid dependency
from android.util onto android.os, which is disallowed by lint.

Bug: 147012511
Test: boot
Change-Id: I4b84db03c8ad24bbef63e45d6d15fb306a10364e
2020-01-08 17:00:34 +00:00
Kenny Root
155d5648fd Merge "Support Resume on Reboot" 2020-01-08 01:51:17 +00:00
TreeHugger Robot
0669ee1e44 Merge "UserManager.isUserOfType" 2020-01-08 00:36:55 +00:00
Peter Wang
d9eebca1c2 [Telephony Mainline] Refactored ServiceManager calls
to use TelephonyServiceManager

Bug: 142255256
Bug: 112725883
Test: Build, SimSmsTest, TelephonyRegistryTest, SimPhoneBookTest, OpportunisticNetworkServiceTest
Change-Id: I50068a02f1f5a4ff51acdbe4d1ded09ec4c4d6b8
2020-01-07 16:11:47 -08:00
TreeHugger Robot
05528bc690 Merge "Fix serialization issue of ExternalVibration" 2020-01-07 20:19:05 +00:00
Alexey Kuzmin
5051b03896 Fix serialization issue of ExternalVibration
Remove excessive serialization of Audio Attributes
Bug: 140417434
Test: atest ExternalVibrationTest#testSerialization

Change-Id: Ib7ceaed875889126a53f874eec64fab4817e48d1
2020-01-07 18:52:03 +00:00
Kenny Root
f76cfc314c Support Resume on Reboot
When an OTA is downloaded, the RecoverySystem can be triggered to store
the user's lock screen knowledge factor in a secure way using the
IRebootEscrow HAL. This will allow the credential encrypted (CE)
storage, keymaster credentials, and possibly others to be unlocked when
the device reboots after an OTA.

Bug: 63928581
Test: atest FrameworksServicesTests:RebootEscrowDataTest \
            FrameworksServicesTests:LockSettingsServiceTests \
            FrameworksServicesTests:RecoverySystemServiceTest \
            FrameworksServicesTests:RebootEscrowManagerTests
Test: use fake OTA console app to apply update
Change-Id: I59df6942b27ea2bdd11b757922f5169085a325f0
2020-01-07 08:18:02 -08:00
TreeHugger Robot
28d6bcb90e Merge "Add VibrationAttributes" 2020-01-07 15:27:38 +00:00
Adam Bookatz
351a8fb415 UserManager.isUserOfType
Replaces the UserManager.getUserType API with isUserOfType, where the
suspected type is passed in as a parameter. Also makes this API require
MANAGE_USERS.

Test: atest UserManagerServiceUserInfoTest
Test: atest UserManagerTest
Bug: 142482943
Change-Id: Icca1d5d9a36bfc1422c3f37456135ce69c3f3b38
2020-01-06 14:04:42 -08:00
Jing Ji
4b2d16d2b1 Merge "Skip meminfo item for the gone processes" 2020-01-06 21:16:42 +00:00
Alexey Kuzmin
7b2c88c0a7 Add VibrationAttributes
Added a class for attributes of vibrations, to gradually replace usage
of AudioAttributes in haptics context. Refactored VibrationService and
related classes to use VibrationAttributes, converting AudioAttributes
to VibrationAttributes and back as necessary

Test: manual. Since it's a refacroring, everything should work as before
Bug: 136810264

Change-Id: I82c04bc6f6fb723ee390e3b86a4a371564ab28d4
2020-01-06 16:16:27 +00:00
Martijn Coenen
53af5b24a6 Merge "Use new setupAppDir() API for creating app-specific directories." 2020-01-06 09:04:12 +00:00
Yifan Hong
f585f651ad Use @ErrorCode for UpdateEngineCallback
Test: TH

Change-Id: I26297984e40b66ff08e0c291bc1aa0e556fe6bcc
2020-01-03 13:08:46 -08:00
Yifan Hong
8e48e6d986 Add @ErrorCode annotation to UpdateEngine APIs
Test: TH

Change-Id: I3016132454ea38d2eaf69b907c726f46b2608509
2020-01-03 13:08:46 -08:00
Yifan Hong
2ce03276e7 Add UpdateEngine.cleanupSuccessfulUpdate
This API cleans up the merge and free up space after the
device has boot successfully into the new build for a
Virtual A/B update.

Bug: 138808328
Test: pass
Change-Id: Id4543906b06e6a8487f91955af85024d8a50a464
2020-01-03 11:18:04 -08:00
Yifan Hong
16d4554abc Add UpdateEngine.allocateSpace
This API preallocates space for a Virtual A/B update.

Test: pass
Bug: 138808058
Change-Id: I34e34fbf6ac63bd189abda4a45cdac84b0e109d0
2020-01-03 11:18:04 -08:00
Automerger Merge Worker
c25a9dd796 Merge "Prevent double-counting of kernel stack size in dumpsys reports" am: 9493f0ed0b am: a457a78ab7 am: 6dfd9358a3
Change-Id: Ic4ed5159c6e823167bc867e29d15dc526a3c33ea
2020-01-03 01:34:01 +00:00
Automerger Merge Worker
6dfd9358a3 Merge "Prevent double-counting of kernel stack size in dumpsys reports" am: 9493f0ed0b am: a457a78ab7
Change-Id: I5454c8a0c92bd8b25956cf96b987199fffe3a898
2020-01-03 01:15:50 +00:00
Suren Baghdasaryan
2018bf03f9 Prevent double-counting of kernel stack size in dumpsys reports
When kernel is configured with CONFIG_VMAP_STACK=y kernel stacks are mapped
into process space and therefore already accounted as part of the value
returned by ReadVmallocInfo and reported under MEMINFO_VM_ALLOC_USED
category. Introduce isVmapStack function to check if kernel is configured
with that option and if so do not exclude kernel stack size in the
calculation of memory used by kernel.

Bug: 146088882
Test: dumpsys meminfo with CONFIG_VMAP_STACK enabled and disabled
Change-Id: I9230bbf0ab05524cf52ded35171fd9ec3da16fa0
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
2020-01-02 13:36:34 -08:00
Martijn Coenen
9fd2b64981 Use new setupAppDir() API for creating app-specific directories.
Use a more targeted API to create app-specific directories; allows us to
set the UID of app-specific directories correctly on devices that don't
have sdcardfs.

Bug: 146419093
Test: atest FuseDaemonHostTest
Test: boot device without FUSE, verify app dirs are created.
Change-Id: I40d9f95a0bf2e53cc6f80d46d46ef71fb39315be
2020-01-02 12:49:17 +01:00
Jing Ji
91b9e231fa Skip meminfo item for the gone processes
Fix race conditions that processes could get killed during meminfo
dump.

Also fixed various other issues with meminfo dump

Bug: 144503238
Test: Insert the below code before retrieving process meminfo,
      and then set a pid, run dumpsys meminfo, check the output.

    if (SystemProperties.getBoolean("sys.fake-kill." + pid, false)) {
        Process.killProcess(pid);
        Thread.sleep(1000);
    }

Change-Id: I96436800ce218309cc5fd8a21c35ad29584faf6f
2019-12-23 19:19:54 -08:00
Automerger Merge Worker
8a9e2a5ea6 Merge "ServiceManagerProxy: New method implementations" am: b2d8eb58a2 am: b88261b982 am: 3990bf8ba0
Change-Id: I876a25019dc9245671e1ffe53b7e3627877693ff
2019-12-23 20:43:01 +00:00
Automerger Merge Worker
3990bf8ba0 Merge "ServiceManagerProxy: New method implementations" am: b2d8eb58a2 am: b88261b982
Change-Id: Ieef272563ab13c9bad7b7f062f2778bb2a7062d1
2019-12-23 20:22:53 +00:00
Jon Spivack
b2d8eb58a2 Merge "ServiceManagerProxy: New method implementations" 2019-12-23 20:04:33 +00:00
Alex Buynytskyy
1ecfcece45 Migrating Incremental* APIs to PackageManager APIs.
Step 2, merging Data Loader params.

Test: builds and flashes
Bug: b/136132412

Change-Id: I2102554316dadcdcb49790c133ece110c43c29b3
2019-12-20 06:55:32 -08:00
Automerger Merge Worker
afc127664e Log watchdog-initiated rollback reason am: 254b0d5a7f
Change-Id: I2487bca4fd0579c2f66de15da727ada54a26cfe1
2019-12-20 08:18:37 +00:00
Automerger Merge Worker
6af4789825 Merge "Add an API to tell whenever device supports userspace reboot" am: 670352e807 am: d1c0e074c0 am: 0b11673991
Change-Id: I797923d568645425aca0659d02cd8dc0364a25ff
2019-12-20 02:27:51 +00:00
Automerger Merge Worker
91bc7be712 Merge "Use sysprop library for telephony props" am: afb16fa9d4 am: dc4de88fec
Change-Id: Iae5ca6c30dd3a72d5da921cf45d9c282bcff2703
2019-12-20 02:22:19 +00:00
Treehugger Robot
afb16fa9d4 Merge "Use sysprop library for telephony props" 2019-12-20 02:00:38 +00:00
Automerger Merge Worker
0b11673991 Merge "Add an API to tell whenever device supports userspace reboot" am: 670352e807 am: d1c0e074c0
Change-Id: I5e51be225c3063e250facec51cf4976c3004acc4
2019-12-20 00:26:24 +00:00
Nikita Ioffe
670352e807 Merge "Add an API to tell whenever device supports userspace reboot" 2019-12-19 23:44:06 +00:00
Automerger Merge Worker
cc628869ff Merge changes from topic "ion memory accounting" am: 5ded8c130c am: 3c4624dcc2
Change-Id: I6620e200357ddcc46557f149e17fcad25e7c57c4
2019-12-19 21:51:13 +00:00
Songchun Fan
3185221204 Merge "[incremental] native implementation of Incremental Service" 2019-12-19 21:15:17 +00:00
Adam Bookatz
7fc60391c5 Merge "UM.isUserNameSet is SystemApi" 2019-12-19 21:12:11 +00:00
Suren Baghdasaryan
5911b9ef0a Add JNI API to query sizes of ION heaps, pools and mapped part of the heaps
Provide means for system_server to query ION memory usage. The new API
allows to get total size of ION heaps, pools and part of ION heaps that
is mapped into user space.

Bug: 138148041
Test: dumpsys meminfo
Change-Id: I6d76d534bbab5ee1646e8e3e3fe5210dcf76bc23
Merged-In: I6d76d534bbab5ee1646e8e3e3fe5210dcf76bc23
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
2019-12-19 19:48:42 +00:00