Commit graph

88939 commits

Author SHA1 Message Date
Jeongik Cha
3652004432 Declare init.*.rc modules in Android.bp
Bug: 322088967
Test: build
Change-Id: Idd8cc0a9fdbcda1d8129056efc0afadc663b955b
2024-03-15 13:49:39 +09:00
Dennis Shen
e7abebc01d Merge "start aconfig storage daemon" into main 2024-03-14 12:17:53 +00:00
Nikita Ioffe
13db31040f Merge changes from topic "derive-microdroid-vendor-dice-node" into main
* changes:
  Add a step to derive microdroid vendor dice node
  Move ForkExecveAndWaitForCompletion to util.h
  Mount /microdroid_resources as tmpfs
2024-03-14 11:20:06 +00:00
Treehugger Robot
9bceea5a7f Merge "Define macros for LLNDK versioning" into main 2024-03-14 05:58:32 +00:00
Daniel Zheng
9ce8219f52 libsnapshot: fix warnings
Fix unused header warning

Test: th
Change-Id: I5c9f22f3f74d6ca44e738e1dc8e9fe146749857f
2024-03-13 22:31:58 -07:00
Daniel Zheng
da960a1341 libsnapshot: remove temporary solution
Remove temporary estimation solution (using 4k to overestimate the cow).
With the updated estimation logic, we should be able to accurately
estimate the cow size with variable block sized compression

Bug: 322279333
Test: th
Change-Id: I199970048605a8d21d3791614ad88ca61662e1a3
2024-03-13 22:28:43 -07:00
Dennis Shen
07afcabf67 start aconfig storage daemon
Bug: b/312444587
Test: m and launch AVD
Change-Id: I92946fc4ec2100d995300c58ef6045ae5b40f13a
2024-03-13 19:16:29 +00:00
Bart Van Assche
f21e60282e Merge "Make foreground and background I/O priority different" into main 2024-03-13 16:15:20 +00:00
Nikita Ioffe
1e114e677b Add a step to derive microdroid vendor dice node
The derivation happens in the derive_microdroid_vendor_dice_node binary
which first_stage_init forks and execvs.

Since the derivation requires talking to the dice driver, its
initialisation is also moved to the first stage init.

The derivation happens before the microdroid vendor partition is
verified & mounted. This should be safe because the first_stage_init
will fail the boot if the verification of the microdroid vendor
partition fails.

Bug: 287593065
Test: run microdroid with and without vendor partition
Test: atest MicrodroidTests
Change-Id: I0d83772eb98a56c315617e66ec64bd03639cfde6
2024-03-13 15:24:44 +00:00
Nikita Ioffe
fe7b83faea Move ForkExecveAndWaitForCompletion to util.h
In the follow up patch this function will also be used in
first_stage_init.

Bug: 287593065
Test: m
Change-Id: Id805f8523596c26ed262d89aa652b27184b612c1
2024-03-13 14:44:46 +00:00
Nikita Ioffe
2384e8abfe Mount /microdroid_resources as tmpfs
This will be used to store the new dice chain generated during
first_stage_init phase in case Microdroid VM is launched with
microdroid vendor partition.

Bug: 287593065
Test: atest MicrodroidTests
Test: start Microdroid VM & check microdroid_resources exists
Change-Id: I40677376bfed14d813ad51c78db6109b2d76d1d1
2024-03-13 14:39:08 +00:00
Treehugger Robot
0c2301240a Merge changes I68f7d46b,I5d5278ab into main
* changes:
  toolbox/modprobe: Fix failure due to blocklist
  libmodprobe: Make IsBlocklisted() public
2024-03-13 05:27:59 +00:00
Bart Van Assche
7f3fe0aaf2 Make foreground and background I/O priority different
The default I/O priority is "best effort" so the combination of "none"
and "restrict-to-be" is not sufficient to make foreground and background
I/O priorities different. This CL makes sure that foreground and
background I/O priorities are different.

As one can see, this CL has the intended effect in Cuttlefish:
$ adb -s 0.0.0.0:6520 shell 'cd /dev/blkio && grep -aH . blkio.prio.class background/blkio.prio.class'
blkio.prio.class:promote-to-rt
background/blkio.prio.class:restrict-to-be

