Commit graph

88832 commits

Author SHA1 Message Date
Treehugger Robot
874b24bffe Merge "toolbox/libmodprobe: add toolbox to vendor_ramdisk" into main am: b03f02bca4
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3002577

Change-Id: Id00cb797fa66cdd986576c7a6e109fb4e33d8cd6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-19 20:35:47 +00:00
Treehugger Robot
b03f02bca4 Merge "toolbox/libmodprobe: add toolbox to vendor_ramdisk" into main 2024-03-19 20:08:30 +00:00
Mitch Phillips
152a5750c3 Merge "[MTE] Implement permissive (recoverable) MTE for apps" into main am: da9ec0cd05
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3003971

Change-Id: I53b85fb7f3eacf38d49193f2b901a7c1e64e17a9
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-19 19:22:43 +00:00
Mitch Phillips
da9ec0cd05 Merge "[MTE] Implement permissive (recoverable) MTE for apps" into main 2024-03-19 19:06:13 +00:00
Florian Mayer
b55b5e7433 Merge "Do not chmod ANRs" into main am: effe539c30
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3006788

Change-Id: I3ef7f0ad6cb79f148d1ffc5c690f0dc704c21732
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-19 18:36:56 +00:00
Florian Mayer
effe539c30 Merge "Do not chmod ANRs" into main 2024-03-19 18:25:42 +00:00
Elliott Hughes
28c35296cc Merge "Use _Fork()." into main am: 0fee60a79a
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2983920

Change-Id: Iaf926a6dcaa69b8218b44ed2edab5d3ba2d54495
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-19 15:03:26 +00:00
Elliott Hughes
0fee60a79a Merge "Use _Fork()." into main 2024-03-19 14:48:20 +00:00
Mitch Phillips
31407917f8 [MTE] Implement permissive (recoverable) MTE for apps
Extends the recoverable native crash handling support to also allow for
MTE crashes to be recovered from in apps. Backs onto the existing
GWP-ASan recoverable handling.

At least for system/core, I've renamed the (now) generic "recoverable
crash" variables to remove the notion of GWP-ASan.

Permissive MTE should no longer crash an app, and crashes are still
visible in the AppExitInfo API and tombstones.

Test: atest CtsTaggingHostTestCases
Bug: 328793166
Change-Id: I4c6ffa85af0e0d9b72d0ccd606bb6e1ca464cfff
2024-03-19 11:26:02 +01:00
Daniel Zheng
a9670fee81 Merge "libsnapshot: reserve 16x space for ops" into main am: 550a176551
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3004570

Change-Id: I09b49ce984e8e1829a6af0be5baf0e51063a7d81
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-19 07:48:16 +00:00
Daniel Zheng
550a176551 Merge "libsnapshot: reserve 16x space for ops" into main 2024-03-19 07:34:57 +00:00
Daniel Zheng
8e6ab87328 libsnapshot: reserve 16x space for ops
We have updated logic for v3 cow we should allow non-data ops to be
cached at 16x the amount of data ops. Changing the reserve size to match
this.

Test: th
Change-Id: I825ffef4e1a2ce4eb5c105d266bf95cb3d776ed9
2024-03-19 00:34:15 -07:00
Florian Mayer
e95d781041 Do not chmod ANRs
The code was only meant for native tombstones. It might be a good idea
to make ANRs also readable by shell / adb, but in that case we have to
do more changes to make sure all files in /data/anr are. We can revert
if we implement that

Test: m
Bug: 329827513
Change-Id: Ic98c452ca500fe766a70173bef4ac1ea57438989
2024-03-18 17:19:51 -07:00
Treehugger Robot
7554b4f511 Merge "dmctl: add report of IMA" into main am: 0b671f4432
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3001314

