Commit graph

86633 commits

Author SHA1 Message Date
Daniel Zheng
4e729db09c Merge "libsnapshot: add CowSizeInfo struct" into main 2024-01-04 19:03:58 +00:00
Eric Biggers
9e30bf5e14 Merge "init: remove session keyring workaround for old kernels" into main 2024-01-04 18:21:23 +00:00
Spandan Das
e010614a4a Merge "Make apex availability of libpropertyinfoparser and libpropertyinfoparser explicit" into main 2024-01-04 17:46:17 +00:00
Treehugger Robot
8880209aae Merge "Make apex availability of libdebuggerd explicit" into main 2024-01-04 02:49:43 +00:00
Spandan Das
2e5cfbc1a4 Make apex availability of libpropertyinfoparser and libpropertyinfoparser explicit
The availability to runtime apex was done implicitly using a baseline map in
build/soong/apex/apex.go. Make this explicit in Android.bp

Bug: 281077552
Test: m nothing
Change-Id: Iba1f30ef57c0707189ec79813ef501029135eeba
2024-01-04 01:34:40 +00:00
Christopher Ferris
6b24144781 Merge "Avoid sleep in test." into main 2024-01-03 21:05:14 +00:00
Daniel Zheng
d0c3a04cb0 libsnapshot: add CowSizeInfo struct
Adding a cow size info struct as writer will now need to know the op buffer
size at the time of initialization. The sequence of events is as follows
(same as estimate_cow_size but putting down here for clarity)

1. ota_from_target_files does dry run to determine cow size + ops buffer
   size
2. data is passed through delta archive manifest
3. snapshot.cpp parses these fields and confgiures cowoptions struct to
   pass to writer initialization
4. cow is initialized with correct sizing. Data is incrementally added
   at the ends of the cow ops buffer (which is why we need to know the
   sizing ahead of time)

Test: ota
Change-Id: I950e5ef82c9bd7e9bd9603b0599c930767ee3f0d
2024-01-03 11:08:41 -08:00
Christopher Ferris
20f50ec9ab Avoid sleep in test.
For the tombstoned.proto test, remove arbitrary sleep and add loop
checking for the file being present.

Bug: 317286869

Test: Ran the tests on device and all pass.
Test: Modify the test and force the timeout to verify the timeout logic.
Change-Id: I9b246c8fee83909459d5c42debdb546794070845
2024-01-03 04:32:35 +00:00
David Anderson
75d3663d6d Merge "vts_fs_test: Drop restrictions on ext4 userdata." into main 2024-01-03 00:37:29 +00:00
Steven Moreland
cc7d7f13dc Merge "raise debuggerd_test timeout" into main 2024-01-02 23:24:28 +00:00
Chun-Wei Wang
7e32f6f908 Merge "Add help text for fastboot gsi status" into main 2024-01-02 22:59:39 +00:00
Spandan Das
e6bc0264a9 Make apex availability of libdebuggerd explicit
The availability to runtime apex was done implicitly using a baseline map in
build/soong/apex/apex.go. Make this explicit in Android.bp

Bug: 281077552
Test: m nothing
Change-Id: I365270bc90380211c40294dff145ebc01eb8c14f
2024-01-02 22:40:46 +00:00
David Anderson
4793330ad1 vts_fs_test: Drop restrictions on ext4 userdata.
Bug: 313335353
Test: vts_fs_test
Change-Id: I40be9589f18288ebe2a8569dfaceb9cd2150db85
2024-01-02 13:52:12 -08:00
Steven Moreland
2be4bedea1 raise debuggerd_test timeout
Possible solution for b/317286869.

Test: N/A
Change-Id: I93743d596d5b8d7c867253d1aafc709453995fed
2024-01-02 21:37:38 +00:00
Treehugger Robot
7ff0bb3091 Merge "Hang up narayan's janitor overalls." into main 2024-01-02 20:52:08 +00:00
Chun-Wei Wang
9c48951d91 Add help text for fastboot gsi status
Bug: 298533290
Test: fastboot -h
Change-Id: Icf91a980059aaa8e74e41af4036778fbbfbf1bd2
2024-01-02 15:29:21 +08:00
Seungjae Yoo
94d60a73f4 Merge "Revert^2 "Small fix: Use const value on IsHashreeDisabled"" into main 2023-12-23 12:21:35 +00:00
Greg Kaiser
4c4742f678 Revert^2 "Small fix: Use const value on IsHashreeDisabled"
This reverts commit ec3ef81fd9.

Reason for revert: b/317470107 is an infrastructure error

