Commit graph

72887 commits

Author SHA1 Message Date
Eric Biggers
f14c924898 Merge "fs_mgr: allow FDE options in recovery mode" am: d0ed71dcb7
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1891237

Change-Id: Ie56702ae8700975c23324b20bd5082b1c515dbfb
2021-11-12 23:46:17 +00:00
Eric Biggers
d0ed71dcb7 Merge "fs_mgr: allow FDE options in recovery mode" 2021-11-12 23:28:04 +00:00
Eric Biggers
9c84a7eb04 Merge "fs_mgr: allow any argument to encryptable" am: 2c74197cae
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1891235

Change-Id: Ie8e726e0c38020fe486ff3648cc06af58a95b568
2021-11-12 22:27:40 +00:00
Eric Biggers
2c74197cae Merge "fs_mgr: allow any argument to encryptable" 2021-11-12 22:05:41 +00:00
Eric Biggers
efe209352e fs_mgr: allow FDE options in recovery mode
Unfortunately, some recovery fstabs still specify the FDE options, where
they never really did anything anyway.  Allow them for now, since it
seems preferable to restrict any breakage to the case that really
matters (devices actually configured to use FDE in their main fstab).

Bug: 191796797
Bug: 206025578
Change-Id: I85e35af8f42d2aef91f08816a67a71bbf756b211
2021-11-12 13:11:46 -08:00
Eric Biggers
9e21700282 fs_mgr: allow any argument to encryptable
There are some fstab files that specify "encryptable=footer" for
adoptable storage volumes, which contradicts the documentation which
says that it should be "encryptable=userdata".  However, the argument
was previously being ignored anyway.  To avoid unnecessarily breaking
such devices, ignore the argument to "encryptable".

Note that we continue to only allow "encryptable" in combination with
"voldmanaged".  So, fstabs that use "encryptable" for FDE (rather than
for adoptable storage) should continue to be rejected.

Bug: 191796797
Change-Id: Idc4d5f9c01098f997e12be0022bea992439cec9c
2021-11-12 12:26:10 -08:00
Eric Biggers
3498f8a5ea Merge "init: remove the class_{start,reset}_post_data commands" am: e2b03b92c1
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1889737

Change-Id: Ia718cfad49cbd590d38a2afb7a02678c259d3d68
2021-11-12 18:57:48 +00:00
Eric Biggers
e2b03b92c1 Merge "init: remove the class_{start,reset}_post_data commands" 2021-11-12 18:43:31 +00:00
Treehugger Robot
2348f13a39 Merge "Improvements to tombstone output." am: a44f269eba
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1889738

Change-Id: I23e596a4f6d661e1b3e03c1faa78ae684451762b
2021-11-12 00:32:54 +00:00
Treehugger Robot
a44f269eba Merge "Improvements to tombstone output." 2021-11-12 00:17:12 +00:00
Peter Collingbourne
773acaa18e Improvements to tombstone output.
- Use "likelihood" instead of "probability" since that has connotations
  of being less precise, and our probability ordering isn't very precise
  anyway.

- Hide the fault address with SEGV_MTEAERR because it is not available.

- Pad the fault address with leading zeroes to make it clearer which
  bits of the top byte (and any following bytes such as PAC signature
  bits) are set.

Bug: 206015287
Change-Id: I5e1e99b7f3e967c44781d8550bbd7158eb421b64
2021-11-11 15:05:47 -08:00
Eric Biggers
dd41635cef init: remove the class_{start,reset}_post_data commands
Remove the class_start_post_data and class_reset_post_data commands,
since they aren't used anymore.  They were only used on devices that
used FDE (Full Disk Encryption), via actions in rootdir/init.rc.  These
actions have been removed, since support for FDE has been removed.
There is no use case for these commands in vendor init scripts either.

Keep the mark_post_data command, since DoUserspaceReboot() uses the
post-data service flag even on non-FDE devices.

Bug: 191796797
Change-Id: Ibcd97543daa724feb610546b5fc2a0dd7f1e62e7
2021-11-11 14:36:47 -08:00
Eric Biggers
9558e12aac Merge changes from topic "remove-fde" am: 8879f2723f
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1886761