Change-Id: If81ba8adff2f74970cf8ffec2b0546c6cf602c5d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-18 17:31:51 +00:00
Treehugger Robot
0b671f4432 Merge "dmctl: add report of IMA" into main 2024-03-18 16:59:31 +00:00
Junki Min
c8dc7ffd5e toolbox/libmodprobe: add toolbox to vendor_ramdisk
toolbox and libmodprobe are required for module loading before
first stage init begin.

BUG: 329807942
Signed-off-by: Junki Min <joonki.min@samsung.com>
Change-Id: Icf04888e602b012758ebf353ed8e4aff2585fd07
2024-03-18 17:35:26 +09:00
Jeongik Cha
6209203f9e Merge "Declare init.*.rc modules in Android.bp" into main am: 4df565db4c
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2926193

Change-Id: Ifecc6a0d37624a81275ace681922ec623d538c1e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-18 01:45:47 +00:00
Jeongik Cha
4df565db4c Merge "Declare init.*.rc modules in Android.bp" into main 2024-03-18 01:25:16 +00:00
Treehugger Robot
a03dd6a53f Merge "Remove bionic dependency from llndk-versioning.h" into main am: a17fa25959
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3002802

Change-Id: Ib5b7609b8bd2ddca202e58432ee6b5293316e847
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-18 00:29:05 +00:00
Treehugger Robot
a17fa25959 Merge "Remove bionic dependency from llndk-versioning.h" into main 2024-03-18 00:11:43 +00:00
Treehugger Robot
c3ab43099b Merge "toolbox/modprobe: Use libmodprobe to load modules from FILE" into main am: a09542807f
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2995300

Change-Id: Iec01df8d7be695252398089ff7fb795e605fa11c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-15 23:45:36 +00:00
Jaegeuk Kim
9459f7c09c dmctl: add report of IMA
This adds an option "ima" in dmctl.

$ dmctl ima product-verity
Targets in the device-mapper table for product-verity:
0-7463768: verity, target_name=verity,target_version=1.9.0,hash_failed=V,verity_version=1,data_device_name=254:4,hash_device_name=254:4,verity_algorithm=sha256,root_digest=d7af9fcb04d184219ba5477b97bb2bbc89fd23a46e03d1dea31d674cc4934769,salt=19d4f2345adfc8b7cc22a3c2f21dd413e5020fc7920a08a33f46f3c61492dfcc,ignore_zero_blocks=y,check_at_most_once=n,verity_mode=restart_on_corruption;

Change-Id: I057970b6c786b3f9a394b4919f5f5115b27cbc08
Signed-off-by: Jaegeuk Kim <jaegeuk@google.com>
2024-03-15 16:34:20 -07:00
Treehugger Robot
a09542807f Merge "toolbox/modprobe: Use libmodprobe to load modules from FILE" into main 2024-03-15 23:32:52 +00:00
Will McVicker
7d400f9d8c toolbox/modprobe: Use libmodprobe to load modules from FILE
When a file is provided (via --all=FILE), let's use libmodprobe to load
the modules. This let's us use the logic in libmodprobe to parse the
provided modules load file -- FILE. The functional differences include:

 - Removes the FILE parsing logic in modprobe.
 - Returns early if FILE doesn't exist.
 - Adds Dirname(FILE) to mod_dirs which means libmodprobe will parse the
   modules.* files inside Dirname(FILE). Previously, modprobe would only
   parse the modules.* files in the mod_dirs passed in by `-d DIR`. If
   no directories were provided, we would fallback to the default
   /lib/modules path. This patch removes the mod_dirs.empty() fallback
   path when --all=FILE is used. It's unlikely anyone uses `--all=FILE`
   without `-d DIR` unless FILE is inside the fallback path --
   /lib/modules.

Test: verified lsmod on pixel 6
Bug: 324018983
Change-Id: I8d241832f2a1f18d14207e3e3777e015c1ddb25f
2024-03-15 14:58:31 -07:00
Dennis Shen
b00b585842 Merge "Revert "start aconfig storage daemon"" into main am: a8a6d67f29
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3004346

