Commit Graph

7605 Commits

Author SHA1 Message Date
Akilesh Kailash
1b14617cdb Merge "Enable userspace snapshots for OTA" am: 3f5f0b306d am: 7260b087ea
Original change: https://android-review.googlesource.com/c/platform/build/+/1912666

Change-Id: I9fe57a883f46b38c1fb891777e8d2a06c33466dc
2021-12-10 20:15:43 +00:00
Akilesh Kailash
3f5f0b306d Merge "Enable userspace snapshots for OTA" 2021-12-10 19:44:48 +00:00
Yi-Yo Chiang
392a0db18d Roll-forward the VNDK snapshot list of GSI
The latest stable SDK version is 31, so add 31 to the list of VNDK
snapshots.

Bug: 196806844
Test: Presubmit
Change-Id: Ia9aab527d9c1fe1d1eb6c72ebc184a3fccad6a22
Merged-In: Ia9aab527d9c1fe1d1eb6c72ebc184a3fccad6a22
(cherry picked from commit 33fc244de5)
2021-12-08 18:12:47 +08:00
Akilesh Kailash
bfdd246130 Enable userspace snapshots for OTA
Bug: 202784018

Test: Full/Incremental OTA tested on CF, Pixel

OTA Merge time performance on Pixel (bramble)

==========================================================

Incremental - OTA - 389M

OTA Operations:

system - Copy-ops: 34060 Zero-ops: 678 Replace-ops: 93846 Xor-ops: 75490

product - Copy-ops: 241742 Zero-ops: 1970 Replace-ops: 292890 Xor-ops: 80763

vendor - Copy-ops: 110285 Zero-ops: 660 Replace-ops: 62163 Xor-ops: 23474

system_ext_b - Copy-ops: 44509 Zero-ops: 426 Replace-ops: 39475 Xor-ops: 44628

====================================================================

1: VAB - Compression with dm-snapshot (on Android S)

Merge-time = 344 seconds (~5.7 minutes)

2: VAB - Compression with user-snapshot (on Android T)

Merge-time = 53 seconds

3: VAB - Without compression (using kernel COW format)

Merge-time = 33 seconds

Compared to Android S, merge time improves by 84% with user-snapshots on Android T.

The 20 seconds difference between (2) and (3) is because of two phase merge during compression which essentially serializes merge start time between partitions.

On (3), there is no two phase merge as all the partition starts merge at the same time.

When there is no two phase merge involved, (2) and (3) are nearly identical.

============================================================

Full OTA - 1.8G

1: VAB - Compression with dm-snapshot (on Android S)

Merge-time = 40 seconds

2: VAB - Compression with user-snapshot (on Android T)

Merge-time = 32 seconds

3: VAB - Without compression (using kernel COW format)

Merge-time = 32 seconds

===============================================================

Presubmit OTA testing enabled on Cuttlefish for ~1 Week with
the feature enabled.

https://v2-dot-atp.googleplex.com/tests/asit/ota/incremental_mixed_resume

Signed-off-by: Akilesh Kailash <akailash@google.com>
Change-Id: I88d15b94a48799996f38755063319269a3d70723
2021-12-07 20:38:29 +00:00
Daeho Jeong
5748c5679e Merge "Add erofs tools in target" am: 9a26cdbccd am: 3bda74b77e
Original change: https://android-review.googlesource.com/c/platform/build/+/1908037

Change-Id: I8fb56c8b23d395eabaa2652ebb8f4d8c2f1dfb25
2021-12-04 05:37:49 +00:00
Daeho Jeong
3bda74b77e Merge "Add erofs tools in target" am: 9a26cdbccd
Original change: https://android-review.googlesource.com/c/platform/build/+/1908037

Change-Id: Idfce5a9c0945b59833ba12117e07d2e685768934
2021-12-04 05:21:07 +00:00
Daeho Jeong
99f5c768c7 Add erofs tools in target
Bug: 201685920
Test: mm fsck.erofs
Signed-off-by: Daeho Jeong <daehojeong@google.com>
Change-Id: I43ebe6c40c705526e205a08fe8fcd34d265d0245
2021-12-03 19:37:46 +00:00
Jiyong Park
160149e42d Merge "Reland: Add NEED_AIDL_NDK_PLATFORM_BACKEND" 2021-12-03 10:56:52 +00:00
Jiyong Park
c99f65fa6c Reland: Add NEED_AIDL_NDK_PLATFORM_BACKEND
The config variable is used to force the generation of the AIDL
ndk_platform backend which will eventually be removed in favor of the
ndk backend. The switch is needed as an escape hatch for some devices
whose BSP (outsourced and thus hardly modifiable) depends on the
ndk_backend libraries.

