This CL enables CFI for the aosp_arm64_ab product config - which helps
ensure that the VNDK ABI is consistent with product configs that
also enable CFI.
Bug: 66301104
Test: VNDK ABI is consistent with walleye-userdebug
Change-Id: I8ba1f8ebc475a91e9c2a527c813e3c5e1daae897
Allows speed-profile compiling vendor modules.
The profile will not correctly get copied during first boot, but this
is should only be a minor issue.
Bug: 78472563
Bug: 71901335
Test: make
Change-Id: I15c6f90b6bbd284ab48fd750267bed5189c9fea4
We used to write a fake post-timestamp into package metadata for
"--override_timestamp", which allows a package to be pushed based on
the fake timestamp. This CL stops doing that by using the designated
"ota-downgrade=yes" instead, but keeping the "--override_timestamp" flag
for backward compatibility.
Now both "--override_timestamp" and "--downgrade" allow pushing packages
with downgrade timestamps. The only differenece is that "--downgrade"
enforces a data wiping, because it's intended a real downgrade (based on
Android version or security patch level). "--override_timestamp" serves
the path of a legit "upgrade", but unfortunately with build timestamps
in reverse order (e.g. the two builds are cut from different branches).
With this CL, we write "post-timestamp" to all packages.
Bug: 77811049
Test: Generate an incremental pakcage with "--override_timestamp".
Test: Generate an incremental pakcage with "--downgrade".
Test: python -m unittest test_ota_from_target_files
Change-Id: I4ae4ce77cb600a06ffd9b15b6d4c730314aa0b79
Merged-In: I4ae4ce77cb600a06ffd9b15b6d4c730314aa0b79
(cherry picked from commit faa8e0b7e9)
system properties must not be used as a communication channel in between
system and vendor processes. However, there has been no enforcement on
this: system process could write system properties that are owned and
read by vendor processes and vice versa. Such communication should be
done over hwbinder and should be formally specified in HIDL.
Until we finish migrating the existing use cases of sysprops to HIDL,
whitelisting them in system_writes_vendor_properties_violators so that
the violators are clearly tracked.
These violators are allowed only for P, but not for Q.
Bug: 78598545
Test: m -j selinux_policy when choosecombo'ed to aosp_arm64
Change-Id: I8f66aa20bb2d926cf517d40c93f4300c4d16b04b
Bug: 79951743
Test: Run validate_target_files.py on target_files.zip that has
non-monotonic ranges listed in IMAGES/system.map.
Change-Id: I28d3ca6972d361362589cd51e60731af9994a551
Merged-In: I28d3ca6972d361362589cd51e60731af9994a551
(cherry picked from commit d32936d657)
Bug: 79951743
Test: Run validate_target_files.py on target_files.zip that has
non-monotonic ranges listed in IMAGES/system.map.
Change-Id: I28d3ca6972d361362589cd51e60731af9994a551
Merged-In: I28d3ca6972d361362589cd51e60731af9994a551
(cherry picked from commit d32936d657)
This change only impact emulator images.
Test: Compare the system partition before and after this change,
make sure they are identical.
Bug: 79584197
Test: Boot success.
Change-Id: I00427f663f068cc7ba9984e4facaff1b0c98b17f
FBE needs metadata/ under root folder. Adds metadata to
root folder before it has a final solution.
Bug: 79572884
Test: Boot on some pixel devices + aosp_arm64-userdebug with the patch
Change-Id: I5ef5763b755615dad4c8c711f9c9ef8987d3bb68
When linking in the UBSan minimal runtime, don't export the symbols.
This was resulting in an edge case where symbols were sometimes
undefined at runtime on address sanitized builds if static library
dependencies were integer overflow sanitized.
Bug: 78766744
Test: readelf on libraries show either inclusion of the shared library
or no undefined symbols related to the minimal runtime.
Change-Id: I4382cc72baefd7fa96cd83e8349e82f7b083f5aa
Merged-In: I4382cc72baefd7fa96cd83e8349e82f7b083f5aa
(cherry picked from commit e508169caf)
Fix mismatch between output directory of zipsync and input
directory of aapt2.
Bug: 79481102
Test: m checkbuild
Change-Id: If012c943af0c04cc3f0dd5c4266126412ae0a759
Merged-In: If012c943af0c04cc3f0dd5c4266126412ae0a759
(cherry picked from commit 164a33f194)
CTS harness code is moved to the new git project.
Update cts.mk to point to the new repo.
Bug: 78461075
Bug: 79201478
Bug: 79695450
Test: make cts -j32 WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY=true
TARGET_PRODUCT=aosp_arm64
Test: cts-tradefed run cts --compatibility:include-filter
CtsGestureTestCases
Test: cts/run_unit_tests.sh
Test: make gts -j32 WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY=true
TARGET_PRODUCT=aosp_arm64
Change-Id: I94c03071ec3db5a52c0fc0185bf69e2e57da9b21
Targets can define 'TARGET_USERIMAGES_SPARSE_EXT_DISABLED := true' to
generate non-sparse system images, but validate_target_files.py doesn't
work with such images. This CL adds a workaround to temporarily skip the
file consistency check for such images.
Bug: 79616357
Test: Run validate_target_files.py on a target_files.zip that's not
using sparse image.
Test: Run validate_target_files.py on marlin target_files.zip (which
uses sparse image).
Change-Id: I1f4066c5b3fec595b10cab10283d62c1c5a6c624
Merged-In: I1f4066c5b3fec595b10cab10283d62c1c5a6c624
(cherry picked from commit 63e2f49fdd)
We need the jars on boot and system server classpath in order to
symbolize profile information. Having the jars packed in a dist zip will
help a lot with the tools.
Test: m
Bug: 73313191
Change-Id: I5b64268d240055282099e9b86a5e6869e6405968
The objective of this commit is to support these 3 combinations:
1. Master-GSI + Master-VENDOR (w/ BOARD_VNDK_VERSION)
2. Master-GSI + Master-VENDOR (w/o BOARD_VNDK_VERSION for upgrading devices)
3. Master-GSI + O-MR1-VENDOR (w/ BOARD_VNDK_VERSION)
This commit defines a new property `ro.vndk.lite` to indicate the status
of BOARD_VNDK_VERSION run-time enforcement. Now, all devices should
have `ro.vndk.version` so that `libhidlbase.so`, `libRSCpuRef.so`, and
`libnativeloader.so` can find the versioned VNDK directory.
Bug: 78605339
Test: aosp_sailfish Master-SYSTEM + Master-VENDOR boots
Test: aosp_sailfish Master-GSI + Master-VENDOR boots
Test: aosp_walleye Master-SYSTEM + Master-VENDOR boots
Test: aosp_walleye Master-GSI + Master-VENDOR boots
Test: aosp_walleye Master-GSI + O-MR1-VENDOR boots
Change-Id: Iee9553b3ca9e0798a873e655d87d10cdc23d4b1c
Non-A/B devices using AOSP OTA flow will mount /cache in the
fstab file. Without setting BOARD_CACHEIMAGE_FILE_SYSTEM_TYPE,
/cache will be a symlink to /data/cache which introduces the
failure of `mount_all /vendor/etc/fstab.{ro.hardware}`. This is
because all devices laucned in P need to switch to "system-as-root".
This CL sets board config to create /cache directory in rootfs
(system-as-root GSI image). Note that A/B devices doesn't mount
or use /cache so leaving an empty /cache in rootfs has no harm.
Bug: 78485405
Test: Boot GSI on walleye
Change-Id: Ic260d2917cc64c9497f5f60ea11303e953e80efd
GSI Pi (for newly launched devices) need to enable this to pass
VtsTrebleSysProp.
Bug: 79395858
Test: Built aosp_{arm,arm64,x86,x86_64}. Check system/etc/prop.default
and found "ro.actionable_compatible_property.enabled=true".
aosp_x86(_64) could boot to home screen.
Change-Id: I04a4ff7c5feee7671d727c04c9d9657b63ec0912