Change-Id: If5a022cbfd016d9c55261c67a1a73d81cb336343
2023-12-22 20:03:05 +00:00
Oleg Petšjonkin
e3bfd32ae7 Merge "Revert "Small fix: Use const value on IsHashreeDisabled"" into main 2023-12-22 14:36:57 +00:00
Oleg Petšjonkin
ec3ef81fd9 Revert "Small fix: Use const value on IsHashreeDisabled"
This reverts commit f5d8773169.

Reason for revert: Identified as culprit for broken tests: b/317470107

Change-Id: If599c688bb4bbe800270881451fa5ac1f6898aff
2023-12-22 10:17:25 +00:00
Seungjae Yoo
1ff517ce9a Merge "Small fix: Use const value on IsHashreeDisabled" into main 2023-12-22 05:53:43 +00:00
Seungjae Yoo
f5d8773169 Small fix: Use const value on IsHashreeDisabled
Bug: N/A
Test: Presubmit
Change-Id: I2167ac6d022c2c8c96febf2fc82eb3bba6fb6541
2023-12-22 10:11:55 +09:00
Steven Moreland
30e45c6e92 Merge changes from topic "deprecate-llndk-vendor" into main
* changes:
  try llndk-deprecate
  Deprecate android_is_in_vendor_process
2023-12-21 22:26:12 +00:00
Steven Moreland
54db200b21 try llndk-deprecate
No implementation required - seems to be ignored rather
than a failure

FIXME: should use vendor version, and be squashed into parent CL?

Bug: 300366609
Test: build
Change-Id: I19fd3871085f435c6ec55ac5e15e4769d7f3e450
2023-12-21 02:09:14 +00:00
Kiyoung Kim
ebbf9753e9 Deprecate android_is_in_vendor_process
android_is_in_vnedor_process previously checked if current process is in
system(-ish) section by trying to open vndk namespace. However, this
would not work once VNDK is deprecated. As there is no clear way to
replace this, and there is few usage on this API, it would be better
deprecated, and be implemented from each module if required.

Bug: 300366609
Test: AOSP CF build and boot succeeded
Change-Id: I70c70efb36199e12d4877ea4ecb39dbf94653551
2023-12-21 02:06:56 +00:00
Seungjae Yoo
91389231b0 Merge "Support dm-verity with verification based on root digest" into main 2023-12-21 01:01:35 +00:00
Treehugger Robot
26cb9dbfef Merge "Support batching ops across Add*Blocks() call" into main 2023-12-20 22:49:38 +00:00
Treehugger Robot
c4b9840456 Merge "Fix EmitSequenceData bug" into main 2023-12-20 22:49:38 +00:00
Seungjae Yoo
66dc7b7b99 Support dm-verity with verification based on root digest
Currently the only ways to enable dm-verity were relying on its built-in
vbmeta image or containing its public key on standalone vbmeta image.
Merging this change will support enabling dm-verity based on hashtree
descriptor root digest for standalone vbmeta image.

Bug: 285855436
Test: Presubmit
Test: adb shell /apex/com.android.virt/bin/vm run-microdroid --vendor /vendor/etc/avf/microdroid/microdroid_vendor.img
Change-Id: I51eb64cae2ca8b4e97f1c6419b35d45e6f51cacb
2023-12-20 10:41:44 +09:00
Kelvin Zhang
a008c9c1a4 Support batching ops across Add*Blocks() call
Performance of V3 COW writer is now on-par with V2 in both incremental
OTA and full OTA.

Test: th
Bug: 313962438
Change-Id: If56e0fe42367f947c513fc4c93119c3825763cb9
2023-12-19 16:32:02 -08:00
Treehugger Robot
e0b444802b Merge "Add op count check before attempting to write operations" into main 2023-12-19 20:18:41 +00:00
Akilesh Kailash
3a7774d650 Merge "libsnapshot: Detach the daemon explicitly before stopping the service" into main 2023-12-19 17:50:06 +00:00
Chun-Wei Wang
db6cb42d5f Merge "Disable DSU in recovery mode" into main 2023-12-19 03:57:26 +00:00
Akilesh Kailash
1752c5f249 libsnapshot: Detach the daemon explicitly before stopping the service
If the daemon is alive, detach it before explicitly terminating service.

Bug: 316876960
Test: treehugger presubmit tests
Change-Id: I94d9d1a0dab09a6b016f422c7497098abc86add8
Signed-off-by: Akilesh Kailash <akailash@google.com>
2023-12-18 17:22:06 -08:00
Peter Collingbourne
97807b79e6 Merge "Mount /tmp as tmpfs." into main 2023-12-18 21:39:38 +00:00
Treehugger Robot
f426858bbb Merge "trusty: storageproxyd: fix logging of freed path pointer" into main 2023-12-18 12:16:43 +00:00
Mike McTernan
5647c0b738 trusty: storageproxyd: fix logging of freed path pointer
Bug: 316859216
Test: build.py
Change-Id: I09557d43cda13e21175ba6fceeb806ec1f9115e1
2023-12-18 11:03:36 +00:00
Chun-Wei Wang
222ffc5919 Disable DSU in recovery mode
DSU (modifying mounting paths) will cause OTA update
to fail in recovery mode