Bug: 161456198
Test: m

Merged-In: Iba8633263ae649af783e94b01f5c1b5c6e042948
Change-Id: I8b73a6a1e5169c35daf333316857b3c3b110a0f7
2021-12-02 13:16:13 +09:00
Jiakai Zhang
bfa878e9de Merge "Add a variable to specify standalone system server jars." am: 1ecb2f952c am: 4207daaf8e
Original change: https://android-review.googlesource.com/c/platform/build/+/1874113

Change-Id: I78d1c4e2f39f90263d52aa06d0b1a33466f8918e
2021-12-01 12:43:17 +00:00
Kedar Chitnis
0ef40dbf78 Merge "Add dumpstate device AIDL HAL packages to target/product/gsi/current.txt" am: 161c7aa777 am: 517ac35b68
Original change: https://android-review.googlesource.com/c/platform/build/+/1894958

Change-Id: I0127304961cd75704c6195e88676ebde967d5eb1
2021-12-01 12:43:03 +00:00
Jiakai Zhang
4207daaf8e Merge "Add a variable to specify standalone system server jars." am: 1ecb2f952c
Original change: https://android-review.googlesource.com/c/platform/build/+/1874113

Change-Id: I1ba1cedc1da159c654675f7895e31c4ac8d6e92a
2021-12-01 12:37:48 +00:00
Kedar Chitnis
517ac35b68 Merge "Add dumpstate device AIDL HAL packages to target/product/gsi/current.txt" am: 161c7aa777
Original change: https://android-review.googlesource.com/c/platform/build/+/1894958

Change-Id: I5f891e113b6a88136bf710f550f1e6edda01e981
2021-12-01 12:30:31 +00:00
Jiakai Zhang
1ecb2f952c Merge "Add a variable to specify standalone system server jars." 2021-12-01 12:29:37 +00:00
Kedar Chitnis
161c7aa777 Merge "Add dumpstate device AIDL HAL packages to target/product/gsi/current.txt" 2021-12-01 12:16:33 +00:00
Jiakai Zhang
44ffb21e53 Add a variable to specify standalone system server jars.
This is the list of jars that system_server loads dynamically using
separate classloaders. We will rely on this variable to decide which
jars to preopt in the build system and on the device for system_server.

The list is supposed to be in sync with the code in SystemServer.java.
There will be a follow-up CL to add a comment in SystemServer.java to
remind developers to keep them in sync.

Bug: 203198541
Test: m nothing
Change-Id: I305a73218ef2d2c61ac3795d21026b2afe7007fd
2021-11-30 11:07:37 +00:00
Treehugger Robot
97992fc8b5 Merge "Use dex2oat64 on 64-bit-only builds" am: d373dd2938 am: 42294079a5
Original change: https://android-review.googlesource.com/c/platform/build/+/1904177

Change-Id: I0f6ff3c75920e589a94a096ca17fb5a663906985
2021-11-30 10:28:58 +00:00
Treehugger Robot
42294079a5 Merge "Use dex2oat64 on 64-bit-only builds" am: d373dd2938
Original change: https://android-review.googlesource.com/c/platform/build/+/1904177

Change-Id: I2e9bad60dc12ca3cbdfb350b03bfd7274322b200
2021-11-30 10:05:58 +00:00
Roland Levillain
a6272ae102 Merge "Remove gdbserver from PRODUCT_PACKAGES_DEBUG in base_system.mk." am: 9bc6186a78 am: b70a78df2d
Original change: https://android-review.googlesource.com/c/platform/build/+/1905270

Change-Id: I059115b77c17c2e7a327bc8437356fc43168badc
2021-11-30 09:59:18 +00:00
Treehugger Robot
d373dd2938 Merge "Use dex2oat64 on 64-bit-only builds" 2021-11-30 09:48:09 +00:00
Roland Levillain
b70a78df2d Merge "Remove gdbserver from PRODUCT_PACKAGES_DEBUG in base_system.mk." am: 9bc6186a78
Original change: https://android-review.googlesource.com/c/platform/build/+/1905270

