Commit graph

58901 commits

Author SHA1 Message Date
Christopher Ferris
7efed535c8 Merge "libunwindstack: don't save pseudoregisters while evaluating Dwarf" am: e5c9bbd453
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1403667

Change-Id: I8b25673da5b71fd3f40f34acaa6a78cae2bbe14f
2020-08-24 18:27:55 +00:00
Christopher Ferris
e5c9bbd453 Merge "libunwindstack: don't save pseudoregisters while evaluating Dwarf" 2020-08-24 17:40:56 +00:00
David Anderson
6eab53e0e7 Merge "libsnapshot: Off-line tool for converting OTA payloads to COWs." am: 5b940dc7f9
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1405248

Change-Id: I8416a633114ab35102d7a1a626598dfe28091fa8
2020-08-21 23:15:46 +00:00
David Anderson
5b940dc7f9 Merge "libsnapshot: Off-line tool for converting OTA payloads to COWs." 2020-08-21 23:05:36 +00:00
Treehugger Robot
56a0602e4a Merge "Allow shell to write to /sdcard/Android/data and /sdcard/Android/obb." am: 0297fef2f9
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1404487

Change-Id: I1d0223b551f1444e7259459982cfcdc034004904
2020-08-21 22:57:39 +00:00
Treehugger Robot
0297fef2f9 Merge "Allow shell to write to /sdcard/Android/data and /sdcard/Android/obb." 2020-08-21 22:25:37 +00:00
Elliott Hughes
d40cb2ae55 Merge "Fix logd's implicit dependency on libsysutils." am: ad0614b855
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1407074

Change-Id: I94e78d01b18030942b5c3c84cdf06646afb93fd5
2020-08-21 20:52:52 +00:00
Elliott Hughes
ad0614b855 Merge "Fix logd's implicit dependency on libsysutils." 2020-08-21 20:31:07 +00:00
Elliott Hughes
6998894440 Merge "libcrypto_utils: switch to C++." am: 73bfaa2745
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1407076

Change-Id: Ibc774502d31d1d0e725e6dc5aaa72e96a6a85373
2020-08-21 19:38:22 +00:00
Elliott Hughes
73bfaa2745 Merge "libcrypto_utils: switch to C++." 2020-08-21 19:23:15 +00:00
Marco Ballesio
ff0a789f8f Merge changes from topic "cgroup v2 freezer" am: 8b0b53a913
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1407073

Change-Id: I1a092f58c8ec513cc29cdda6a07c0d7cc10426ee
2020-08-21 18:51:27 +00:00
Marco Ballesio
8b0b53a913 Merge changes from topic "cgroup v2 freezer"
* changes:
  init.rc: remove initializations to cg2_bpf path
  libprocessgroup: json prototype for cgroups v2
  libprocessgroup: switch freezer to cgroup v2
  freezer: allow dynamic changes to freezer.state
2020-08-21 18:41:11 +00:00
Elliott Hughes
91784040db libcrypto_utils: switch to C++.
brillo is long gone, so no one should care about being C any more, and
this will let future janitorial work take advantage of RAII.

Test: treehugger
Change-Id: I06acd01e8b30247bed6e971ab3e8660d3e599cce
2020-08-21 10:34:56 -07:00
Marco Ballesio
fdc03350f4 init.rc: remove initializations to cg2_bpf path
https://r.android.com/c/1324649/5 moves the cgroup folder to its sysfs
path. Directory access rights are defined by kernel code and sepolicy,
so remove the initialization lines from init.rc.

Test: manually booted the device and verified access rights for
/sys/fs/cgroup
Bug: 154548692

Change-Id: I67284dc651ed529cae69e413b66c6e1292a2d970
2020-08-21 09:18:58 -07:00
Treehugger Robot
9dc6804d96 Merge "libcrypto_utils: Use accessors to manipulate RSA keys." am: cdfef7fe9e
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1405369

Change-Id: I2bd01de4f23ce1fd29b20587fd793fac13a34788
2020-08-21 16:02:42 +00:00
Treehugger Robot
cdfef7fe9e Merge "libcrypto_utils: Use accessors to manipulate RSA keys." 2020-08-21 15:49:09 +00:00
Treehugger Robot
6263c29cb1 Merge "Add systrace tag for system property" am: 59ca901218
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1404427

Change-Id: I983e217ec9c608b53fd0bf1489c70e156f55f361
2020-08-21 10:06:14 +00:00
Treehugger Robot
59ca901218 Merge "Add systrace tag for system property" 2020-08-21 09:33:53 +00:00
Yo Chiang
6b1a164e58 Merge "Improve ImageManager error message" am: 5ca85a05e3
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1404667

Change-Id: I5ea2586e32af118978446a42a5d801ca763a419a
2020-08-21 08:39:39 +00:00
Yo Chiang
5ca85a05e3 Merge "Improve ImageManager error message" 2020-08-21 08:01:21 +00:00
Marco Ballesio
43050baa7f libprocessgroup: json prototype for cgroups v2
cgroups v2 support introduces new fields in the json format. Adapt the
proto file accordingly

