Age | Commit message (Collapse) | Author |
|
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Test: Pixel 2 XL boots.
Bug: 77856493
Change-Id: I6686ce9d23e02aa8b8ef4081b302dbd860d07718
|
|
Fix performance-faster-string-find warning.
Bug: 32619234
Test: WITH_TIDY=1 mmma art/patchoat
Change-Id: Ic8678d140cd8aa9b5c26bcbc48d3e4e326d4e56f
|
|
Use Clang-tidy's modernize-use-override to add more annotations. Ignore
inferred annotations on destructors.
Bug: 32619234
Test: mmma art
Change-Id: Ic432c928e398d44df9171e42db04ee19946e6887
|
|
The test was disabled for heap poisoning; keep it disabled.
The TEST_DISABLED_FOR_HEAP_POISONING macro is in fact just
a conditional return, and I didn't account for it properly.
Bug: 109677607
Test: test-art-host-gtest-patchoat_test ART_HEAP_POISONING=true
Change-Id: I40266d0a06102e4d8bc52357b884b0e7d9fd2630
|
|
Add defensive check which fails gracefully if the
relocation offset is larger than the image size.
Add tests.
Bug: 109677607
Test: test-art-host-gtest-patchoat_test SANITIZE_HOST=address
Change-Id: Ic989d5b7c77fd66e77b9e8ba90df1bf490a46e43
|
|
Print up to 16 bytes of the data from the first difference.
Test: m test-art-host-gtest-patchoat_test
Bug: 70918261
Change-Id: Icd0247c3a745bfca0bc9745c8756452cd9b89feb
|
|
Add a new header library to remove libdexfile and others' dependence on
runtime (typically runtime/base) includes in libdexfile. Also a small step
to tease dexlayout and profman away from relying on these as well.
Bug: 22322814
Test: make -j 50 checkbuild
make -j 50 test-art-host-gtest
Change-Id: I38e2fe399a75f4bc6318c77a71954c00ea73ec2b
|
|
patchoat was already ignoring the basename part of the filename passed
to it for both --output-image-file and --output-image-relocation-file.
We can therefore just pass in the directories instead.
Bug: 72828459
Test: make test-art-host-gtest-patchoat_test
Change-Id: I1a699d1f6746f068078ae768d30690431578d84e
|
|
Patchoat can verify that a relocated .art file hasn't been modified
after generation using the --verify flag.
Test: adb shell /system/bin/patchoat --verify \
--input-image-location=/system/framework/boot.art \
--output-image-file=/data/dalvik-cache/arm64/system@framework@boot.art \
--instruction-set=arm64
Bug: 66697305
Change-Id: If6ea02a0527381c520078cd6f3ae2c275a8a8ab1
|
|
This adds an off by default feature to patchoat whereby it can write
image relocation information (i.e., which offsets are patched up by
patchoat) to .rel files. .rel file writing is enabled by specifying
the name of boot.art.rel file using command-line parameter
--output-image-relocation-file=...
The currently intended use case is to make the Android build process
store these files on the system image next to boot*.art files. At boot
time, in follow-up commits, these .rel files will then be used to
verify that all differences between /system boot*.art and
/data/dalvik-cache boot*.art files can be explained by relocation. The
goal is to mitigate /data/dalvik-cache boot*.art being a persistence
vector.
Test: ./art/test/testrunner/run_build_test_target.py art-gtest-debug-gc
Test: make test-art-host-gtest-patchoat_test
Test: ART_HEAP_POISONING=true make test-art-host-gtest-patchoat_test
Test: make test-art-target-gtest-patchoat_test
Test: ANDROID_ROOT=out/target/product/sailfish/system \
ANDROID_DATA=out/target/product/sailfish/dex_bootjars/system/framework/arm64/ \
out/host/linux-x86/bin/patchoat \
--input-image-location=<full path to>/out/target/product/sailfish/dex_bootjars/system/framework/boot.art \
--output-image-file=out/target/product/sailfish/dex_bootjars/system/framework/arm64/boot.art \
--instruction-set=arm64 --base-offset-delta=0x10000000
produces same boot*.art files as prior to this change
Test: ANDROID_ROOT=out/target/product/sailfish/system \
ANDROID_DATA=out/target/product/sailfish/dex_bootjars/system/framework/arm64/ \
out/host/linux-x86/bin/patchoat \
--input-image-location=<full path to>/out/target/product/sailfish/dex_bootjars/system/framework/boot.art \
--output-image-relocation-file=out/target/product/sailfish/dex_bootjars/system/framework/arm64/boot.art.rel \
--instruction-set=arm64 --base-offset-delta=0x10000000
produces no boot*.art files, but produces expected boot.art.rel files
Bug: 66697305
Change-Id: Ia6b548c61429c61a62706d4021f8e6f22c49082e
|
|
This reverts commit fbe5f2f85244bf57707afb5520b2f9aa189d9d55.
Test is failing very often on the buildbots.
Bug: 66697305
Change-Id: I9be7471b1c988bdddeca732c39b9323125e4384d
|
|
This adds an off by default feature to patchoat whereby it can write
image relocation information (i.e., which offsets are patched up by
patchoat) to .rel files. .rel file writing is enabled by specifying
the name of boot.art.rel file using command-line parameter
--output-image-relocation-file=...
The currently intended use case is to make the Android build process
store these files on the system image next to boot*.art files. At boot
time, in follow-up commits, these .rel files will then be used to
verify that all differences between /system boot*.art and
/data/dalvik-cache boot*.art files can be explained by relocation. The
goal is to mitigate /data/dalvik-cache boot*.art being a persistence
vector.
Test: ./art/test/testrunner/run_build_test_target.py art-gtest-debug-gc
Test: make test-art-host-gtest-patchoat_test
Test: make test-art-target-gtest-patchoat_test
Test: ANDROID_ROOT=out/target/product/sailfish/system \
ANDROID_DATA=out/target/product/sailfish/dex_bootjars/system/framework/arm64/ \
out/host/linux-x86/bin/patchoat \
--input-image-location=<full path to>/out/target/product/sailfish/dex_bootjars/system/framework/boot.art \
--output-image-file=out/target/product/sailfish/dex_bootjars/system/framework/arm64/boot.art \
--instruction-set=arm64 --base-offset-delta=0x10000000
produces same boot*.art files as prior to this change
Test: ANDROID_ROOT=out/target/product/sailfish/system \
ANDROID_DATA=out/target/product/sailfish/dex_bootjars/system/framework/arm64/ \
out/host/linux-x86/bin/patchoat \
--input-image-location=<full path to>/out/target/product/sailfish/dex_bootjars/system/framework/boot.art \
--output-image-relocation-file=out/target/product/sailfish/dex_bootjars/system/framework/arm64/boot.art.rel \
--instruction-set=arm64 --base-offset-delta=0x10000000
produces no boot*.art files, but produces expected boot.art.rel files
Bug: 66697305
Change-Id: If18814f03dba3d72ae15981625473f4da303b1d6
|
|
This augments the patchoat test to check all .art files produced by
dex2oat and patchoat, rather than just the main one -- boot.art.
For context, the test currently produces two .art files: boot.art and
boot-core-libart-hostdex.art.
Test: ./art/test/testrunner/run_build_test_target.py art-gtest-debug-gc
Test: make test-art-host-gtest-patchoat_test
Test: make test-art-target-gtest-patchoat_test
Bug: 66697305
Change-Id: I8a90e70811ac8b98a7c2de5bfe6a388ca884e259
|
|
This reverts commit 1fb8d5ee6c7f03269cf08b18a0af5b4e25924a27.
Skip the patchoat test on the build server where the build is not
using read barriers. Read barriers (or CMS/MS garbage collector) are
required for the --force-determinism feature used by the test.
Test: ./art/test/testrunner/run_build_test_target.py art-gtest-debug-gc
Test: make test-art-host-gtest-patchoat_test
Test: make test-art-target-gtest-patchoat_test
Bug: 66697305
Change-Id: I99da0111ca0e34d32473dfe721b7a2f49289e850
|
|
This reverts commit 203010a86542b16991ede122085b07eea6c55bec.
Reason for revert: This test is breaking on a build server -- no idea why as no output can be seen.
Change-Id: Ibb93d84e673c45e13ba81b1f045eb7c8d31494fd
|
|
This reverts commit 5dd08acd0b568bb05e2e75fc02d8a6d3d7aa6f8e.
This attempt removes any remaining non-determinism, by passing in
--force-determinism to dex2oat in the test. As a result, the test
now passes both host-side and device-side.
Test: make test-art-host-gtest-patchoat_test
Test: make test-art-target-gtest-patchoat_test
Bug: 66697305
Change-Id: I8192ced68cec9f270b004488eb264f429bf7ab60
|
|
Bug: 66697305
Fails on device
This reverts commit 14e895ed419fcb67c16be1387d248a4e973cf940.
Change-Id: Id817d738be32f44c5dfc97d2646b0090824dc404
|
|
The test checks that relocating an image using dex2oat and patchoat
yields the same ART file, except for OAT checksum and patch offset
delta.
Test: make test-art-host-gtest-patchoat_test
Bug: 66697305
Change-Id: I80f8b996bc8fc88ef798dceac9fd9ecd629045a3
|