Dmitriy Ivanov
d74aa58035
Merge "Fix unload of recursively linked library"
2014-09-12 16:55:42 +00:00
Dmitriy Ivanov
aad92067bf
Merge "Reformatting"
2014-09-12 16:50:29 +00:00
Dmitriy Ivanov
66bbf1595c
Merge "Refactoring: C++11 style DISABLE_ bionic marcos"
2014-09-12 16:50:05 +00:00
Dmitriy Ivanov
6abf624d12
Reformatting
...
No functional changes.
Change-Id: If71775e5fc207e91ebd31ba3c5f9d2c13dc8dada
2014-09-12 09:43:13 -07:00
Elliott Hughes
0654250eb9
am 8d8a789c: Merge "Expose __swsetup for LP32 binary compatibility."
...
* commit '8d8a789c49ffb6b71e4b8f34df937cfaaff86e40':
Expose __swsetup for LP32 binary compatibility.
2014-09-12 05:59:18 +00:00
Dmitriy Ivanov
5a6e31c3cb
am 6487f0d8: Merge "Add IFUNC support for arm64 and IRELATIVE reloc"
...
* commit '6487f0d8341b00b476995e0174dc92e5ae8efbbe':
Add IFUNC support for arm64 and IRELATIVE reloc
2014-09-12 05:59:16 +00:00
Elliott Hughes
7f4c7060f0
am 5920a9ad: Merge "Add pthread_gettid_np and re-expose __get_thread for LP32."
...
* commit '5920a9ad5fd9f8d515c683e164f946bcfef1f1c3':
Add pthread_gettid_np and re-expose __get_thread for LP32.
2014-09-12 05:59:16 +00:00
Elliott Hughes
da7fe217d8
am 7e00b44e: Expose __swsetup for LP32 binary compatibility.
...
* commit '7e00b44e80d6e38b8ab86d0ebc86b666c0ac2ef6':
Expose __swsetup for LP32 binary compatibility.
2014-09-12 05:48:54 +00:00
Elliott Hughes
66265e80a1
am 27efc488: Add pthread_gettid_np and re-expose __get_thread for LP32.
...
* commit '27efc48814b8153c55cbcd0af5d9add824816e69':
Add pthread_gettid_np and re-expose __get_thread for LP32.
2014-09-12 05:48:52 +00:00
Dmitriy Ivanov
a6ac54a215
Fix unload of recursively linked library
...
Expanded test for recursive libs. Fixed bug with unnecessary
soinfo_free of already loaded library.
Change-Id: I2cc19f2650c8b12a35feeac127ef608ebba44d88
2014-09-11 22:40:48 -07:00
Elliott Hughes
8d8a789c49
Merge "Expose __swsetup for LP32 binary compatibility."
2014-09-12 01:27:45 +00:00
Elliott Hughes
5f35710fad
Expose __swsetup for LP32 binary compatibility.
...
(cherry-pick of 7e00b44e80d6e38b8ab86d0ebc86b666c0ac2ef6.)
Bug: 17476127
Change-Id: I0ef1355ac913d782c268a638f88642d6cfc236c2
2014-09-11 18:23:46 -07:00
Dmitriy Ivanov
6487f0d834
Merge "Add IFUNC support for arm64 and IRELATIVE reloc"
2014-09-12 00:40:12 +00:00
Elliott Hughes
7e00b44e80
Expose __swsetup for LP32 binary compatibility.
...
Bug: 17476127
Change-Id: I0ef1355ac913d782c268a638f88642d6cfc236c2
2014-09-11 16:41:11 -07:00
Dmitriy Ivanov
9aea164457
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
2014-09-11 16:30:45 -07:00
Elliott Hughes
5920a9ad5f
Merge "Add pthread_gettid_np and re-expose __get_thread for LP32."
2014-09-11 23:25:46 +00:00
Elliott Hughes
a4831cb4a3
Add pthread_gettid_np and re-expose __get_thread for LP32.
...
A lot of third-party code calls the private __get_thread symbol,
often as part of a backport of bionic's pthread_rwlock implementation.
Hopefully this will go away for LP64 (since you're guaranteed the
real implementation there), but there are still APIs that take a tid
and no way to convert between a pthread_t and a tid. pthread_gettid_np
is a public API for that. To aid the transition, make __get_thread
available again for LP32.
(cherry-pick of 27efc48814b8153c55cbcd0af5d9add824816e69.)
Bug: 14079438
Change-Id: I43fabc7f1918250d31d4665ffa4ca352d0dbeac1
2014-09-11 16:22:50 -07:00
Elliott Hughes
27efc48814
Add pthread_gettid_np and re-expose __get_thread for LP32.
...
A lot of third-party code calls the private __get_thread symbol,
often as part of a backport of bionic's pthread_rwlock implementation.
Hopefully this will go away for LP64 (since you're guaranteed the
real implementation there), but there are still APIs that take a tid
and no way to convert between a pthread_t and a tid. pthread_gettid_np
is a public API for that. To aid the transition, make __get_thread
available again for LP32.
Bug: 14079438
Change-Id: I43fabc7f1918250d31d4665ffa4ca352d0dbeac1
2014-09-11 16:11:43 -07:00
Elliott Hughes
d415e27d5b
am 9e833bf0: Fix mips __fadvise64.S build failure.
...
* commit '9e833bf0cf2c5bc0e6b65e4d96aa4f2b33113771':
Fix mips __fadvise64.S build failure.
2014-09-11 18:32:24 +00:00
Elliott Hughes
5691dcfc0d
am ea66004c: Merge "Fix mips __fadvise64.S build failure."
...
* commit 'ea66004c4a051e40c49314d808e7359634f6c641':
Fix mips __fadvise64.S build failure.
2014-09-11 17:32:03 +00:00
Lorenzo Colitti
77f01f4306
am 993a2315: am 33a73bfa: When comparing DNS server configs, also compare number of servers
...
* commit '993a2315a7ddc786ce9180258aa3db498bf9326e':
When comparing DNS server configs, also compare number of servers
2014-09-11 17:27:10 +00:00
Elliott Hughes
9e833bf0cf
Fix mips __fadvise64.S build failure.
...
Bug: 12449798
(cherry picked from commit 9990b3973bdfcda5419c06886215147a878222f1)
Change-Id: Iba92e2aa262666a59fc38b870dfd9f4082eeb628
2014-09-11 10:15:14 -07:00
Elliott Hughes
ea66004c4a
Merge "Fix mips __fadvise64.S build failure."
2014-09-11 17:12:49 +00:00
Elliott Hughes
9990b3973b
Fix mips __fadvise64.S build failure.
...
Bug: 12449798
Change-Id: I0663b741108ba2f1d286904d6414b3ff4d475551
2014-09-11 10:10:08 -07:00
Elliott Hughes
65e619775e
am 176c3278: Merge "Add posix_fadvise(3)." into lmp-dev
...
* commit '176c32787c53e720bf4664592fd0b8ea4ffbdd75':
Add posix_fadvise(3).
2014-09-11 16:08:32 +00:00
Elliott Hughes
db1e958109
am 33df10f2: Merge "Add posix_fadvise(3)."
...
* commit '33df10f284a8adbf58f9734c0f43537db4206b2c':
Add posix_fadvise(3).
2014-09-11 15:58:49 +00:00
Elliott Hughes
33df10f284
Merge "Add posix_fadvise(3)."
2014-09-11 15:46:44 +00:00
Elliott Hughes
b587f339db
Add posix_fadvise(3).
...
(cherry-pick of 00008263782e484020420c606f7d145fe7d0a4d8.)
Bug: 12449798
Change-Id: I07cbf3f670a0d1304b68148325a774f266b5c433
2014-09-11 08:45:46 -07:00
Elliott Hughes
176c32787c
Merge "Add posix_fadvise(3)." into lmp-dev
2014-09-11 15:43:05 +00:00
Elliott Hughes
0000826378
Add posix_fadvise(3).
...
Bug: 12449798
Change-Id: I07cbf3f670a0d1304b68148325a774f266b5c433
2014-09-10 20:30:23 -07:00
Lorenzo Colitti
993a2315a7
am 33a73bfa: When comparing DNS server configs, also compare number of servers
...
* commit '33a73bfa0712c483830e4c9abbf4d6a0551478bf':
When comparing DNS server configs, also compare number of servers
2014-09-11 00:13:20 +00:00
Lorenzo Colitti
33a73bfa07
When comparing DNS server configs, also compare number of servers
...
Bug: 16070602
Change-Id: I605f1cca50b08479ebcad290b3bd179f59be8a96
2014-09-11 08:36:12 +09:00
Lorenzo Colitti
b5e7bd0013
am da0ed4cb: am c71483c0: Merge "When comparing DNS server configs, also compare number of servers"
...
* commit 'da0ed4cbfa10eb3f6a48ef116ae0441239daf7bf':
When comparing DNS server configs, also compare number of servers
2014-09-09 15:03:50 +00:00
Lorenzo Colitti
da0ed4cbfa
am c71483c0: Merge "When comparing DNS server configs, also compare number of servers"
...
* commit 'c71483c0b38a6b4f2675f0bffa221dcf175c34ac':
When comparing DNS server configs, also compare number of servers
2014-09-09 10:42:23 +00:00
Lorenzo Colitti
c71483c0b3
Merge "When comparing DNS server configs, also compare number of servers"
2014-09-09 10:22:18 +00:00
Lorenzo Colitti
bce18c9163
When comparing DNS server configs, also compare number of servers
...
Bug: 16070602
Change-Id: I605f1cca50b08479ebcad290b3bd179f59be8a96
2014-09-09 19:20:26 +09:00
Dmitriy Ivanov
9c8ff91dcc
am 06bd5e2d: am 3c3624f3: Merge "Load libraries in breadth-first order"
...
* commit '06bd5e2d0ade82b9fc70fd8928c1746ca529a2f4':
Load libraries in breadth-first order
2014-09-09 01:25:51 +00:00
Dmitriy Ivanov
06bd5e2d0a
am 3c3624f3: Merge "Load libraries in breadth-first order"
...
* commit '3c3624f3df14590e7213d35c3b39a0a11c7d2d34':
Load libraries in breadth-first order
2014-09-09 01:11:41 +00:00
Dmitriy Ivanov
d9ff722661
Refactoring: C++11 style DISABLE_ bionic marcos
...
Enable the -std=gnu++11 flag for libstdc++ static and
dynamic libs.
ScopeGuard uses DISABLE_ macros instead of '= delete';
Change-Id: I07e21b306f95fffd49345f7fa136cfdac61e0225
2014-09-08 17:51:31 -07:00
Dmitriy Ivanov
3c3624f3df
Merge "Load libraries in breadth-first order"
2014-09-09 00:49:38 +00:00
Elliott Hughes
d7928dc803
am 5574335d: am 671f96cd: Merge "Ensure __set_errno is still visible on LP32."
...
* commit '5574335dc5f380b96aa1f93caeceeeb1bc69bbe2':
Ensure __set_errno is still visible on LP32.
2014-09-09 00:11:52 +00:00
Elliott Hughes
4a454760b5
am e70e541e: am 201f36d2: Merge "Don\'t expose non-standard basename_r and dirname_r in LP64."
...
* commit 'e70e541e7f97ddef3c262bbd71a01710d9f57e65':
Don't expose non-standard basename_r and dirname_r in LP64.
2014-09-09 00:11:52 +00:00
Elliott Hughes
5574335dc5
am 671f96cd: Merge "Ensure __set_errno is still visible on LP32."
...
* commit '671f96cd440d306dc2baf5e8631e927cd1aa759d':
Ensure __set_errno is still visible on LP32.
2014-09-09 00:05:24 +00:00
Elliott Hughes
e70e541e7f
am 201f36d2: Merge "Don\'t expose non-standard basename_r and dirname_r in LP64."
...
* commit '201f36d23bb778b29c8d305fa40a41990e0487bc':
Don't expose non-standard basename_r and dirname_r in LP64.
2014-09-09 00:05:23 +00:00
Elliott Hughes
671f96cd44
Merge "Ensure __set_errno is still visible on LP32."
2014-09-08 23:47:53 +00:00
Elliott Hughes
011e111d29
Ensure __set_errno is still visible on LP32.
...
The use of the .hidden directive to avoid going via the PLT for
__set_errno had the side-effect of actually making __set_errno
hidden (which is odd because assembler directives don't usually
affect symbols defined in a different file --- you can't even
create a weak reference to a symbol that's defined in a different
file).
This change switches the system call stubs over to a new always-hidden
__set_errno_internal and has a visible __set_errno on LP32 just for
binary compatibility with old NDK apps.
(cherry-pick of 7efad83d430f4d824f2aaa75edea5106f6ff8aae.)
Bug: 17423135
Change-Id: I6b6d7a05dda85f923d22e5ffd169a91e23499b7b
2014-09-08 16:46:50 -07:00
Elliott Hughes
201f36d23b
Merge "Don't expose non-standard basename_r and dirname_r in LP64."
2014-09-08 23:46:04 +00:00
Elliott Hughes
cf5fc80c3e
Don't expose non-standard basename_r and dirname_r in LP64.
...
(cherry-pick of f0e9458ea596227720fa745df15f5357f6c0c8f6.)
Bug: 17407423
Change-Id: I47fe499a4c396bf09d7b78fd828728d04777398b
2014-09-08 16:44:48 -07:00
Elliott Hughes
eeb13c6bdb
am 938473a7: resolved conflicts for merge of 7efad83d to lmp-dev-plus-aosp
...
* commit '938473a7f031822d7449624f5844c07d23814422':
Ensure __set_errno is still visible on LP32.
2014-09-08 23:32:32 +00:00
Elliott Hughes
938473a7f0
resolved conflicts for merge of 7efad83d to lmp-dev-plus-aosp
...
Change-Id: I3994c3c69e187e08d69642e097de14b5040c5b3b
2014-09-08 16:21:24 -07:00