Change-Id: I122ff08670aa923f336bf9ed14bfe6984b1633b9
2021-11-10 19:10:41 +00:00
Peter Collingbourne
05cc11ef73 Merge "Add a human readable description of the tagged_addr_ctrl value to tombstones." am: 57e19ac46e
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1883336

Change-Id: Ib6fad751f875b9c6d817ef6820dd849735826abf
2021-11-10 19:10:17 +00:00
Eric Biggers
8879f2723f Merge changes from topic "remove-fde"
* changes:
  init.rc: remove handling of vold.decrypt property changes
  fs_mgr: remove FDE-specific FS_MGR_MNTALL codes
  init: remove FDE workaround from load_persist_props
  init: stop handling FDE-specific fs_mgr return codes
  fs_mgr: remove crypt_footer argument from fs_mgr_do_format()
  fs_mgr: remove FDE fields from FstabEntry
  fs_mgr: remove code that handles FDE
  fs_mgr: stop allowing the FDE fstab options
2021-11-10 19:05:05 +00:00
Peter Collingbourne
57e19ac46e Merge "Add a human readable description of the tagged_addr_ctrl value to tombstones." 2021-11-10 18:56:59 +00:00
Suren Baghdasaryan
73e1153071 Merge "libprocessgroup/tools: Add settaskprofile command-line tool" am: 8e9beea947
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1885090

Change-Id: I91ae1656920ed34d815d87a813c800df83866614
2021-11-10 17:34:50 +00:00
Suren Baghdasaryan
8e9beea947 Merge "libprocessgroup/tools: Add settaskprofile command-line tool" 2021-11-10 17:18:41 +00:00
Suren Baghdasaryan
7a477c8b5d Merge "libprocessgroup: Add CgroupGetControllerFromPath API function" am: 4a8f4548cb
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1740143

Change-Id: Id3b8888160ddb3feceb013499fc784b6c61244e7
2021-11-10 16:59:12 +00:00
Suren Baghdasaryan
4a8f4548cb Merge "libprocessgroup: Add CgroupGetControllerFromPath API function" 2021-11-10 16:48:28 +00:00
Eric Biggers
335cd1f4a3 init.rc: remove handling of vold.decrypt property changes
These triggers were specific to FDE, which is no longer supported, so
remove them.

Bug: 191796797
Change-Id: Iab4f6bd3d0fa70ff959be2c27986c101c42e29d7
2021-11-09 22:44:50 -08:00
Eric Biggers
89ba7775af fs_mgr: remove FDE-specific FS_MGR_MNTALL codes
Remove these codes, now that neither fs_mgr nor init uses them anymore.

Bug: 191796797
Change-Id: I97451ed8b83043a4035fc8cf8bfbb95ee60afd83
2021-11-09 22:44:50 -08:00
Eric Biggers
4aa4231a8e init: remove FDE workaround from load_persist_props
FDE is no longer supported, so this workaround is no longer needed.

Bug: 191796797
Change-Id: I059b07035b2158fe84e19544f03aab48de787e62
2021-11-09 22:44:50 -08:00
Eric Biggers
e5b5e376f3 init: stop handling FDE-specific fs_mgr return codes
These codes can't be returned anymore, so stop handling them.

Bug: 191796797
Change-Id: I9bffd43db7c2f43e5f749e04e84154165dec279e
2021-11-09 22:44:50 -08:00
Eric Biggers
4d0c5efac9 fs_mgr: remove crypt_footer argument from fs_mgr_do_format()
FDE is no longer supported, so there's no longer any need to ever
reserve a crypto footer.

Bug: 191796797
Change-Id: I79121188b0bcb7b00c16fda03b68b20c40c1e240
2021-11-09 22:44:50 -08:00
Eric Biggers
c953d6eb5f fs_mgr: remove FDE fields from FstabEntry
Remove the now-unused FDE fields from struct FstabEntry.

Bug: 191796797
Change-Id: Iab11a1fe86ac9d06beef68dc7e3c543f48ce0ac6
2021-11-09 22:44:50 -08:00
Eric Biggers
63fb19532c fs_mgr: remove code that handles FDE
Since Android 10, new devices have been required to use FBE instead of
FDE.  Therefore, the FDE code is no longer needed.

