Age | Commit message (Collapse) | Author |
|
android14-tests-release
Change-Id: I070c24ca70b98b5a5bd618f141f33d1a13cf8134
|
|
in CTS.
Most APIs are exercised extensively in any managed process, but use
this to cover the fringes.
This drops the mocks that used dynamic library symbol overrides
(android_create_namespace and android_link_namespaces) from the former
libnativeloader_lazy tests, because we cannot inject them in CTS tests.
However it turns out it works just fine to call into the real code in
the linker.
As a result libnativeloader_lazy_test no longer needs to be built with
exported symbols necessary to make the symbol override mocks to work.
Also strengthen the CreateClassLoaderNamespace test slightly by
verifying that it really did create a classloader namespace.
Test: atest libnativeloader_test \
art_libnativeloader_cts_test \
libnativeloader_lazy_test
Bug: 335224367
Change-Id: Idd15d5a79f4f54c68304a4b758c7a46ba9b96c86
(cherry picked from commit 1dc111804f9ea778bce6258ffd10fed80fb02d0c)
Merged-In: Idd15d5a79f4f54c68304a4b758c7a46ba9b96c86
|
|
remove libnativeloader_test from CTS instead.
This reverts commit b2b067192ac047b99c0d03104c5d7dbf79192ef1 which made
the CTS test no longer work for API coverage. It also (effectively)
reverts commit 996fa745c3ad3e3150363c85816ad2db3a00f5bd which put it in
CTS in the first place for that purpose.
It's clear libnativeloader_test won't work for API coverage due to the
mocking it does, so we'd have to add new tests if there are gaps.
However there doesn't seem to be any.
Also do a few other cleanups in the Android.bp file.
Test: atest libnativeloader_e2e_tests \
libnativeloader_test libnativeloader_lazy_test
Bug: 327407752
Bug: 328653757
Change-Id: I488c3d3c5143b7694a8456c3b56edfd511c3c610
(cherry picked from commit 418b58fe9c94a4bc2592d27b45a8e44c70742119)
Merged-In: I488c3d3c5143b7694a8456c3b56edfd511c3c610
|
|
android14-tests-release
Change-Id: I4ac4152ef570e064b0f4423f5cd33d6356fd2e47
|
|
the CTS test to only call exported APIs.
Reverts commit 7f5b3d89f21edd958ddb9d7bd01e03c77bd5425a.
CTS tests need to link the libraries they test dynamically, and this
test only tests exported stable APIs. The standalone CTS test config
template includes NativeBridgeModuleController, so the test won't run
in a translated environment (which has no proxy for this library and
hence caused the error that prompted
commit 7f5b3d89f21edd958ddb9d7bd01e03c77bd5425a).
The test also used to test some non-exported APIs, which it shouldn't
do in CTS. This changes it to use art_standalone_test_defaults, which
doesn't have the test_for attributes that made it bypass the stub.
Also reuse the trivial API-only tests for libnativebridge_lazy, and
give them a more apt name for the new use.
Test: atest art_libnativebridge_cts_tests \
libnativebridge-lazy-tests
Test: art/libnativebridge/tests/runtests.sh
Bug: 327407752
Bug: 328653757
Change-Id: Ib56148f1a651a9ffa3045bc401cc625e6f42416b
Merged-In: Ib56148f1a651a9ffa3045bc401cc625e6f42416b
(cherry picked from commit a87f1265e210615f7c90151f04a104a38067c196)
|
|
android14-tests-release
Change-Id: I036b055f41aaeef7c16aadf1b9798f4ad0a78cd1
|
|
UnbundledVendorApp test from libnativeloader tests expects VNDK
namespace as default, because all devices using mainline was treblelized
and had vendor VNDK version. However, this is no longer valid because of
VNDK deprecation, so test should check 'ro.vndk.version' property
exists, and do not expect VNDK namespace if the property is empty.
Bug: 290159430
Bug: 325710867
Test: libnativeloader_test passed with VNDK deprecated device
Change-Id: I3fd14beee676c86dbc066aa51b6c6bb57962283b
Merged-In: I3fd14beee676c86dbc066aa51b6c6bb57962283b
(cherry picked from commit cd9c984c9ec7e14080d5ccc4f50868a2974b29ea)
|
|
Previous change on handling product partition was based on the
assumption that all devices for mainline update would be product
treblelized, but it was not true. There are some upgrade devices to S
which is not product treblelized. This change checks if the device is
treblelized with first api level and product vndk version.
Bug: 305749591
Bug: 325710867
Test: AOSP cuttlefish boot succeeded
Test: libnativeloader_e2e_tests passed
Change-Id: I46f9c0e253363b891bdc6b073df3cc14e9f7b5aa
Merged-In: I46f9c0e253363b891bdc6b073df3cc14e9f7b5aa
(cherry picked from commit 760e495e79c03ce9c748a93ff42e6e3dd00bfc05)
|
|
There are some logic in libnativeloader to check if product is
treblelized by checking ro.product.vndk.version. However, this property
is no longer valid to check if product is treblelized, because of vndk
deprecation. This makes libnativeloader to consider as product is not
treblelized when the property is empty from the VNDK deprecation. This
causes unexpected error from libnativeloader which allows product apps
to use system / system_ext libraries when the product partition is VNDK
deprecated. Product is force-treblelized from R, so it is safe to assume
that product partition is always treblelized as long as the device is
treblelized. This change removes existing check of
ro.product.vndk.version, and use this check only to confirm if product
VNDK is deprecated.
Bug: 290159430
Bug: 325710867
Test: Cuttlefish build and run succeeded
Test: libnativeloader_e2e_tests passed
Change-Id: Ieee3ff2dde4244e7c46420ad8dde5f8e5cf249e4
Merged-In: Ieee3ff2dde4244e7c46420ad8dde5f8e5cf249e4
(cherry picked from commit c8c2953cffe8ff9d2204f4efdff9100eb9fa6df0)
|
|
llndk.libraries.txt will be relocated into system when VNDK is
deprecated. This change sets a new location to load llndk.libraries.txt
when VNDK is deprecated.
Bug: 290160925
Bug: 325710867
Test: aosp_cf build and boot succeeded with llndk.libraries.txt in the
system image
Change-Id: Id1c6f3e0c68f5a805a9285611da759f1b9a26da4
Merged-In: Id1c6f3e0c68f5a805a9285611da759f1b9a26da4
(cherry picked from commit 065d968d7c754f6042f113c18d2fd8858ec83455)
|
|
android14-tests-release
Change-Id: Ia31f157cb5144eed8f63f1cd0bd22c009aa97727
|
|
Test913 checks if Object.class is in image space when an image is
loaded. The test checks for a ".art" mapping in /proc/self/maps to
check if an image exists. We should also check for ".art]".
Bug: 318039063
Test: art/test.py -t 913
(cherry picked from https://android-review.googlesource.com/q/commit:9a3ca371e9fe14ccf4e55fd1c9a8c45b01b5250c)
Merged-In: I0ef5ae0dc35669dd5603b35e34f00e653f70a3c1
Change-Id: I0ef5ae0dc35669dd5603b35e34f00e653f70a3c1
|
|
android14-tests-release
Change-Id: I42796c10355411b38331d04a45ac77a0c6145af7
|
|
tests, and link am: 50cfe06af2 -s ours
am skip reason: Merged-In I538b00418f2e5563f6d88ae8a6aa99372e44bb78 with SHA-1 dfe9c4d7b2 is already in history
Original change: https://android-review.googlesource.com/c/platform/art/+/2885272
Change-Id: If72c8e4524a114e8cf39394379fe1636ee8e90b5
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
android14-tests-release
Change-Id: I3fcc055a0dc57f8b9206147e19700b1f479f1795
|
|
android14-tests-release
Change-Id: Ia8bb939a35e62ad79b922f4e3377f2cd11f7b2c0
|
|
statically what's needed instead.
Adding /apex/com.android.art/${LIB} to LD_LIBRARY_PATH conflates the
linker namespace separation and causes ART module libs to be loaded in
the default (= system) namespace. That causes linker errors when the
module is used on older system images where unstable shared libs are no
longer compatible.
Instead link all internal libs statically and only leave the ones with
exported APIs (which these CTS tests are intended to test).
Merged-In set to a CL in main to avoid merging there - gtests are
already linked statically there - it'll require a different fix.
Test: lunch aosp_x86_64
atest art_libnativebridge_cts_tests \
art_standalone_libdexfile_external_tests \
libnativeloader_test \
art_standalone_libartpalette_tests
using a cvd with a TM system image (had to apply
https://r.android.com/2654960 to make atest work in
android13-tests-dev)
Bug: 317042881
Change-Id: I538b00418f2e5563f6d88ae8a6aa99372e44bb78
Merged-In: I538b00418f2e5563f6d88ae8a6aa99372e44bb78
Merged-In: I75a844f53663385ef98351f60d3adb900157f5e5
|
|
statically what's needed instead.
Adding /apex/com.android.art/${LIB} to LD_LIBRARY_PATH conflates the
linker namespace separation and causes ART module libs to be loaded in
the default (= system) namespace. That causes linker errors when the
module is used on older system images where unstable shared libs are no
longer compatible.
Instead link all internal libs statically and only leave the ones with
exported APIs (which these CTS tests are intended to test).
Merged-In set to a CL in main to avoid merging there - gtests are
already linked statically there - it'll require a different fix.
Test: lunch aosp_x86_64
atest art_libnativebridge_cts_tests \
art_standalone_libdexfile_external_tests \
libnativeloader_test \
art_standalone_libartpalette_tests
using a cvd with a TM system image (had to apply
https://r.android.com/2654960 to make atest work in
android13-tests-dev)
Bug: 317042881
Change-Id: I538b00418f2e5563f6d88ae8a6aa99372e44bb78
Merged-In: I75a844f53663385ef98351f60d3adb900157f5e5
|
|
libartpalette and dex2oat CTS gtests.
We cannot use art_standalone_gtest_defaults. dex2oat_cts_test.cc rips
out the necessary bits from common_art_test.cc instead, with as few
changes as possible.
With this change we can reenable art_standalone_dex2oat_cts_tests
again (cf. b/288212464#comment5).
Merged-In set to a CL in main to avoid merging there - gtests are
already linked statically there.
Cherry picked from
https://googleplex-android-review.git.corp.google.com/c/platform/art/+/25166821.
Test: m art_standalone_libartpalette_tests \
art_standalone_dex2oat_cts_tests
Do `readelf -d` on the test binaries to check that only stable ABI
libraries are in the NEEDED list.
Test: cts-tradefed run commandAndExit cts \
-m art_standalone_dex2oat_cts_tests
on a tm-release image.
Test: cts-tradefed run commandAndExit cts \
-m art_standalone_libartpalette_tests
on a tm-release image.
Bug: 306064090
Bug: 288212464
Merged-In: I75a844f53663385ef98351f60d3adb900157f5e5
Merged-In: I4a8d1eddaacf9e476f7d3d783edec0223cb39c04
Change-Id: I708d83015bc151eba568d5d6f777872274f7580c
|
|
This reverts commit 23ac65adbd2edcaa70bd4c7e94cf016bef384891. It
introduced a dependency on art::CommonArtTest that we cannot satisfy
when linking without most ART test binaries, which we want to do for
the child CL.
It means the test is disabled on host again, but it will allow us to
remove it from the CTS exclude on target, which is more important.
Merged-In set to a CL in main to avoid merging there - gtests are
already linked statically there.
Test: m art_standalone_libartpalette_tests
Do `readelf -d` on the test binaries to check that only stable ABI
libraries are in the NEEDED list.
Test: cts-tradefed run commandAndExit cts \
-m art_standalone_libartpalette_tests
on a udc-dev image.
Bug: 306064090
Bug: 288212464
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:b02ffa5d50717d722640d434e5a4de70b5dcf478)
Merged-In: Ia504fe852cd6df454e3adf9e3fca3771e2d618ff
Change-Id: Ia504fe852cd6df454e3adf9e3fca3771e2d618ff
|
|
libraries in the am: 79248264f3 -s ours
am skip reason: skipped by user mast
Original change: https://android-review.googlesource.com/c/platform/art/+/2800513
Change-Id: I35cfcf6c76cba847f5155fe0e6a741287ef99f52
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
libartpalette and dex2oat CTS gtests.
We cannot use art_standalone_gtest_defaults. dex2oat_cts_test.cc rips
out the necessary bits from common_art_test.cc instead, with as few
changes as possible.
With this change we can reenable art_standalone_dex2oat_cts_tests
again (cf. b/288212464#comment5).
Merged-In set to a CL in main to avoid merging there - gtests are
already linked statically there.
Test: m art_standalone_libartpalette_tests \
art_standalone_dex2oat_cts_tests
Do `readelf -d` on the test binaries to check that only stable ABI
libraries are in the NEEDED list.
Test: cts-tradefed run commandAndExit cts \
-m art_standalone_dex2oat_cts_tests
on a tm-release image.
Test: cts-tradefed run commandAndExit cts \
-m art_standalone_libartpalette_tests
on a tm-release image.
Bug: 306064090
Bug: 288212464
Change-Id: I1ff4174490ff50dbd2177cf5999fc6ef4bfbaa49
Merged-In: I75a844f53663385ef98351f60d3adb900157f5e5
Merged-In: I4a8d1eddaacf9e476f7d3d783edec0223cb39c04
|
|
Original change: https://android-review.googlesource.com/c/platform/art/+/2647524
Change-Id: Ib588afe35990b607a99c4164e60f98a5d29b7b6b
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
Some of these tests are dynamically linking non-NDK libraries
which native-bridge doesn't support. But also art code is never
executed under native-bridge in production since we only use it
to execute app's libraries.
Test: tests are skipped for native-bridge and
not skipped without native bridge
art_standalone_dex2oat_cts_tests
art_standalone_libartpalette_tests
art_standalone_libdexfile_external_tests
Bug: 268440713
Change-Id: Ic11ee51768aa305ffb84bf1da3bade855e078f6a
(cherry picked from commit b31b0443b7a15bef69bd3048094fe0eff204124f)
|
|
cases. am: ad8c2f3c2e -s ours
am skip reason: Merged-In I88a4b610952ac391eb5a2c0b56318c569410f68b with SHA-1 9c0e3238a2 is already in history
Original change: https://googleplex-android-review.googlesource.com/c/platform/art/+/23745704
Change-Id: I53f8f178cc0ef125b0c08bfd53695622558cea2f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
definition. am: 4f60bd624f -s ours
am skip reason: Merged-In I2c97c686e73c53ed8ffb0891f5f05af54f6468d2 with SHA-1 f53fa282cc is already in history
Original change: https://googleplex-android-review.googlesource.com/c/platform/art/+/23745703
Change-Id: I2b842e7edd90967d21e4c6e01478b0f5bb908d39
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
(cherry picked from commit 9c0e3238a2a9c4198140bfc6d979e7d5f321b746)
Test: m mts && mts-tradefed run commandAndExit mts-art
Bug: 287598331
Bug: 247108425
Change-Id: I88a4b610952ac391eb5a2c0b56318c569410f68b
Merged-In: I88a4b610952ac391eb5a2c0b56318c569410f68b
|
|
Test cases `JniCompilerTests` from ART gtest
`art_standalone_compiler_tests` are currently failing because of
linking issues on configurations where the copies of `libunwindstack`
in the non-Mainline-updatable Android platform and in the ART Mainline
Module differ (see b/247108425).
This is currently affecting ART MTS continuous test runs. Temporarily
exlude these test cases from MTS to minimize noise in continuous runs
while we investigate.
(cherry picked from commit f53fa282ccde8dd92d1f4bbbc0f6392b9eb8c843)
Test: m mts && mts-tradefed run commandAndExit mts-art
Test: m mts && mts-tradefed run commandAndExit mts-art-shard-03
Bug: 287598331
Bug: 247108425
Change-Id: I2c97c686e73c53ed8ffb0891f5f05af54f6468d2
Merged-In: I2c97c686e73c53ed8ffb0891f5f05af54f6468d2
|
|
5bf0f68407 am: aa2c59af69 am: 65c6dd0a09 am: 16e7cfbf17 am: d416febde2 am: b0d3d8fd04
Original change: https://android-review.googlesource.com/c/platform/art/+/2629991
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:d5777cdc1266545930b5f243934d77e0d1bb5869)
Bug: 229618060
Merged-In: I8e4ba7523da4331b3789cf788ea762f33b84d4f3
Change-Id: I8e4ba7523da4331b3789cf788ea762f33b84d4f3
|
|
87837ed326
Original change: https://googleplex-android-review.googlesource.com/c/platform/art/+/23745544
Change-Id: Ieeee65d319c294c620be751df67665700c27b77e
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
Temporarily disable some Checker assertions on Baker read barriers in
ART run-test `1004-checker-volatile-ref-load` as they are only valid
when the compiler is emitting Baker read barriers, i.e. when ART is
using the Concurrent Copying (CC) garbage collector.
Since ART's `userfaultfd` Concurrent Mark-Compact (CMC) collector was
enabled in
https://android-review.git.corp.google.com/c/platform/build/+/2607296
(commit 117212e422c98b32305fa934bd0d5250642749a5), those assertions
have started to fail on test configurations using devices that support
`userfaultfd`. Disable them for now, until we have a better way to
support multiple garbage collectors in Checker (see b/283780888).
Test: `atest -a art-run-test-1004-checker-volatile-ref-load` on Pixel 6
Bug: 283392413
(cherry picked from https://android-review.googlesource.com/q/commit:4313c979224cd50c0887a7a51257f0d007916533)
Merged-In: I0cd9cea4e4da4e3a642086c0e3bcc7f00700b199
Change-Id: I0cd9cea4e4da4e3a642086c0e3bcc7f00700b199
|
|
This reverts commit e9506c96ece6740471cb4576b130628424a042ef.
Bug: 261719949
Bug: 286348973
Reason for revert: Remove debugging code.
(cherry picked from https://android-review.googlesource.com/q/commit:2c1a89d55d181f39c0a8f0872610543c54e66d7f)
Merged-In: If037193aed909263f04a70da33db31e14fd228b2
Change-Id: If037193aed909263f04a70da33db31e14fd228b2
|
|
This allows dex2oat in CompOS to read the cache-info file. Otherwise,
CompOS will generate invalid artifacts that put the device into JIT
Zygote.
Bug: 286422732
Test: atest art_standalone_odrefresh_tests
Test: (on udc-dev) -
1. adb shell device_config set_sync_disabled_for_tests persistent
2. adb shell device_config put runtime_native_boot enable_uffd_gc true
3. atest odsign_e2e_tests_full:CompOsSigningHostTest
Change-Id: I4c6c5fb13a93b58ce53f46cd8d6d9c1e05ecd720
Merged-In: I4c6c5fb13a93b58ce53f46cd8d6d9c1e05ecd720
(cherry picked from commit d609d0762b9d8c473da4fa8de1122733b2a7a50c)
|
|
Revert submission 23615721-u-profiles-v10
Reason for revert: DroidMonitor: Potential culprit for Bug b/286550234 - verifying through ABTD before revert submission. This is part of the standard investigation process, and does not mean your CL will be reverted.
Reverted changes: /q/submissionid:23615721-u-profiles-v10
Change-Id: I427313ab62fddf6ae2ece38cff3461220d02091d
|
|
They seem to still have issues.
Bug: 283632504
Bug: 261719949
(cherry picked from https://android-review.googlesource.com/q/commit:71afbaa0ebced5578ceea1255bbda790f81a8abb)
Merged-In: Ia1dc5668e1837a0a1037f6d0cc08eb6c18cc6e01
Change-Id: Ia1dc5668e1837a0a1037f6d0cc08eb6c18cc6e01
|
|
Bug: 254051423
Test: go/art-benchmark?p=BootImageProfileId:35486&f=CandidateName:in:35492
= Perf stats =
(lower is better)
Improvements in Startup, no noticeable impact for boot-time and memory at the cost of a slight increase in code size, which could be an acceptable cost.
Startup: -2.68%
Memory(PSS): -0.44%
Boot time: -0.09%
Code size (.oat + .art + .odex): 0.60% (0.52 MB increase)
Ignore-AOSP-First: Boot image profiles
BYPASS_INCLUSIVE_LANGUAGE_REASON: Profile of existing code
=Generation Strategy=
method_threshold: 0.28
image_class_threshold: 0.24
preloaded_classes_threshold: 0.49
priority_packages_thresholds {
key: "services.jar.prof:CLASS:android"
value: 0.017142856
}
priority_packages_thresholds {
key: "services.jar.prof:METHOD:android"
value: 0.02
}
=Profile stats=
Data info:
- total aggregations: 1164
- number of (device types, builds): 42
File boot-image-profile.txt
- hot methods: 881 added, 679 removed
- methods: 881 added, 679 removed
- classes: 85 added, 17 removed
- totals now: 10305 hot methods, 10305 methods, 3288 classes
- totals before: 10103 hot methods, 10103 methods, 3220 classes
per package info as csv (selected):
package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
android, 113, 3, 32, 0, 174, 63
com.android, 65, 25, 18, 0, 1050, 447
java, 574, 533, 24, 0, 7199, 1996
android.icu, 109, 0, 30, 0, 109, 30
android.net, 1, 0, 1, 0, 1, 1
File preloaded-classes
- hot methods: 0 added, 0 removed
- methods: 0 added, 0 removed
- classes: 86 added, 17 removed
- totals now: 0 hot methods, 0 methods, 3284 classes
- totals before: 0 hot methods, 0 methods, 3215 classes
per package info as csv (selected):
package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
android, 0, 0, 32, 0, 0, 63
com.android, 0, 0, 18, 0, 0, 447
java, 0, 0, 25, 0, 0, 1993
android.icu, 0, 0, 30, 0, 0, 30
android.net, 0, 0, 1, 0, 0, 1
InternalReferenceRawProfileId: 35486
InternalReferenceCandidateProfileId: 35492
Test: build & benchmark
Change-Id: If3f8c476c065efb50dbff0df1232711cbba99bf4
|
|
Original change: https://android-review.googlesource.com/c/platform/art/+/2609049
Bug: 282589477
Merged-In: I01802cb4851cb18ff87f574ec0858c64bc5fd299
Change-Id: I01802cb4851cb18ff87f574ec0858c64bc5fd299
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
(cherry picked from commit 45346476271efc1e1f82d0d206f5cba8bb66a84f)
|
|
Revert submission 23539173-u-profiles-v9
Reason for revert: It seems causing a regression at b/286024404
Reverted changes: /q/submissionid:23539173-u-profiles-v9
Change-Id: Ib85eadd5e753e4ce3bfdbba4a33e5aa96f44a054
|
|
This could happen with semi-space GC.
Test: test.py
Bug: 282967538
Bug: 260557058
(cherry picked from https://android-review.googlesource.com/q/commit:b0e7f693312b6548ac1bf1edefe2dc4ef7810039)
Merged-In: Ib87c7ddb6b2ffa42e60a43a513f804fe0a6da24a
Change-Id: Ib87c7ddb6b2ffa42e60a43a513f804fe0a6da24a
|
|
Bug: 254051423
Test: go/art-benchmark?p=BootImageProfileId:35460&f=CandidateName:in:35466
= Perf stats =
(lower is better)
Improvements in Startup and boot times, no noticeable impact for memory at the cost of a slight increase in code size, which could be an acceptable cost.
Startup: -2.02%
Memory(PSS): -0.39%
Boot time: -0.60%
Code size (.oat + .art + .odex): 1.04% (0.99 MB increase)
Ignore-AOSP-First: Boot image profiles
BYPASS_INCLUSIVE_LANGUAGE_REASON: Profile of existing code
=Generation Strategy=
method_threshold: 0.24
image_class_threshold: 0.2
preloaded_classes_threshold: 0.47
priority_packages_thresholds {
key: "services.jar.prof:CLASS:android"
value: 0.014285714
}
priority_packages_thresholds {
key: "services.jar.prof:METHOD:android"
value: 0.017142856
}
=Profile stats=
Data info:
- total aggregations: 4702
- number of (device types, builds): 128
File boot-image-profile.txt
- hot methods: 1222 added, 1003 removed
- methods: 1222 added, 1003 removed
- classes: 85 added, 17 removed
- totals now: 10322 hot methods, 10322 methods, 3288 classes
- totals before: 10103 hot methods, 10103 methods, 3220 classes
per package info as csv (selected):
package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
android, 112, 3, 32, 0, 173, 63
com.android, 86, 46, 18, 0, 1050, 447
java, 862, 798, 24, 0, 7222, 1996
android.icu, 109, 0, 30, 0, 109, 30
android.net, 0, 0, 1, 0, 0, 1
File preloaded-classes
- hot methods: 0 added, 0 removed
- methods: 0 added, 0 removed
- classes: 86 added, 17 removed
- totals now: 0 hot methods, 0 methods, 3284 classes
- totals before: 0 hot methods, 0 methods, 3215 classes
per package info as csv (selected):
package_name, hot_a, hot_r, cl_a, cl_r, hot_num, cl_num
android, 0, 0, 32, 0, 0, 63
com.android, 0, 0, 18, 0, 0, 447
java, 0, 0, 25, 0, 0, 1993
android.icu, 0, 0, 30, 0, 0, 30
android.net, 0, 0, 1, 0, 0, 1
InternalReferenceRawProfileId: 35460
InternalReferenceCandidateProfileId: 35466
Test: build & benchmark
Change-Id: If00769f8ce6c02dfb3786a835d0bd7fcb42193c3
|
|
actual use am: 1733aa10e2 -s ours
am skip reason: Merged-In I9201716227e9e7245f20b016ff86558e0842fc53 with SHA-1 684b6c42ab is already in history
Original change: https://googleplex-android-review.googlesource.com/c/platform/art/+/23470032
Change-Id: I30f519cb22f0317d486ae0ff9bc53af45453eae8
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
|
|
Currently, we allot copy-buffer to mutator threads as soon as a
userfault for moving space is received. This could lead to a scenario
wherein a lot of mutator threads try to access the same page
simultaneously and hence get userfaulted. In this case we would
uselessly allot buffers to all mutator threads.
In this CL we defer the allotment until it is confirmed that the
mutator thread needs the buffer for compaction.
Bug: 284289925
Test: art/test/testrunner/testrunner.py
(cherry picked from commit 33e2f0e1caecab9c7b681e841e500e87caaa540f)
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:684b6c42ab68ed1c10616ea076c23fb22a5ff354)
Merged-In: I9201716227e9e7245f20b016ff86558e0842fc53
Change-Id: I9201716227e9e7245f20b016ff86558e0842fc53
|
|
Currently, we allot copy-buffer to mutator threads as soon as a
userfault for moving space is received. This could lead to a scenario
wherein a lot of mutator threads try to access the same page
simultaneously and hence get userfaulted. In this case we would
uselessly allot buffers to all mutator threads.
In this CL we defer the allotment until it is confirmed that the
mutator thread needs the buffer for compaction.
Bug: 284289925
Test: art/test/testrunner/testrunner.py
Change-Id: I9201716227e9e7245f20b016ff86558e0842fc53
(cherry picked from commit 33e2f0e1caecab9c7b681e841e500e87caaa540f)
Merged-In: I9201716227e9e7245f20b016ff86558e0842fc53
|
|
If the runtime still has a startup linear alloc, and we're deleting
class loaders, we may have dangling references in the startup linear
alloc. For simplicity, delete the startup linear alloc if we delete
class loaders.
Test: test.py
Bug: 282967538
Bug: 260557058
(cherry picked from https://android-review.googlesource.com/q/commit:c02f2d52791105549268d2fd9b1a2343413917a2)
Merged-In: Ieb65ab7c1d0c1965233ebfc9eeac3faa0715a9c0
Change-Id: Ieb65ab7c1d0c1965233ebfc9eeac3faa0715a9c0
|
|
Bug: 169680875
Test: mmm art
Partial cherry-pick of 78f3c72e8948087352788997a70854dee613352c
Merged-In: Ic0cc320891c42b07a2b5520a584d2b62052e7235
Change-Id: Ie15c66578d9a61e86125f4408b9e7d212258f9eb
|
|
We must not depend dynamically on non-NDK libraries in
libdexfile_support, because it becomes a prebuilt that has to work on
older platforms. (Removing the libbase dependency is a NOP change since
no symbols from it are used now.)
We also must not re-export any platform header files, because they'll
then get added to the include path for the caller and may hide the
headers they should be using.
Plenty of platform and external headers are still exported by the
libdexfile and libdexfile_static prebuilts, but the former isn't a real
problem and the latter is an already known problem. Add some comments
to discuss both.
Test: Build prebuilts on internal git_master-art and use the S
prebuilts in a SCv2 tree with ag/19239336 and
https://r.android.com/2267725
Bug: 282171830
Bug: 169885605
Ignore-AOSP-First: Will cherry pick to AOSP later
Change-Id: Ibff288cd14400015456b04b805efbfd6d76a89a3
|
|
`rethrowFromSystemServer` doesn't fix the problem. After this change,
the exception is logged without a stack trace and ignored.
Bug: 262207181
Test: atest ArtServiceTests
Test: -
1. Make artd crash.
2. See no Java stack trace in the logs.
Ignore-AOSP-First: ART Services
Change-Id: I29814d9a2be9d9fd6a588286e378735bba980115
|
|
Bug: 282191456
Test: Presubmit
(cherry picked from https://android-review.googlesource.com/q/commit:aeab168ec51e59602e37aaa39b11ec67b2a0e634)
Merged-In: I20f400ab635bf043f481a6987eaeb2ce51230899
Change-Id: I20f400ab635bf043f481a6987eaeb2ce51230899
|
|
Runtime::RegisterAppInfo relies on
ArtDexFileLoader::GetMultiDexChecksums to check if the input files have
dex code, but that method doesn't propertly return dex_locations if the
input is a .dex file. This issue caused profiles not to be written for
.dex files. This CL fixes it.
Bug: 282191456
Test: art/test.py -b --host -r -t 595-profile-saving
Test: m test-art-host-gtest-art_libdexfile_tests
(cherry picked from https://android-review.googlesource.com/q/commit:a11d08f3369f6ebd5a40c7e99499f84a6b111c53)
Merged-In: Ia8597fa9c7e7c7c9a82df0708fe0867216362423
Change-Id: Ia8597fa9c7e7c7c9a82df0708fe0867216362423
|
|
In the past, Package Manager created empty profile files for APKs that
have code, and the runtime did a file existence check (removed by
aosp/2407152). With ART Service, no empty profile files are created, so
we have no clue whether the APK has code or not.
After this change, the runtime opens the APK to check whether the APK
has code or not.
This change prevents the runtime from writing bootclasspath profiling
info to profile files for APKs that have no code. Such files are not
suitable for bootclasspath profiling because ART Service has a file GC
that cleans them up during daily bg dexopt.
This change admittedly makes `Runtime::RegisterAppInfo` slower because
it takes some time to open the APK, but in practice, it's okay because
Framework creates a classloader for the APK right after calling
`Runtime::RegisterAppInfo`, which also involves opening the APK, and
that open will be faster after this change.
Bug: 282191456
Test: art/test.py -b --host -r -t 595-profile-saving
(cherry picked from https://android-review.googlesource.com/q/commit:1e023a12fe510f259f7f2ca065591719172f3628)
Merged-In: If6ed139dcb7993402ded60a3bbd8fc0530a9c20e
Change-Id: If6ed139dcb7993402ded60a3bbd8fc0530a9c20e
|