9ce09e423f24823d52f19ab8247e078977100132 |
|
12-Nov-2015 |
Mingwei Shi <mingwei.shi@intel.com> |
libc: implement kernel vdso syscalls for i386 This patch uses __kernel_vsyscall instead of "int 0x80" as the syscall entry point. AT_SYSINFO points to an adapter to mask the arch specific difference and gives a performance boost on i386 architecture. Bug: http://b/27533895 Change-ID: Ib340c604d02c6c25714a95793737e3cfdc3fc5d7 Signed-off-by: Mingwei Shi <mingwei.shi@intel.com> (cherry picked from commit be910529322b461148debefd50b9e0d67ae84f8e)
|
011e111d299284b65af07add523a9dccac356244 |
|
09-Sep-2014 |
Elliott Hughes <enh@google.com> |
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
|
7efad83d430f4d824f2aaa75edea5106f6ff8aae |
|
09-Sep-2014 |
Elliott Hughes <enh@google.com> |
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. Bug: 17423135 Change-Id: I6b6d7a05dda85f923d22e5ffd169a91e23499b7b
|
e35fd48a832cddbedcf84773fd1922f735ae7829 |
|
09-Aug-2014 |
Dan Albert <danalbert@google.com> |
Make __set_errno hidden in asm. This fixes the build after the -Bsymbolic change. Bug: 16853291 Change-Id: I989c9fec3c32e0289ea257a3bd2b7fd2709b6ce2 (cherry picked from commit bc9f9f25bf1247a6a638a2a2df8441bdd9fabad7)
|
bc9f9f25bf1247a6a638a2a2df8441bdd9fabad7 |
|
09-Aug-2014 |
Dan Albert <danalbert@google.com> |
Make __set_errno hidden in asm. This fixes the build after the -Bsymbolic change. Bug: 16853291 Change-Id: I989c9fec3c32e0289ea257a3bd2b7fd2709b6ce2
|
3726f9c38b4b27b492e378e20c52be859225e5f3 |
|
09-Aug-2014 |
Dan Albert <danalbert@google.com> |
Revert "Fix incorrect relocations for x86." Bug: 16853291 This reverts commit 512bc5232689bec9c763c8247b59de970096ff87.
|
512bc5232689bec9c763c8247b59de970096ff87 |
|
07-Aug-2014 |
Dan Albert <danalbert@google.com> |
Fix incorrect relocations for x86. These calls were not going through the PLT like they should have been. Bug: 16853291 Change-Id: Id70488b077256a70137c4417f21be2c2d1d4341c
|
15a0456d0b7618554ed3d49287e77b6d43a2812a |
|
06-Jun-2014 |
Elliott Hughes <enh@google.com> |
Remove unnecessary instructions from x86/x86_64 syscalls. __set_errno returns -1 exactly so that callers don't need to bother. The other architectures were already taking advantage of this, but no one had ever fixed x86 and x86_64. Change-Id: Ie131494be664f6c4a1bbf8c61bbbed58eac56122
|
15b91e92a0bb4a15b4f2258bea332f4a67fa94d7 |
|
30-May-2014 |
Christopher Ferris <cferris@google.com> |
Fix x86 cfi directives for syscalls. The syscall generation always used 4 bytes for each push cfi directive. However, the first push should always use an offset of 8 bytes, each subsequent push after that is only 4 bytes though. Change-Id: Ibaabd107f399ef67010b9a08213783957c2f74a9
|
ceb5bd787c8ce281e5f4343c5d4f77b41c3e2919 |
|
12-May-2014 |
Sreeram Ramachandran <sreeram@google.com> |
Introduce netd_client, a dynamic library that talks to netd. The library exists outside bionic. It is dynamically loaded, to replace selected standard socket syscalls with versions that talk to netd. Change connect() to use the library if available. (cherry picked from commit 3a6b627a14df8111b03e452f2df4b5f4938e0e49) Change-Id: Ib6198e19dbc306521a26fcecfdf6e8424d163fc9
|