Change-Id: I17783b1c384d8fcae9144b359f82c9bcc51ce099
2021-11-30 09:41:28 +00:00
Roland Levillain
3fed5bbbab Remove gdbserver from PRODUCT_PACKAGES_DEBUG in base_system.mk.
The `gdbserver` binaries have been removed from Android sources
(https://android-review.googlesource.com/c/platform/prebuilts/misc/+/1748908/).

Test: m
Change-Id: I8e3001508360906f3fe86830b81fb94b01a5ac74
2021-11-29 14:26:10 +00:00
Ulyana Trafimovich
ca6e563ad0 Merge "Sort PRODUCT_APEX_BOOT_JARS automatically." am: af78df0553 am: b128e28695
Original change: https://android-review.googlesource.com/c/platform/build/+/1903170

Change-Id: Id22b9a6a233c2a87b7e9e219f4205bb0871a7a1e
2021-11-29 12:17:18 +00:00
Ulyana Trafimovich
b128e28695 Merge "Sort PRODUCT_APEX_BOOT_JARS automatically." am: af78df0553
Original change: https://android-review.googlesource.com/c/platform/build/+/1903170

Change-Id: I82cebfc087ff033f7852c0550fb4568640493021
2021-11-29 12:04:30 +00:00
Ulya Trafimovich
c9ec59c72a Sort PRODUCT_APEX_BOOT_JARS automatically.
This is a follow-up CL for https://r.android.com/1900565.

This is needed because product makefiles may need to add their own
APEX boot jars, and they cannot insert them in the correct alphabetical
order on the list. So it needs to be sorted automatically. Do this
after processing all product makefiles and populating the variable,
but before passing it to Soong.

Bug: 207474880
Test: lunch aosp_cf_x86_64_phone-userdebug && launch_cvd
      # cuttlefish device boots successfully
Change-Id: I86b58ef8aeac595e401d872f59a2936a67bedeec
2021-11-26 16:02:54 +00:00
Kevin Brodsky
1917e4e047 Use dex2oat64 on 64-bit-only builds
dexopt defaults to dex2oat32 unless instructed otherwise. Since
dex2oat32 doesn't exist on a 64-bit-only build, make sure dex2oat64
is selected instead.

Test: boot aosp_cf_x86_64_only_phone and check that installd doesn't
  try to use dex2oat32
Change-Id: Ia67e746894684a52a4e5b765bfde0f6dd0efbf6e
2021-11-26 15:59:33 +00:00
Kedar Chitnis
344c0bf0cd Add dumpstate device AIDL HAL packages to target/product/gsi/current.txt
Bug: 205760700
Test: VtsHalDumpstateTargetTest, dumpstate, dumpstate_test, dumpsys
Change-Id: I087b59e9adceaa93bdb076007bd2fb833162e235
2021-11-25 07:48:19 +00:00
Treehugger Robot
0d780c6218 Merge "Sort PRODUCT_APEX_SYSTEM_SERVER_JARS automatically." am: 03aa6cd538 am: 3f8601901a
Original change: https://android-review.googlesource.com/c/platform/build/+/1900565

Change-Id: I9ad6fe383299e876ac1ec2a6fe29cc17ed45662c
2021-11-24 20:02:59 +00:00
Treehugger Robot
3f8601901a Merge "Sort PRODUCT_APEX_SYSTEM_SERVER_JARS automatically." am: 03aa6cd538
Original change: https://android-review.googlesource.com/c/platform/build/+/1900565

Change-Id: I0ec4ccb90656eb52aca495a4da7ba64c033418df
2021-11-24 19:34:15 +00:00
Ulya Trafimovich
00496c1683 Sort PRODUCT_APEX_SYSTEM_SERVER_JARS automatically.
This is needed because product makefiles may need to add their own
system server jars to this variable, and they cannot insert them in
the correct alphabetical order on the list. So it needs to be sorted
automatically. Do this after processing all product makefiles and
populating the variable, but before passing it to Soong.

Bug: 207474880
Test: atest art_standalone_dexpreopt_tests:art_standalone_dexpreopt_tests.DexpreoptTest#ForSystemServer
Change-Id: I80dbf555c395c92539c506d3d8b1f2f101a58bce
2021-11-24 15:41:49 +00:00
Nahian Ashraf
ab77473ace DO NOT MERGE: Revert "Add NEED_AIDL_NDK_PLATFORM_BACKEND"
Revert submission 1859096-remove_ndk_platform

Reason for revert: Build Breakage
Reverted Changes:
I62c995642:Add NEED_AIDL_NDK_PLATFORM_BACKEND
I1cbdce916:Don't generate the ndk_platform backend unless exp...

Change-Id: I4ddfb73ed7b9bcf1c6dee113e3ba9fd66d79d296
2021-11-24 15:16:59 +09:00
Treehugger Robot
9680501cc8 Merge "DO NOT MERGE: Revert "Add NEED_AIDL_NDK_PLATFORM_BACKEND"" 2021-11-24 05:35:08 +00:00
Nahian Ashraf
f41bff99b3 DO NOT MERGE: Revert "Add NEED_AIDL_NDK_PLATFORM_BACKEND"
Revert submission 1859096-remove_ndk_platform

Reason for revert: Build Breakage
Reverted Changes:
I62c995642:Add NEED_AIDL_NDK_PLATFORM_BACKEND
I1cbdce916:Don't generate the ndk_platform backend unless exp...

Change-Id: I4ddfb73ed7b9bcf1c6dee113e3ba9fd66d79d296
2021-11-24 03:34:07 +00:00
Jiyong Park
c28911dd2a Merge "Add NEED_AIDL_NDK_PLATFORM_BACKEND" am: 4d7ddff334
Original change: https://android-review.googlesource.com/c/platform/build/+/1867788

Change-Id: I4c3fdafa50465bd050dbf3ef9e873e0e9fb0ff7c
2021-11-24 02:00:55 +00:00
Jiyong Park
4d7ddff334 Merge "Add NEED_AIDL_NDK_PLATFORM_BACKEND" 2021-11-24 01:43:19 +00:00
Martin Stjernholm
382d8ae9c4 Merge "Configure boot image profiles for platform and unbundled ART module builds (reland)." am: f823ec6e99
Original change: https://android-review.googlesource.com/c/platform/build/+/1896660

Change-Id: I4f7a2e3c953e65d756f2eec9d7afdc033187682c
2021-11-22 14:24:16 +00:00
Martin Stjernholm
91964c82e3 Configure boot image profiles for platform and unbundled ART module
builds (reland).

- Use art/build/boot/boot-image-profile.txt for the primary boot image
  in the ART module, both when it's built from source in platform and
  as an unbundled module.

- Use frameworks/base/boot/boot-image-profile.txt for the framework
  extension image in platform, but not in unbundled builds.

This should obsolete the combined profile
frameworks/base/config/boot-image-profile.txt.

This relands https://r.android.com/1881863 with a fix to allow multiple
values on PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION.

Test: build/soong/soong_ui.bash --dumpvar-mode \
        PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION
  and check that it prints both art/build/boot/boot-image-profile.txt
  and frameworks/base/boot/boot-image-profile.txt in a platform build
  on master.
Test: build/soong/soong_ui.bash --dumpvar-mode \
        PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION
  and check that it prints only art/build/boot/boot-image-profile.txt
  in an unbundled build on master-art.
Test: banchan com.android.art && m
  on master-art and check that
  out/soong/.intermediates/art/build/apex/com.android.art/android_common_com.android.art_image/image.apex/javalib/x86_64/boot.oat
  shrinks from 14 MB to 4.7.
Test: m droid
  on master together with https://r.android.com/1895131 and check that
  out/soong/.intermediates/art/build/apex/com.android.art/android_common_com.android.art_image/image.apex/javalib/x86_64/boot.oat
  and out/target/product/vsoc_x86_64/system/framework/x86_64/boot-framework.oat
  are identical.
Test: lunch armv8-eng && art/tools/buildbot-build.sh
  on master-art
Bug: 174746397
Change-Id: I9114271bc69cf0888150b2c778a086bc50b73045
2021-11-19 16:21:37 +00:00
Xin Li
0d8b812568 Merge "Merge sc-qpr1-dev-plus-aosp-without-vendor@7810918" into stage-aosp-master 2021-11-18 21:28:37 +00:00
Yifan Hong
351cd2e489 Merge changes from topic "servicemanager-recovery"
* changes:
  Add servicemanager.recovery to base_vendor.mk.
  Add recovery service_contexts.
2021-11-18 04:39:14 +00:00
Xin Li
b461e822a1 Merge sc-qpr1-dev-plus-aosp-without-vendor@7810918
Bug: 205056467
Merged-In: I42fd618b5a018abd57e6eab4fe4ed6ba9f70a235
Change-Id: I5e0d686c2a1cc15e6a3115243f3a83cb070b111c
2021-11-15 23:30:54 +00:00
Martin Stjernholm
629ca86722 Merge "Revert "Configure boot image profiles for platform and unbundled ART module"" 2021-11-15 20:01:45 +00:00
Martin Stjernholm
a7e1611118 Revert "Configure boot image profiles for platform and unbundled ART module"
This reverts commit 1f925ed13e.

Reason for revert: SH regressions in boot and app startup: b/206152027

Bug: 174746397
Bug: 206152027
Change-Id: I60f642b8e4dd8ea04248b835e5b76ffcf01ac300
2021-11-15 17:16:03 +00:00
Yifan Hong
ae48bc0499 Add servicemanager.recovery to base_vendor.mk.
This is so that AIDL HALs can run in recovery.

Test: manual in recovery
Bug: 170338625
Change-Id: Ie9bb7bd554d9d848e6bacd091e2273b7f390c2a9
2021-11-13 00:28:05 -08:00
Treehugger Robot
35e7ab363c Merge "Configure boot image profiles for platform and unbundled ART module builds." 2021-11-12 19:56:53 +00:00
Treehugger Robot
edf3230c76 Merge "Revert "Add fsverity test key"" 2021-11-11 18:29:58 +00:00
Martin Stjernholm
1f925ed13e Configure boot image profiles for platform and unbundled ART module
builds.

- Use art/build/boot/boot-image-profile.txt for the primary boot image
  in the ART module, both when it's built from source in platform and
  as an unbundled module.

- Use frameworks/base/boot/boot-image-profile.txt for the framework
  extension image in platform, but not in unbundled builds.

This should obsolete the combined profile
frameworks/base/config/boot-image-profile.txt.

Test: build/soong/soong_ui.bash --dumpvar-mode \
        PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION
  and check that it prints both art/build/boot/boot-image-profile.txt
  and frameworks/base/boot/boot-image-profile.txt in a platform build
  on master.
Test: build/soong/soong_ui.bash --dumpvar-mode \
        PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION
  and check that it prints only art/build/boot/boot-image-profile.txt
  in an unbundled build on master-art.
Test: banchan com.android.art && m
  on master-art and check that
  out/soong/.intermediates/art/build/apex/com.android.art/android_common_com.android.art_image/image.apex/javalib/x86_64/boot.oat
  shrinks from 14 MB to 4.7.
Test: m droid
  on master and check that
  out/soong/.intermediates/art/build/apex/com.android.art/android_common_com.android.art_image/image.apex/javalib/x86_64/boot.oat
  and out/target/product/vsoc_x86_64/system/framework/x86_64/boot-framework.oat
  don't change size significantly.
Test: lunch armv8-eng && art/tools/buildbot-build.sh
  on master-art
Bug: 174746397
Change-Id: I77d7f73b1af414493ca00d2abf3a1e8b32c51d86
2021-11-11 16:01:51 +00:00
Inseob Kim
b73f8dcc05 Revert "Add fsverity test key"
This reverts commit 10255c8946.

Reason for revert: redundant for now

Change-Id: I756be1cfe3f4c8a2b8226955b8d9d963e40c71ae
2021-11-11 08:43:42 +00:00
Cole Faust
70a886c7ce Add soong_config_get
Having a function to get soong config variables
makes it easier to convert to starlark.

Bug: 201700692
Test: m RBC_PRODUCT_CONFIG=1 RBC_BOARD_CONFIG=1 nothing and check output files
Change-Id: I8627555df10d3f66f6154c00be9f0565076f1f94
2021-11-09 17:09:04 -08:00
Elliott Hughes
267c6a8595 Merge "Don't package mdnsd for the host." 2021-10-27 21:49:13 +00:00
Elliott Hughes
68d2f8ce91 Don't package mdnsd for the host.
I don't think anyone needs this since Brillo died.

Test: treehugger
Change-Id: Iaa7b84375c9d31f443cba4556dc25b9b00bae5f8
2021-10-26 16:38:58 -07:00