OSDN Git Service
Dimitry Ivanov [Wed, 6 Jan 2016 04:43:26 +0000 (04:43 +0000)]
Merge "Fix gcc+arm builds"
Dimitry Ivanov [Wed, 6 Jan 2016 04:38:32 +0000 (20:38 -0800)]
Fix gcc+arm builds
gcc requires unique names of symbols for .symver
Bug: http://b/
26391427
Change-Id: I6392e34a45a37245fd4e53fb54243be73f443313
Dimitry Ivanov [Wed, 6 Jan 2016 02:33:41 +0000 (02:33 +0000)]
Merge "Deprecate bzero"
Dimitry Ivanov [Wed, 6 Jan 2016 02:19:27 +0000 (02:19 +0000)]
Merge "Export public __aeabi* symbols as LIBC_PRIVATE"
Dimitry Ivanov [Wed, 6 Jan 2016 00:38:43 +0000 (16:38 -0800)]
Export public __aeabi* symbols as LIBC_PRIVATE
But keep LIBC as default version for them
Bug: http://b/
26391427
Bug: http://b/
26410625
Change-Id: I819e354bbba482d1f983d9be15c23fcce10e5dd9
Elliott Hughes [Wed, 6 Jan 2016 01:27:09 +0000 (01:27 +0000)]
Merge "Fix a broken link in a comment."
Elliott Hughes [Wed, 6 Jan 2016 01:24:37 +0000 (01:24 +0000)]
Merge "Tidy up KernelArgumentBlock::getauxval."
Dimitry Ivanov [Wed, 6 Jan 2016 01:02:56 +0000 (17:02 -0800)]
Deprecate bzero
bzero is hashdefined to memset in strings.h and it
was removed from POSIX 2008.
Bug: http://b/
26407170
Change-Id: Ia6d54f0e314dc7f5f3fbad0e9b00344f49f77d43
Nick Kralevich [Wed, 6 Jan 2016 00:43:48 +0000 (00:43 +0000)]
Merge "system_properties.cpp: special case ro.* properties"
Elliott Hughes [Wed, 6 Jan 2016 00:33:33 +0000 (16:33 -0800)]
Fix a broken link in a comment.
Bug: https://code.google.com/p/android/issues/detail?id=197784
Change-Id: I2f9e5bc2dd2b8a6992c7c55bc856e4a323c7c8a8
Nick Kralevich [Wed, 6 Jan 2016 00:19:24 +0000 (16:19 -0800)]
system_properties.cpp: special case ro.* properties
Currently, reads of ro.* properties are treated differently than
writes of ro.* properties. When writing an ro.* property, we ignore
the "ro." portion of the property, and base the security decision
on the label of the remaining portion.
See https://android.googlesource.com/platform/system/core/+/
e7a9e52740c952c623f7842ffa1d09b58b45e552/init/property_service.cpp
line 120-126
For example, for writing, the label associated with
"ro.build.fingerprint" comes from the /property_contexts file
entry:
# ro.build.fingerprint is either set in /system/build.prop, or is
# set at runtime by system_server.
build.fingerprint u:object_r:fingerprint_prop:s0
However, we fail to follow this same special case when sorting
properties into files. Instead, ro.build.fingerprint is assigned
u:object_r:default_prop:s0 instead of u:object_r:fingerprint_prop:s0
Ignore the "ro." portion when sorting properties into files.
This will make reads and writes of properties use the same label.
Bug:
21852512
Change-Id: Ie88ffc6b78b31fc8ddf370ae27c218546fb25a83
Elliott Hughes [Wed, 6 Jan 2016 00:29:33 +0000 (16:29 -0800)]
Tidy up KernelArgumentBlock::getauxval.
Correct the comment, and remove the unused functionality. getauxval(3) does
now set errno to let you know it failed to find anything, but since none of
this function's callers care anyway it seems safer to leave errno untouched
until we actually have a demonstrated need for it.
Bug: https://code.google.com/p/android/issues/detail?id=198111
Change-Id: I232a42dc5a02c8faab94c7d69bef610408276c23
Dan Willemsen [Tue, 5 Jan 2016 23:14:43 +0000 (23:14 +0000)]
Merge "libc: Update Android.bp with recent changes"
Dan Willemsen [Tue, 5 Jan 2016 22:32:06 +0000 (14:32 -0800)]
libc: Update Android.bp with recent changes
Change-Id: I54047df9db95169452bbac6d52c75161d2f3bb64
Dimitry Ivanov [Tue, 5 Jan 2016 22:07:02 +0000 (22:07 +0000)]
Merge "Move __aeabi_ which are not in libgcc.a to LIBC"
Dimitry Ivanov [Tue, 5 Jan 2016 21:48:51 +0000 (13:48 -0800)]
Move __aeabi_ which are not in libgcc.a to LIBC
The following arm symbols should be exported by libc.so:
__aeabi_atexit; # arm
__aeabi_memclr; # arm
__aeabi_memclr4; # arm
__aeabi_memclr8; # arm
__aeabi_memcpy; # arm
__aeabi_memcpy4; # arm
__aeabi_memcpy8; # arm
__aeabi_memmove; # arm
__aeabi_memmove4; # arm
__aeabi_memmove8; # arm
__aeabi_memset; # arm
__aeabi_memset4; # arm
__aeabi_memset8; # arm
Bug: https://github.com/android-ndk/ndk/issues/1
Change-Id: I542d1ad023b8aece5dc05a28a9ca549cb51455b4
Elliott Hughes [Tue, 5 Jan 2016 19:38:47 +0000 (19:38 +0000)]
Merge "Clarify which linker we are."
Elliott Hughes [Tue, 5 Jan 2016 01:45:36 +0000 (17:45 -0800)]
Clarify which linker we are.
Also, we're not a debugger.
Also include LD_LIBRARY_PATH and LD_PRELOAD because they would have helped
diagnose a recent issue.
Change-Id: I7237a7236b7140ab49483c02efa705317d07bd3f
Dimitry Ivanov [Tue, 5 Jan 2016 08:22:24 +0000 (08:22 +0000)]
Merge "Temporary apply LIBC version to __pthread_gettid"
Dimitry Ivanov [Tue, 5 Jan 2016 06:36:18 +0000 (22:36 -0800)]
Temporary apply LIBC version to __pthread_gettid
This is workaround for http://b/
26391427
Bug: http://b/
26391427
Change-Id: Ibf5c611cf4c04dfa595644225e6d9503089a18da
Dimitry Ivanov [Tue, 5 Jan 2016 08:04:17 +0000 (08:04 +0000)]
Merge "Revert "Temporary apply LIBC version to __pthread_gettid""
Dimitry Ivanov [Tue, 5 Jan 2016 08:03:56 +0000 (08:03 +0000)]
Revert "Temporary apply LIBC version to __pthread_gettid"
This reverts commit
eb90e91cb5872f6aac7008b0c83e103d396be196.
Change-Id: I63450087b6d3c23218b77d5eee37965f254a82d6
Dimitry Ivanov [Tue, 5 Jan 2016 07:02:15 +0000 (07:02 +0000)]
Merge "Temporary apply LIBC version to __pthread_gettid"
Dimitry Ivanov [Tue, 5 Jan 2016 06:36:18 +0000 (22:36 -0800)]
Temporary apply LIBC version to __pthread_gettid
This is workaround for http://b/
26391427
Bug: http://b/
26391427
Change-Id: I4ccc56e8b1bd2597f267df9706a33bb635abcfcb
Dimitry Ivanov [Mon, 4 Jan 2016 22:52:21 +0000 (22:52 +0000)]
Merge changes I4fc241e6,Idca71396
* changes:
Move __system_property* to LIBC_PRIVATE for lp64 libc
Move ndk-cruft symbols to LIBC_PRIVATE
Dimitry Ivanov [Mon, 4 Jan 2016 22:39:42 +0000 (14:39 -0800)]
Move __system_property* to LIBC_PRIVATE for lp64 libc
Bug: http://b/
26367254
Change-Id: I4fc241e69444a4b5641dfdf09576fe3ce5c1169e
Dimitry Ivanov [Mon, 4 Jan 2016 21:46:42 +0000 (13:46 -0800)]
Move ndk-cruft symbols to LIBC_PRIVATE
Bug: http://b/
26385283
Change-Id: Idca71396f9de4141eefc4e1851ba92ebff1ac792
Elliott Hughes [Mon, 4 Jan 2016 21:03:48 +0000 (21:03 +0000)]
Merge "Revert "Revert "Implement getifaddrs(3)/freeifaddrs(3)."""
Elliott Hughes [Mon, 4 Jan 2016 20:38:05 +0000 (20:38 +0000)]
Revert "Revert "Implement getifaddrs(3)/freeifaddrs(3).""
This reverts commit
76814a8250fd5e1502909ef5e10e4d166cc96c0e.
This differs from the original in fixing the GCC -Werror build:
bionic/libc/bionic/ifaddrs.cpp: In function 'void __handle_netlink_response(ifaddrs**, nlmsghdr*)':
bionic/libc/bionic/ifaddrs.cpp:113:62: error: use of old-style cast [-Werror=old-style-cast]
ifinfomsg* ifi = reinterpret_cast<ifinfomsg*>(NLMSG_DATA(hdr));
This appears to be a GCC bug; the GCC command-line correctly uses -isystem,
and manually adding #pragma GCC system_header doesn't help. So just turn the
warning off for GCC for now. We won't need to worry about building with GCC
soon anyway.
Bug: http://b/
26238832
Change-Id: I01615bd335edf11baf487b1c83a9157cd780f4a1
Dimitry Ivanov [Mon, 4 Jan 2016 18:55:42 +0000 (18:55 +0000)]
Merge changes Ic66f6519,Ic16acea5
* changes:
Make some of unwanted symbols LIBC_PRIVATE
Make symbols exported via libgcc.a LIBC_PRIVATE
Nick Kralevich [Thu, 24 Dec 2015 04:02:47 +0000 (04:02 +0000)]
Merge "Add tests for /proc/self/fd and /proc/self/task/TID/fd access"
Nick Kralevich [Thu, 24 Dec 2015 01:42:29 +0000 (17:42 -0800)]
Add tests for /proc/self/fd and /proc/self/task/TID/fd access
Add tests to ensure that the following kernel patches are present:
__ptrace_may_access() should not deny sub-threads
* https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=
73af963f9f3036dffed55c3a2898598186db1045
proc: make proc_fd_permission() thread-friendly
* https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=
96d0df79f2644fc823f26c06491e182d87a90c2a
proc: actually make proc_fd_permission() thread-friendly
* https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=
54708d2858e79a2bdda10bf8a20c80eb96c20613
Bug:
26110743
Bug:
24912743
Bug:
26016905
Change-Id: I7eab002ddfade9e4bfe51908e190231c8dde2cc7
Yi Kong [Tue, 22 Dec 2015 17:48:21 +0000 (17:48 +0000)]
Merge "Revert "Implement getifaddrs(3)/freeifaddrs(3).""
Yi Kong [Tue, 22 Dec 2015 17:47:54 +0000 (17:47 +0000)]
Revert "Implement getifaddrs(3)/freeifaddrs(3)."
Werror build broken. Revert while working on a fix.
This reverts commit
0945ed5cc5921243724fed4465d20881f4891a8d.
Change-Id: I67edab7a7a3b9aa673ce9d14aa95380f947838a1
Yi Kong [Tue, 22 Dec 2015 17:11:59 +0000 (17:11 +0000)]
Merge "Implement getifaddrs(3)/freeifaddrs(3)."
Dimitry Ivanov [Tue, 22 Dec 2015 07:26:53 +0000 (23:26 -0800)]
Make some of unwanted symbols LIBC_PRIVATE
Bug: http://b/
26274444
Change-Id: Ic66f6519a974b72779071235c1d0dd36655fd1b9
Dimitry Ivanov [Tue, 22 Dec 2015 05:29:45 +0000 (21:29 -0800)]
Make symbols exported via libgcc.a LIBC_PRIVATE
Bug: http://b/
26298172
Change-Id: Ic16acea56624680d48c0b190fbe5a6142a3fca2b
Dimitry Ivanov [Mon, 21 Dec 2015 23:10:49 +0000 (23:10 +0000)]
Merge "linker: implement shared namespaces"
Dimitry Ivanov [Mon, 14 Dec 2015 22:11:17 +0000 (14:11 -0800)]
linker: implement shared namespaces
Shared namespaces clone the list of loaded native
libraries from the caller namespace. This allows
classloaders for bundled apps to share already loaded
libraries with default namespace.
Bug: http://b/
22548808
Bug: http://b/
26165097
Change-Id: I8949d45937fdb38e1f586ff0679003adac0d9dad
(cherry picked from commit
e78deef364d952dd1141a2f3067a12060aaf11e6)
Elliott Hughes [Sat, 19 Dec 2015 22:39:10 +0000 (14:39 -0800)]
Implement getifaddrs(3)/freeifaddrs(3).
Time to dust off the old libcore implementation from gingerbread and add it
to bionic. Unlike the original, this actually looks at both RTM_NEWLINK and
RTM_NEWADDR.
Bug: http://b/
26238832
Change-Id: I7bb4b432deb766065b66b9c9ff36ed68249aba82
Elliott Hughes [Sat, 19 Dec 2015 21:47:07 +0000 (21:47 +0000)]
Merge "Improve the 32-bit ABI documentation."
Elliott Hughes [Sat, 19 Dec 2015 17:36:16 +0000 (09:36 -0800)]
Improve the 32-bit ABI documentation.
Change-Id: Ie5bfc8d6f7f3946100f653de0e006072e56e18d6
Tom Cherry [Thu, 17 Dec 2015 17:54:05 +0000 (17:54 +0000)]
Merge "Reset access to system properties on reinitialization"
Elliott Hughes [Thu, 17 Dec 2015 01:15:15 +0000 (01:15 +0000)]
Merge "sem_timedwait with a null timeout doesn't mean "forever"."
Dimitry Ivanov [Thu, 17 Dec 2015 00:40:13 +0000 (00:40 +0000)]
Merge "linker: add dlvsym(3)"
Christopher Ferris [Thu, 17 Dec 2015 00:30:59 +0000 (00:30 +0000)]
Merge "Fix missing parentheses."
Christopher Ferris [Thu, 17 Dec 2015 00:11:04 +0000 (16:11 -0800)]
Fix missing parentheses.
The BIONIC_ROUND_UP_POWER_OF_2 macro did not have parentheses around
the whole expression. This lead to the wrong value being computed when
used as part of a mathematical expression such as this:
value = BIONIC_ROUND_UP_POWER_OF_2(value) - 1;
This only happens on 64 bit abis.
Change-Id: I6f8afbdaf16fe64a88fa0246d074b3534c9159c1
Christopher Ferris [Thu, 17 Dec 2015 00:06:03 +0000 (00:06 +0000)]
Merge "Fix bug in dlmalloc's version of calloc."
Dimitry Ivanov [Fri, 11 Dec 2015 22:22:24 +0000 (14:22 -0800)]
linker: add dlvsym(3)
This changes implements dlvsym - dlsym for versioned symbols.
Bug: http://b/
22865643
Change-Id: Ic90a60d512104261a1416c43f9100f0d88e3b46f
Elliott Hughes [Wed, 16 Dec 2015 23:15:58 +0000 (15:15 -0800)]
sem_timedwait with a null timeout doesn't mean "forever".
It actually means "crash immediately". Well, it's an error. And callers are
much more likely to realize their mistake if we crash immediately rather
than return EINVAL. Historically, glibc has crashed and bionic -- before
the recent changes -- returned EINVAL, so this is a behavior change.
Change-Id: I0c2373a6703b20b8a97aacc1e66368a5885e8c51
Christopher Ferris [Wed, 16 Dec 2015 20:07:25 +0000 (12:07 -0800)]
Fix bug in dlmalloc's version of calloc.
Under some circumstances, doing a calloc will make sure that the memory
returned will be zero up to the size of the requested size. However, if
there is more usable size than the requested size, that extra part
of the allocation will not be zeroed. This change fixes it so that the
entire usable memory is always zeroed.
Change-Id: I8a66d6767c074023c4ba3568bf2705e1886740fc
Dimitry Ivanov [Wed, 16 Dec 2015 19:06:09 +0000 (19:06 +0000)]
Merge "Revert "Revert "Remove remaining ndk_cruft from LP64 platforms"""
Dimitry Ivanov [Wed, 16 Dec 2015 19:02:04 +0000 (19:02 +0000)]
Revert "Revert "Remove remaining ndk_cruft from LP64 platforms""
This reverts commit
23af25b747b5e7b0ca513a87b32f1f6a3cb99698.
Bug: http://b/
26164862
Change-Id: I201bf49530f33f8ba6a1a35b79723afb9e84c7a5
Elliott Hughes [Tue, 15 Dec 2015 01:38:24 +0000 (01:38 +0000)]
Merge "Add a few missing pthread tests."
Dimitry Ivanov [Tue, 15 Dec 2015 01:36:19 +0000 (01:36 +0000)]
Merge "Revert "Remove remaining ndk_cruft from LP64 platforms""
Elliott Hughes [Tue, 15 Dec 2015 01:35:10 +0000 (17:35 -0800)]
Add a few missing pthread tests.
This seems to be all that's tested by system/extras/tests/bionic that isn't
already better tested here.
Change-Id: Id0aa985cefd4047a6007ba9804f541069d9e92ed
Dimitry Ivanov [Tue, 15 Dec 2015 01:34:14 +0000 (01:34 +0000)]
Revert "Remove remaining ndk_cruft from LP64 platforms"
This reverts commit
b1d0a2ae7790f882d8f1ab24d7ef15e2b90c8ca2.
Change-Id: I1da06be0b78a4f2a4cad7e4a19a3ee755f55a813
Dimitry Ivanov [Mon, 14 Dec 2015 23:55:55 +0000 (23:55 +0000)]
Merge "Remove remaining ndk_cruft from LP64 platforms"
Dimitry Ivanov [Mon, 14 Dec 2015 23:49:28 +0000 (15:49 -0800)]
Remove remaining ndk_cruft from LP64 platforms
This change removes endpwent, dlmalloc_inspect_all, dlmalloc_trim
from lp64 libc.so. It also removed necessety of having brillo
version scripts for lp64 platforms.
Bug: http://b/
26164862
Change-Id: I4e9b38907bb1dc410f0eb6d2f5d5944fe713da51
Dimitry Ivanov [Mon, 14 Dec 2015 22:53:06 +0000 (22:53 +0000)]
Merge changes Iaee1b711,Ia3dd0761
* changes:
Generate libc version-script for brillo
Revert "Don't verify version scripts on 32-bit Brillo"
Dimitry Ivanov [Mon, 14 Dec 2015 22:07:52 +0000 (14:07 -0800)]
Generate libc version-script for brillo
Brillo doesn't use the ndk cruft, so we need
separate set of version scripts. Added new "nobrillo"
tag to mark such symbols in *.map.txt files.
Bug: http://b/
26164862
Change-Id: Iaee1b7119f75b68c2971679fc32817e6df29fd94
Dimitry Ivanov [Mon, 14 Dec 2015 22:18:55 +0000 (14:18 -0800)]
Revert "Don't verify version scripts on 32-bit Brillo"
This reverts commit
31951b7f0dc7ce577a21682e54362b0cf2913e11.
Bug: http://b/
26164862
Elliott Hughes [Mon, 14 Dec 2015 15:59:29 +0000 (15:59 +0000)]
Merge "Fix personality test for mips32r6"
Lazar Trsic [Fri, 11 Dec 2015 16:02:49 +0000 (17:02 +0100)]
Fix personality test for mips32r6
When personality syscall is executed on mips64, for a 32bit process,
sys_32_personality() is called, which converts PER_LINUX32 -> PER_LINUX.
Change expected value when mips32 is a second architecture.
For more information see:
https://www.linux-mips.org/archives/linux-mips/2015-08/msg00421.html
https://www.linux-mips.org/archives/linux-mips/2015-11/msg00093.html
Change-Id: I8c9062f536ad6e513f0ac585da3568d80e5fa1b4
Dan Willemsen [Sat, 12 Dec 2015 02:29:29 +0000 (02:29 +0000)]
Merge "Don't verify version scripts on 32-bit Brillo"
Dan Willemsen [Sat, 12 Dec 2015 00:38:06 +0000 (16:38 -0800)]
Don't verify version scripts on 32-bit Brillo
Brillo doesn't use the ndk cruft, so the same version scripts do not
apply. Until we have brillo-specific version scripts, just disable the
version script check.
Bug:
26164862
Change-Id: I682860ec1c5b36014c7a6cf24da43df553e9dc9f
Dimitry Ivanov [Fri, 11 Dec 2015 19:41:33 +0000 (19:41 +0000)]
Merge "Remove __bionic_libgcc_unwind_symbols from version script"
Dimitry Ivanov [Fri, 11 Dec 2015 19:30:48 +0000 (11:30 -0800)]
Remove __bionic_libgcc_unwind_symbols from version script
Bug: http://b/
26004476
Change-Id: Iaa468de4cbcc94e88badc5cde0f4421c710c1f38
Tom Cherry [Wed, 9 Dec 2015 23:48:15 +0000 (15:48 -0800)]
Reset access to system properties on reinitialization
Treat subsequent calls to __system_properties_init() as a
reinitialization of system properties and revoke access to prop files
that have been previously mapped but that the process's current context
does not have access to. Additionally reset the no_access_ flag in
case permissions have loosened and previously unaccessible files can now
be accessed.
This is meant to work around an issue that setcon() does not revoke
mmap() mappings, so we must manually revoke them after a successful
setcon() call.
Bug
26114086
Change-Id: I4d690abb6817283ca64ac26ea4c1dad398a98fbc
Dimitry Ivanov [Fri, 11 Dec 2015 01:26:17 +0000 (01:26 +0000)]
Merge "Move dlsym and dladdr implementation to linker.cpp"
Dimitry Ivanov [Fri, 11 Dec 2015 00:08:14 +0000 (16:08 -0800)]
Move dlsym and dladdr implementation to linker.cpp
Bug: http://b/
25716705
Bug: http://b/
22865643
Change-Id: If22fc1eda219f676b5fcc06490f7901d21d1749c
Tom Cherry [Thu, 10 Dec 2015 23:05:15 +0000 (23:05 +0000)]
Merge "Do not set properties in bionic_systrace"
Tom Cherry [Thu, 10 Dec 2015 21:21:46 +0000 (13:21 -0800)]
Do not set properties in bionic_systrace
Currently, if the debug.atrace.tags.enableflags property is not found,
it is set to a safe value such that a pointer to this property can be
stored for later access. This may result in selinux denials because not
all processes write permissions for this property or permission to
connect to the property write socket at all.
Change I6d953c0c281fd72ad3eba8a479fd258023579b5b writes this property to
a safe value upon boot, which greatly decreases the cases in which this
property will not be accessible and removes the need to write it here.
This commit removes this write.
Bug
26115803
Change-Id: Ief72c5f731d3a1231b5080eb531fa0a491a8b1d1
Dimitry Ivanov [Thu, 10 Dec 2015 20:17:02 +0000 (20:17 +0000)]
Merge "Revert "Add /odm/lib to shared lib search path""
Dimitry Ivanov [Thu, 10 Dec 2015 17:39:48 +0000 (17:39 +0000)]
Merge "constexpr constructor for atfork_list_t"
Dimitry Ivanov [Thu, 10 Dec 2015 04:34:38 +0000 (04:34 +0000)]
Merge "Add permitted_when_isolated_path to linker namespaces"
Elliott Hughes [Thu, 10 Dec 2015 02:33:34 +0000 (02:33 +0000)]
Merge "Fix -fstack-protector-strong for x86."
Dimitry Ivanov [Tue, 8 Dec 2015 18:47:13 +0000 (10:47 -0800)]
Add permitted_when_isolated_path to linker namespaces
The permitted_when_isolated_path is a way to white-list
directories not present in search-path. It is ignored for
not isolated namespaces.
Bug: http://b/
25853516
Bug: http://b/
22548808
Change-Id: Ib1538037268eea69323ea49968a34a4a1d1938a5
Dimitry Ivanov [Wed, 9 Dec 2015 21:50:54 +0000 (21:50 +0000)]
Merge "Revert "Ensure that readlink has access to /proc/self/fd""
Dimitry Ivanov [Wed, 9 Dec 2015 19:36:47 +0000 (19:36 +0000)]
Revert "Ensure that readlink has access to /proc/self/fd"
This reverts commit
4e50d0247b9ace095e371865fad08b1a59672e3a.
Bug: http://b/
24912743
Change-Id: I5d32c670f0e16aec9c74add143158e919a301673
Dimitry Ivanov [Wed, 9 Dec 2015 19:35:02 +0000 (19:35 +0000)]
Revert "Add /odm/lib to shared lib search path"
This reverts commit
f74b041cce75091b922151d4fa57e63c8a6caf4b.
Bug:
25654402
Change-Id: I77386ea3655868d7cd1a8130afbc95e70549389e
Dan Willemsen [Tue, 8 Dec 2015 23:41:24 +0000 (23:41 +0000)]
Merge "libm: Use LOCAL_SRC_FILES_EXCLUDE_{arch}"
Todd Kjos [Tue, 8 Dec 2015 21:46:17 +0000 (21:46 +0000)]
Merge "bionic: Build Breakage"
Mark Salyzyn [Tue, 8 Dec 2015 21:42:41 +0000 (13:42 -0800)]
bionic: Build Breakage
Bug:
23668800
Change-Id: Ic7cf5864d3f5881e6f7105a49ecf62b1bc4a604c
Elliott Hughes [Tue, 8 Dec 2015 20:43:13 +0000 (12:43 -0800)]
Fix -fstack-protector-strong for x86.
We need to ensure %gs:20 is set up early enough for -fstack-protector-strong
on x86, and that __set_tls doesn't get stack protector checks because it's a
prerequisite for them. x86 devices/emulators won't boot without this.
Bug: http://b/
26073874
Change-Id: Icf0d34294648cc0c8cb406a3617befe0d45c525a
Dimitry Ivanov [Tue, 8 Dec 2015 19:39:29 +0000 (11:39 -0800)]
constexpr constructor for atfork_list_t
Bug: http://b/
26026986
Change-Id: Iad95383a23f81eea776bebce641c555d26547b77
Mark Salyzyn [Tue, 8 Dec 2015 18:59:05 +0000 (18:59 +0000)]
Merge "Add monotonic logging for bionic"
Elliott Hughes [Mon, 7 Dec 2015 23:20:58 +0000 (23:20 +0000)]
Merge "Base bcopy on memmove rather than memcpy."
am:
f0a451dcd1
* commit '
f0a451dcd10241c8f2ead2448ed922eb80f387f6':
Base bcopy on memmove rather than memcpy.
Elliott Hughes [Mon, 7 Dec 2015 23:16:43 +0000 (23:16 +0000)]
Merge "Make all of ndk_cruft.cpp one big extern "C"."
am:
9dec0a775b
* commit '
9dec0a775b07f58d133ae5c35713e7cf60ddcc7c':
Make all of ndk_cruft.cpp one big extern "C".
Elliott Hughes [Mon, 7 Dec 2015 23:16:39 +0000 (23:16 +0000)]
Merge "Fix stdio static initializers to make both clang and GCC happy."
am:
7bd33cdf15
* commit '
7bd33cdf15c26c5855628eb2ac0e7d0f52189010':
Fix stdio static initializers to make both clang and GCC happy.
Elliott Hughes [Mon, 7 Dec 2015 23:14:29 +0000 (23:14 +0000)]
Merge "Revert "Revert "Remove __sinit and __sdidinit."""
am:
c4eef1fb5b
* commit '
c4eef1fb5ba325317e94b598c6fbf8e4c4bf83e1':
Revert "Revert "Remove __sinit and __sdidinit.""
Elliott Hughes [Mon, 7 Dec 2015 22:07:11 +0000 (22:07 +0000)]
Merge "Base bcopy on memmove rather than memcpy."
Rohit Agrawal [Sat, 5 Dec 2015 20:39:54 +0000 (12:39 -0800)]
Base bcopy on memmove rather than memcpy.
POSIX defined bcopy to handle overlapping memory akin to memmove and
bionic appears to have always done so.
Change-Id: I2599113411e3532913270ba1c1b49e35cbc5f106
Elliott Hughes [Mon, 7 Dec 2015 19:14:46 +0000 (19:14 +0000)]
Merge "Make all of ndk_cruft.cpp one big extern "C"."
Elliott Hughes [Fri, 4 Dec 2015 23:57:51 +0000 (15:57 -0800)]
Make all of ndk_cruft.cpp one big extern "C".
Change-Id: Iddd9b5f36e661e443fa13d12326e72df8c0d209c
Elliott Hughes [Mon, 7 Dec 2015 19:10:32 +0000 (19:10 +0000)]
Merge "Fix stdio static initializers to make both clang and GCC happy."
Elliott Hughes [Mon, 7 Dec 2015 19:07:15 +0000 (11:07 -0800)]
Fix stdio static initializers to make both clang and GCC happy.
Previously only clang was happy. GCC said:
error: missing initializer for field 'wcio_mbstate_in' of 'struct wchar_io_data'
Change-Id: I25a11b64f4dfa22a5dd5daded152191fe2cfacaf
Elliott Hughes [Mon, 7 Dec 2015 18:19:07 +0000 (18:19 +0000)]
Merge "Revert "Revert "Remove __sinit and __sdidinit."""
Elliott Hughes [Sat, 5 Dec 2015 02:03:12 +0000 (18:03 -0800)]
Revert "Revert "Remove __sinit and __sdidinit.""
This reverts commit
c8bae05f3ff9f1c736f7be70fa17d02795d748bb.
We were breaking init (ueventd) because we initialize system properties
before we initialize stdio. The new system property implementation uses
stdio to read from /property_contexts, so we end up touching stdio data
structures before they've been initialized.
This second attempt takes things further by removing the stdio initialization
function altogether. The data structures for stdin/stdout/stderr can be
statically initialized as data, and -- since we already had to give the
atexit implementation a backdoor for stdio -- we can just admit that we
need to clean up stdio, and that we always do so last.
This patch also removes the 17 statically pre-allocated file structures,
so the first fopen will now allocate a block of 10 (the usual overflow
behavior). I did this just to make my life simpler, but it's not actually
necessary to remove it if we want it back.
Change-Id: I936b2eb5e88e4ebaf5516121872b71fc88e5609c
Dimitry Ivanov [Sat, 5 Dec 2015 05:29:52 +0000 (05:29 +0000)]
Merge "Allow dlopening public libs using absolute path"
am:
e371ae68ac
* commit '
e371ae68ac0d6d39cacf5edc893bda2f4a61e883':
Allow dlopening public libs using absolute path