Commit graph

89571 commits

Author SHA1 Message Date
Akilesh Kailash
1bbf8f042f libsnapshot: Check if the vendor is updated from Android S for GRF
In a GRF config, if Vendor partition is updated from Android 12; post
OTA reboot, first stage init will communicate to daemon to check if the
daemon can support socket handoff. If that succeeds, then it is a signal
that the vendor has been updated from Android 12. Use a marker in
/metadata to signal that the vendor was updated. If the marker is present,
then post OTA reboot, userspace snapshot will be used.

Bug: 333854394
Test: OTA
Android U (system) + S (vendor) -> Android V (system) + V (Vendor)

Change-Id: Ie38c4379010789a84e5b44529b407f9f82135271
Signed-off-by: Akilesh Kailash <akailash@google.com>
2024-06-28 15:34:41 -07:00
Daniel Zheng
116a713383 Merge "Revert "reupload: libsnapshot: set thread priority"" into main 2024-06-18 22:21:39 +00:00
Liana Kazanova
a8f130693d Revert "reupload: libsnapshot: set thread priority"
This reverts commit 00e1b61bb9.

Reason for revert: DroidMonitor: Potential culprit for b/348041418 - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.

Change-Id: Ib7422cc7bfb7815ede814fb5f0ee1d4537fe52d2
2024-06-18 22:20:43 +00:00
Daniel Zheng
76bf29a8ae Merge "reupload: libsnapshot: set thread priority" into main 2024-06-18 22:04:16 +00:00
Yi-Yo Chiang
37c9fe876e Merge "fs_mgr_overlayfs: Don't preemptively change mount propagation type" into main 2024-06-18 12:57:42 +00:00
Yi-Yo Chiang
c2ae951c7d fs_mgr_overlayfs: Don't preemptively change mount propagation type
If the overlaid mount have no submount and is not submount of other
mount, then we don't need to change its propagation type.
This makes the remount process less disruptive as we create less
fragmented mount namespaces.
The general rule is still to always reboot after initial remount setup
to get the most predictable result.

Bug: 342967841
Test: adb_remount test
Change-Id: I19ca62018149f1fa81186824a9d7f1c32d9d6008
2024-06-18 11:00:49 +00:00
Treehugger Robot
bc1fac5125 Merge "Convert init_vendor to Android.bp" into main 2024-06-18 00:49:13 +00:00
Daniel Zheng
00e1b61bb9 reupload: libsnapshot: set thread priority
It looks like we can't use <uint> as type with specifying size

Read merge thread + worker thread priority from build configurations. In
the case of low memory devices, a lower priority will reduce CPU
utilization post OTA reboot.

Test: th
Change-Id: Ie895be32e3aea66b46503c5270939bb42f58494a
2024-06-17 16:21:05 -07:00
Treehugger Robot
3a0053e86a Merge "Revert "snapuserd: Don't statically link outside of ramdisk."" into main 2024-06-17 20:45:22 +00:00
David Anderson
14fbf6d390 Revert "snapuserd: Don't statically link outside of ramdisk."
This reverts commit c9fa93f4e8.

Reason for revert: b/347670914
Bug: 347670914

Change-Id: I9d63a69ccf1f8de98ab7cc23b9fbf400863cddfb
2024-06-17 19:05:13 +00:00
Nelson Li
064ac0bf15 Convert init_vendor to Android.bp
`init_first_stage` is a dependency of `init_vendor` only when
`BOARD_USES_RECOVERY_AS_BOOT` is false.
Since `BOARD_USES_RECOVERY_AS_BOOT` is already defined in
`build/make/core/android_soong_config_vars.mk` within a
soong_namespace, we can use the `soong_config_module_type` to easily
convert this to Android.bp.

