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
As a product variable, PRODUCT_PRODUCT_VNDK_VERSION cannot be defined
in config.mk. Instead it can be defined from product_config.mk.
Bug: 144534640
Test: check if the following command returns empty value
$ PRODUCT_USE_PRODUCT_VNDK_OVERRIDE=false \
get_build_var PRODUCT_PRODUCT_VNDK_VERSION
Change-Id: I304fb980610aec1dd5da05864b4c137997fc9aff
* changes:
Remove target-files-package from PARSE_TIME_MAKE_GOALS
Make dist zip files depend on files instead of images
Make dependencies of target-files.zip conditional
Remove INSTALLED_VBMETAIMAGE_TARGET dependency from target-files.zip
It isn't doing anything useful that would be necessary to reparse the
Makefiles for.
Test: m target-files-package
Change-Id: I3aa2490480de8dbe0e57fe36221088c3f18017cb
Depend on the files instead of images so that the dist zip files
can run in parallel with the image generation rules.
Test: treehugger
Change-Id: I1f942dc0ce0a2cbc5288c1f0633ea1019e77f91c
Depend on the files going into the images instead of the images
themselves when the images are not prebuilts. This will allow
paralellizing image generation with target-files.zip.
Test: treehugger
Test: m installclean && m target-files-package has same files before and after
Change-Id: If51d0f53602c08bd946ec34a2edae6f9d95f7bf8
Remove the INSTALLED_VBMETAIMAGE_TARGET, which depends on all the
other images, it is no longer necessary after
If1eff317621882994e7dcbf37cd35f5bfa16b69a. This will allow the
next change to parallelize target-files.zip with the image generation
rules.
Test: treehugger
Change-Id: Ie27bdbd2d414e9b475823639a1b3944fe0756d2a
Sometimes tests are being run by executing python -m unittest *.py. In
that case, invocation will fail due to missing ota_metadata_pb2, which
is auto generated from ota_metadata.proto(added in recent change).
Bug: 166718341
Test: unzip otatools.zip and python releasetools/test_utils.py
Change-Id: I597c7ef6dbd8e46ccde020b3122cc38a8df28dc9
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
Set the TEST_ROOT to /data/local/tmp/tests/vendor if LOCAL_VENDOR_MODULE or
LOCAL_USE_VNDK be set, if not, set to /data/local/tmp.
Bug: 138450837
Test: atest binderVendorDoubleLoadTest
Change-Id: I66437816227458a4f5672146b0c9e465c843aa50
BOARD_PREBUILT_ODM_DLKMIMAGE support seems to have been forgotten
in target-files.zip, and BOARD_PREBUILT_ODM_DLKMIMAGE support had
a typeo.
Test: treehugger
Change-Id: I9663220b43f0df4f39a7ef432ad4cfec39803a20
and shared libs.
If a prebuilt module file is a symlink in the .intermediates tree it is
preserved when copied to the final install location. This preserves
symlinks to prebuilt binaries, so that they are run from their prebuilt
source location and can find libraries in relative paths from there.
Symlinks are converted to absolute, to not fail if they are relative in
the source tree.
Test: m clean && m droid dist checkbuild
with and without the change, then compare the lists of symlinks in
the out/ trees
Test: build/soong/soong_ui.bash --make-mode \
TARGET_PRODUCT=crosshatch_hwasan TARGET_BUILD_VARIANT=userdebug \
droid SANITIZE_TARGET=hwaddress \
continuous_instrumentation_tests_api_coverage \
continuous_native_tests device-tests platform_tests
check that libclang_rt.hwasan_static-aarch64-android.a isn't a
symlink in out/target/product/crosshatch/obj
Bug: 145934348
Change-Id: I7600e5b0754f8ea6cd0ffc8e1ba6d39153f182aa
As part of the ota metadata work to support partial update, we should
add the per-partition device name, fingerprint, and version to the ota
metadata.
Bug: 151088567
Bug: 166154730
Test: unit tests pass, generate a package
Change-Id: I7a71a4860aad651daf9e62df39c60d72727c14ff
We'd better have a default type for enums. It's safe to change the
proto definition now since no one is parsing the new meta.
Also add the brick type for manually generated brick pkgs.
Bug: 166154730
Test: unit tests pass
Change-Id: Ie6d4e695c298313276b559601509c9a7a7ee91b1