Bug: 186902601
Change-Id: I24d30d360280d8c398684b0b5e88635f658ff870
Signed-off-by: Bart Van Assche <bvanassche@google.com>
2024-03-12 13:30:40 -07:00
Florian Mayer
c923ea5a6d Merge "Update test for more accurate memtag_handle_longjmp" into main 2024-03-12 18:12:46 +00:00
Veena Arvind
fe7e089a7c Merge "Scan for quiescent in sub reason and details" into main 2024-03-12 17:46:54 +00:00
Veena Arvind
b46e5e6d0b Scan for quiescent in sub reason and details
Bug: 326526460
Test: manual (b/320369923#comment19)
Change-Id: I702841bf1afa6a04318b8233eb6ddb89c46b7ad5
2024-03-11 22:23:09 +00:00
Jiakai Zhang
a08ad4b1e5 Merge changes from topic "snapshotctl_prop" into main
* changes:
  Make snapshotctl also log to logd.
  Allow other processes to run snapshotctl through init.
2024-03-11 16:55:25 +00:00
Justin Yun
f8292344cd Define macros for LLNDK versioning
__INTRODUCED_IN_LLNDK(vendor_api_level) is for the LLNDK APIs
introduced in the vendor_api_level. It is ignored for non-vendor
modules.

API_LEVEL_AT_LEAST(sdk_api_level, vendor_api_level) is used as a
statement for 'if' to guard the API callers. For example:

if API_LEVEL_AT_LEAST(__ANDROID_API_V__, 202404) {
  new_api_for_V_and_202404();
} else {
  fallback_function();
}

Bug: 302113279
Test: build trunk-staging and next configurations
Change-Id: I60d40655b1f8afdfa5c69b2ac4be2205f8057bea
2024-03-11 20:24:07 +09:00
Jiakai Zhang
6480d875b5 Make snapshotctl also log to logd.
Since http://r.android.com/2994274, snapshotctl can be run by init.
Therefore, we need it to log to logd for better debuggability.

Bug: 311377497
Test: adb shell setprop sys.snapshotctl.map requested
Test: adb shell setprop sys.snapshotctl.unmap requested
Change-Id: I287ecf77d45fb9e6c44bea36e14d2624029afea5
2024-03-08 18:56:13 +00:00
Jiakai Zhang
22ddb0aec5 Allow other processes to run snapshotctl through init.
Running snapshotctl involves talking to gsid, which requires the UID to
be 0. To allow other processes to run snapshotctl without running as the
root user, this change adds system properties "sys.snapshotctl.map" and
"sys.snapshotctl.unmap" that proxy snapshotctl calls.

Bug: 311377497
Test: adb shell setprop sys.snapshotctl.map requested
Test: adb shell setprop sys.snapshotctl.unmap requested
Change-Id: Ia29dde30021a94511b8e699c2c8f3816b851bf5c
2024-03-08 18:53:47 +00:00
Florian Mayer
1fef1b1359 Update test for more accurate memtag_handle_longjmp
Change-Id: Ie5482d343c37ee8cf57a8ce105a0c8a363e5761e
2024-03-07 17:12:57 -08:00
Will McVicker
b9dead1a75 toolbox/modprobe: Fix failure due to blocklist
When a module is blocklisted, LoadWithAliases() will return an error
indicating the module failed to load. When the blocklist is requested
(via the -b parameter), let's not return an error if a blocklisted
module fails to load.

Test: verified lsmod on pixel 6
Bug: 324018983
Change-Id: I68f7d46bf9fd99e4b4e51ef92ea71686907f1125
2024-03-07 15:01:59 -08:00
Will McVicker
2d3658a421 libmodprobe: Make IsBlocklisted() public
This allows tools like modprobe to check if a module is blocklisted.

Test: verified lsmod on pixel 6
Bug: 324018983
Change-Id: I5d5278ab056e58a4ee103db94b573928cbeb5c5f
2024-03-07 15:01:54 -08:00
Snehal Koukuntla
b2bfb972e8 Merge "[Metrics] Add helper data structures to parse metrics messages" into main 2024-03-07 09:11:31 +00:00
Xin Li
ba485e7f71 Merge "Merge Android 14 QPR2 to AOSP main" into main 2024-03-07 06:10:51 +00:00
Michael Hoisie
1140355bde Merge "Remove the redundant libcutils_sockets_test" into main 2024-03-07 06:01:19 +00:00
Treehugger Robot
6c6b9e33d6 Merge "Skip initializing ro.vendor.api_level if already defined" into main 2024-03-07 03:42:14 +00:00
Xin Li
2f5e50cfd0 Merge Android 14 QPR2 to AOSP main
Bug: 319669529
Merged-In: I4955367085f3f7c829b8b4e7b06aafaaac9ad748
Change-Id: Idefdb54491ebf42c4d8a04ddcc71fa87f500b79e
2024-03-06 18:58:28 -08:00
Michael Hoisie
d1e4c263c4 Remove the redundant libcutils_sockets_test
'sockets_test.cpp' also runs as part of libcutils_test and
libcutils_static_test, so it is redundant to have it be a separate
target.

Test: libcutils_test
Test: libcutils_static_test
Bug: 317884162
Change-Id: Ib2c2f74feb79d1436ca67ae9aca18d3eb7acf5a0
2024-03-06 22:18:58 +00:00
Snehal
dfd84433dd [Metrics] Add helper data structures to parse metrics messages
Bug: 323508669

Change-Id: Ic4716dd47168481b6aa780f55d9db1208623b61d
2024-03-06 17:27:57 +00:00
Treehugger Robot
59d9dc1f50 Merge "Create /mnt/pre_reboot_dexopt on init for Pre-reboot Dexopt." into main 2024-03-06 12:27:27 +00:00
Justin Yun
4058ba29b5 Skip initializing ro.vendor.api_level if already defined
Devices may predefine ro.vendor.api_level. Skip calculating the value
if the ro.vendor.api_level is already defined.

Bug: 326164316
Test: getprop ro.vendor.api_level
Change-Id: Ic9fd2a0eef6ba9345f98a5cb1eb790080e19ca19
2024-03-06 18:28:58 +09:00
Treehugger Robot
7131b6c7ff Merge "Revert^2 "Add TEST_MAPPING for debuggerd CTS"" into main am: 98c2d78b4f
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2984645

Change-Id: I4955367085f3f7c829b8b4e7b06aafaaac9ad748
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-05 19:38:19 +00:00
Treehugger Robot
98c2d78b4f Merge "Revert^2 "Add TEST_MAPPING for debuggerd CTS"" into main 2024-03-05 18:55:59 +00:00
Hsin-Yi Chen
ec15e9247b Merge "Annotate LLNDK functions in non-vendor libraries" into main am: d0e8eab404
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2988249

Change-Id: I4519224a11c8a1e87a3744f7c34c10b5db442fa0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-05 11:43:52 +00:00
Hsin-Yi Chen
d0e8eab404 Merge "Annotate LLNDK functions in non-vendor libraries" into main 2024-03-05 10:57:40 +00:00
Hsin-Yi Chen
80dca7ba59 Annotate LLNDK functions in non-vendor libraries
The ABI tool analyzes the source code of LLNDK libraries. It compiles
the source with the flags for core variants where __INTRODUCED_IN_LLNDK
does not version the API. To expose the version information to the ABI
tool, __INTRODUCED_IN_LLNDK is defined as an "annotate" attribute in
core variants.

Test: make
Bug: 314010764
Change-Id: I798a397f0e7567ca54db5e4aff4235933ebd3943
2024-03-05 09:18:39 +00:00
Florian Mayer
10640bf995 Merge "Add test for invalid setjmp in MTE" into main am: 851c857420
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2982907

Change-Id: Ic78dc82161b7ccc27a1ed5fc7ec74281b3d90343
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-05 02:11:50 +00:00
Florian Mayer
851c857420 Merge "Add test for invalid setjmp in MTE" into main 2024-03-05 01:33:03 +00:00
Florian Mayer
e6462f91c2 Add test for invalid setjmp in MTE
BYPASS_INCLUSIVE_LANGUAGE_REASON=man is for manpage

Test: atest debuggerd_test
Change-Id: I774095b79baadb4f692f4b97b47df80e635e3a1c
2024-03-04 12:17:19 -08:00
Kelvin Zhang
db71f06e34 Merge "Add annotations to VTS tests" into main am: eed1c42087
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2984641

Change-Id: Ic0d5eb3803ff03bed830a691fc86638d5ab2122a
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-01 02:44:17 +00:00
Treehugger Robot
e73c39f8eb Merge "debuggerd_test: fix invalid regexs" into main am: 562f953acd
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2984642

Change-Id: Ic245f648c8b4b41ce50263bad6a8c977b155fcc3
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-01 02:44:06 +00:00
Kelvin Zhang
eed1c42087 Merge "Add annotations to VTS tests" into main 2024-03-01 02:35:40 +00:00
Treehugger Robot
562f953acd Merge "debuggerd_test: fix invalid regexs" into main 2024-03-01 01:54:51 +00:00
Florian Mayer
b7e9941744 Revert^2 "Add TEST_MAPPING for debuggerd CTS"
This reverts commit aa48834485.

Reason for revert: fixed in https://r.android.com/2985051

Change-Id: I76a53df9fb585d90778019e74472ad294963a91c
2024-03-01 01:52:23 +00:00
Florian Mayer
6639147c4b Merge "Revert "Add TEST_MAPPING for debuggerd CTS"" into main am: f8a75c9e53
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2984791

Change-Id: I834c37dd124a05cdb3e9a9484373494149e21df9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-02-29 23:51:33 +00:00
Florian Mayer
f8a75c9e53 Merge "Revert "Add TEST_MAPPING for debuggerd CTS"" into main 2024-02-29 23:02:51 +00:00
Elliott Hughes
06053405e9 Use _Fork().
POSIX issue 8 has a standard way to avoid pthread_atfork() handlers.

Change-Id: I801c55dc3fb9e14cc03f854992d60872c5468ab5
2024-02-29 23:02:38 +00:00
Ryan Prichard
bc227038c0 debuggerd_test: fix invalid regexs
\(fault address prefixed with --->)

should be

    \(fault address prefixed with --->\)

Test: debuggerd_test
Bug: 175635923
Bug: 327668317
Change-Id: I03bf8969e9818956ae79b916ab852efaf4f2f78a
2024-02-29 14:40:57 -08:00
Kelvin Zhang
98522c0e2d Add annotations to VTS tests
This helps reviewers understand which VTS requirement these test are
covering

Bug: 302208814
Test: th
Change-Id: I52712d9888b73fc7a9f8eeeb035a3303618efd69
2024-02-29 14:30:35 -08:00