Due to bugs in Soong around prebuilt libraries with stubs versions,
the hwasan runtime was installed into /system/lib64/bootstrap, but the
module was not given a ".bootstrap" suffix. Once the bugs are fixed,
the hwasan runtime is no longer installed because the dependencies
on "libclang_rt.hwasan-aarch64-android" are now on an uninstallable
stubs library. Add libclang_rt.hwasan-aarch64-android.bootstrap
to PRODUCT_PACKAGES when SANITIZE_TARGET=hwaddress is set.
Test: m checkbuild
Change-Id: I732d37505274c7bf804396921202f2bcca4484ec
SafetyRegulatoryInfo should not exist in AOSP.
Fixes: 166139891
Test: make && flash to verify regulatory option of Settings
Merged-In: I5fbef719ba30cdbf37e0d4c6daa06a50c06e9495
Change-Id: I5fbef719ba30cdbf37e0d4c6daa06a50c06e9495
This CL re-enables building ANGLE as parta of the base system. This was
done up until the recent merge of goog/master to aosp/master, and is
required as part of enabling ANGLE as the default OpenGL ES driver for
Cuttlefish.
Bug: b/168625635
Test: atest CtsAngleIntegrationHostTestCases
Change-Id: I12c8db290ed7dc6b213b6f1c22692666dcdf143f
Merged-In: Ide4e3d8f78d3748d557a47ecd153d66694fd1e3a
SafetyRegulatoryInfo should not exist in AOSP.
Fixes: 166139891
Test: make && flash to verify regulatory option of Settings
Merged-In: I5fbef719ba30cdbf37e0d4c6daa06a50c06e9495
Change-Id: I5fbef719ba30cdbf37e0d4c6daa06a50c06e9495
Sets ro.virtual_ab.compression.enabled and includes snapuserd_ramdisk.
A device will do the following to enable virtual a/b compression:
$(call inherit-product, $(SRC_TARGET_DIR)/product/virtual_ab_ota_compression.mk)
Bug: 168257347
Test: build with product included
Change-Id: Ide19576a69629389a7878d5dff3c5706c22527d9
The Live Lock Killer Daemon (llkd) has provided enough hero moments to
improve system stability, by providing actionable collection of data
to resolve kernel, and some user space, misbehaviors. It is time to
move llkd to a required component.
NB: For llkd to be effective at finding real kernel live lock
conditions, system requirements are that there are no more un-waited
for Zombie processes, and that no kernel drivers use indeterminate
periods of uninterruptible sleep. Any kernel and user space tasks
that are killed because of suspicious behavior, must themselves have
a benefactor to restart them if necessary. If a true live lock is
discovered, data will be collected and the kernel will be panic'd to
recover from the situation.
Signed-off-by: Mark Salyzyn <salyzyn@google.com>
Bug: 164946924
Test: llkd is ever present on a release build.
Change-Id: I986a8545252bc5b68d09a6a0f4f506a58998c8a0
There are a couple of use cases where we don't want sparse image:
1. `DynamicSystemInstallationService` in Q framework doesn't support
sparse images.
2. Super image manipulation tools (like `lpadd`) doesn't play nice with
sparse images.
Force non-sparse GSI so we don't break backwards compatibility (1) and
we don't need to write `simg2img` everywhere (2).
Bug: 167695592
Test: Prepare a device flashed with Q framework
Test: Build system.img and create system.img.zip; the image is non-sparsed
Test: m tradefed-all && \
tradefed.sh run commandAndExit template/atest_local_min \
--template:map preparers=template/preparers/dsu-preparer \
--extra-file system-img.zip=out/.../system.img.zip \
--dynamic-system-update:disable-tear-down
Change-Id: Ib7667165ce53e87eb86bc7d3f56c80a418123a62
The system property ro.gfx.angle.supported needs to be enabled when
ANGLE is included in a build to indicate to the platform and CTS tests
that ANGLE is present on the device.
Test: atest CtsAngleIntegrationHostTestCases
Bug: 157670307
Merged-in: Ide4e3d8f78d3748d557a47ecd153d66694fd1e3a
Change-Id: I72ba8731fed36dbc594dae88aaa00a6299e8f4ae
This binary is for talking to vendor services, and it'll hang if
vndservicemanager is not available. On devices where it isn't supported,
just remove it.
Fixes: 165043609
Test: N/A
Change-Id: I908c8771c37deb79cf36efb10e66b7fff7adcedf
For development and debugging it is useful to have boot images with all
kernel symbols exported.
Bug: 163613927
Change-Id: I6118e5f0fff6e9cbc20ecca6bd362a26a79544b1
Rename mainline_system to generic_system in mk files
to avoid confusion with mainline module.
First, move mainline_system(.*).mk to generic_system(.*).mk
and make previous mainline_system(.*).mk to just inherit
generic_system(.*).mk to make alias except mainline_system.mk.
is just symlink to generic_system.mk.
These aliasing file will be kept remain during migration
for preventing build breakage and making changes possible
during migration.
Bug: 160649682
Test: lunch generic_system_arm64 && m nothing
Test: lunch generic_system_x86 && m nothing
Test: lunch generic_system_x86_64 && m nothing
Test: lunch generic_system_x86_arm && m nothing
Test: lunch mainline_system_arm64 && m nothing
Test: lunch mainline_system_x86 && m nothing
Test: lunch mainline_system_x86_64 && m nothing
Test: lunch mainline_system_x86_arm && m nothing
Change-Id: I3609ec2d91b0f08859a36cac75c25876b1db6d6a
Merged-In: I3609ec2d91b0f08859a36cac75c25876b1db6d6a
(cherry picked from commit 6f16b5764b)
Rename mainline_system to generic_system in mk files
to avoid confusion with mainline module.
First, move mainline_system(.*).mk to generic_system(.*).mk
and make previous mainline_system(.*).mk to just inherit
generic_system(.*).mk to make alias except mainline_system.mk.
is just symlink to generic_system.mk.
These aliasing file will be kept remain during migration
for preventing build breakage and making changes possible
during migration.
Bug: 160649682
Test: lunch generic_system_arm64 && m nothing
Test: lunch generic_system_x86 && m nothing
Test: lunch generic_system_x86_64 && m nothing
Test: lunch generic_system_x86_arm && m nothing
Test: lunch mainline_system_arm64 && m nothing
Test: lunch mainline_system_x86 && m nothing
Test: lunch mainline_system_x86_64 && m nothing
Test: lunch mainline_system_x86_arm && m nothing
Change-Id: I3609ec2d91b0f08859a36cac75c25876b1db6d6a
Merged-In: I3609ec2d91b0f08859a36cac75c25876b1db6d6a
(cherry picked from commit 6f16b5764b)
This hasn't worked for a couple years, and continues to bitrot. Just
remove it.
Test: treehugger
Change-Id: Iea6caf3c08252a560155e095135c5ddaad712991
Merged-In: Iea6caf3c08252a560155e095135c5ddaad712991
The VNDK-lite is deprecated from S. Which is used to support the
devices without enabling VNDK.
The patch removes VNDK-lite from Legacy GSI. Also, reboot the
device without enabling VNDK in both non-Legacy and Legacy GSI.
Bug: 158719241
Test: boot aosp_arm64-userdebug on a Pixel 3 device
Test: boot aosp_arm64_ab-userdebug on a Pixel 2 device
Change-Id: I70a944bb5a2a0347ab753d29eca3d1bfcae54526
This partially reverts commit 1785816ca1
so that the hash tree at the end of GSI is properly signed by AVB.
Bug: 161503491
Test: 'm dist' and check that vbmeta_system.im is gone
Test: boot GSI on android10 CF
Test: 'avbtool info_image --image system.img' and check AVB signing
Change-Id: I9f488380c0c410fdbd02c3c0803b6dc06cf7faab
To enable testing with android-mainline kernels, and them to the
aosp_arm64 build so android-mainline-based GKI boot images are produced.
Bug: 162020942
Change-Id: Ib1f957608a720a763a14324e4ca25ee170154fbb
Merged-In: Ib1f957608a720a763a14324e4ca25ee170154fbb
To enable testing with android-mainline kernels, and them to the
aosp_arm64 build so android-mainline-based GKI boot images are produced.
Bug: 162020942
Change-Id: Ib1f957608a720a763a14324e4ca25ee170154fbb
These two properties shouldn't be set in GSI image from R on,
otherwise they'll force lmkd to use the legacy strategy.
Bug: 136212765
Test: run cts-on-gsi -m CtsFileSystemTestCases
Test: run cts-on-gsi -m CtsAppExitTestCases
Change-Id: Id0001f8c4187a280cffe6c72d7a39be29065ca4e
hidl libs are removed from VNDK unless used by other VNDK libs.
Bug: 143933769
Test: update-makefiles.sh && m com.android.vndk.current
Merged-In: I25a787defb1755107c0538eabd21a0bfcf8374b1
Change-Id: I25a787defb1755107c0538eabd21a0bfcf8374b1
(cherry picked from commit 9438fb2c15)
hidl libs are removed from VNDK unless used by other VNDK libs.
Bug: 143933769
Test: update-makefiles.sh && m com.android.vndk.current
Merged-In: I25a787defb1755107c0538eabd21a0bfcf8374b1
Change-Id: I25a787defb1755107c0538eabd21a0bfcf8374b1
(cherry picked from commit 9438fb2c15)
The vendor path check is incompatible with the current setup of prebuilt
module stubs.
Bug: 160165426
Test: lunch mainline_system_x86 ; m nothing
Change-Id: I5aa809dc3e0c9b36e6963585bb60fd446a234022
The mk file is designed to provide safe default values which can be
overridden by target-specific mk files. Previously it was difficult to
correctly configure the mk files because the final prop value that
is baked in the system/build.prop is highly dependent (and sensitive as
well) to the mk file inheritance order which is very difficult (and
non-intuitive) to follow.
I9c073a21c8257987cf2378012cadaeeeb698a4fb is an attempt to make it much
easier and intuitive. Specifically, the new `a ?= b` syntax makes the
assignment optional, which means it is used only when there is no
non-optional assignment for the same prop regardless of the relative
ordering among them. In addition, the change prohibits having multiple
non-optional prop assignments for the same prop name.
pm.dex.* prop in runtime_libart.mk are now set using the `a ?= b` syntax
to explicitly mark that they provide default values.
Bug: 117892318
Bug: 158735147
Test: m
Exempt-From-Owner-Approval: cherry-pick from master
Merged-In: I044486d313d699607cd54222ae34d9eae24762b9
(cherry picked from commit bca4ea477a)
Change-Id: I044486d313d699607cd54222ae34d9eae24762b9
Some properties that are designed to provide a safe default value are
explicitly set as optional using the 'a ?= b' syntax.
Bug: 117892318
Bug: 158735147
Test: m
Exempt-From-Owner-Approval: cherry-pick from master
Merged-In: Ie6a50ab7e0bcb210e282bc18e8c1daf412903f90
(cherry picked from commit dfb3937ce4)
Change-Id: Ie6a50ab7e0bcb210e282bc18e8c1daf412903f90
The setting of ro.zygote in base_system.mk is optional, which means the
value can be overriden by other (probably more specific) mk files.
Bug: 117892318
Bug: 158735147
Test: atest --host post_process_prop_unittest
Exempt-From-Owner-Approval: cherry-pick from master
Merged-In: Ia7a67c0a04fad343d6591417f40dd4b9ddadc5e4
(cherry picked from commit b1261aac33)
Change-Id: Ia7a67c0a04fad343d6591417f40dd4b9ddadc5e4
GSI and emulator should not be specialized for tablet.
This is also to avoid the expected sysprop conflict after
I9c073a21c8257987cf2378012cadaeeeb698a4fb gets in. With the change,
duplicate assignments of a sysprop is prohibited. We currently have the
duplication due to the following hierarchy chain:
aosp_arm64.mk
-> emulator_vendor.mk -> goldfish/vendor.mk -> phone-xhdpi-2048-dalvik-heap.mk
-> generic_arm64/device.mk -> tablet-dalvik-heap.mk
Many of the dalvik.vm.* properties are duplicated between phone-*-
dalvik-heap.mk and tablet-dalvik-heap.mk files.
Bug: 117892318
Bug: 158735147
Test: atest --host post_process_prop_unittest
Exempt-From-Owner-Approval: cherry-pick from master
Merged-In: I4d1e2f819fe688a4a85e58387b6af58d603399d3
(cherry picked from commit 9f2f6dd9c9)
Change-Id: I4d1e2f819fe688a4a85e58387b6af58d603399d3
The mk file is designed to provide safe default values which can be
overridden by target-specific mk files. Previously it was difficult to
correctly configure the mk files because the final prop value that
is baked in the system/build.prop is highly dependent (and sensitive as
well) to the mk file inheritance order which is very difficult (and
non-intuitive) to follow.
I9c073a21c8257987cf2378012cadaeeeb698a4fb is an attempt to make it much
easier and intuitive. Specifically, the new `a ?= b` syntax makes the
assignment optional, which means it is used only when there is no
non-optional assignment for the same prop regardless of the relative
ordering among them. In addition, the change prohibits having multiple
non-optional prop assignments for the same prop name.
pm.dex.* prop in runtime_libart.mk are now set using the `a ?= b` syntax
to explicitly mark that they provide default values.
Bug: 117892318
Bug: 158735147
Test: m
Exempt-From-Owner-Approval: cherry-pick from master
Merged-In: I044486d313d699607cd54222ae34d9eae24762b9
(cherry picked from commit bca4ea477a)
Change-Id: I044486d313d699607cd54222ae34d9eae24762b9
Some properties that are designed to provide a safe default value are
explicitly set as optional using the 'a ?= b' syntax.
Bug: 117892318
Bug: 158735147
Test: m
Exempt-From-Owner-Approval: cherry-pick from master
Merged-In: Ie6a50ab7e0bcb210e282bc18e8c1daf412903f90
(cherry picked from commit dfb3937ce4)
Change-Id: Ie6a50ab7e0bcb210e282bc18e8c1daf412903f90
The setting of ro.zygote in base_system.mk is optional, which means the
value can be overriden by other (probably more specific) mk files.
Bug: 117892318
Bug: 158735147
Test: atest --host post_process_prop_unittest
Exempt-From-Owner-Approval: cherry-pick from master
Merged-In: Ia7a67c0a04fad343d6591417f40dd4b9ddadc5e4
(cherry picked from commit b1261aac33)
Change-Id: Ia7a67c0a04fad343d6591417f40dd4b9ddadc5e4
GSI and emulator should not be specialized for tablet.
This is also to avoid the expected sysprop conflict after
I9c073a21c8257987cf2378012cadaeeeb698a4fb gets in. With the change,
duplicate assignments of a sysprop is prohibited. We currently have the
duplication due to the following hierarchy chain:
aosp_arm64.mk
-> emulator_vendor.mk -> goldfish/vendor.mk -> phone-xhdpi-2048-dalvik-heap.mk
-> generic_arm64/device.mk -> tablet-dalvik-heap.mk
Many of the dalvik.vm.* properties are duplicated between phone-*-
dalvik-heap.mk and tablet-dalvik-heap.mk files.
Bug: 117892318
Bug: 158735147
Test: atest --host post_process_prop_unittest
Exempt-From-Owner-Approval: cherry-pick from master
Merged-In: I4d1e2f819fe688a4a85e58387b6af58d603399d3
(cherry picked from commit 9f2f6dd9c9)
Change-Id: I4d1e2f819fe688a4a85e58387b6af58d603399d3
The flattened version of com.android.apex.cts.shim.v1 should be
explicitly installed because the shim apex is prebuilt one and
PRODUCT_INSTALL_EXTRA_FLATTENED_APEXES is not supported for
prebuilt_apex modules yet.
Bug: 158169437
Bug: 159392784
Test: m com.android.apex.cts.shim.v1_with_prebuilts.flattened
# should install the prebuilts of shim APKs
Change-Id: I8b37a320d2130d7b33aca856bc067dce37d1fb30
Removing GoogleANGLE only removed the Google-signed version of ANGLE,
but the AOSP version still remained. This CL removes the AOSP build of
ANGLE also, so there is no ANGLE on the device at all.
Bug: 158956138
Test: adb shell pm list packages | grep -i angle
Change-Id: If9a42bc6436c752d2b1a16565d99ca2a5ec60d66
GSI self contains the full Android system part. Skip mounting
the oem partition on GSI, which is a part of system.
Bug: 158433698
Test: build aosp_arm64-userdebug.
Test: Check the file /system/system_ext/etc/init/config/skip_mount.cfg
Change-Id: I689e1cc8a68b980d68b1d6ef1d715203db078dc2
Merged-In: I689e1cc8a68b980d68b1d6ef1d715203db078dc2
(cherry picked from commit f8475cc49f)
In order to support mDL on RVC, we need to
add credstore in /system/bin
Bug: 136506289
Test: atest VtsHalIdentityTargetTest
Change-Id: I7975eddde5b94edcd3a2d0e213244f84ffe43e8d
GSI self contains the full Android system part. Skip mounting
the oem partition on GSI, which is a part of system.
Bug: 158433698
Test: build aosp_arm64-userdebug.
Test: Check the file /system/system_ext/etc/init/config/skip_mount.cfg
Change-Id: I689e1cc8a68b980d68b1d6ef1d715203db078dc2