c0ffceccf93e1752a555086a04d1484c1df1b165 |
|
20-Jan-2016 |
Christopher Ferris <cferris@google.com> |
Remove dependency on zipalign. Roll our own version of zipalign so that we can break the dependency on the build tools zipalign. This breaks the transitive dependency on androidfw so that building bionic unit tests in brillo works again. Also modify the DlExtTest.ExtInfoUseFdWithOffset test so it dynamically gets the offset of the shared library inside of the zip instead of hard-coding the value. Bug: 25446938 Change-Id: Idfb5d3089960a94eefa2c76e03da1ad2f4d7fb2f
|
42d5fcb9f494eb45de3b6bf759f4a18076e84728 |
|
30-Oct-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Introducing linker namespaces Bug: http://b/22548808 Change-Id: Ia3af3c0a167f1d16447a3d83bb045d143319b1e1
|
a828a2f8e6fd5271787a7dea4c682cbf54425a14 |
|
02-Sep-2015 |
Torne (Richard Coles) <torne@google.com> |
linker: don't pass dlextinfo to dependent loads. Don't pass the parent load's dlextinfo to dependent loads, since this causes the linker to try to load the dependencies using the same addresses/relro/fds/etc as the main library, which is never going to work. This was how it worked before ae69a95 which broke this. Bug: 23742664 Change-Id: I53d8cdf0982d8758e6d2ced4864c704cdf74118f
|
b48275045de93cce292faaf5170af3ead89b3746 |
|
29-Sep-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Optimize dlopen from a zip file This change makes dynamic linker reuse ZipArchiveHandles in ld_library_path on dlopen to optimize the lookup of dt_needed libraries. Bug: http://b/21960534 Change-Id: I65f897910d46dd2ffabdcb0b7842db2f127eee30
|
edfc9f63a261994f2565492436607c04df980e21 |
|
03-Sep-2015 |
Dmitriy Ivanov <dimitry@google.com> |
linker: don't pass dlextinfo to dependent loads Don't pass the parent load's dlextinfo to dependent loads, since this causes the linker to try to load the dependencies using the same addresses/relro/fds/etc as the main library, which is never going to work. This was how it worked before ae69a95 which broke this. Bug: http://b/23742664 Bug: http://b/20948231 Bug: http://b/20841817 Change-Id: I340ebae1127666d5c6c6f9c6521b89fb93f15bdd
|
5341691955e2fc2b271b722c37496d72a0e8c683 |
|
11-Aug-2015 |
Dan Albert <danalbert@google.com> |
Move up to C++14. The default standard version is now ahead of us. Stop specifying C++11 so we get that too. Change-Id: Ic96942cd7fd134118e29b744601b0119e49b6ac4
|
6865082ca6d887766c6651ed2d079dca56a99d32 |
|
10-Jun-2015 |
Evgenii Stepanov <eugenis@google.com> |
Support DT_RUNPATH in the linker. Only $ORIGIN substitution is supported, but not linux-specific $LIB or $PLATFORM. Change-Id: I5814a016c7c91afba080230a547a863686e7c2b9
|
c4ebe60e1a2fc165ff11442765325628e27f2a05 |
|
30-May-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Fix dlsym(handle_of_main_executable, ...) According to man dlopen(3) and posix docs in the case when si is handle of the main executable we need to search not only in the executable and its dependencies but also in all libraries loaded with RTLD_GLOBAL. see also: http://pubs.opengroup.org/onlinepubs/9699919799/functions/dlopen.html Bug: http://b/21528224 Bug: http://b/17512583 Bug: https://code.google.com/p/android/issues/detail?id=173822 Change-Id: Ib2801367ba48b6f3704da89a6d9f5e6911430013 (cherry picked from commit f439b5a3186ca0fef1092f45770abc716da9d87a)
|
f439b5a3186ca0fef1092f45770abc716da9d87a |
|
30-May-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Fix dlsym(handle_of_main_executable, ...) According to man dlopen(3) and posix docs in the case when si is handle of the main executable we need to search not only in the executable and its dependencies but also in all libraries loaded with RTLD_GLOBAL. see also: http://pubs.opengroup.org/onlinepubs/9699919799/functions/dlopen.html Bug: http://b/21528224 Bug: http://b/17512583 Bug: https://code.google.com/p/android/issues/detail?id=173822 Change-Id: Ib2801367ba48b6f3704da89a6d9f5e6911430013
|
ff407803dbbee26ab19c02aaece0e75c019534c4 |
|
15-May-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Remove -z global workaround for target x86 Change-Id: I08e75a1c7437c97e4af59316d2c14c7fa3f65e03 (cherry picked from commit 933332462d37dfa121fa691095cdce218a0139bf)
|
933332462d37dfa121fa691095cdce218a0139bf |
|
15-May-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Remove -z global workaround for target x86 Change-Id: I08e75a1c7437c97e4af59316d2c14c7fa3f65e03
|
4bac6ea463a8f20793f5c1425965729ded1419fe |
|
12-May-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Improved dlsym tests and fixes to linker Answers the question: what if dependent library was preloaded with RTLD_LOCAL flag. Also add test for RTLD_NEXT within local_group. Bug: http://b/17512583 Change-Id: I79e081e68b3a8c0ed8980d4275a06515fea94ec9 (cherry picked from commit 697bd9fd38ab078a117ad9a5777cf286c467b9b9)
|
697bd9fd38ab078a117ad9a5777cf286c467b9b9 |
|
12-May-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Improved dlsym tests and fixes to linker Answers the question: what if dependent library was preloaded with RTLD_LOCAL flag. Also add test for RTLD_NEXT within local_group. Bug: http://b/17512583 Change-Id: I79e081e68b3a8c0ed8980d4275a06515fea94ec9
|
e91e66f223950fdc963cd89697541a32a253a0a6 |
|
25-Apr-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Use bfd linker for x86/x86_64 targets ld.gold in current toolchain for x86_64 does not support -z global. Change-Id: Iea2b192f0f0aa998a02adb356fd4eec4e10a1739
|
ea295f68f1fae7c701baaa717f67296659d567ac |
|
21-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Unregister pthread_atfork handlers on dlclose() Bug: http://b/20339788 Change-Id: I874c87faa377645fa9e0752f4fc166d81fd9ef7e
|
6612d7a34768484eb002c07a1c7df1bd85c0997a |
|
25-Apr-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Enable dlsym_df_1_global test for arm/arm64 Change-Id: I1fdebced93175cb14053e2239e79f97239fc2dc2
|
094f58fb2a57d1ed5736ae3588bf0355618f915b |
|
24-Apr-2015 |
Dimitry Ivanov <dimitry@google.com> |
Revert "Unregister pthread_atfork handlers on dlclose()" The visibility control in pthread_atfork.h is incorrect. It breaks 64bit libc.so by hiding pthread_atfork. This reverts commit 6df122f8528f9b9fcf7dfea14ae98b0ef66274e1. Change-Id: I21e4b344d500c6f6de0ccb7420b916c4e233dd34
|
6df122f8528f9b9fcf7dfea14ae98b0ef66274e1 |
|
21-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Unregister pthread_atfork handlers on dlclose() Change-Id: I326fdf6bb06bed12743f08980b5c69d849c015b8
|
2a815361448d01b0f4e575f507ce31913214c536 |
|
09-Apr-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Support symbol versioning Bug: http://b/20139821 Change-Id: I64122a0fb0960c20b2ce614161b7ab048456b681
|
45c57131d25c82d6026ed36a791e9f5be40d5d7e |
|
04-Apr-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Add libdl dependency for target libraries Fixed x86_64 target build with gcc 4.9 Change-Id: Id3b1e9286c2bcbb8e3ac117bcef957304db7cfd3
|
76ac1acdacc045cf1e56504e011dca68137dcd61 |
|
01-Apr-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Look into local group on dlsym with RTLD_DEFAULT Fix dlsym to look into local group when called with RTLD_DEFAULT and RTLD_NEXT. Bug: 17512583 Change-Id: I541354e89539c712af2ea4ec751e546913027084
|
618f1a36f8635fa0f2d60c621fbf79ead2c3f3de |
|
18-Mar-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Implement lookup by DT_SONAME This CL also fixes SEARCH_NAME hack and resolves https://code.google.com/p/android/issues/detail?id=6670 once and for all. Bug: https://code.google.com/p/android/issues/detail?id=6670 Change-Id: I9b8d6a672cd722f30fbfbb40cdee8d9b39cfe56e
|
279a22f96e639e76c801bdb39aee5576f2280fe0 |
|
23-Jan-2015 |
Dmitriy Ivanov <dimitry@google.com> |
Minimize calls to mprotect Implement refcounter based data protection guard to avoid unnecessary calls to mprotect when dlopen/dlclose is called from a constructor. Bug: 19124318 Big: 7941716 Change-Id: Id221b84ce75443094f99756dc9950b0a1dc87222
|
bfa88bca5ca387d6b3560074050856527cfc7514 |
|
16-Dec-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add another test for weak-reference This one covers undefined weak reference in .so referenced via JUMP_SLOT relocation. Bug: 17526061 Change-Id: Ib8764bd30c1f686c4818ebbc6683cf42dee908b2
|
ab972b9adf8789a9e1b03129cd7f0c22e6bba117 |
|
29-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Count references for groups instead of instances Count references on the group level to avoid partially unloading function that might be referenced by other libraries in the local_group Bonus: with this change we can correctly unload recursively linked libraries. is_recursive check is removed. Also dynamic executables (not .so) with 0 DT_NEEDED libraries are now correctly linked. Change-Id: Idfa83baef402840599b93a875f2881d9f020dbcd
|
9df4b13baff9f958ad39a8cff59924c157978dac |
|
14-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix host build for arm/arm64 Change-Id: Id92543e4080aede205b3e63099fa2baa36ba21f0
|
b3356773c6b5fbbbb26d22b3d6c6e0e598840e44 |
|
14-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add test for --hash-style=sysv With build system switched to gnu-hash we need a test for sysv-hashed library. Change-Id: I34adc216fa79199aa46066cf13fcc1c1f2581f0e
|
ec18ce06f2d007be40ad6f043058f5a4c7236573 |
|
10-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add support for hash-style=gnu Change-Id: I171434a587420895feac8a9b1ad2342087197568
|
ca564e2a994df5976869ec655c7d4056deefcaa2 |
|
04-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Revert "Fix arm64 and arm builds."" This reverts commit 494bee796aa60131981308493e0e295493537e12.
|
0416d88f9c90dcb1b97947a27a7c05f3627484c4 |
|
04-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Revert "Fix symbol lookup order during relocation"" This reverts commit f947be2889639defc6424b1813ccc779528b7598.
|
c343cac62bfd2933e36357b206fdd81da7610164 |
|
04-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Revert "Fix relocation to look for symbols in local group"" This reverts commit 00dce525530c5d26c20750863f3e9890b468787a.
|
7ca96a075b778f1fa2ad265350879238cbcb4d09 |
|
04-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Revert "Add RTLD_NODELETE flag support"" This reverts commit 69c5d108a5cb44167a04d42ffdad6a39648ed235.
|
69c5d108a5cb44167a04d42ffdad6a39648ed235 |
|
04-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Add RTLD_NODELETE flag support" This reverts commit c87f65d2cd0690d81665f8b241c1d763f72b6f80. Bug: 18222321 Bug: 18211780 Change-Id: I00252e26a28a41ab9f1e2dd3b32f0f80d86297f1
|
00dce525530c5d26c20750863f3e9890b468787a |
|
04-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Fix relocation to look for symbols in local group" This reverts commit fd2747bb585fc51b5ad56db09c0e9b66c7091a92. Bug: 18222321 Bug: 18211780 Change-Id: I2d4ebab1e73b7277161af76b99f8249825b22d65
|
f947be2889639defc6424b1813ccc779528b7598 |
|
04-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Fix symbol lookup order during relocation" This reverts commit 976402cca13a1f4f3aa988fd301575e134ef5f2c. Bug: 18222321 Bug: 18211780 Change-Id: Iafdd3d843db7b1cf288be9a0232022816622c944
|
494bee796aa60131981308493e0e295493537e12 |
|
04-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Fix arm64 and arm builds." This reverts commit 445111a1c977e94a4233efd54f3690defa4a7582. Bug: 18222321 Bug: 18211780 Change-Id: I4fa9e1b63ec9b528f8bfed73c2ec15046c43a2fe
|
445111a1c977e94a4233efd54f3690defa4a7582 |
|
01-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix arm64 and arm builds. Bug: 18186310 (cherry picked from commit 4e446b19d8710cd2004785db4a00f18f249fe73f) Change-Id: Ibc77a9ade36dc6b9bf5a316b5ab9ae5f0a70e826
|
4e446b19d8710cd2004785db4a00f18f249fe73f |
|
01-Nov-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix arm64 and arm builds. Change-Id: I2c8c41626768e792f27a2616f2cd5ae66606319d
|
976402cca13a1f4f3aa988fd301575e134ef5f2c |
|
28-Aug-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix symbol lookup order during relocation Relocate symbol against DF_1_GLOBAL shared libraries loaded before this shared library. This includes main executable, ld_preloads and other libraries that have DF_1_GLOBAL flag set. Bug: 2643900 Bug: 15432753 Bug: 18186310 (cherry picked from commit d225a5e65223b375a63548c4b780f04d8f3d7b60) Change-Id: I4e889cdf2dfbf8230b0790053d311ee6b0d0ee2d
|
fd2747bb585fc51b5ad56db09c0e9b66c7091a92 |
|
21-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix relocation to look for symbols in local group The local group is a sequence of libraries in default (breadth-first) order. It allows RTLD_LOCALLY loaded library to correctly relocate symbols within its group (see test-cases). Local group lookup is performed after main executable and ld_preloads. Bug: 2643900 Bug: 15432753 Bug: 18186310 (cherry picked from commit cfa97f172dc1b10d650fefbb6ccffd88ce72a5fb) Change-Id: I5fa8c673f929e4652c738912c7ae078d7ec286d2
|
4d0c1f673f8a22f5415b9a879e4544f6bcfe419c |
|
17-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Correct way to specify additional dependencies Previous one was not covering all the targets Bug: 17548097 Bug: 18186310 (cherry picked from commit 4a9e1937c56511aef579312bf39ab345f9179230) Change-Id: I2cd9e58893555d16cbfe291b2d1279621489d5ad
|
382e06ce8eab506276aaad39da3fbd533ef898d2 |
|
31-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add dlfcn_test to glibc test suite. Bug: 18186310 (cherry picked from commit eb27bbae8f0edc6b62ca2db73256c7fb53b9e9bf) Change-Id: I1d608dfa12dbafbdcdb8bc6d818c5872404c19e0
|
c87f65d2cd0690d81665f8b241c1d763f72b6f80 |
|
20-May-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add RTLD_NODELETE flag support Bug: 18186310 Bug: https://code.google.com/p/android/issues/detail?id=64069 (cherry picked from commit 1b20dafdbe65e43b9f4c95057e8482380833ea91) Change-Id: Ic02eec22a7c322ece65eb40730a3404f611526b1
|
d225a5e65223b375a63548c4b780f04d8f3d7b60 |
|
28-Aug-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix symbol lookup order during relocation Relocate symbol against DF_1_GLOBAL shared libraries loaded before this shared library. This includes main executable, ld_preloads and other libraries that have DF_1_GLOBAL flag set. Bug: 2643900 Bug: 15432753 Change-Id: Ia788748be59b739d1c7e62b978e7e255f9e65c7b
|
b08629862968772c35418698c7d6d99a5110f3f7 |
|
24-Oct-2014 |
Chih-Hung Hsieh <chh@google.com> |
Disable clang compilation due to lack of ifunc. BUG: 18055309 Change-Id: I0f36011cf7872a20ddd36a6c3c607eb96f0a8ec2
|
cfa97f172dc1b10d650fefbb6ccffd88ce72a5fb |
|
21-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix relocation to look for symbols in local group The local group is a sequence of libraries in default (breadth-first) order. It allows RTLD_LOCALLY loaded library to correctly relocate symbols within its group (see test-cases). Local group lookup is performed after main executable and ld_preloads. Bug: 2643900 Bug: 15432753 Change-Id: I9bb013b46d17dbb5cbdfb8fef26f552748385541
|
de01780f46e4e4540c7a1ea7d0302f460c880e9d |
|
04-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add file_offset parameter to android_extinfo Bug: 17762003 (cherry picked from commit 07e5bc152d8a3ad4c50808bb86f3c0f2c5e2f514) Change-Id: I72d527831384ff5dde013a4c8dfe639fbec165f5
|
4a9e1937c56511aef579312bf39ab345f9179230 |
|
17-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Correct way to specify additional dependencies Previous one was not covering all the targets Bug: 17548097 Change-Id: I425e0f8d6e5a43feabd29dcb327049b82754d249
|
75d66dd9a7d6add031f4c2206751c45c937fc139 |
|
07-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix 2nd arch prefix application Bug: 17887283 Change-Id: I7b3b2332212fe416d6b5f5c2e5c1e07605ba09aa
|
07e5bc152d8a3ad4c50808bb86f3c0f2c5e2f514 |
|
04-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add file_offset parameter to android_extinfo Bug: 17762003 Change-Id: I8fb267a3155acef3dba534038cf5d1ef00d7154b
|
2cd77d301ff6860836428cda2ccd626b3bb6912e |
|
02-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Undo the bad work of Automerger Change-Id: I585388aebc556a094db4c22e647edacea7cde129
|
145372b1bced73595d51405bcbda73cd092e2425 |
|
02-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "L-MR1 specific fixes" This reverts commit 1cd0c6777f35b531c9ce78397d0915aa521b3e87.
|
1cd0c6777f35b531c9ce78397d0915aa521b3e87 |
|
02-Oct-2014 |
Dmitriy Ivanov <dimitry@google.com> |
L-MR1 specific fixes Reset soinfo version to 0. Disable ifunc test for arm64 because of old toolchain in lmp-mr1-dev branch Note: this commit should be reverted in -plus-aosp branch. Change-Id: I2d6d996d43bc35d5d4975c745779f43a988b31e6
|
7d971ec14b80cac442aeea8d88e9eb2e3ab6f214 |
|
09-Sep-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix unload of recursively linked library Expanded test for recursive libs. Fixed bug with unnecessary soinfo_free of already loaded library. (cherry picked from commit a6ac54a215d6b64f5cc5a59b66c1dbfbb41ea9f5) Change-Id: I6907c723d9fbdf6b2777f3f236b1e29b0843edd6
|
f4cb6313645ef65cc0eea0a439e51b6788cd3439 |
|
12-Sep-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add IFUNC support for arm64 and IRELATIVE reloc There are number of changes in the way IFUNC related relocations are done: 1. IRELATIVE relocations are now supported for x86/x86_64 and arm64. 2. IFUNC relocations are now relying on static linker to generate them in correct order - this removes necessety of additional relocation pass for ifuncs. 3. Related to 2: rela?.dyn relocations are preformed before .plt ones. 4. Ifunc are resolved on symbol lookup this approach allowed to avoid mprotect(PROT_WRITE) call on r-x program segments. Bug: 17399706 Bug: 17177284 (cherry picked from commit 9aea164457c269c475592da36b4655d45f55c7bc) Change-Id: Ie19d900fc203beb93faf8943b0d06d534a6de4ad
|
ae69a9584baf8dd6a28065538ca09d1924ebd9e4 |
|
06-Sep-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Load libraries in breadth-first order This patch fixes the problem with symbol search order for dlsym(RTLD_DEFAULT/RTLD_NEXT, .) by loading libraries and ld_preloads in correct order. Bug: https://code.google.com/p/android/issues/detail?id=74255 Attempt: 2 (cherry picked from commit 14669a939d113214a4a20b9318fca0992d5453f0) Change-Id: Id87540c96a2242220967b6fa5d84ddcd829e2b97
|
c0133a73b6f37b88afc8dafb6f63af03cbb708f6 |
|
05-Sep-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Load libraries in breadth-first order" This reverts commit a3ad450a2e3fb6b3fe359683b247eba20896f646. (cherry picked from commit 498eb18b82a425f9f30132e4832f327b2ee0e545) Change-Id: Iec7eab83d0c0ed1604e1e8ea3f9e9d0ce1d29680
|
8de1ddece0d0b85eafeb86c06cf3a734dadf2b55 |
|
05-Sep-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix order of soinfo links (repairs libcxx tests). (cherry picked from commit b2a30ee8d209154efc367db11b4167a5d6db605f) Change-Id: I59c5333bc050cbbea14051cea9220be2f64ee383
|
59c12a652794273da22907a374222f4fa7d975c6 |
|
29-Jul-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Load libraries in breadth-first order This patch fixes the problem with symbol search order for dlsym(RTLD_DEFAULT/RTLD_NEXT, .) by loading libraries and ld_preloads in correct order. Bug: https://code.google.com/p/android/issues/detail?id=74255 (cherry picked from commit a3ad450a2e3fb6b3fe359683b247eba20896f646) Change-Id: I1125de10272c84e4f075cbc72859c1f6b3e89943
|
31b88da8431096a6df276705046ca7a012fa3530 |
|
23-Jul-2014 |
Brigid Smith <brigidsmith@google.com> |
Added test for ifunc support in dynamic linker. ifuncs now work in i386 and x86_64 when called in the same library as well as in a different library. Bug:6657325 (cherry picked from commit c5a13efa9bc4264be0a9a9e37c00633af01584ed) Change-Id: I321d780bc2f9bd1baa749e1acacd2683aefe827b
|
1b20dafdbe65e43b9f4c95057e8482380833ea91 |
|
20-May-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add RTLD_NODELETE flag support Bug: https://code.google.com/p/android/issues/detail?id=64069 Change-Id: Ie5f90482feae86391172be4b32d6cb7d76f446fb
|
bf50e2645d84bec481cb42da5f2ff4096061cbf8 |
|
18-Sep-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add Android*.mk files to additional dependencies Bug: 17548097 Change-Id: Ie0d9c8f33459320008f561217c54eba42d283b47
|
eb27bbae8f0edc6b62ca2db73256c7fb53b9e9bf |
|
15-Sep-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add dlfcn_test to glibc test suite. Change-Id: I955e4f7dfcc23ea5c767f967b3532dc31663b876
|
a6ac54a215d6b64f5cc5a59b66c1dbfbb41ea9f5 |
|
09-Sep-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix unload of recursively linked library Expanded test for recursive libs. Fixed bug with unnecessary soinfo_free of already loaded library. Change-Id: I2cc19f2650c8b12a35feeac127ef608ebba44d88
|
9aea164457c269c475592da36b4655d45f55c7bc |
|
12-Sep-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add IFUNC support for arm64 and IRELATIVE reloc There are number of changes in the way IFUNC related relocations are done: 1. IRELATIVE relocations are now supported for x86/x86_64 and arm64. 2. IFUNC relocations are now relying on static linker to generate them in correct order - this removes necessety of additional relocation pass for ifuncs. 3. Related to 2: rela?.dyn relocations are preformed before .plt ones. 4. Ifunc are resolved on symbol lookup this approach allowed to avoid mprotect(PROT_WRITE) call on r-x program segments. Bug: 17399706 Bug: 17177284 Change-Id: I414dd3e82bd47cc03442c5dfc7c279949aec51ed
|
14669a939d113214a4a20b9318fca0992d5453f0 |
|
06-Sep-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Load libraries in breadth-first order This patch fixes the problem with symbol search order for dlsym(RTLD_DEFAULT/RTLD_NEXT, .) by loading libraries and ld_preloads in correct order. Bug: https://code.google.com/p/android/issues/detail?id=74255 Change-Id: If1ba5c807322409faa914e27ecb675e2c4541f0d Attempt: 2
|
498eb18b82a425f9f30132e4832f327b2ee0e545 |
|
05-Sep-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Load libraries in breadth-first order" This reverts commit a3ad450a2e3fb6b3fe359683b247eba20896f646. Change-Id: Ia2b838ad2159c643b80c514849582f4b4f4f40e5
|
b2a30ee8d209154efc367db11b4167a5d6db605f |
|
05-Sep-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix order of soinfo links (repairs libcxx tests). Change-Id: Iee9de09657351cd6a7512784ca797e4b84cdd98b
|
a3ad450a2e3fb6b3fe359683b247eba20896f646 |
|
29-Jul-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Load libraries in breadth-first order This patch fixes the problem with symbol search order for dlsym(RTLD_DEFAULT/RTLD_NEXT, .) by loading libraries and ld_preloads in correct order. Bug: https://code.google.com/p/android/issues/detail?id=74255 Change-Id: I4cf84c70dbaabe99310230dfda12385ae5401859
|
02aa70589d22fa9b65da43de705d6de2715870c6 |
|
19-Aug-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Add support for protected local symbol lookup." This reverts commit d97e9f546ea195686a78e539315b273393609b9e. Bug: 17107521 (cherry picked from commit 9419420919ea846bbad5510850c7aaec95021648) Change-Id: I1a6df946ac8075699e77d68ffa6ac4a21b88e4bf
|
9419420919ea846bbad5510850c7aaec95021648 |
|
19-Aug-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Add support for protected local symbol lookup." This reverts commit d97e9f546ea195686a78e539315b273393609b9e. Bug: 17107521 Change-Id: I2b81ce2b5a4a2d166133a2626e49d81b6aef3672
|
4571f31bd49e4951c9f1e0ff642c74fd79fe740a |
|
15-Aug-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add atexit test for attributed c-tor/d-tor 1. Add test for __attribute__((constructor/destructor)) and static constructor 2. Compile C++ testlibs with -std=gnu++11 Change-Id: I67f9308144a0c638a51f111fcba8e1933fe0ba41
|
c5a13efa9bc4264be0a9a9e37c00633af01584ed |
|
23-Jul-2014 |
Brigid Smith <brigidsmith@google.com> |
Added test for ifunc support in dynamic linker. ifuncs now work in i386 and x86_64 when called in the same library as well as in a different library. Bug:6657325 Change-Id: Ic0c48b1b0a76cb90f36c20c79f68294cc3fd44a1
|
db7a17d4ff56a05af01ee2fee1f3c55245bfc630 |
|
05-Aug-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Revert "Fix dlsym(3) to do breadth first search."" This reverts commit 1b1966d9448e979d1503a3d8843708bfa8880dc6. Change-Id: I05d6d3481aaf8f3e260d2e5e950248519a1d347f
|
1b1966d9448e979d1503a3d8843708bfa8880dc6 |
|
04-Aug-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Revert "Fix dlsym(3) to do breadth first search." This reverts commit 422106a24d620af4be58e8d92a2e9b7b6167b72d. Change-Id: I9e26a6933d10eb30438b521450f2010997ca5aee
|
422106a24d620af4be58e8d92a2e9b7b6167b72d |
|
29-Jul-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix dlsym(3) to do breadth first search. dlsym(3) with handle != RTLD_DEFAULT|RTLD_NEXT performs breadth first search through the dependency tree. Bug: 16653281 (cherry picked from commit aa0f2bdbc22d4b7aec5d3f8f5f01eaeaa13414c2) Change-Id: I0ba8c2034ab341f8a279cdb4e2e7e47f1aef7897
|
aa0f2bdbc22d4b7aec5d3f8f5f01eaeaa13414c2 |
|
29-Jul-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix dlsym(3) to do breadth first search. dlsym(3) with handle != RTLD_DEFAULT|RTLD_NEXT performs breadth first search through the dependency tree. Bug: 16653281 Change-Id: I017a6975d1a62abb0218a7eb59ae4deba458e324
|
04dc91ae763adc403a14c88b4c46f77b3d2d71a3 |
|
01-Jul-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Load library using file handle. * This patch enables dlopen by file descriptor instead of path/name. Bug: 15984217 Change-Id: Ib39051e00567fb97070bf96d8ce63993877c0a01
|
d97e9f546ea195686a78e539315b273393609b9e |
|
29-Jun-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Add support for protected local symbol lookup. Bug: http://code.google.com/p/android/issues/detail?id=66048 Change-Id: Ib334223df27adad9477fb241ab099c5e26df4a7d
|
1f5e1a3cbc564c593fe1090894ecdb070f36e20c |
|
03-Jun-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Move libraries for unit-tests to separate folder Change-Id: I1653f3f2fd63ba25525369bc725c8f7438ecf021
|
ce44166c737b6737c3a0820bef10b074a5e36cf8 |
|
18-Jun-2014 |
Dmitriy Ivanov <dimitry@google.com> |
Fix weak function lookups * Linker now correctly resolves function defined with __attribute__((weak)). Bug: https://code.google.com/p/android/issues/detail?id=70206 Change-Id: I82efb905676c25fefb1b11a13f5fecb0f1384657
|