Bug: 191796797
Change-Id: I2f29ce5fa61c67325d6eb6cf6693787f8fa8a011
2021-11-09 22:44:50 -08:00
Eric Biggers
b662530677 fs_mgr: stop allowing the FDE fstab options
Since Android 10, new devices have been required to use FBE instead of
FDE.  Therefore, the FDE code is no longer needed.

Make fs_mgr reject fstabs where FDE is enabled.

Unfortunately, there is a quirk where the "encryptable" flag (which was
originally meant just for FDE) was overloaded to identify adoptable
storage volumes.  It appears that we have to keep supporting this use
case.  Therefore, don't reject the "encryptable" flag completely.
Instead, just reject "encryptable" when it appears without
"voldmanaged", or without "userdata" as its argument.

Here are some references for how "encryptable=userdata" is being used to
identify adoptable storage volumes:

  * https://source.android.com/devices/storage/config#adoptable_storage
  * f26c7e9b12:system/vold/main.cpp;l=269
  * f26c7e9b12:device/google/cuttlefish/shared/config/fstab.f2fs;l=17
  * f26c7e9b12:device/generic/goldfish/fstab.ranchu;l=7

[ebiggers@: modified from a WIP CL by paulcrowley@]

Bug: 191796797
Change-Id: I3c4bbbe549cc6e24607f230fad27ea0d4d35ce09
2021-11-09 22:44:50 -08:00
Suren Baghdasaryan
d48d7c8150 libprocessgroup/tools: Add settaskprofile command-line tool
Add a command-line tool to apply task profile(s) to a given thread.

Test: taskprofile $pid ProcessCapacityHigh; grep cpuset /proc/$pid/cgroup
Test: taskprofile $pid ProcessCapacityNormal; grep cpuset /proc/$pid/cgroup
Bug: 204808810
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I1c13731f7a9a1161f36e27436ee104964aacbfd0
2021-11-09 22:35:51 +00:00
Suren Baghdasaryan
9e3ace52bb libprocessgroup: Add CgroupGetControllerFromPath API function
Add new CgroupGetControllerFromPath function to retrieve the name of the
cgroup using a file path. If the file does not belong to any cgroup, the
function returns false.

Bug: 191283136
Test: build and boot
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: Ic17a474cb25a80a3339b33ed8bc27b07af053abb
2021-11-08 21:24:33 +00:00
Yi-Yo Chiang
30fafa6b0c Merge "Make clean_scratch_files work" am: 9ac28517a3
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1878089

Change-Id: I118d999328af90f2ea306ff9fc8e063b43be3ed6
2021-11-08 06:59:54 +00:00
Yi-Yo Chiang
9ac28517a3 Merge "Make clean_scratch_files work" 2021-11-08 06:43:36 +00:00
Peter Collingbourne
47d784e9f2 Add a human readable description of the tagged_addr_ctrl value to tombstones.
Change-Id: Ib9860b282cf749891e0f6ef7697669b94235c236
2021-11-05 18:59:26 -07:00
Treehugger Robot
e965e3dcb0 Merge "Remove references to nonplat sepolicy" am: d0a4e710e9
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1882068

Change-Id: I8f1088db50a6bb72c0e1c713581f8c258c4c3512
2021-11-05 17:47:29 +00:00
Treehugger Robot
d0a4e710e9 Merge "Remove references to nonplat sepolicy" 2021-11-05 17:29:55 +00:00
Suren Baghdasaryan
faad760f1b Merge "llkd: Disable in userdebug builds by default" am: 5c210880eb
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1880604

Change-Id: I42bd9dce5c5cc3bc56b4ab4137b41ff10729bdff
2021-11-05 15:59:40 +00:00
Suren Baghdasaryan
5c210880eb Merge "llkd: Disable in userdebug builds by default" 2021-11-05 15:46:50 +00:00
Jeff Vander Stoep
5effda49e1 Remove references to nonplat sepolicy
"nonplat" was renamed to "vendor" in Android Pie, but was retained
here for Treble compatibility.

We're now outside of the compatbility window for these devices so
it can safely be removed.

While I'm here, improve accuracy of some comments and
in-code-documentation.