Bug: 154548692
Test: atest libprocessgroup_proto_test --
Change-Id: I40f8757a8f4e6a0b839caa7faa976dfebf3aac98
2020-08-20 15:53:48 -07:00
Elliott Hughes
0fe3b67024 Fix logd's implicit dependency on libsysutils.
We're trying to remove the implicit dependency on libsysutils that *all*
code has via the symlink in system/core/include/, but netd and logd have
code that #includes the headers without declaring the dependency (which
works out in the end because their executables declare the dependency).

Bug: http://b/165825252
Test: treehugger
Change-Id: I8c582e427d9dbe7d9f8172c445f38ae2737a9049
2020-08-20 15:40:57 -07:00
Marco Ballesio
1c755e22c8 libprocessgroup: switch freezer to cgroup v2
remove cgroup v1 freezer entries from init.rc, add a new cgroup v2
controller and modify plists to properly interact with it.

Bug: 154548692
Test: manually verified the the cgroup v1 freezer controller isn't
created and a new controller for cgroup v2 is created under the correct
sysfs directory.

Change-Id: I1b811300ade486f88fdbd157255a7f37750cc54d
2020-08-20 15:11:41 -07:00
Yo Chiang
792650d4e4 Merge "TranformFstabForDsu adds missing partition entries to fstab" am: 36a21704e0
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1404428

Change-Id: I0f202009cd662e94b2aa4e966568255716384571
2020-08-20 07:04:43 +00:00
Yo Chiang
36a21704e0 Merge "TranformFstabForDsu adds missing partition entries to fstab" 2020-08-20 06:38:44 +00:00
David Anderson
00138ea64f Merge "Initial prototype of COW format and API." am: 34dda54411
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1378463

Change-Id: Icf966adfe58d647ca6ec56c85448ed05960d4c2a
2020-08-19 23:25:03 +00:00
David Anderson
34dda54411 Merge "Initial prototype of COW format and API." 2020-08-19 23:13:38 +00:00
David Benjamin
40ea8bc1eb libcrypto_utils: Use accessors to manipulate RSA keys.
This removes a blocker to BoringSSL marking the RSA struct opaque.
Sadly, OpenSSL's RSA_set0_key setter is a little tedious to use
correctly with error-handling, but it works.

Along the way, replace the byte reversing code with BoringSSL's native
little-endian BIGNUM conversion functions.

Test: libcrypto_utils_test passes
Change-Id: I298a6360d76fc7793462cd55bd57bc673c4975b3
2020-08-19 17:41:44 -04:00
David Anderson
a258293a97 libsnapshot: Off-line tool for converting OTA payloads to COWs.
The A/B version of this tool takes in a payload.bin file (from an OTA
package), and converts it into COWs in the new format. It uses the
CowWriter API to do this. This tool can be used to precisely see the
size of a COW relative to an OTA. Since there is one COW per partition,
it also takes an output folder:

    make_cow_from_ab_ota payload.bin ./ota-cows/

If the payload is incremental, a source target-files package is needed.
It must be the exact package used to build the OTA, otherwise, the
conversion is likely to fail. Example:

    make_cow_from_ab_ota -source_tf target-files-XYZ.zip \
                         payload.bin ./ota-cows/

Bug: 162274240
Test: manual tests
Change-Id: I22c86546f4166ee9df99165399646b7daa3519d5
2020-08-19 13:58:09 -07:00
David Anderson
0324725548 Initial prototype of COW format and API.
This is an initial prototype of the new COW format. It does not have
support for merge sequencing or merge state tracking.

The reader and writer APIs have pure virtual interfaces to support
mocking. The writer implementation performs compression, but the reader
interface does not (yet), it only supports iterating over metadata and
performing basic validation.

Bug: 162274240
Test: manual tests
      cow_api_test gtest
Change-Id: Ib9fddc1f210700688e6786917b023dfabd5fb3d9
2020-08-19 13:56:57 -07:00
Marco Ballesio
76eca5b4c1 freezer: allow dynamic changes to freezer.state
create new profiles to allowing thawing and freezing back the freezer
cgroup

Bug: 151225245
Test: Manually verified that using the SetTaskProfiles method on the
profiles thaws and freezes back the freezer cgroup.

Change-Id: I7f3e193ebe79b49c1f6ac52b6138ff4ec26fc570
2020-08-19 13:18:28 -07:00
Yo Chiang
93c78c243d Improve ImageManager error message
Print more helpful error messages to logcat.

Bug: 165471299
Test: Observe logcat
Change-Id: I3dca834a7cd3f653b038fc3a4020e96f500e1d1f
2020-08-19 19:31:15 +08:00
Martijn Coenen
4da604ba4e Allow shell to write to /sdcard/Android/data and /sdcard/Android/obb.
On devices without sdcardfs, these are only writable by the owning UID,
and/or the ext_data_rw/ext_obb_rw groups respectively.

Bug: 161134565
Bug: 162810387
Test: try to write to /sdcard/Android/data/ from shell uid
Change-Id: Idb4e07f967c8e888d95afa6c4a71595e0910ba0e
2020-08-19 09:04:52 +02:00
Yo Chiang
e48dbc2004 TranformFstabForDsu adds missing partition entries to fstab
Fix odd bug that TranformFstabForDsu doesn't emplace entry to fstab.