Bug: 315887685
Test: 1. enter DSU mode
      2. adb reboot recovery
      3. select "Apply update from ADB"
      4. adb sideload some-ota-update.zip
Change-Id: I6aec86893b7f8aa9e34f158269ebe2fd9dd98b33
2023-12-18 07:03:07 +08:00
Kelvin Zhang
c85038b866 Fix EmitSequenceData bug
If sequence data is written and the number of ops reaches the maximum,
op data will corrupt the block data because location of block data is
stale after writing sequence data. Fix by resetting location of block
data after EmitSequenceData()

Test: th
Bug: 313962438
Change-Id: Ib53b81772ba341cdf5c240baaee7c10725a365c3
2023-12-15 20:12:20 -08:00
Peter Collingbourne
cee7fcd001 Mount /tmp as tmpfs.
/tmp is a volatile temporary storage location for the shell user.
As with /data/local/tmp, it is owned by shell:shell and is chmod 771.

Bug: 311263616
Change-Id: Ice0229d937989b097971d9db434d5589ac2da99a
2023-12-15 16:46:46 -08:00
T.J. Mercier
7341ffba7c Merge changes from topic "cgroup.events2" into main
* changes:
  libprocessgroup: Use cgroup.kill
  Reapply "libprocessgroup: Poll on cgroup.events"
2023-12-15 06:10:46 +00:00
Treehugger Robot
6f03bd72ad Merge "remount: Detect when flashall has happened in the bootloader." into main 2023-12-15 01:43:49 +00:00
Kelvin Zhang
73ac5f184e Add op count check before attempting to write operations
Test: th
Bug: 313962438
Change-Id: I0e288a42984d737d327236693a6b69c03a7ecc6e
2023-12-14 16:42:45 -08:00
David Anderson
adb91b0e59 remount: Detect when flashall has happened in the bootloader.
This adds a new metadata header flag to the super partition. This flag
is set when "adb remount" is used, and is implicitly cleared when
flashing.

If there is a scratch partition present on /data, we require that the
flag be set in order to proceed using overlays. If not set, scratch is
not mapped in first-stage init, and scratch images are removed later
during startup.

Bug: 297923468
Test: adb remount -R, touch file in out/, sync, flashall
Change-Id: I9cc411a1632101b5fc043193b38db8ffb9c20e7f
2023-12-14 16:00:27 -08:00
T.J. Mercier
a103630b5c libprocessgroup: Use cgroup.kill
By using cgroup.kill we don't need to read cgroup.procs at all for
SIGKILLs, which is more efficient and should help reduce CPU contention
and cgroup lock contention. Fallback to cgroup.procs if we encounter an
error trying to use cgroup.kill, but if cgroup.kill fails it's likely
that cgroup.procs will too.

Bug: 239829790
Test: atest StagedRollbackTest:com.android.tests.rollback.host.StagedRollbackTest#testNativeWatchdogTriggersRebootlessApexRollback
Change-Id: I9da67efd00af49b7b4b502fb742c1095d5c7b9e9
2023-12-14 21:52:13 +00:00
T.J. Mercier
4928b6ef57 Reapply "libprocessgroup: Poll on cgroup.events"
This reverts commit a72332f953.

This change was originally reverted due to a bug in the child commit
which caused process group kills not to occur when using cgroup.kill.
Now that has been fixed, bring back this change with the fixed child.

Bug: 301871933
Change-Id: Ia6c74d9b67a8c88aec4812ac4655646934e0d189
2023-12-14 21:49:14 +00:00
Treehugger Robot
e2c6171f65 Merge changes If3a01ab8,Ib24d7c63 into main
* changes:
  Support batch writes for V3 cow format
  Optimize PrepareSnapshotPartitionsForUpdate runtime
2023-12-14 19:19:31 +00:00
Elliott Hughes
189d5b6459 Hang up narayan's janitor overalls.
Test: N/A
Change-Id: I1f0288e77fa9724a6621a08f12f996c19e2e3e9f
2023-12-14 17:47:24 +00:00
Treehugger Robot
b0c6a5dfd7 Merge "Revert "snapuserd: opt out of Global ThinLTO to workaround segfault"" into main 2023-12-14 00:24:57 +00:00
Florian Mayer
26c0b9017b Merge "Use correct stack depot size in __scudo_get_error" into main 2023-12-13 23:28:12 +00:00