Dimitry Ivanov
c666838ad6
Merge "Revert "[MIPS] Support FR=0 emulation on FR=1 64-bit FP registers""
2015-06-24 20:44:36 +00:00
Dimitry Ivanov
cc83890464
Revert "[MIPS] Support FR=0 emulation on FR=1 64-bit FP registers"
...
This reverts commit d02ec08427
.
Bug: http://b/22045439
Change-Id: Iaf10ff1e2948083cce0098f29d5b87b32bfae1b7
2015-06-24 20:43:33 +00:00
Dmitriy Ivanov
e4ad91f86a
Remove text-relocs support for apps targeting M+
...
Remove support of text-relocations for apps targeting sdk version > 22
Bug: http://b/20013628
Change-Id: I2127739544480c747315e32df15dfbd1b79de4f5
(cherry picked from commit 3e6f780754
)
2015-06-22 12:26:53 -07:00
Duane Sand
d02ec08427
[MIPS] Support FR=0 emulation on FR=1 64-bit FP registers
...
Enables running of older MIPS NDK-built apps on mips64r6.
Works with kernel supporting FRE emulation, and old kernels.
Change-Id: I13923fe62cd83ad1d337f13a50f2eda2dfdd906f
2015-06-21 11:36:57 -07:00
Dmitriy Ivanov
a9703332f6
Improve library lookup logic
...
Linker tries to open a library even if it can
be found by soname. This only happens if the
library was previously opened under different
target sdk version.
Bug: http://b/21876587
Bug: http://b/21153477
Bug: http://b/21171302
Bug: https://code.google.com/p/android/issues/detail?id=160921
Change-Id: I7dbbcc3b49933bffd89ca0af55371e1a1f2bf4c2
(cherry picked from commit 28154f5c56
)
2015-06-17 17:16:44 -07:00
Dimitry Ivanov
d2c81ed000
Revert "Improve library lookup logic"
...
This reverts commit 455c145e3c
.
Bug: http://b/21876587
Bug: http://b/21153477
Bug: http://b/21171302
Bug: https://code.google.com/p/android/issues/detail?id=160921
Change-Id: Iad21ddfc1ac749d12bcb52384a8d937b307dd03b
2015-06-17 21:34:25 +00:00
Dmitriy Ivanov
455c145e3c
Improve library lookup logic
...
Linker tries to open a library even if it can
be found by soname. This only happens if the
library was previously opened under different
target sdk version.
Bug: http://b/21876587
Bug: http://b/21153477
Bug: http://b/21171302
Bug: https://code.google.com/p/android/issues/detail?id=160921
Change-Id: I769a04b6b1368a107d43f399297be14050338bbc
(cherry picked from commit ea4ef52fa4
)
2015-06-17 10:18:28 -07:00
Nikola Veljkovic
dee130f598
Revert "[MIPS] Do not use compact branches until GDB supports them"
...
This reverts commit 3cec6eca92
.
2015-06-17 17:17:54 +02:00
Dmitriy Ivanov
402a75060d
Make path to apk compliant with jar url format
...
Bug: http://b/21726698
Bug: http://b/8076853
Change-Id: I8c1942a98fe3119746b4dc9f60a7ff215ea7009c
(cherry picked from commit 524f1f1efe
)
2015-06-11 11:01:23 -07:00
Dmitriy Ivanov
175dae92d7
Fix l_addr for the linker
...
Bug: http://b/21765603
Change-Id: I97710ef2436eac2160e29ba3e4521f6e63a1907c
2015-06-10 19:47:26 -07:00
Evgenii Stepanov
72af1235e4
Merge "Support DT_RUNPATH in the linker."
2015-06-10 23:56:03 +00:00
Evgenii Stepanov
6865082ca6
Support DT_RUNPATH in the linker.
...
Only $ORIGIN substitution is supported, but not linux-specific $LIB
or $PLATFORM.
Change-Id: I5814a016c7c91afba080230a547a863686e7c2b9
2015-06-10 16:44:22 -07:00
Elliott Hughes
ba1d40a3f1
Merge "Statically linked executables should honor AT_SECURE."
2015-06-10 22:49:57 +00:00
Dmitriy Ivanov
f3463db7eb
Merge "Check if strtab exists before using it"
2015-06-10 22:26:07 +00:00
Elliott Hughes
1801db3d3f
Statically linked executables should honor AT_SECURE.
...
Bug: http://b/19647373
Change-Id: I10e7682d9cec26a523f1a3597ca5326c3ca42ebe
2015-06-09 20:10:25 -07:00
Dmitriy Ivanov
8a11628355
Add flag that makes linker honor min(p_vaddr)
...
Bug: http://b/21523078
Change-Id: Ice72766fb6ad3bd333c32b496e7870121e17a763
2015-06-09 13:44:31 -07:00
Dmitriy Ivanov
624b8f17a1
Check if strtab exists before using it
...
Bug: http://b/21696087
Change-Id: I1e22d5fd6fe2faead332249493123c9a085081e9
2015-06-08 10:41:33 -07:00
Dmitriy Ivanov
1913352c6b
Backward compatibility for dlsym(RTLD_DEFAULT, ...)
...
Do not skip RTLD_LOCAL libraries in dlsym(RTLD_DEFAULT, ...)
if the library is opened by application with target api level <= 22
Bug: http://b/21565766
Bug: http://b/17512583
Change-Id: Ic45ed1e4f53e84cba9d74cab6b0049c0c7aa8423
(cherry picked from commit 04f7e3e955
)
2015-06-02 18:09:23 -07:00
Dmitriy Ivanov
11b15b23aa
Merge "Work around for libraries without dt_soname"
2015-06-02 21:09:41 +00:00
Dmitriy Ivanov
75108f4f83
Work around for libraries without dt_soname
...
Applies only for apps targeting sdk version <= 22
Bug: http://b/21565766
Change-Id: If0bf2229dc1341e9ca09f9a05d0890515273d5a2
(cherry picked from commit 38c37d6705
)
2015-06-02 14:02:22 -07:00
Dmitriy Ivanov
f439b5a318
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
2015-06-01 14:33:43 -07:00
Elliott Hughes
d70891687d
Merge "[MIPS] Do not use compact branches until GDB supports them"
2015-05-29 04:39:24 +00:00
Dmitriy Ivanov
5511551009
Merge "Improve some of error/warning messages"
2015-05-28 22:28:13 +00:00
Dmitriy Ivanov
d974e88046
Work around incorrect dt_needed entries
...
This applies for apps targeting sdk<=22 and
only for lp32 platforms.
Bug: http://b/21364029
Change-Id: I903e81c9ccda2a8beaba1d132d68c77d30a4cdb2
2015-05-28 14:56:42 -07:00
Dmitriy Ivanov
087005f37e
Improve some of error/warning messages
...
Bug: http://b/20464031
Change-Id: I948141c46f9e054fc45f5934153dee56ce3cd558
2015-05-28 11:44:31 -07:00
Dmitriy Ivanov
79fd668bb4
Add functions to provide target sdk version
...
Bug: http://b/21364029
Change-Id: I8648d1bff6c8fd6e7cd12da7f128e048b9f2829a
2015-05-27 14:31:36 -07:00
Nikola Veljkovic
3cec6eca92
[MIPS] Do not use compact branches until GDB supports them
...
GDB does not yet have support for compact branches, and is not able
to set a breakpoint on rtld_db_dlactivity(), which is compiled into
one JIC instruction. Unfortunately, We cannot turn off generation of
JIC compact branch. Instead, add unoptimized FP handling code, so GDB
will have something to land on.
Change-Id: Iddcf40ec018972398179018d049b8323fcd258b7
2015-05-25 16:28:14 +02:00
Dmitriy Ivanov
b96ac41b32
Fix RTLD_NEXT lookup for the local_group
...
Linker used to skip RTLD_NEXT within local_group when
caller->next is nullptr (which represents load order
but not the order within local_group dependency tree)
Bug: http://b/21380474
Change-Id: I178fc4657b19bceb871635b177c1df67855b1708
2015-05-22 19:46:11 +00:00
Dmitriy Ivanov
a42b5bcd89
Merge "Apply work around b/19059885 to x86"
2015-05-16 16:56:49 +00:00
Dmitriy Ivanov
9185e04f72
Apply work around b/19059885 to x86
...
Bug: http://b/19059885
Bug: http://b/21203348
Change-Id: Ic375e9f877d68de8f866d17362879a7dde638465
(cherry picked from commit 69a5fb951d
)
2015-05-15 18:42:14 -07:00
Elliott Hughes
882283e9e2
Merge "Don't use TEMP_FAILURE_RETRY on close in bionic."
2015-05-15 23:24:12 +00:00
Elliott Hughes
4e8ef698d0
Don't use TEMP_FAILURE_RETRY on close in bionic.
...
Bug: http://b/20501816
Change-Id: Id64b5109cc2b165fa0351b6edbb865a5e5058008
2015-05-15 16:20:07 -07:00
John Reck
e77e335b54
Fix regression in crash reporting
...
Bug: 19532651
Partial revert of be0e43b776
Change-Id: I99e220328aff985facb920ebcd84ac1a016759b5
(cherry picked from commit d7ad443cfd
)
2015-05-15 09:28:10 -07:00
Spencer Low
0346ad7a4f
ScopedFd: Don't use TEMP_FAILURE_RETRY() with close()
...
According to the comments in Posix_close(), TEMP_FAILURE_RETRY() should
not be used with close():
462bdac45c
%5E%21/#F12
Kill ScopedFd by simplifying the single caller.
Change-Id: I248c40b8c2fc95f1938a6edfc245c81847fc44af
Signed-off-by: Spencer Low <CompareAndSwap@gmail.com>
2015-05-13 13:27:11 -07:00
Dmitriy Ivanov
fe77d2d003
Merge "Improved dlsym tests and fixes to linker"
2015-05-12 20:48:17 +00:00
Dmitriy Ivanov
697bd9fd38
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
2015-05-12 13:46:40 -07:00
Elliott Hughes
f58ac87182
Update NOTICE files (the second time today).
...
Change-Id: Ifb031d29ee697ee0682bd651e0081493e8016e67
2015-05-12 10:44:37 -07:00
Elliott Hughes
7e54c762fc
Update NOTICE files.
...
(cherry-pick of f0bd92db8966b04062fda0986dacf80891e1a378.)
Change-Id: I4e170118abf452dd87ffe79d343ba1e2b53955de
2015-05-12 10:33:20 -07:00
Elliott Hughes
8a330cad8d
Merge "Simplify three copyright headers."
2015-05-12 17:27:04 +00:00
Elliott Hughes
c69ace87ec
Simplify three copyright headers.
...
There's no reason to have multiple years in our own copyright headers,
and given the stupidity of our NOTICE file generation, it just creates
more junk.
Change-Id: I065a3811c2e2584e3b649a18ad9460286bc72b92
2015-05-12 10:10:01 -07:00
Dmitriy Ivanov
3edb9182ff
Use realpath for log and error messages
...
Bug: http://b/20885931
Change-Id: Ida8ab7982ca75fa73da13c4cb10a6b2e53bc2c8e
2015-05-07 10:48:00 -07:00
Dmitriy Ivanov
406d99665c
VersionTracker: Ignore libraries without soname
...
Bug: http://b/20872443
Change-Id: I7bd076885c1feae39af6ea64c9442bcc5ae5a1dc
(cherry picked from commit 8264afb377
)
2015-05-06 12:04:57 -07:00
Dmitriy Ivanov
dbe26fdcc7
Fix protected symbol lookups for mips
...
Bug: http://b/20694161
Change-Id: I5cc58034f9776e1db9cddc34abe48ef85f6048f4
2015-05-04 19:30:49 -07:00
Dmitriy Ivanov
f39cb63603
Lookup version info when relocating mips got
...
Bug: http://b/20693971
Bug: http://b/20139821
Change-Id: I28bd3bc44dafe048761b2c598facfe20320128c4
2015-04-30 20:17:03 -07:00
Dmitriy Ivanov
7e4bbbae4a
Refactoring: move VersionTracker to link_image
...
Use one instance of VersionTracker per link (instead of 2).
Change-Id: I6860013df65f5969975c82ebdae8bd90a82e0a82
2015-04-30 19:49:19 -07:00
Dmitriy Ivanov
31b408d2c2
Refactoring: extract lookup_version_info(..)
...
Change-Id: I47f9c21a1738dc520fd83281c8227dc3a7e79650
2015-04-30 16:12:32 -07:00
Dmitriy Ivanov
f29640c2d8
Merge "linker: initialize system properties"
2015-04-29 23:44:57 +00:00
Dmitriy Ivanov
0373d4f473
Fix mips relocation to use load_bias as intended
...
Bug: http://b/20658994
Change-Id: I5a15605fe34db359e26d563e13841ae993083c4a
2015-04-29 14:41:06 -07:00
Dmitriy Ivanov
f8093a9485
Fix LD_PRELOAD for dlopen()
...
We did not set DF_1_GLOBAL flag for LD_PRELOADed
libraries which led to the situation when ld_preloads
where ignored during on dlopen()
Change-Id: I696b3b2506a8ed4c0984ad2c803210a7a4f8e686
2015-04-28 18:09:53 -07:00
Dmitriy Ivanov
b4e5067cab
linker: initialize system properties
...
Bug: http://b/20567629
Bug: https://code.google.com/p/chromium/issues/detail?id=478886
Change-Id: I8d2d89b749015e7fcd6e7ea646911f2e617dd1ba
2015-04-28 15:52:52 -07:00