Commit graph

2351 commits

Author SHA1 Message Date
Sudheer Shanka
f6c3c77f6c Merge "Create new mount directory /mnt/runtime/full."
am: b9fae464fc

Change-Id: I33a72f65d938bfb3132b6440e5cd1d9e791600c6
2019-01-18 16:52:45 -08:00
Sudheer Shanka
b9fae464fc Merge "Create new mount directory /mnt/runtime/full." 2019-01-19 00:24:23 +00:00
Sudheer Shanka
dd4bb17343 Create new mount directory /mnt/runtime/full.
This will be used for system internals to access
secondary volumes without having to bypass sdcardfs.

Bug: 121277410
Test: manual
Exempt-From-Owner-Approval: Got approval on internal master
Change-Id: I9b3e33f6c6e426e83469b8030b02d59c02183946
2019-01-18 23:48:45 +00:00
Xin Li
e317e3d03b [automerger skipped] Merge "DO NOT MERGE - Skip pie-platform-release (PPRL.190105.001) in master"
am: 9f7aa175a0 -s ours
am skip reason: subject contains skip directive

Change-Id: Ia43ba3dfaad4bc846241ac4dd57bd55e30a7bbad
2019-01-17 13:54:05 -08:00
Xin Li
9f7aa175a0 Merge "DO NOT MERGE - Skip pie-platform-release (PPRL.190105.001) in master" 2019-01-17 21:19:43 +00:00
Sudheer Shanka
5e10de1301 Merge "Add UnmountTreeWithPrefix util method."
am: 2e9aafb620

Change-Id: Ifc0d514634e700875aa70d0e24952fc24780cb4d
2019-01-17 10:26:46 -08:00
Sudheer Shanka
2e9aafb620 Merge "Add UnmountTreeWithPrefix util method." 2019-01-17 18:04:27 +00:00
Annie Meng
33a5634374 Merge "Create subdirs in system_ce/ for multi-user backup"
am: 625203444b

Change-Id: Ifb251a875ae2245254ff113c81cac8a9205daf17
2019-01-17 09:10:57 -08:00
Annie Meng
625203444b Merge "Create subdirs in system_ce/ for multi-user backup" 2019-01-17 15:29:32 +00:00
Annie Meng
66176c55e9 Create subdirs in system_ce/ for multi-user backup
Backup system service bookkeeping is being moved to per-user CE
directories to support multiple users participating in the service.

Accompanies SELinux changes at aosp/873133

Bug: 121197420
Test: 1) Boot device; check dirs created with correct label; run backup
successfully on system user
2) Create secondary user; check dirs created with correct label; run
backup successfully

Change-Id: I3a0fdbfcf18a3c242fc64fba0dd014160b50b2f0
2019-01-17 12:53:16 +00:00
Annie Meng
2cc1d4e458 Merge "vold_prepare_subdirs: prepare /data/misc_[ce|de]/rollback."
am: 3cc1866454

Change-Id: I1fe5887b2d4a0c222e95e594562f368587e069c5
2019-01-17 03:09:20 -08:00
Annie Meng
3cc1866454 Merge "vold_prepare_subdirs: prepare /data/misc_[ce|de]/rollback." 2019-01-17 11:01:00 +00:00
Sudheer Shanka
295fb241e2 Add UnmountTreeWithPrefix util method.
Add a utility method to unmount all mountpoints
that start with a prefix.

Bug: 122905493
Test: manual
Change-Id: I11739e40e7849c1b4ca9e0b90c5c3f243691257a
2019-01-17 01:42:48 -08:00
Paul Lawrence
aa4aa48be5 Merge "Checkpoints: Support validation and roll forward on fail"
am: 9ff07121ff

