OSDN Git Service
Jooyung Han [Tue, 4 Aug 2020 15:07:59 +0000 (15:07 +0000)]
Revert "Fix "vndk" namespace for vendor apexes" am:
51a4427649
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1387130
Change-Id: I9d2401e3330b89c591e3dfae1c393b500350c6ac
Jooyung Han [Tue, 4 Aug 2020 11:23:47 +0000 (20:23 +0900)]
Revert "Fix "vndk" namespace for vendor apexes"
This reverts commit
5e40c4c723c4582ca334d2a1e2ec2ad5dda3b078.
Reason: breaks master-art branch
Bug: n/a
Test: m nothing
Change-Id: Ic918465aa629045049ccd76b564e5e2c9cdf8761
Jooyung Han [Tue, 4 Aug 2020 03:31:04 +0000 (03:31 +0000)]
Merge changes from topic "vndk-apex-build" am:
45f1026c2c
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1376877
Change-Id: Ide13bb28ae65ab5e67f542dae6e5bfd9f8ca2a93
Jooyung Han [Tue, 4 Aug 2020 03:31:02 +0000 (03:31 +0000)]
Read apex-info-file.xml to distinguish vendor apex am:
d32f7fa269
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1376876
Change-Id: Idf3ab6c1abc201dc5d55569af601a28fd6658e8b
Jooyung Han [Tue, 4 Aug 2020 03:11:49 +0000 (03:11 +0000)]
Merge changes from topic "vndk-apex-build"
* changes:
Fix "vndk" namespace for vendor apexes
Read apex-info-file.xml to distinguish vendor apex
Kiyoung Kim [Mon, 3 Aug 2020 04:11:56 +0000 (04:11 +0000)]
Merge "Mark vndk_in_system namespace as invisible" am:
edf3069eed
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1382120
Change-Id: Ib5ecc399174a9e7e482575cbc74e5cb83690db4c
Kiyoung Kim [Mon, 3 Aug 2020 03:57:46 +0000 (03:57 +0000)]
Merge "Mark vndk_in_system namespace as invisible"
Jooyung Han [Wed, 29 Jul 2020 16:37:30 +0000 (01:37 +0900)]
Fix "vndk" namespace for vendor apexes
"vndk" namespace for non-system use cases (e.g. vendor section, vendor
apex, etc) should have /vndk as well as /vndk-sp to support VDNK
extensions.
In the following example, "vendor_hello" is a cc_library(vendor:true)
with dependencies to libbase/libc++/liblog, which is bundled in a vendor
apex "com.android.hello".
libbase/libc++(VNDK) are from VNDK APEX and liblog(LLNDK) are from
/system/lib.
$ adb shell ldd /apex/com.android.hello/bin/vendor_hello
linux-gate.so.1 => [vdso] (0xea2b3000)
libbase.so => /apex/com.android.vndk.vS/lib/libbase.so (0xe984b000)
libc++.so => /apex/com.android.vndk.vS/lib/libc++.so (0xe9788000)
liblog.so => /system/lib/liblog.so (0xe9f44000)
libc++.so => /system/lib/libc++.so (0xe98c3000)
libc.so => /apex/com.android.runtime/lib/bionic/libc.so (0xe99dd000)
libm.so => /apex/com.android.runtime/lib/bionic/libm.so (0xe9881000)
libdl.so => /apex/com.android.runtime/lib/bionic/libdl.so (0xe99ab000)
Bug:
159576928
Test: build a vendor apex with use_vndk_as_stable
check the dependency of a binary in it
Change-Id: I04e9e72af34630e08d4828d4ff644b0ee2aa861b
Jooyung Han [Mon, 3 Aug 2020 03:22:55 +0000 (03:22 +0000)]
vndk: add vendor/lib or product/lib to search_path am:
d258eba1c4
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1385027
Change-Id: Ie1aaba4f1e350685863d336b67a82090ea1d07ac
Jooyung Han [Wed, 29 Jul 2020 16:15:18 +0000 (01:15 +0900)]
Read apex-info-file.xml to distinguish vendor apex
/apex/apex-info-file.xml is the list of all apexes with preinstalled
path. By looking up original paths, we can figure out if an apex is
from /vendor or /system even if it is updated.
Bug:
159576928
Test: build & device boots
Change-Id: Ie32b10bfbdd9c1b6026c4b0fc93b57a2af6b5da5
Jooyung Han [Fri, 31 Jul 2020 09:58:09 +0000 (18:58 +0900)]
vndk: add vendor/lib or product/lib to search_path
"vndk" namespace have vendor/lib/vndk first in search paths so that VNDK
extension libraries have higher proiorty than normal VNDK libs.
However, VNDK extensions are allowed to use vendor libraries
(/vendor/lib). This was enabled by linking "sphal" namespace.
It was a bit weird because sphal namespace links vndk and vndk links
sphal again.
Moreover, "vndk_product" namespace can't link to /product/lib. We could
have "product" namespace and link it from vndk_product.
But instead, we add /vendor/lib to the search paths of "vndk" namespace
and /product/lib to "vndk_product" namespace so that VNDK extensions use
libs from there.
Now we don't need to link sphal from vndk.
Bug:
162462078
Test: HelloActivityProduct loads libjni_product successfully.
Merged-In: I6c5d47239dae427194345e03522a726997389167
Change-Id: I6c5d47239dae427194345e03522a726997389167
(cherry picked from commit
87122ca998fdc6f6d404fbe0539221eb9d242ca2)
Luke Huang [Sun, 2 Aug 2020 15:02:38 +0000 (15:02 +0000)]
Cleanup for Android's inclusive language guidance am:
1fc46cc922
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1379236
Change-Id: I9698e9638aefe7d808ce5f90fde828e3b701a1a9
Kiyoung Kim [Fri, 31 Jul 2020 08:24:28 +0000 (17:24 +0900)]
Mark vndk_in_system namespace as invisible
vndk_in_system namespace is visible currently. However, this namespace
should be invisible as it exists within vendor section and contains
system library paths, so mark this as visible can cause disallowed
access from vendor binary to system libs. This change marks
vndk_in_system namespace as invisible.
Bug:
161076708
Test: Cuttlefish Go phone GTS test passed
Change-Id: If82cc9c1cc279125bed9977d1bcdc930e45880db
Luke Huang [Thu, 30 Jul 2020 06:05:33 +0000 (14:05 +0800)]
Cleanup for Android's inclusive language guidance
See https://source.android.com/setup/contribute/respectful-code
for reference.
Bug:
161896447
Test: atest
Change-Id: I3afbccdb8fee2a8aa89978c8f26ebca2d3216f05
Jooyung Han [Wed, 29 Jul 2020 00:05:26 +0000 (00:05 +0000)]
Make diff test as presubmit am:
fcaa89aac3
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1264240
Change-Id: Ic6a90432672fe19093e012bafc1339a113cc2844
Jooyung Han [Fri, 20 Mar 2020 09:20:23 +0000 (18:20 +0900)]
Make diff test as presubmit
so that changes to the output can be tracked.
Bug:
140599044
Test: atest --host linkerconfig_diff_test
Change-Id: I2055ae742d3f480dc1d74b95db0ee7b864794a71
Jooyung Han [Tue, 28 Jul 2020 02:08:02 +0000 (02:08 +0000)]
Support ":vndk" to use vndk libs from vendor apex am:
1ee5f5c8b1
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1371701
Change-Id: Icf59b58485735b60096c33d41af63e7c0cc67c55
Jooyung Han [Fri, 24 Jul 2020 08:20:40 +0000 (17:20 +0900)]
Support ":vndk" to use vndk libs from vendor apex
Vendor APEX can be configured to use VNDK libs from the outside of the
apex. The dependency to external VNDK is marked in apex_manifest's
"requireNativeLibs" field as ":vndk", which is a pseudo name of VNDK
libs.
Bug:
159576928
Test: ./rundiff.sh
Change-Id: I6dd85270354d085877014c39088969c62314f614
Jooyung Han [Mon, 27 Jul 2020 09:24:05 +0000 (09:24 +0000)]
Merge "Add extra search path(/system_ext/lib)" am:
a8d5c7c4b3
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1371708
Change-Id: Iba8c23eb471140538a1028551ee64a611928bba7
Jooyung Han [Mon, 27 Jul 2020 09:08:08 +0000 (09:08 +0000)]
Merge "Add extra search path(/system_ext/lib)"
Jooyung Han [Mon, 27 Jul 2020 07:47:11 +0000 (16:47 +0900)]
Add extra search path(/system_ext/lib)
"system" namespace for apex binaries should list /system_ext/lib as well
as /system/lib because /system_ext/lib is also considered as "system".
Bug:
158435319
Test: ./rundiff.sh
Test: build & device boots
Change-Id: I6b131eb57da60eee8fb3fdbc21b0b7125758146f
Kiyoung Kim [Mon, 27 Jul 2020 01:44:19 +0000 (01:44 +0000)]
Create isolated section under /data am:
791bd11b2a
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1364666
Change-Id: I443b45be2b43f9db8c4a9f80f431e3225b3f52cc
Kiyoung Kim [Tue, 14 Jul 2020 06:28:55 +0000 (15:28 +0900)]
Create isolated section under /data
Some of the engineers are using /data for non-framework development, but
it is hard to use as /data shares section with /system, so many
libraries are linked with system one first. This changes creates a new
isolated section from subdirectory of /data so developers can run their
own executables with linked to their own libs first.
Bug:
160231064
Test: Checked from Cuttlefish that isolated section is created as expected
Change-Id: I047ee69b9ae7a4b01894c3a29efd4226ab47ce56
Richard Fung [Fri, 26 Jun 2020 02:16:56 +0000 (02:16 +0000)]
Check for treble devices before failing due to vndk-lite am:
28d91b58e4
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1350842
Change-Id: I938c066dfa7b00d3cae0d5d7bf4746d41b2261d8
Richard Fung [Thu, 25 Jun 2020 19:38:13 +0000 (12:38 -0700)]
Check for treble devices before failing due to vndk-lite
This fixes a bug where we fail if vndk-lite is enabled even though
treble isn't.
Bug: b/
159485432
Test: m -j and manually test with bertha
Change-Id: I24f8daef20699529e0fc9573a02c83cf64f63313
Jooyung Han [Wed, 24 Jun 2020 02:43:26 +0000 (02:43 +0000)]
Merge "Add Vendor APEX to testdata" am:
d15860864f
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1347305
Change-Id: I92ba5b4ce490fd063d70a6fb751a152b4e7b8fb9
Jooyung Han [Wed, 24 Jun 2020 02:28:33 +0000 (02:28 +0000)]
Merge "Add Vendor APEX to testdata"
Kiyoung Kim [Wed, 24 Jun 2020 01:09:59 +0000 (01:09 +0000)]
Merge "Fail when VNDK-Lite is enabled." am:
1f7108d0ed
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1347304
Change-Id: Iaba53a9134b71cfbb433b1220a11bfdda5eaa8bb
Kiyoung Kim [Wed, 24 Jun 2020 00:58:47 +0000 (00:58 +0000)]
Merge "Fail when VNDK-Lite is enabled."
Jooyung Han [Tue, 23 Jun 2020 13:15:47 +0000 (22:15 +0900)]
Add Vendor APEX to testdata
Linkerconfig doesn't care about Vendor APEXes yet.
Bug:
159576928
Test: ./rundiff.sh
Change-Id: I703789cc41e990b89a471f5489c120240faddba6
Jooyung Han [Tue, 23 Jun 2020 13:13:08 +0000 (13:13 +0000)]
Refactor rundiff.sh to use prepare_root.sh am:
f3ff7b7154
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1347303
Change-Id: I13374687cf6da38eeddbeb53695048f068f32afc
Jooyung Han [Tue, 23 Jun 2020 09:07:17 +0000 (18:07 +0900)]
Refactor rundiff.sh to use prepare_root.sh
prepare_root.sh activates apexes from /system, /product, etc and also
generates /apex/apex-info-list.xml
This is a preparation for linkerconfig to read /apex/apex-info-list.xml
which conveys the information about the original paths.
For example, linkerconfig will tell if an APEX is from /vendor or
/system.
Bug:
159576928
Test: ./rundiff.sh
Test: ./prepare_root.sh --in testdata/root --out testroot --all
testroot now contains every apex and apex-info-list.xml as well
Change-Id: Ied38aa402a5aa1606318a5b139687e05fc041683
Kiyoung Kim [Tue, 23 Jun 2020 08:52:04 +0000 (08:52 +0000)]
Deprecate VNDK-Lite from linkerconfig am:
fce4a27f52
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1347142
Change-Id: If63756817d780e0868398d505b65c147996a7d7c
Kiyoung Kim [Tue, 23 Jun 2020 07:15:47 +0000 (16:15 +0900)]
Fail when VNDK-Lite is enabled.
To ensure generated linker configuration is not working with VNDK-Lite
vendor image, check if VNDK-Lite is enabled and fail if so.
Bug:
153944540
Test: m -j passed && Cuttlefish booted properly
Change-Id: I5dcee726e4d5b8fbfa6192c1e81e534b34073eb5
Kiyoung Kim [Tue, 23 Jun 2020 04:16:42 +0000 (13:16 +0900)]
Deprecate VNDK-Lite from linkerconfig
VNDK-Lite will no longer be supported from Android starting from S. As a
first step, remove VNDK Lite configuration from linkerconfig. This
change won't have any effect on Legacy and Treblelized devices.
Bug:
153944540
Test: Cuttlefish succeeded to boot
Test: Confirmed golden_output has changes only from VNDK-Lite.
Change-Id: I074fac0417a143b8aa25cd0056bc634c78ef7000
Jooyung Han [Mon, 22 Jun 2020 09:03:56 +0000 (09:03 +0000)]
Update test_data am:
ec262d2133
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1345371
Change-Id: Ic750f385699dc7ec4e55e3f73dfe314bcde0809e
Jooyung Han [Mon, 22 Jun 2020 07:37:16 +0000 (16:37 +0900)]
Update test_data
according to the change
0614dd02988b5879876c66642ecd08f6db6c95e7
"Add extra search paths from unrestricted section"
Bug:
158674810
Test: ./rundiff.sh
Change-Id: I3fad4cea4b8ea576264efb2043e131fd0f7c2b74
Kiyoung Kim [Wed, 17 Jun 2020 02:33:25 +0000 (02:33 +0000)]
Merge "Add extra search paths from unrestricted section" am:
2539447e8f
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1330897
Change-Id: I2f5b5d9edbaf9a9ae34a842410499709cab01d68
Kiyoung Kim [Wed, 17 Jun 2020 02:16:29 +0000 (02:16 +0000)]
Merge "Add extra search paths from unrestricted section"
Kiyoung Kim [Fri, 12 Jun 2020 10:15:05 +0000 (19:15 +0900)]
Add extra search paths from unrestricted section
Add extra search paths - system_ext/${LIB} and product/${LIB} - so *TS
tests can be executed with extra libraries from the partners
Bug:
158674810
Test: Cuttlefish boot succeeded
Change-Id: I37787a92df28c3713d607eaea6a031b2b9db0f3d
Jooyung Han [Thu, 11 Jun 2020 11:51:54 +0000 (11:51 +0000)]
fix umask(022) am:
82bda261bb
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1330894
Change-Id: I9e405da3454fcb71fad696d8361aca88576fad82
Jooyung Han [Thu, 11 Jun 2020 07:58:24 +0000 (16:58 +0900)]
fix umask(022)
Use octal(022) and fix the mistake.
Bug:
149914078
Test: check modes of linkerconfig-generated files
Change-Id: I7c984ab768dc1026a899534e8d21527df91575a6
Kiyoung Kim [Thu, 11 Jun 2020 05:11:09 +0000 (05:11 +0000)]
Generate ASAN paths with certain rules am:
813e6ff513
Original change: https://android-review.googlesource.com/c/platform/system/linkerconfig/+/
1324132
Change-Id: Ic8a1824ea35fe6465f2161ac6f43d825d4623024
Kiyoung Kim [Thu, 4 Jun 2020 08:27:36 +0000 (17:27 +0900)]
Generate ASAN paths with certain rules
Previously each paths had to specify if it should be included in ASAN
paths, and /data/asan is valid. However, most of paths comes with ASAN
path with /data/asan except /apex, we can make this as simple so anyone
can add extra paths without understanding of ASAN. This change is the
first step to remove all ASAN path description from path definition.
Bug:
139788162
Test: m -j passed && Crosshatch HWASAN boot succeeded
Change-Id: I7e89cfd81e5b5699112b0636691a8b6007a98f33
Jooyung Han [Mon, 1 Jun 2020 13:38:22 +0000 (13:38 +0000)]
Revert "Remove duplicate entries in shared_libs" am:
268151bf49
Change-Id: I156a37d85c0d850582378210cab596c51a47a114
Jooyung Han [Mon, 1 Jun 2020 12:27:33 +0000 (12:27 +0000)]
Revert "Remove duplicate entries in shared_libs"
This reverts commit
28ea47a3102a8cfd44d3e9315a18cae3ecb15287.
Reason for revert: b/
157742728 (performance regression)
Change-Id: I3d925814afa2c7a8ac86e1dc5a5c46800f3e03ee
Jooyung Han [Fri, 29 May 2020 09:30:06 +0000 (09:30 +0000)]
Remove duplicate entries in shared_libs am:
28ea47a310
Change-Id: If66a3408f28c47915fd929d10910ac5685e8e6c8
Jooyung Han [Fri, 29 May 2020 03:19:33 +0000 (12:19 +0900)]
Remove duplicate entries in shared_libs
This change includes
- shared_libs list gets de-duped and printed one-by-one
- whitelisted is concated as a one line
Bug:
157481401
Test: m && device boots
atest --host linkerconfig_modules_unittest
./rundiff.sh
Change-Id: Ibfa53283f9db4adb29516849691d11473467d04f
Jooyung Han [Fri, 29 May 2020 01:02:40 +0000 (01:02 +0000)]
Merge "Add system stubs as "provided" from vendor default" am:
1b926b2cc0
Change-Id: I1e1ce47f7c08f8411733cc117e0d495d0d15de20
Jooyung Han [Fri, 29 May 2020 00:48:16 +0000 (00:48 +0000)]
Merge "Add system stubs as "provided" from vendor default"
Jooyung Han [Thu, 28 May 2020 10:03:49 +0000 (10:03 +0000)]
Merge changes Ie414fef3,Ie15838b0,Ifec60ace,I255cb0a7,I0979e702 am:
fd1cd899c8
Change-Id: Ic8d178f8b132e4fb570345ae40c804a22ea4b6ba
Kiyoung Kim [Thu, 28 May 2020 10:03:48 +0000 (10:03 +0000)]
Match vendor requires with system from VNDK Lite am:
b604764645
Change-Id: I737740076214e67e0a17643348e5ab4beed751bb
Kiyoung Kim [Thu, 28 May 2020 10:03:46 +0000 (10:03 +0000)]
Update golden_output am:
73c22fcbcd
Change-Id: Ide86863fb1ec2dd79f75d441a27b37060168e7b1
Kiyoung Kim [Thu, 28 May 2020 10:03:44 +0000 (10:03 +0000)]
Add libandroidicu.so link for VNDK-Lite vendor am:
12633592f0
Change-Id: Ia35b4ef62aca4f06c0b5d39e9c549fa9593e4c9c
Jooyung Han [Thu, 28 May 2020 10:03:41 +0000 (10:03 +0000)]
Add com.android.os.statsd testdata am:
e543413e4d
Change-Id: Ie272469044bc2cdea5f3fc7d337b822583704f1f
Jooyung Han [Thu, 28 May 2020 09:41:47 +0000 (09:41 +0000)]
Merge changes Ie414fef3,Ie15838b0,Ifec60ace,I255cb0a7,I0979e702
* changes:
Update golden_output
Match vendor requires with system from VNDK Lite
Update golden_output
Add libandroidicu.so link for VNDK-Lite vendor
Add com.android.os.statsd testdata
Josh Gao [Thu, 28 May 2020 03:28:23 +0000 (03:28 +0000)]
Merge "Add system link for libfdtrack.so" am:
464a34be4b
Change-Id: I2e696ff80dda0e653290228e1e9b3c8466cc7067
Josh Gao [Thu, 28 May 2020 03:20:48 +0000 (03:20 +0000)]
Merge "Add system link for libfdtrack.so"
Jooyung Han [Wed, 27 May 2020 10:38:37 +0000 (19:38 +0900)]
Add system stubs as "provided" from vendor default
For VNDK-lite devices, the default namespace of the vendor section works
like the default namespace of the system section.
So, provides/requires should be same as the system.default NS.
Bug:
153412158
Test: rundiff.sh
check if vendor.com_android_os_statsd namespace has access to
libbinder_ndk.so from vendor.default namespace
Change-Id: I1d68e12b34e360eb34edeb5155982b545c89c2f4
Kiyoung Kim [Tue, 14 Apr 2020 08:39:13 +0000 (17:39 +0900)]
Update golden_output
for the change: Ie15838b0506b3fcd617f624572f1a560eda07987
Bug:
153412158
Test: ./rundiff.sh
Change-Id: Ie414fef3ab4cd2921073513b9e35f34f9b28060c
Kiyoung Kim [Tue, 14 Apr 2020 08:39:13 +0000 (17:39 +0900)]
Match vendor requires with system from VNDK Lite
Vendor section of VNDK Lite device has search path for /system/lib, so
in general VNDK Lite's vendor section's default namespace should have same
scope of requires with system section's default namespace. This change
updates vendor's default namespace to require libraries same from
system's default namespace.
Bug:
153412158
Test: m -j passed
Merged-In: Ie15838b0506b3fcd617f624572f1a560eda07987
Change-Id: Ie15838b0506b3fcd617f624572f1a560eda07987
(cherry picked from commit
fde439ab4555a047bea49081c88218571e4bf2d9)
Kiyoung Kim [Wed, 8 Apr 2020 06:47:59 +0000 (15:47 +0900)]
Update golden_output
for the change: I255cb0a74cd996b1ce9c30c488edac063ab72ea8
Bug:
153412158
Test: ./rundiff.sh
Change-Id: Ifec60acedaa064479aa9c93a68fe2cf277694260
Kiyoung Kim [Wed, 8 Apr 2020 06:47:59 +0000 (15:47 +0900)]
Add libandroidicu.so link for VNDK-Lite vendor
libandroidicu.so is required from vendor default namespace which should
be linked to ART APEX, but it was missed. This change adds required
library which can be linked from ART APEX.
Bug:
153412158
Test: m -j passed
Merged-In: I255cb0a74cd996b1ce9c30c488edac063ab72ea8
Change-Id: I255cb0a74cd996b1ce9c30c488edac063ab72ea8
(cherry picked from commit
9811370003c4d88ed6a3a396a21ad1306c57add8)
Jooyung Han [Wed, 27 May 2020 10:09:49 +0000 (19:09 +0900)]
Add com.android.os.statsd testdata
The default namespace of the system section "requires" some libraries
which are provided by com.andorid.os.statsd.
Test: ./rundiff.sh
Change-Id: I0979e7025daea2b1d87d9ad9dd4149cc62257073
Kiyoung Kim [Wed, 27 May 2020 08:18:34 +0000 (08:18 +0000)]
Do not isolate sphal and vndk from unrestricted am:
2d44cfc444
Change-Id: Ieef083c35c4d6e672a7795d123f215a3b0760d0f
Kiyoung Kim [Wed, 27 May 2020 03:49:46 +0000 (12:49 +0900)]
Do not isolate sphal and vndk from unrestricted
After introducing sphal and vndk namespaces, some tests fails due to
existance of sphal namespace in unrestricted section. This change
updates sphal and vndk not to be isolated from unrestricted namespaces
so test can dlopen libraries from custom path (such as /data/local) as required.
In addition, include rs namespace in unrestricted section so
Renderscript test can use rs libraries from unrestricted section.
Bug:
156449540
Test: RenderscriptHidlTest passed with aosp_crosshatch-userdebug
Change-Id: Ib1526e225971312f126d75f26d7aa5c523011922
Merged-In: Ib1526e225971312f126d75f26d7aa5c523011922
Josh Gao [Fri, 15 May 2020 23:04:23 +0000 (16:04 -0700)]
Add system link for libfdtrack.so
libfdtrack.so is currently a library on the system image that's used via
dlopen to debug file descriptor leaks. We may want to move this into the
runtime module, but for now, add it as a system link.
Bug: http://b/
151688751
Bug: http://b/
156571476
Test: added dlopen to adbd
Change-Id: I21ebfe04d7ad85149e4df8a40911efd94ce5cf94
Kiyoung Kim [Tue, 19 May 2020 07:32:38 +0000 (07:32 +0000)]
Do not link stub libraries from all namespaces am:
fd8cf9340b
Change-Id: I6061c4a459d206bf6b2161dd0e23a69d64be254d
Kiyoung Kim [Tue, 19 May 2020 07:32:36 +0000 (07:32 +0000)]
Do not link VNDK libraries to system from vendor/product default am:
ba00a9897f
Change-Id: If2f6516c7b5d38c8acbdbabfce4e828777ce0a3b
Kiyoung Kim [Fri, 15 May 2020 05:26:23 +0000 (14:26 +0900)]
Do not link stub libraries from all namespaces
In current linkerconfig from all namespaces stub libraries are linked to
system namespace, which was required for APEX namespaces. However, as
linkerconfig checks dependencies from APEX namespaces now, this link is
excessive and can create unexpected interface from system. This change
removes redundant stub library link so namespaces can link to system
image with minimum set of libraries.
Bug:
156563692
Test: m -j passed && crosshatch_hwasasn booted
Change-Id: If43c954f376ede65bd2c3f682be6ae5d6866d3df
Merged-In: If43c954f376ede65bd2c3f682be6ae5d6866d3df
Kiyoung Kim [Thu, 14 May 2020 07:25:15 +0000 (16:25 +0900)]
Do not link VNDK libraries to system from vendor/product default
There was an issue that P vendor fails with Wifi because ubsan
libclangrt was linked to system even the library was in VNDK. This
change removes vndk libraries from sanitizer library list when linking
from vendor/product default so we can stick on partition's own VNDK
library.
Bug:
155907604
Test: Tested with cuttlefish
Change-Id: I7c23c6ba5f263a716b44778c9441dde68943259b
Merged-In: I7c23c6ba5f263a716b44778c9441dde68943259b
Kiyoung Kim [Mon, 11 May 2020 09:33:46 +0000 (09:33 +0000)]
Update test data with latest codebase am:
829bc09525
Change-Id: I2a702abd469dca36f4b21db313577bcbb2932711
Kiyoung Kim [Mon, 11 May 2020 05:24:52 +0000 (14:24 +0900)]
Update test data with latest codebase
Some of the changes are not reflected to the test code output. This
change updates testdata using the latest codebase.
Bug:
156099573
Test: generated with rundiff.sh --update
Change-Id: I4dcc73058f827ac363cd555a073ef0f30848059e
Treehugger Robot [Mon, 11 May 2020 04:54:14 +0000 (04:54 +0000)]
Merge "Add sphal and vndk namespaces to unrestricted" am:
7769450af6
Change-Id: I62561019cb4e59f6d747b6ec1835fd4a90c8de16
Treehugger Robot [Mon, 11 May 2020 04:37:25 +0000 (04:37 +0000)]
Merge "Add sphal and vndk namespaces to unrestricted"
Yiwei Zhang [Fri, 8 May 2020 18:21:33 +0000 (11:21 -0700)]
Add sphal and vndk namespaces to unrestricted
Binary executables compiled against libvulkan or libEGL/libGLES*
fundamentally depend on sphal libraries for their functionality. On
production builds, instead of building APKs, devs are always allowed to
use NDK toolchain to build binaries and push to /data/local/tmp to run.
Devs are doing such as to avoid issues with bundling resources,
extracting output, slower build times and flakier perf numbers. It's
also the preferred way for test factory which have cross-platform
devices, because they can automate the process using the same script if
using binary executables.
This change adds the sphal and vndk namespaces to unrestricted
configuration. This change also makes rs an optional namespace for sphal
namespace as it's only needed in system configuration. In addition, this
change has updated vndk namespace generation accordingly.
Bug:
156099573
Test: atest --test-mapping system/linkerconfig
Test: push a Vulkan binary to /data/local/tmp and run
Merged-In: Id09dbcf2ab33a599960f471cbc1b142b6d3eaa1a
Change-Id: Id09dbcf2ab33a599960f471cbc1b142b6d3eaa1a
Victor Chang [Thu, 7 May 2020 09:51:23 +0000 (09:51 +0000)]
"Make com_android_i18n namespace visible" Attempt 2 am:
6fb8b5b1a9
Change-Id: I317f172db8608baf98fe19ef737cfd3dbb490395
Victor Chang [Tue, 5 May 2020 15:17:35 +0000 (16:17 +0100)]
"Make com_android_i18n namespace visible" Attempt 2
This reverts commit
6c8203f28990363fc0bdb125f13138b2d5f7d544.
Reland https://r.android.com/
1288092
Bug:
138994281
Test: CtsJniTestCases
Change-Id: Iba05e69926916aff32a60144fd05448c03b9c088
vichang [Tue, 5 May 2020 12:00:52 +0000 (12:00 +0000)]
Revert "Make com_android_i18n namespace visible" am:
6c8203f289
Change-Id: I4f3ac76ab74935fdeda985245f50013b5abb6d2d
vichang [Tue, 5 May 2020 11:11:30 +0000 (11:11 +0000)]
Revert "Make com_android_i18n namespace visible"
Revert submission
1299494-i18nApex
Reason for revert: Breaking aosp_x86-eng on aosp-master
Reverted Changes:
I30fc3735b:Move ICU from ART APEX to i18n APEX
Icb7e98b5c:Calling @IntraCoreApi from core-icu4j should not c...
Ic7de63fe3:Move core-icu4j into I18n APEX
I65b97bdba:Make com_android_i18n namespace visible
Ia4c83bc15:Move v8 and libpac into i18n APEX
I10e6d4948:Move core-icu4j into i18n APEX
I8d989cad7:Move ICU from ART APEX into i18n APEX
I72216ca12:Move ICU into i18n APEX
Ief9dace85:Add shared library into i18n APEX and add the requ...
I7d97a10ba:Move libpac into i18n APEX
I90fff9c55:Move ICU from ART APEX into i18n APEX
Change-Id: I8e170a25fb334c12af5c2fe4a1fb4afafd56d096
Victor Chang [Tue, 5 May 2020 09:03:58 +0000 (09:03 +0000)]
Make com_android_i18n namespace visible am:
84d3247b54
Change-Id: I34bae003711e039983536baafa3166e09db97652
Victor Chang [Thu, 16 Apr 2020 18:50:13 +0000 (19:50 +0100)]
Make com_android_i18n namespace visible
libnativeloader calls android_get_exported_namespace to link
this namepsace to classloader namespace.
Bug:
138994281
Test: CtsJniTestCases
Change-Id: I65b97bdba462a11d7389b84d873c4daa9c08b45d
Xin Li [Fri, 10 Apr 2020 00:51:28 +0000 (17:51 -0700)]
DO NOT MERGE - Empty merge qt-qpr1-dev-plus-aosp into stag-aosp-master
Bug:
151763422
Change-Id: Ide5d6cedcd1bade47ea7ed391062bf915c10b2a8
Kiyoung Kim [Thu, 2 Apr 2020 08:58:43 +0000 (08:58 +0000)]
Merge changes from topic "lc_sphal" am:
e89356e8e7 am:
2bf8ba3027
Change-Id: I8706e17d211ec40f6e1caf2267ae2be31a6e1453
Kiyoung Kim [Thu, 2 Apr 2020 08:58:42 +0000 (08:58 +0000)]
Move libz from VNDKSP to LLNDK in case of VNDK Lite am:
14530493f6 am:
7f89917084
Change-Id: I37baf74d8fd74bcfd81025356c01f6b844888998
Jooyung Han [Thu, 2 Apr 2020 08:58:34 +0000 (08:58 +0000)]
Add legacy test configuration am:
71b4bf30cf am:
b4104c6db4
Change-Id: Id9727da7feb49704e9557711fa03ff9dec68dfd6
Kiyoung Kim [Thu, 2 Apr 2020 08:34:22 +0000 (08:34 +0000)]
Merge changes from topic "lc_sphal" am:
e89356e8e7
Change-Id: If9a1ad45570daf231a927b5493d33555f6667e26
Kiyoung Kim [Thu, 2 Apr 2020 08:34:19 +0000 (08:34 +0000)]
Move libz from VNDKSP to LLNDK in case of VNDK Lite am:
14530493f6
Change-Id: Iaad65474633d1cb054638fb1def5d42fa466e3b0
Jooyung Han [Thu, 2 Apr 2020 08:34:04 +0000 (08:34 +0000)]
Add legacy test configuration am:
71b4bf30cf
Change-Id: I621252a9071bf6189b760b63415b0cc29c570a12
Kiyoung Kim [Thu, 2 Apr 2020 08:24:56 +0000 (08:24 +0000)]
Merge changes from topic "lc_sphal"
* changes:
Allow SPHAL namespace to access system in case of legacy
Move libz from VNDKSP to LLNDK in case of VNDK Lite
Jooyung Han [Thu, 2 Apr 2020 06:40:41 +0000 (15:40 +0900)]
Add legacy test configuration
And deprecated --legacy option.
Instead, to run linkerconfig with legacy mode, run it without -v option.
(-v is for setting vndk version).
For example,
$ linkerconfig -r <root> -t <target>
Legacy mode:
ro.vndk.version is not set and VNDK is not available.
but other apexes are available.
Bug:
140599044
Test: ./rundiff.sh
Change-Id: I81cba2d6c6466737fcb4dd33407837b016c42b78
Kiyoung Kim [Wed, 1 Apr 2020 08:03:30 +0000 (17:03 +0900)]
Allow SPHAL namespace to access system in case of legacy
In current there is limited link from sphal to platform in case of
legacy device due to absence of VNDK related library list. Anyway, SPHAL
namespace requires access to libraries under /system/lib which is
VNDK-SP in treblelized device. This change adds extra access to system
libs from SPHAL namespace in case of legacy device.
Bug:
152932503
Test: m -j passed
Change-Id: I93fc82a36cf3c2ee33c9bd1f2bb8371bb2d6d700
Kiyoung Kim [Tue, 31 Mar 2020 05:47:32 +0000 (14:47 +0900)]
Move libz from VNDKSP to LLNDK in case of VNDK Lite
In case of VNDK Lite libz should be listed in LLNDK rather than VNDKSP.
This process has been missed while we move the logic to linkerconfig.
This change updates library list based on the library file name in case
of VNDK lite device.
Bug:
141908078
Test: m -j passed
Change-Id: I22eb76619c1242ab26c1d611a08b98177b08285c
Merged-In: I22eb76619c1242ab26c1d611a08b98177b08285c
Jooyung Han [Tue, 31 Mar 2020 15:27:25 +0000 (15:27 +0000)]
Add more configurations for rundiff tests am:
0441fd330b am:
16f9afef28
Change-Id: I701d6bbd4bb19bd1bf66547f7ba8ea28a4293c21
Jooyung Han [Tue, 31 Mar 2020 15:12:16 +0000 (15:12 +0000)]
Add more configurations for rundiff tests am:
0441fd330b
Change-Id: I7b046d2378f0ea002418369b857d2c48585f8bbd
Jooyung Han [Tue, 31 Mar 2020 14:58:57 +0000 (14:58 +0000)]
Refactor rundiff.sh am:
77d84bdee3 am:
488d457650
Change-Id: I5f49094d25a2144d36cba594dbce6fbdd95c9bd6
Jooyung Han [Tue, 31 Mar 2020 14:44:17 +0000 (14:44 +0000)]
Refactor rundiff.sh am:
77d84bdee3
Change-Id: I1798f74bedb3b4f4dc9e8b611ac4e8466cded23c
Jooyung Han [Tue, 31 Mar 2020 07:14:56 +0000 (16:14 +0900)]
Add more configurations for rundiff tests
stage0:
no apexes. this configuration corresponds to the one for
apexd-bootstrap process.
stage1:
with bootstrap apexes. this corresponds to the one right after
apexd-bootstrap finishes
stage2:
with all apexes. this corresponds to the one for every other
processes.
product-enabled:
ro.product.vndk.version is set.
vndk-lite:
ro.vndk.lite is set to true.
Bug:
140599044
Test: ./rundiff.sh
Change-Id: If7dc6aedf05e2078643e52559c580de425693dc5
Jooyung Han [Tue, 31 Mar 2020 06:44:53 +0000 (15:44 +0900)]
Refactor rundiff.sh
(copied from reverted
d283fb913db051ef0653c9ea1af5d2d865dbbbf0)
. Add --update to update golden_output
. Do not rely on ANDROID_BUILD_TOP (required to be run on cloud)
Bug: n/a
Test: ./rundiff.sh # no changes
Change-Id: I098dabd2c5cd06f18a806cf66f593ea930f02945
Jooyung Han [Tue, 24 Mar 2020 09:33:30 +0000 (09:33 +0000)]
Revert "Make diff test as presubmit" am:
9750b6cffc am:
eb90db8630
Change-Id: Ic08e50df5877f5bcd7ae846c1dee594a3f45e16d