.avb_keys should be set to "/avb", the directory that stores all DSU
avbpubkeys, instead of appending.

Bug: 165471299
Test: Boot a multipartition DSU package
Change-Id: I62ee2f8bf7113f6d2af8cc34ef19c9743029ea0a
2020-08-19 14:17:37 +08:00
Bowgo Tsai
f4bf7f3a94 Add systrace tag for system property
Introduce a new systrace tag, TRACE_TAG_SYSPROP, for use with
system property.

Bug: 147275573
Test: build
Change-Id: I6f85f3f52f6580bab4ff43fc1dc0e87c689b054e
Merged-In: I6f85f3f52f6580bab4ff43fc1dc0e87c689b054e
(cherry picked from commit 573fc58bad)
2020-08-19 12:48:07 +08:00
Tamas Zsoldos
f30a46f100 libunwindstack: don't save pseudoregisters while evaluating Dwarf
Currently, while evaluating a Dwarf section, even pseudoregisters are
saved in regs_info. Since pseudoregisters are stored separately from
ordinary registers, trying to read them the usual way will result in
an out-of-bounds read. There's no memory corruption as regs_info is
big enough to store all existing pseudoregisters.

With this patch, pseudoregisters are simply not saved in regs_info.

Added new unit tests to cover the pseudo register cases.

Test: libunwindstack_test

Change-Id: If21b2a79f2fcca85644eec430f3d22e354b001ec
2020-08-18 18:08:28 -07:00
Treehugger Robot
cb54d93584 Merge "Revert "Fix non-existent module error"" am: d7cb6e1fd0
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1398410

Change-Id: I4903d5491e8e1106d486b0fdcc561f669dfe76e6
2020-08-18 08:02:29 +00:00
Treehugger Robot
d7cb6e1fd0 Merge "Revert "Fix non-existent module error"" 2020-08-18 07:41:01 +00:00
Elliott Hughes
f2587f3698 Merge "Deprecate <utils/Debug.h>." am: 5d0eb66590
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1402847

Change-Id: I38d2a1f664c6ef126a83b273d4d044a9664a3ea8
2020-08-17 20:48:09 +00:00
Elliott Hughes
80a8682fff Merge "Don't #include <utils/Debug.h> from <utils/Flattenable.h>." am: af99e1e88a
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1402848

Change-Id: I5d76e2a875d9f638b7413466d13eb92eea511925
2020-08-17 20:48:00 +00:00
Elliott Hughes
5d0eb66590 Merge "Deprecate <utils/Debug.h>." 2020-08-17 20:36:10 +00:00
Elliott Hughes
af99e1e88a Merge "Don't #include <utils/Debug.h> from <utils/Flattenable.h>." 2020-08-17 20:35:59 +00:00
Paul Crowley
4fd4d4b948 Merge "Set ro.crypto.type even on failure" am: 5350746a2b
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1400948

Change-Id: If30c80f97fbbaf1ba532d45c60d68322acb1fe33
2020-08-17 20:17:21 +00:00
Paul Crowley
5350746a2b Merge "Set ro.crypto.type even on failure" 2020-08-17 20:14:25 +00:00
Tom Cherry
f5ce644a79 Merge "Remove android_lookupEventTagNum() and related code" am: 5b02193f5c
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1400707

Change-Id: Ifb36e8979f5489fba1fd36e38e5278c7fe105c91
2020-08-17 20:11:52 +00:00
Tom Cherry
5b02193f5c Merge "Remove android_lookupEventTagNum() and related code" 2020-08-17 19:58:22 +00:00
Tom Cherry
d11f2371e1 Remove android_lookupEventTagNum() and related code
This was introduced years ago but never gained any users.

Test: build
Merged-In: Id2deb6de1839f995970c6350a1970a872f0b51cf
Change-Id: Id2deb6de1839f995970c6350a1970a872f0b51cf
2020-08-17 18:04:00 +00:00
Elliott Hughes
884cedc770 Don't #include <utils/Debug.h> from <utils/Flattenable.h>.
It's not used, and shouldn't be used.

Also switch to `#pragma once`.

Test: treehugger
Change-Id: I464d3de1b0e1d536cea06362e6c73fddaad967d1
2020-08-17 10:14:16 -07:00
Elliott Hughes
832815151f Deprecate <utils/Debug.h>.
I stumbled across this because of the `#ifdef __cplusplus` inside an
unguarded `namespace`, but this whole file should be deprecated and
removed in favor of static_assert.

Test: treehugger
Change-Id: I2b65db67e694115e915f0cc9d762b0fd41a7d2af
2020-08-17 10:07:29 -07:00
Treehugger Robot
ce5e603936 Merge "Revert "[adb] fix signature check"" am: 920393ddb7
Original change: https://android-review.googlesource.com/c/platform/system/core/+/1401071

Change-Id: I86fd80046d0099eb462d83595f5e5be8b3c39bfa
2020-08-15 11:09:30 +00:00