Change-Id: Ieefc6cb3945925a178ce1e95451144d760d1c38b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-15 19:29:17 +00:00
Dennis Shen
a8a6d67f29 Merge "Revert "start aconfig storage daemon"" into main 2024-03-15 19:16:42 +00:00
Android Culprit Assistant
71179955f7 Revert "start aconfig storage daemon"
This revert was created by Android Culprit Assistant. The culprit was identified in the following culprit search session (http://go/aca-get/2def2bc9-4177-4451-930d-96612adf7d95).

Change-Id: I232a36309883bff892fff5a5d43fd1432d7f1c6e
2024-03-15 19:06:14 +00:00
Treehugger Robot
c08f8d9140 Merge "Add missing header." into main am: 090f45f3c8
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3004212

Change-Id: Ib3afc457a083424ed0055613a00f71c2276a180c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-15 18:33:15 +00:00
Treehugger Robot
090f45f3c8 Merge "Add missing header." into main 2024-03-15 18:21:11 +00:00
Justin Yun
47f9182e49 Remove bionic dependency from llndk-versioning.h
llndk-versioning.h only defines macros for LLNDK versioning.
Remove unused bionic header.

Bug: 302113279
Test: lunch cf_x86_64-trunk_staging-userdebug && m && m cts
Change-Id: I8d3ebbd765a223a2241e1a0bc95c84d726bacb9d
2024-03-15 23:05:09 +09:00
Krzysztof Kosiński
eaf7d77e7e Add missing header.
Protobuf 22.x no longer includes <unordered_map>, so it has to
be included explicitly.

Bug: 329747255
Test: presubmit
Change-Id: Icd5055e242e4f58029caf80cbb321222c612a9d0
2024-03-15 06:44:39 +00:00
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
7a174ebb73 Merge "start aconfig storage daemon" into main am: e7abebc01d
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3002007

Change-Id: Ic71b332b45b9482ecbe0031c5b279e11751b4c86
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-14 12:29:19 +00:00
Dennis Shen
e7abebc01d Merge "start aconfig storage daemon" into main 2024-03-14 12:17:53 +00:00
Nikita Ioffe
4b91a6bc26 Merge changes from topic "derive-microdroid-vendor-dice-node" into main am: 13db31040f
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2986255

Change-Id: I0a67cf4f1dd6eeea3a3f6ffec3b5320d291dadf6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-14 11:39:58 +00:00
Nikita Ioffe
081689ff8e Move ForkExecveAndWaitForCompletion to util.h am: fe7b83faea
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2986254

Change-Id: Ied5c3373b9159538bdc11c1e8f390c65b71356c7
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-14 11:39:55 +00:00
Nikita Ioffe
3109a477f7 Mount /microdroid_resources as tmpfs am: 2384e8abfe
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3000936

Change-Id: Ied06eca140bea3d749067dc46b50aa98c842217f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-14 11:39:49 +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
590c553e12 Merge "Define macros for LLNDK versioning" into main am: 9bceea5a7f
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2996956

Change-Id: Ia39ac2d67884b8fe8fa2be3caa47fc4e3be7b1fd
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-14 06:19:12 +00:00
Treehugger Robot
9bceea5a7f Merge "Define macros for LLNDK versioning" into main 2024-03-14 05:58:32 +00: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
c0d3d2a207 Merge "Make foreground and background I/O priority different" into main am: f21e60282e
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2998919

Change-Id: I1f96192d837a7fa53b8c4f749f3f47f837d4fc76
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-13 16:34:37 +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
898ce952f9 Merge changes I68f7d46b,I5d5278ab into main am: 0c2301240a
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2995299

Change-Id: Ie3e9c1f0c980e26feddf0cc65e20d80d9357bbb0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-13 06:05:51 +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
4595c8f531 Merge "Update test for more accurate memtag_handle_longjmp" into main am: c923ea5a6d
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2992657

Change-Id: I9d6c4471fc9569c3ff50472d2b2b3c56f6f4ed10
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-03-12 18:20:10 +00:00