Bug: 347600829
Test: m init_vendor
Change-Id: I1ddcd5fb62983b01e51452c9b7367750e03e7f48
2024-06-17 05:03:56 +00:00
Treehugger Robot
a1188013f3 Merge "make apex init .XXrc parsing honour .35rc even though we're not yet sdk=35" into main 2024-06-14 14:37:05 +00:00
David Anderson
2119b10f6f Merge "snapuserd: Don't statically link outside of ramdisk." into main 2024-06-14 00:33:02 +00:00
David Anderson
c9fa93f4e8 snapuserd: Don't statically link outside of ramdisk.
Also, remove snapuserd from the vendor ramdisk since this isn't used
anymore.

Bug: 345158294
Test: ldd snapuserd_ramdisk and system/bin/snapuserd
      apply full OTA on aosp_cf
Change-Id: I2c2ad1458d67a8449c548e22660f523ba9c86849
2024-06-13 01:29:12 +00:00
Akilesh Kailash
283b2037ce Merge "Revert "libsnapshot: set thread priority"" into main am: 35bd4d8f30
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3128361

Change-Id: I4109dc8c87570fdd7bbdb189fa4368ac67c632af
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-12 20:18:14 +00:00
Akilesh Kailash
35bd4d8f30 Merge "Revert "libsnapshot: set thread priority"" into main 2024-06-12 20:06:10 +00:00
Daniel Zheng
f2500732b9 Merge changes Iba59fdc3,I812fccf2 into main am: 8d63f0080a
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3114109

Change-Id: Icf8a1278e1957f140f48fb88d4d50c4dca9ccfc0
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-12 18:53:26 +00:00
Daniel Zheng
53d6dc7609 Merge "libsnapshot: pass build config o_direct" into main am: 54d6c0cf45
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3101423

Change-Id: I53ca11d624cd503aff12b376672736639960a2ea
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-12 18:53:11 +00:00
Daniel Zheng
0168ec74d0 Revert "libsnapshot: set thread priority"
This reverts commit db560090e4.

Reason for revert: breakage on aosp-main

Change-Id: Ib3384dce1e08dd19bce305eee4249d7167d74e10
2024-06-12 18:32:57 +00:00
Daniel Zheng
8d63f0080a Merge changes Iba59fdc3,I812fccf2 into main
* changes:
  libsnapshot: configure threshold size
  libsnapshot: set thread priority
2024-06-12 18:22:44 +00:00
Daniel Zheng
db560090e4 libsnapshot: set thread priority
Read merge thread + worker thread priority from build configurations. In
the case of low memory devices, a lower priority will reduce CPU
utilization post OTA reboot.

Test: th
Change-Id: I812fccf2ca805d9686a837774e1770a2eebf979a
2024-06-12 11:21:38 -07:00
Daniel Zheng
28801377a5 libsnapshot: configure threshold size
Test: th
Change-Id: Iba59fdc3e1188dd343314d129806d2c4c94aa8c5
2024-06-12 11:21:38 -07:00
Daniel Zheng
54d6c0cf45 Merge "libsnapshot: pass build config o_direct" into main 2024-06-12 18:14:27 +00:00
Treehugger Robot
e3a1b98495 Merge "toolbox/modprobe: Load modules from /lib/modules based on page size" into main am: 441f39230e
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3124933

Change-Id: I6a19514aa824ef775f03576a63b39790bca74451
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-12 15:13:02 +00:00
Treehugger Robot
441f39230e Merge "toolbox/modprobe: Load modules from /lib/modules based on page size" into main 2024-06-12 14:56:06 +00:00
Juan Yescas
64776335c0 toolbox/modprobe: Load modules from /lib/modules based on page size
Load modules from /lib/modules for 4kb page size kernels when
the -d option is not present. Do not do this for 16kb page size kernels
due it will load the 4kb modules when PRODUCT_16K_DEVELOPER_OPTION
is true.

Depending on the value of PRODUCT_16K_DEVELOPER_OPTION, the
kernel modules can be located in several directories:

- true: There are 2 directories that contain the 4kb and 16kb
        modules.
        - 4kb modules are in /lib/modules
        - 16kb modules are in /lib/modules/<uname -r>_16k
- false: There is only one directory that contains only one type
        of the kernel modules, either 4kb or 16kb.
        - /lib/modules