Test: build boot cuttlefish device. adb remount, modify
/system/etc/selinux/plat_sepolicy_and_mapping.sha256 to force
on-device policy compilation. reboot. Verify that device boots
without new selinux denials.

Change-Id: Ibe5c5fa1ea206c1b4d5ad8183433c332a8aaadbf
2021-11-05 09:13:26 +01:00
Treehugger Robot
8dc36d8cc5 Merge changes I060f438c,I48fbca45 am: 2aaaa01bb9
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1879728

Change-Id: I1f3fb5a576e2e0aec7b549118a48435f207e1882
2021-11-05 00:05:03 +00:00
Treehugger Robot
2aaaa01bb9 Merge changes I060f438c,I48fbca45
* changes:
  fastbootd: use O_DIRECT for write partition
  fastbootd: allow passage of flags to open partition
2021-11-04 23:51:25 +00:00
Suren Baghdasaryan
2b92541e7f llkd: Disable in userdebug builds by default
While llkd helps in discovering issues in apps which leave zombies, it
creates issues for dogfooders when apps are killed. Disable it by
default.

Bug: 202411543
Test: boot and check llkd not running
Test: `setprop ro.llk.enable true` enables llkd
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: If93bf9e981eaa3921a9da5f3160db26c4fe17e66
2021-11-04 16:21:46 -07:00
Konstantin Vyshetsky
d5f3da8dc5 fastbootd: use O_DIRECT for write partition
Direct writes for partition flashing significantly increase performance.
Use O_DIRECT flag when opening partition for flashing. Additionally use
a 4096b aligned buffer which is required for O_DIRECT.
Switch from using 8MB write buffer to 1MB write buffer, as the extra
allocation has no performance impact.

Test: flash locally and reach home screen
Bug: 205151372
Signed-off-by: Konstantin Vyshetsky <vkon@google.com>
Change-Id: I060f438cf698d0fda1e59e35338bb5dc1cd05b51
2021-11-04 13:24:33 -07:00
Konstantin Vyshetsky
81cc119eff fastbootd: allow passage of flags to open partition
Allow caller to pass additional flags when opening a partition. Obsolete
usage of boolean read, and make previous callers use O_RDONLY instead.
Explicitly OR (O_EXCL | O_CLOEXEC | O_BINARY) to keep existing design
working as is.

Test: flash locally and reach home screen
Bug: 205151372
Signed-off-by: Konstantin Vyshetsky <vkon@google.com>
Change-Id: I48fbca459a17fcf0b0926ab339585e3bd8e31e35
2021-11-04 12:05:48 -07:00
Treehugger Robot
9c0b1f438e Merge "cutils: only support safe list iteration." am: 52a2135180
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1879198

Change-Id: Iae43baf2caa5db307536a40f1970d319ff8eb636
2021-11-04 18:11:39 +00:00
Treehugger Robot
52a2135180 Merge "cutils: only support safe list iteration." 2021-11-04 17:40:21 +00:00
Yifan Hong
cb87bd5910 Merge changes from topic "charger-vendor" am: 95e2f7ffc8
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1870961

Change-Id: I8cf7609f2e7c2101923a3c362d96fa88055fd462
2021-11-03 19:12:51 +00:00
Yifan Hong
95e2f7ffc8 Merge changes from topic "charger-vendor"
* changes:
  charger: vendor charger use resources from /vendor
  charger: make libhealthd_charger_ui vendor_available.
  libsuspend: vendor_available.
2021-11-03 18:53:33 +00:00
Elliott Hughes
6fa2e48db9 cutils: only support safe list iteration.
We've had two use-after-frees in the last month from this nonsense...

Bug: http://b/204925347
Test: treehugger
Change-Id: I5e1485253224e38ca51a7a077dbe65d19e39f817
2021-11-03 10:26:36 -07:00
Yi-Yo Chiang
cc8e0b3ace Merge "libfiemap: array boundary check for fiemap.fm_extents[]" am: ad0f69c5a6
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1878079

Change-Id: Icc9298a78a7d85e21b1e50c216696078569be388
2021-11-03 07:06:55 +00:00
Yi-Yo Chiang
ad0f69c5a6 Merge "libfiemap: array boundary check for fiemap.fm_extents[]" 2021-11-03 06:52:02 +00:00