Change-Id: Ica199c67c5083a5fdb9d08331ff6b2560625fa0e
2019-01-16 17:17:13 -08:00
Treehugger Robot
9ff07121ff Merge "Checkpoints: Support validation and roll forward on fail" 2019-01-17 01:08:20 +00:00
Paul Lawrence
27691c2883 Checkpoints: Support validation and roll forward on fail
Test: Rolls backward, and if you hexedit a BOW page, rolls forward
Change-Id: If99a6c3a3bc3f615bd1445f5af14ea490a58e053
2019-01-16 14:14:48 -08:00
Narayan Kamath
a232fd7fc8 vold_prepare_subdirs: prepare /data/misc_[ce|de]/rollback.
These directories are managed by installd and used to store
snapshots of application data directories in order to roll them
back in the case of bad updates.

Bug: 112431924
Test: make, device boot & manual verification.

Change-Id: Ieaca697a45d013937327e0f16f36b9b1eaad6b22
2019-01-16 15:16:51 +00:00
Xin Li
723b2545d2 DO NOT MERGE - Skip pie-platform-release (PPRL.190105.001) in master
Bug: 122685541
Change-Id: I951a35cc32c6dc0a3b051099d687c89a5e38ebbb
2019-01-15 10:19:51 -08:00
Xin Li
9cb14589d0 DO NOT MERGE - Skip pie-platform-release (PPRL.190105.001) into stage-aosp-master
Bug: 122685541
Change-Id: I13cf446cf2eec7c730438944365fed5f686c7163
2019-01-14 16:20:02 -08:00
Paul Crowley
7c21f0a999 Merge "Fsync directories after creating files"
am: a892eb154e

Change-Id: Ie25f2da2e3340430aea066683acde59b3100aa79
2019-01-07 12:20:09 -08:00
Treehugger Robot
a892eb154e Merge "Fsync directories after creating files" 2019-01-07 20:09:34 +00:00
Paul Crowley
621d9b9732 Fsync directories after creating files
Bug: 120248692
Test: adb shell locksettings set-pin 1111 && \
    adb shell "echo b > /proc/sysrq-trigger"
Change-Id: I53d252942c21365983b4f8b6e0948b1864f195c1
2019-01-07 04:30:08 -08:00
Yue Hu
d9cbff0de3 Merge "cryptfs: Add error messages when remove dm-crypt device is failed"
am: 1ea17070fe

Change-Id: Ibdec472b503b20fce0d2025e5ed017fc5c644ee0
2019-01-07 01:56:49 -08:00
Treehugger Robot
1ea17070fe Merge "cryptfs: Add error messages when remove dm-crypt device is failed" 2019-01-07 09:45:22 +00:00
android-build-team Robot
06084fee42 Merge cherrypicks of [5929407, 5929627, 5929597, 5929598] into pi-platform-release
Change-Id: I71193baac96d5936f6e3dd69a7ee37e70d85f898
2019-01-03 23:49:33 +00:00
Greg Kaiser
13c6f32d77 cryptfs: Allow setting dm-crypt sector size
We add the property ro.crypto.fde_sector_size to allow devices
to pass the "sector_size:<size>" argument to dm-crypt in the kernel.
We also pass "iv_large_sectors" when setting the sector size.

Using 4096-byte sectors rather than the default of 512 improves
dm-crypt performance, especially when the Adiantum encryption mode
is used.