This is a temporary fix for the 16kb developer option. This
b/346659501 will track the proper fix.

Test: Boot target husky-trunk_staging-userdebug with developer
      option.
Test: Boot target husky_pgagnostic-next-userdebug without developer
      option.
Bug: 345609905
Bug: 343971855
Change-Id: I9bab33d9f06743bd10ee804b20db8f39467fcc52
2024-06-11 18:41:49 -07:00
Bart Van Assche
59e4997280 Merge "Revert "Make foreground and background I/O priority different"" into main am: 0b2f24ceb1
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3126515

Change-Id: I1dd7a5eb5c8d3d31267f82b98eefda8ab32eac48
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-11 23:27:54 +00:00
Bart Van Assche
0b2f24ceb1 Merge "Revert "Make foreground and background I/O priority different"" into main 2024-06-11 23:14:34 +00:00
Spandan Das
afe62313db Merge "Add libz to static libs of libutils_test" into main am: 8bc0ee30bf
Original change: https://android-review.googlesource.com/c/platform/system/core/+/2919586

Change-Id: I6fc236f5d4a94b9ff08890fc39ba2dee4e63b6d5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-11 23:13:12 +00:00
Spandan Das
8bc0ee30bf Merge "Add libz to static libs of libutils_test" into main 2024-06-11 23:08:56 +00:00
Treehugger Robot
296446e368 Merge changes I68fa51f8,Ia16aa041,Iba57f5cf into main am: 4c5b2303b9
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3114672

Change-Id: Ibcf0ea9e83d2f8e7936f52dc6d9f6002a36b8bb8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-11 23:02:54 +00:00
Treehugger Robot
4c5b2303b9 Merge changes I68fa51f8,Ia16aa041,Iba57f5cf into main
* changes:
  libprocessgroup: Remove unused includes; add missing ones
  libprocessgroup: Don't delegate to default constructor
  libprocessgroup: Use default member initializers
2024-06-11 22:45:24 +00:00
Sijie Chen
4269705b0c Merge "[CrashReporting] Correct guest arch init" into main am: c438dab75e
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3126753

Change-Id: Ic64e9b98306f855ed23b42242f069abd4ce145b6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-11 20:42:55 +00:00
Sijie Chen
c438dab75e Merge "[CrashReporting] Correct guest arch init" into main 2024-06-11 20:27:36 +00:00
Daniel Zheng
9a3a1a14b4 libsnapshot: pass build config o_direct
If o_direct is enabled in build configuration, forward this argument to
snapuserd when the daemon is started.

Bug: 332255580
Test: th
Change-Id: I8e4be5503665031735dba2ebc748e209c45df942
2024-06-11 13:20:23 -07:00
Bart Van Assche
4cb11951e2 Revert "Make foreground and background I/O priority different"
It has been reported that CL "Make foreground and background I/O
priority different" causes Android devices equipped with eMMC storage
to reboot if there is sufficient I/O activity. Hence revert commit
7f3fe0aaf2.

Bug: 186902601
Bug: 342034992
Change-Id: I4fa9c782eb0e801b410cb358e20fe41acebe1094
Signed-off-by: Bart Van Assche <bvanassche@google.com>
2024-06-11 20:17:44 +00:00
T.J. Mercier
54bfde03e1 libprocessgroup: Remove unused includes; add missing ones
No functional changes.

Bug: 346584259
Test: m
Change-Id: I68fa51f86b6baaa34fb2cdfdc16a4d1ff61e1e5f
2024-06-11 18:24:34 +00:00
T.J. Mercier
10826481ba libprocessgroup: Don't delegate to default constructor
Manually calling a defaulted default constructor from a another
constructor is superfluous, and can increase code size if the default
constructor is not otherwise used. There's nothing to delegate, so
remove the call.

Bug: 346584259
Test: m
Change-Id: Ia16aa041fdee7434587cf90645d7f95cba4e0d10
2024-06-11 18:24:23 +00:00
T.J. Mercier
df67107ac4 libprocessgroup: Use default member initializers
... instead of direct initialization in the default constructor
implementation. This allows us to just explicitly default the
constructor and provide no implementation.

Initialize class variables in the header and remove no-op constructor
to simplify code.

Bug: 346584259
Test: m
Change-Id: Iba57f5cfbf8e4d5d18ce178d39f8bcd2d76c8aaa
2024-06-11 18:23:58 +00:00
Sijie Chen
06603fe143 [CrashReporting] Correct guest arch init
Init guest arch to NONE, otherwise Arm32 will be used.

Bug: 288392666
Test: NA
Change-Id: Ib92b0351401b700a18d03e21a68569c2811d163c
2024-06-11 17:51:48 +00:00
Kiyoung Kim
9cb1921b42 Merge "Make public.libraries.android.txt available to filesystem" into main am: fb30388ac1
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3107757

Change-Id: Ie9657c616d5e5008035aa50dff5b432a4b065d98
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-10 04:18:38 +00:00
Kiyoung Kim
fb30388ac1 Merge "Make public.libraries.android.txt available to filesystem" into main 2024-06-10 04:02:16 +00:00
Treehugger Robot
4942b5db85 Merge "Add reserved to CrashDetail proto" into main am: c623193110
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3108167

Change-Id: Ia5acccce99f3a4a64de7cfaea89d5987f3c67860
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-07 21:06:57 +00:00
Treehugger Robot
c623193110 Merge "Add reserved to CrashDetail proto" into main 2024-06-07 20:53:06 +00:00
Greg Kaiser
e302d99348 Merge "Update zygote32 rc file to match others" into main am: 94ba56b68d
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3118538

Change-Id: Ic5188e35ea216833c83cd959ef359fd9834120dd
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-06 21:16:03 +00:00
Greg Kaiser
94ba56b68d Merge "Update zygote32 rc file to match others" into main 2024-06-06 20:57:51 +00:00
Greg Kaiser
f2064c3a0d Update zygote32 rc file to match others
In I3aad4b4b1d2f54db9e7ba86db8a655d8552bad0a we set MaxPerformance
for zygote64_32, and in I7fcceeb22b722c2164b9acf0b517a32ce34731fd
we synced up zygote64 to match this.

However, this change never made it into the zygote32 rc file,
which we fix here.

Bug: 324014808
Test: Basic testing on 32-bit device
Change-Id: I6f0c4490330d05551952fd5d844e02a6b638ca68
2024-06-06 19:11:27 +00:00
Will Deacon
e8d6ed0547 Merge changes from topic "modprobe-pgsize-fix" into main am: 0cb931b1ce
Original change: https://android-review.googlesource.com/c/platform/system/core/+/3110063

Change-Id: Ib63b913ebfc40413cb7fbe9b54e3b7cef2c0df7d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-06 15:24:54 +00:00
Will Deacon
0cb931b1ce Merge changes from topic "modprobe-pgsize-fix" into main
* changes:
  toolbox/modprobe: Filter module directories based on kernel page size
  Revert "Load modules from _16K dir when running on 16K kernel"
2024-06-06 15:09:26 +00:00
Will Deacon
c991c3dbed toolbox/modprobe: Filter module directories based on kernel page size
When modules for multiple kernels with the same major/minor versions
are installed on a device, modprobe will search the module directories
based on whatever order scandir() returned them. In this case, it is
possible that we will try to load modules with the wrong page size for
the running kernel, which can lead to obscure symbol CRC mismatches and
ultimately a system crash.

Adjust the scandir() filtering function so that the kernel page size is
taken into account in addition to the major/minor versions returned by
utsname(). The general rule is that module directories ending in "_Nk"
contain modules for a page-size of N KiB, whilst the absence of such
a suffix implies the default of 4 KiB.

Bug: 343971855
Test: Verified that _16k module directory is excluded by modprobe when running in userspace fastboot with 4k pages.
Change-Id: I78a0a249028bbb0bcdd78eb14de36e631e233be0
2024-06-06 11:22:07 +00:00