Bug: 112010205
Test: Run on a device
Change-Id: I144ec7088a0aad3430369dc7158370d7ff3ef5d2
Merged-In: I144ec7088a0aad3430369dc7158370d7ff3ef5d2
(cherry picked from commit 88738e8b6f59e307a2120d352843759025588539)
2019-01-03 23:49:28 +00:00
Greg Kaiser
7f0c5e4754 cryptfs: Add Adiantum support
Adiantum is a crypto method Android is supporting for devices
which don't have AES CPU instructions.  See the paper
"Adiantum: length-preserving encryption for entry-level processors"
(https://eprint.iacr.org/2018/720.pdf) for more details.

We add Adiantum to our list of supported crypto types.

Bug: 112010205
Test: Tested on a device
Change-Id: Ic190a9b90fc8bc077fdc7d60c9d5ae8d8f555025
Merged-In: Ic190a9b90fc8bc077fdc7d60c9d5ae8d8f555025
(cherry picked from commit 18824ec6cc9cd0f16530de2e034a7fe5b8fd17be)
2019-01-03 23:49:25 +00:00
Yue Hu
9d6cc18bf1 cryptfs: Add error messages when remove dm-crypt device is failed
We do not know what happened if remove dm-crypt device is failed, so
the error status added is useful to debug failed ioctl.

Change-Id: I49be91b9087ef2a213a706dd6b2a07eb6dafe6e6
Signed-off-by: Yue Hu <zbestahu@gmail.com>
2019-01-03 14:20:27 +08:00
Greg Kaiser
770b2347cf Merge changes I1c50546e,I8254cb6b,Ib179299a,Iec1c2801
am: 2374693556

Change-Id: I8f1ee8a77732ff26211d89a06b9ddc973ae1f251
2018-12-20 16:42:07 -08:00
Greg Kaiser
2374693556 Merge changes I1c50546e,I8254cb6b,Ib179299a,Iec1c2801
* changes:
  EncryptInplace: Rename variable
  Checkpoint: Assure proper buffer alignment
  vold: Pass std::string by const reference
  vold: const-ify some of the API
2018-12-21 00:10:42 +00:00
Greg Kaiser
e0691cc674 EncryptInplace: Rename variable
We rename our 'buf' in the inner scope to avoid confusion with
the 'buf' in the outer scope which is used immediately after
exiting the inner scope.

Test: TreeHugger
Change-Id: I1c50546e86c680e963eedcbda26138f8b43e55e9
2018-12-20 10:38:31 -08:00
Greg Kaiser
8859c9c9e7 Checkpoint: Assure proper buffer alignment
We have a char buffer on the stack, which we then cast to a
struct, and then proceed to access elements in the struct.
This is not safe across all platforms, as some platforms
may require a certain alignment for members of the struct.
We fix this by assuring an appropriate alignment for our
char buffer.

We also use C++ casting, and rename our buffer to differenciate
it from the other 'buffer' variable in this function.

Test: TreeHugger
Change-Id: I8254cb6b8124e394bd805afd1ccca0faedb27ffa
2018-12-20 10:38:31 -08:00
Greg Kaiser
8ae16db72a vold: Pass std::string by const reference
In a couple places, we change to pass a std::string argument
instead of by copy.

Test: TreeHugger
Change-Id: Ib179299a2322fcbab4e6d192051218823ad66a36
2018-12-20 10:38:31 -08:00
Greg Kaiser
ef9abab5ee vold: const-ify some of the API
We make some of the C++ member functions 'const', to reflect how
they (don't) affect the state of the class.

Test: TreeHugger
Change-Id: Iec1c2801bfe721e2741406ed1ac0ef95662840a6
Merged-In: Iec1c2801bfe721e2741406ed1ac0ef95662840a6
2018-12-20 10:38:15 -08:00
Daniel Rosenberg
4523a86873 Merge changes from topic "checkpoint-enable"
am: 03d3856c90

Change-Id: Iafa95e268f23472cd87ae857a44ccfa7398c2db4
2018-12-14 20:47:46 -08:00
Treehugger Robot
03d3856c90 Merge changes from topic "checkpoint-enable"
* changes:
  Add Support for metadata key with rollback
  Add property for checkpointing
2018-12-15 04:39:51 +00:00
Daniel Rosenberg
690d6de5bf Add Support for metadata key with rollback
This adds the ability to upgrade a key and retain the
old one for rollback purposes. We delete the old key
if we boot successfully and delete the new key if we
do not.

Test: Enable checkpointing and test rolling back
      between two versions
Bug: 111020314

Change-Id: I19f31a1ac06a811c0644fc956e61b5ca84e7241a
2018-12-14 14:55:28 -08:00
Daniel Rosenberg
ffa1bb0370 Add property for checkpointing
We set a property when we commit a chackpoint to signal
to anyone who wants to do post commit cleanup.

Test: Boot to homescreen and check getprop for vold.checkpoint_committed
Bug: 111020314
Change-Id: Idf35e3abf9d24eb40c6926a30a8403064c05e10a
2018-12-14 14:55:16 -08:00
Greg Kaiser
3d5c751a88 Merge changes from topic "userspace_adiantum_support"
am: 7adca74263

Change-Id: I7bd33d9f750bc738c3df43ebf27e7f0d96d6fc5c
2018-12-11 21:16:04 -08:00
Greg Kaiser
461e6732b4 cryptfs: Add Adiantum support
am: 8cb4c9ff78

Change-Id: I57692f2a1d1eb0b66105f7ec7620f5abb9228303
2018-12-11 21:15:49 -08:00
Greg Kaiser
7adca74263 Merge changes from topic "userspace_adiantum_support"
* changes:
  cryptfs: Allow setting dm-crypt sector size
  cryptfs: Add Adiantum support
2018-12-12 04:59:25 +00:00
Greg Kaiser
ab1e84ad5f cryptfs: Allow setting dm-crypt sector size
We add the property ro.crypto.fde_sector_size to allow devices
to pass the "sector_size:<size>" argument to dm-crypt in the kernel.
We also pass "iv_large_sectors" when setting the sector size.

Using 4096-byte sectors rather than the default of 512 improves
dm-crypt performance, especially when the Adiantum encryption mode
is used.

Bug: 112010205
Test: Run on a device
Change-Id: I144ec7088a0aad3430369dc7158370d7ff3ef5d2
2018-12-11 17:22:00 -08:00
Greg Kaiser
8cb4c9ff78 cryptfs: Add Adiantum support
Adiantum is a crypto method Android is supporting for devices
which don't have AES CPU instructions.  See the paper
"Adiantum: length-preserving encryption for entry-level processors"
(https://eprint.iacr.org/2018/720.pdf) for more details.

We add Adiantum to our list of supported crypto types.

Bug: 112010205
Test: Tested on a device
Change-Id: Ic190a9b90fc8bc077fdc7d60c9d5ae8d8f555025
2018-12-11 15:41:17 -08:00
Xin Li
b009701f6d [automerger skipped] Merge "DO NOT MERGE"
am: 595172d1e6  -s ours

Change-Id: Id06f53d3a5fdbb4924a9db2c21168b50af6ad42e
2018-12-10 10:18:24 -08:00
Treehugger Robot
595172d1e6 Merge "DO NOT MERGE" 2018-12-10 17:20:41 +00:00
Paul Crowley
1d5d475b51 Merge "Check for errors in dup2"
am: b1166633b6

Change-Id: I1b0144fbf19892012baebe08bbaab9f7e77bf71e
2018-12-07 18:15:37 -08:00
Treehugger Robot
b1166633b6 Merge "Check for errors in dup2" 2018-12-08 02:03:37 +00:00
Xin Li
e6ba0cc34a DO NOT MERGE
Merge pie-platform-release (PPRL.181205.001, history only) into master

Bug: 120502534
Change-Id: I087ef5ac78dc1c42448b7c8d50864a412afd3154
2018-12-07 16:14:54 -08:00
Paul Crowley
be857bfd9b Check for errors in dup2
Bug: 26735063
Test: adb shell sm partition disk:7,3 private && adb logcat -d
Change-Id: I3aa8d1f6183dd5e77f54f422482a54ea8197d768
2018-12-07 12:23:25 -08:00
Rubin Xu
f0c4361770 Merge "Fix signedness mismatch and integer underflow"
am: b46a2f7dea

Change-Id: Ie2fcbf4af0ae882d67e7ecdbaf7db56b68eabf36
2018-12-07 03:23:23 -08:00