OSDN Git Service
Yabin Cui [Sat, 1 Aug 2015 15:47:52 +0000 (15:47 +0000)]
am
442a3fca: Merge "add a fortified implementation of getcwd"
* commit '
442a3fcae68152a95ef481ef99932d1bc001dc08':
add a fortified implementation of getcwd
Yabin Cui [Fri, 31 Jul 2015 16:55:12 +0000 (16:55 +0000)]
Merge "add a fortified implementation of getcwd"
Daniel Micay [Wed, 20 May 2015 19:31:26 +0000 (15:31 -0400)]
add a fortified implementation of getcwd
Change-Id: I95001ae4fe8f206db83e5c44d129ba11310695ce
Elliott Hughes [Thu, 30 Jul 2015 15:39:23 +0000 (15:39 +0000)]
am
807f27f9: Merge "Stop sending SIGPIPE to debuggerd."
* commit '
807f27f9548077f114dc009f60764fb0241a2620':
Stop sending SIGPIPE to debuggerd.
Elliott Hughes [Thu, 30 Jul 2015 15:10:59 +0000 (15:10 +0000)]
Merge "Stop sending SIGPIPE to debuggerd."
Elliott Hughes [Thu, 30 Jul 2015 05:24:13 +0000 (22:24 -0700)]
Stop sending SIGPIPE to debuggerd.
SIGPIPE is a pretty normal way for command-line apps to die, but because
we catch it and report it via debuggerd, we get a lot of bogus bugs. We
could catch SIGPIPE in our tools, but that's not really legit and slightly
misleading.
"But", you say, "catching SIGPIPE is useful for app bugs!". Except a trawl
through buganizer suggests it's misleading there too. Not least because
it's usually an innocent victim that dies --- the problem is usually on the
other end of the pipe (which you learn nothing about because that process
already died, which is what closed the pipe).
We also don't catch SIGALRM, which is another signal that will terminate
your process if you don't catch it, but that one actually represents a
logic error in the crashing process, so there's a stronger argument for
catching that. (Except it too is not a real source of bugs.)
Bug: http://b/
20659371
Change-Id: I79820b36573ddaa9a7bad0561a52f23e7a8d15ac
Elliott Hughes [Thu, 30 Jul 2015 00:50:45 +0000 (00:50 +0000)]
am
44989174: Merge "Prevent buffer over-read in linker.cpp\'s parse_path."
* commit '
4498917406ee543116ea7ed987d26a15b2c1496c':
Prevent buffer over-read in linker.cpp's parse_path.
Elliott Hughes [Thu, 30 Jul 2015 00:22:48 +0000 (00:22 +0000)]
Merge "Prevent buffer over-read in linker.cpp's parse_path."
tony.ys_liu [Wed, 29 Jul 2015 10:00:22 +0000 (18:00 +0800)]
Prevent buffer over-read in linker.cpp's parse_path.
Also, the old behavior of skipping empty entries doesn't match glibc.
Change-Id: I497774377113ab6c5d962e0f20066e2192748f06
Elliott Hughes [Wed, 29 Jul 2015 15:58:32 +0000 (15:58 +0000)]
am
34c5f5ea: Merge "Remove PAGE_SIZE from <limits.h>."
* commit '
34c5f5eacdedcea6b987854a4bca07c703495d62':
Remove PAGE_SIZE from <limits.h>.
Elliott Hughes [Wed, 29 Jul 2015 15:18:06 +0000 (15:18 +0000)]
Merge "Remove PAGE_SIZE from <limits.h>."
Elliott Hughes [Wed, 29 Jul 2015 07:17:51 +0000 (07:17 +0000)]
am
374adfee: Merge "Don\'t transitively include <limits.h> from <sys/user.h>."
* commit '
374adfee473725994ee2568ce5aba93a7500064e':
Don't transitively include <limits.h> from <sys/user.h>.
Elliott Hughes [Wed, 29 Jul 2015 07:17:48 +0000 (07:17 +0000)]
am
1ff4094a: Merge "Remove PAGESIZE."
* commit '
1ff4094a7f106b3de390acb1e36c45bbb878a153':
Remove PAGESIZE.
Elliott Hughes [Wed, 29 Jul 2015 02:52:31 +0000 (19:52 -0700)]
Remove PAGE_SIZE from <limits.h>.
It turns out that everyone's still getting PAGE_SIZE from <sys/user.h> via
<sys/ucontext.h> via <signal.h> anyway.
glibc has PAGE_SIZE in <sys/user.h> rather than <limits.h> so this part is
good. The bad part is that we have such wide transitive inclusion of
<sys/user.h>!
Bug: http://b/
22735893
Change-Id: I363adffe4a27b4ca1eedf695ea621f5dd2d5ca10
Elliott Hughes [Wed, 29 Jul 2015 01:02:37 +0000 (01:02 +0000)]
Merge "Don't transitively include <limits.h> from <sys/user.h>."
Elliott Hughes [Wed, 29 Jul 2015 00:44:32 +0000 (17:44 -0700)]
Don't transitively include <limits.h> from <sys/user.h>.
Bug: http://b/
22735893
Change-Id: I27d0a1f7e2d477b8038e76bfc7fe05dd7e187344
Elliott Hughes [Wed, 29 Jul 2015 00:09:20 +0000 (00:09 +0000)]
Merge "Remove PAGESIZE."
Elliott Hughes [Wed, 29 Jul 2015 00:01:51 +0000 (00:01 +0000)]
am
c8ba22c8: Merge "Move PAGE_MASK into <sys/user.h>."
* commit '
c8ba22c847bd5bfc97d29a4c565fd32993200a01':
Move PAGE_MASK into <sys/user.h>.
Elliott Hughes [Tue, 28 Jul 2015 23:46:06 +0000 (16:46 -0700)]
Remove PAGESIZE.
This was pretty much unused, and isn't in glibc.
Bug: http://b/
22735893
Change-Id: If17f0dcd931c90ef1ccb134a3950c3b0011a03f4
Elliott Hughes [Tue, 28 Jul 2015 23:11:18 +0000 (23:11 +0000)]
Merge "Move PAGE_MASK into <sys/user.h>."
Elliott Hughes [Tue, 28 Jul 2015 21:58:37 +0000 (14:58 -0700)]
Move PAGE_MASK into <sys/user.h>.
I'm removing the TODO on the assumption that being compatible with glibc
is more useful than BSD. The new internal "bionic_page.h" header factors
out some duplication between libc and the linker.
Bug: http://b/
22735893
Change-Id: I4aec4dcba5886fb6f6b9290a8f85660643261321
Mark Salyzyn [Tue, 28 Jul 2015 19:51:17 +0000 (19:51 +0000)]
am
1923d4c0: Merge "deprecate TARGET_USES_LOGD"
* commit '
1923d4c03a68c89f304b601545f5e8db026b9be0':
deprecate TARGET_USES_LOGD
Mark Salyzyn [Tue, 28 Jul 2015 17:48:08 +0000 (17:48 +0000)]
Merge "deprecate TARGET_USES_LOGD"
Mark Salyzyn [Tue, 28 Jul 2015 15:51:17 +0000 (08:51 -0700)]
deprecate TARGET_USES_LOGD
This is not the kernel logger you are looking for
Bug:
22787659
Change-Id: I340d8bb5cdaa73be9565521681ee238b7033934b
Elliott Hughes [Tue, 28 Jul 2015 15:27:25 +0000 (15:27 +0000)]
am
4955cde2: Merge "Add a regression test for a fixed strnlen bug."
* commit '
4955cde2c55d4860f12039a96d14fc756b1308a3':
Add a regression test for a fixed strnlen bug.
Elliott Hughes [Tue, 28 Jul 2015 14:55:50 +0000 (14:55 +0000)]
Merge "Add a regression test for a fixed strnlen bug."
Elliott Hughes [Tue, 28 Jul 2015 03:55:03 +0000 (20:55 -0700)]
Add a regression test for a fixed strnlen bug.
Bug: https://code.google.com/p/android/issues/detail?id=74741
Change-Id: I78b0114bdbe8e680b0e938af608a634e73c86eda
Chih-hung Hsieh [Tue, 28 Jul 2015 02:02:20 +0000 (02:02 +0000)]
am
cebef1a7: Merge "Add one simple thread local storage test."
* commit '
cebef1a7812fe3552f12dd7e885a1f879a9946ed':
Add one simple thread local storage test.
Chih-hung Hsieh [Tue, 28 Jul 2015 01:33:01 +0000 (01:33 +0000)]
Merge "Add one simple thread local storage test."
Chih-Hung Hsieh [Mon, 27 Jul 2015 17:46:21 +0000 (10:46 -0700)]
Add one simple thread local storage test.
This test should pass with gcc and fail with clang,
until clang/llvm supports emutls or Android linker supports
ELF TLS models.
BUG:
21082792
Change-Id: Id8c97da52c68ec230c7d26af703f6ed32d53a4fe
Christopher Ferris [Mon, 27 Jul 2015 23:33:21 +0000 (23:33 +0000)]
am
e8ceb95c: Merge "Remove pushes from memsets (krait/cortex-a9)."
* commit '
e8ceb95c680eacc3b5d16644a48a28b45f421e2f':
Remove pushes from memsets (krait/cortex-a9).
Yabin Cui [Mon, 27 Jul 2015 23:14:45 +0000 (23:14 +0000)]
am
8af32633: Merge "add fortified implementations of fread/fwrite"
* commit '
8af32633498184e58e6f8d5d75b9f9cdbef5b6be':
add fortified implementations of fread/fwrite
Christopher Ferris [Mon, 27 Jul 2015 23:09:32 +0000 (23:09 +0000)]
Merge "Remove pushes from memsets (krait/cortex-a9)."
Yabin Cui [Mon, 27 Jul 2015 22:46:29 +0000 (22:46 +0000)]
Merge "add fortified implementations of fread/fwrite"
Dmitriy Ivanov [Mon, 27 Jul 2015 22:23:32 +0000 (22:23 +0000)]
am
de0fb393: Restore protection flags for ifunc during relocs.
* commit '
de0fb393ae8136a5958fe17eee0c6285e2f7f91a':
Restore protection flags for ifunc during relocs.
Elliott Hughes [Mon, 27 Jul 2015 22:02:23 +0000 (22:02 +0000)]
am
f16c6e17: Merge "Restore protection flags for ifunc during relocs."
* commit '
f16c6e17b22c278320d0e662d1f1e1213f8fbc71':
Restore protection flags for ifunc during relocs.
Elliott Hughes [Mon, 27 Jul 2015 21:34:53 +0000 (21:34 +0000)]
Merge "Restore protection flags for ifunc during relocs."
Christopher Ferris [Mon, 27 Jul 2015 20:51:31 +0000 (13:51 -0700)]
Remove pushes from memsets (krait/cortex-a9).
On the path that only uses r0 in both the krait and cortex-a9
memset, remove the push and use r3 instead.
In addition, for cortex-a9, remove the artificial function since
it's not needed since dwarf unwinding is now supported on arm.
Change-Id: Ia4ed1cc435b03627a7193215e76c8ea3335f949a
Elliott Hughes [Mon, 27 Jul 2015 18:50:47 +0000 (18:50 +0000)]
am
bff19682: Merge "name the atexit handler pages"
* commit '
bff196822230b5a8b1f5bafeed88ded821d390a9':
name the atexit handler pages
Elliott Hughes [Mon, 27 Jul 2015 18:06:35 +0000 (18:06 +0000)]
Merge "name the atexit handler pages"
Daniel Micay [Sat, 25 Jul 2015 19:40:14 +0000 (15:40 -0400)]
name the atexit handler pages
Change-Id: I1718ddee7415a673b5818bc1455b8d90f1e8f9c6
Dmitriy Ivanov [Sun, 26 Jul 2015 14:37:09 +0000 (07:37 -0700)]
Restore protection flags for ifunc during relocs.
IFUNC relocations require executable flag for the load
segment containing .text. When dso has text relocs linker
removes exec which causes crash during ifunc relocations.
This patch fixes this problem by restoring segments protection
for ifunc relocs.
Bug: http://b/
22611399
Change-Id: Icbf3be0fec0e42bf805bcad7533e2032a2e11b9c
(cherry picked from commit
de0fb393ae8136a5958fe17eee0c6285e2f7f91a)
Dmitriy Ivanov [Sun, 26 Jul 2015 14:37:09 +0000 (07:37 -0700)]
Restore protection flags for ifunc during relocs.
IFUNC relocations require executable flag for the load
segment containing .text. When dso has text relocs linker
removes exec which causes crash during ifunc relocations.
This patch fixes this problem by restoring segments protection
for ifunc relocs.
Bug: http://b/
22611399
Change-Id: Icbf3be0fec0e42bf805bcad7533e2032a2e11b9c
Elliott Hughes [Sat, 25 Jul 2015 18:56:53 +0000 (18:56 +0000)]
am
adc5795f: Merge "Use AT_PAGESZ for sysconf(_SC_PAGE_SIZE)."
* commit '
adc5795fb7b674e6d40d1f190c675607c1379343':
Use AT_PAGESZ for sysconf(_SC_PAGE_SIZE).
Elliott Hughes [Sat, 25 Jul 2015 18:32:46 +0000 (18:32 +0000)]
Merge "Use AT_PAGESZ for sysconf(_SC_PAGE_SIZE)."
Elliott Hughes [Sat, 25 Jul 2015 06:22:07 +0000 (23:22 -0700)]
Use AT_PAGESZ for sysconf(_SC_PAGE_SIZE).
Bug: http://b/
18342333
Change-Id: Id12ed4e85a0f35d7d27202f7792df42a65a74b4e
Yabin Cui [Fri, 24 Jul 2015 04:16:39 +0000 (04:16 +0000)]
am
b8320b80: Don\'t abort when failed to write tracing message.
* commit '
b8320b8021856ae61b3012b82c2ae96df97e3ec4':
Don't abort when failed to write tracing message.
Christopher Ferris [Fri, 24 Jul 2015 01:17:09 +0000 (01:17 +0000)]
am
a3a61983: Merge "Make all labels local."
* commit '
a3a619835d302f5414883e2307ca48406b15a4a5':
Make all labels local.
Christopher Ferris [Fri, 24 Jul 2015 00:47:06 +0000 (00:47 +0000)]
Merge "Make all labels local."
Daniel Micay [Sat, 18 Jul 2015 17:55:51 +0000 (13:55 -0400)]
add fortified implementations of fread/fwrite
A __size_mul_overflow utility is used to take advantage of the checked
overflow intrinsics in Clang and GCC (>= 5). The fallback for older
compilers is the optimized but less than ideal overflow checking pattern
used in OpenBSD.
Change-Id: Ibb0d4fd9b5acb67983e6a9f46844c2fd444f7e69
Dan Albert [Thu, 23 Jul 2015 21:50:48 +0000 (21:50 +0000)]
am
7e52dbe4: Merge "Revert "Stop libc from cross-referencing unwind symbols"" into mnc-dev
* commit '
7e52dbe4d24daf61a8bd4bbbd0761c55468c3c7e':
Revert "Stop libc from cross-referencing unwind symbols"
Yabin Cui [Wed, 22 Jul 2015 00:27:54 +0000 (17:27 -0700)]
Don't abort when failed to write tracing message.
Also make the code thread-safe with lock.
Bug:
20666100
Change-Id: I0f331a617b75280f36179c187418450230d713ef
(cherry picked from commit
166112531558a1d4ea179c29147f27db7045db22)
Christopher Ferris [Thu, 23 Jul 2015 19:12:55 +0000 (12:12 -0700)]
Make all labels local.
Change the non-local labels to .L labels.
Change-Id: I720e894f2e311af8f4a0970303d8b86575fb69a5
Yabin Cui [Thu, 23 Jul 2015 19:10:22 +0000 (19:10 +0000)]
am
9e1c862c: Merge "Don\'t abort when failed to write tracing message."
* commit '
9e1c862cb649f054aaa1c2141409387bf3d5f3eb':
Don't abort when failed to write tracing message.
Yabin Cui [Thu, 23 Jul 2015 17:20:30 +0000 (17:20 +0000)]
Merge "Don't abort when failed to write tracing message."
Yabin Cui [Wed, 22 Jul 2015 00:27:54 +0000 (17:27 -0700)]
Don't abort when failed to write tracing message.
Also make the code thread-safe with lock.
Bug:
20666100
Change-Id: I0f331a617b75280f36179c187418450230d713ef
Yabin Cui [Wed, 22 Jul 2015 03:44:16 +0000 (03:44 +0000)]
am
2565492d: Merge "Add getgrgid_r/getgrnam_r."
* commit '
2565492db0d67b95348cd1c3026ed338ca59aa37':
Add getgrgid_r/getgrnam_r.
Yabin Cui [Wed, 22 Jul 2015 03:22:26 +0000 (03:22 +0000)]
Merge "Add getgrgid_r/getgrnam_r."
Yabin Cui [Tue, 21 Jul 2015 02:46:26 +0000 (19:46 -0700)]
Add getgrgid_r/getgrnam_r.
Bug:
22568551
Change-Id: I3c0772d119d6041063c6be53f5bcc5ea1768f0d5
Elliott Hughes [Wed, 22 Jul 2015 02:12:02 +0000 (02:12 +0000)]
am
3b49d61a: Merge "libc: arch-x86: implement kernel vdso time functions"
* commit '
3b49d61ac2f7a02d5e7f25a24836b060f922f079':
libc: arch-x86: implement kernel vdso time functions
Elliott Hughes [Wed, 22 Jul 2015 01:51:00 +0000 (01:51 +0000)]
Merge "libc: arch-x86: implement kernel vdso time functions"
Robert Jarzmik [Wed, 15 Jul 2015 13:26:43 +0000 (15:26 +0200)]
libc: arch-x86: implement kernel vdso time functions
This patch give the possibility of time vdso support on 32bit kernel.
If the 32bit x86 kernel provides gettimeofday() and clock_gettime()
primitives in vdso. In this case make bionic use them. If the kernel
doesn't provide them, fallback to the legacy system call versions.
Change-Id: I87b772a9486fa356903e1f98f486ab9eb0b6f6f7
Signed-off-by: Robert Jarzmik <robert.jarzmik@intel.com>
Signed-off-by: Mingwei Shi <mingwei.shi@intel.com>
Dan Albert [Tue, 21 Jul 2015 23:09:35 +0000 (23:09 +0000)]
Merge "Revert "Stop libc from cross-referencing unwind symbols"" into mnc-dev
Ying Wang [Tue, 21 Jul 2015 21:50:27 +0000 (21:50 +0000)]
am
e39b279b: Merge "We don\'t have CXX_BARE any more" into mnc-dev
* commit '
e39b279bb4971d0c3322214ea977275f1bc58c0b':
We don't have CXX_BARE any more
Ying Wang [Tue, 21 Jul 2015 21:40:44 +0000 (21:40 +0000)]
am
86ac443c: Merge "We don\'t have CXX_BARE any more"
* commit '
86ac443cd1df83bbef4a18046714e067a9d13247':
We don't have CXX_BARE any more
Ying Wang [Tue, 21 Jul 2015 21:10:22 +0000 (21:10 +0000)]
Merge "We don't have CXX_BARE any more"
Ying Wang [Tue, 21 Jul 2015 01:51:30 +0000 (18:51 -0700)]
We don't have CXX_BARE any more
Now we have split CXX_WRAPPER from TARGET_CXX and CXX_BARE isn't needed
any more.
Bug:
22612634
Change-Id: I52c78b0d1b325910e875a786d17f780731778b4b
(cherry-pick from commit
9d11a7087c860195bf23f2825a7fe70d43ff7b78)
Elliott Hughes [Tue, 21 Jul 2015 20:53:23 +0000 (20:53 +0000)]
am
bc0b8ff2: Merge "Use a less misleading name for the code that sets up the main thread."
* commit '
bc0b8ff2fbfb38f73114aef7df8e302025245441':
Use a less misleading name for the code that sets up the main thread.
Ying Wang [Tue, 21 Jul 2015 20:51:26 +0000 (20:51 +0000)]
Merge "We don't have CXX_BARE any more" into mnc-dev
Elliott Hughes [Tue, 21 Jul 2015 20:28:15 +0000 (20:28 +0000)]
Merge "Use a less misleading name for the code that sets up the main thread."
Christopher Ferris [Tue, 21 Jul 2015 19:46:36 +0000 (19:46 +0000)]
am
aa55e7ad: Add support for non-zero vaddr in maps.
* commit '
aa55e7ad249e49025d0507f513a6c45f8491a4e5':
Add support for non-zero vaddr in maps.
Elliott Hughes [Tue, 21 Jul 2015 18:57:09 +0000 (11:57 -0700)]
Use a less misleading name for the code that sets up the main thread.
Change-Id: I50c1b0a3b633cf8bc40a6bd86f12adb6b91e2888
Christopher Ferris [Tue, 21 Jul 2015 18:28:52 +0000 (18:28 +0000)]
am
c99fabb7: Merge "Add support for non-zero vaddr in maps."
* commit '
c99fabb7a097e9aeed49ce03584cce113d086905':
Add support for non-zero vaddr in maps.
Elliott Hughes [Tue, 21 Jul 2015 18:28:13 +0000 (18:28 +0000)]
am
3bcfd47c: Merge "Revert "Revert "make vdso function pointers read-only at runtime"""
* commit '
3bcfd47c6836a952b2093c64feb9f1e382891256':
Revert "Revert "make vdso function pointers read-only at runtime""
Christopher Ferris [Thu, 16 Jul 2015 21:49:17 +0000 (14:49 -0700)]
Add support for non-zero vaddr in maps.
If a map has a non-zero vaddr then it needs to be added to the
computed relative offset.
Bug:
22532054
(cherry picked from commit
70b6e1daffd58ebce006d4b504cd0fb9672b6d07)
Change-Id: I1e98741d6ff3b5bbb7fc5f88cc85b27ace75ee2e
Christopher Ferris [Tue, 21 Jul 2015 17:29:09 +0000 (17:29 +0000)]
Merge "Add support for non-zero vaddr in maps."
Dan Albert [Tue, 21 Jul 2015 02:35:27 +0000 (02:35 +0000)]
am
f37c237b: Merge "Revert "Stop libc from cross-referencing unwind symbols""
* commit '
f37c237b8b15c00ac748fe2657a50df54fa55d5a':
Revert "Stop libc from cross-referencing unwind symbols"
Elliott Hughes [Tue, 21 Jul 2015 02:15:19 +0000 (02:15 +0000)]
Merge "Revert "Revert "make vdso function pointers read-only at runtime"""
Ying Wang [Tue, 21 Jul 2015 01:51:30 +0000 (18:51 -0700)]
We don't have CXX_BARE any more
Now we have split CXX_WRAPPER from TARGET_CXX and CXX_BARE isn't needed
any more.
Bug:
22612634
Change-Id: I52c78b0d1b325910e875a786d17f780731778b4b
Dan Albert [Mon, 20 Jul 2015 23:56:51 +0000 (16:56 -0700)]
Revert "Stop libc from cross-referencing unwind symbols"
This reverts commit
cd13b14e98d4921af126667fae0cf6613a5615c5.
Bug: http://b/
19958712
Change-Id: I7cc7f69728c42c37e129aee30d761c4cd7e30e94
(cherry picked from commit
95fd031c4d22b90c542621170bb6d4d05bb94457)
Dan Albert [Tue, 21 Jul 2015 00:22:20 +0000 (00:22 +0000)]
Merge "Revert "Stop libc from cross-referencing unwind symbols""
Dan Albert [Mon, 20 Jul 2015 23:56:51 +0000 (16:56 -0700)]
Revert "Stop libc from cross-referencing unwind symbols"
This reverts commit
cd13b14e98d4921af126667fae0cf6613a5615c5.
Bug: http://b/
19958712
Change-Id: I7cc7f69728c42c37e129aee30d761c4cd7e30e94
Elliott Hughes [Mon, 20 Jul 2015 22:34:27 +0000 (22:34 +0000)]
Revert "Revert "make vdso function pointers read-only at runtime""
This reverts commit
1946856b1f18a27c51ba30bb9e304f25b722ee05.
This goes back to the original scheme of PROT_NONEing a page within
libc. Allocating a new page didn't fail safe for cases where these
functions are called from the dynamic linker.
Bug: http://b/
22568628
Change-Id: I3e7241c8b54c27ea4a898bc952375c1e9ae38c80
Dmitriy Ivanov [Mon, 20 Jul 2015 19:17:27 +0000 (19:17 +0000)]
am
e70d7a78: Merge "Fix dt_runpath test."
* commit '
e70d7a78f0bfba8b09d37c145769cb8d1d7c5fb6':
Fix dt_runpath test.
Elliott Hughes [Mon, 20 Jul 2015 18:44:56 +0000 (18:44 +0000)]
am
e5544ae1: Merge "<sys/time.h> should include [most of] <sys/select.h>."
* commit '
e5544ae1f8a23ae77908e822e83a73ebd4b656ec':
<sys/time.h> should include [most of] <sys/select.h>.
Elliott Hughes [Mon, 20 Jul 2015 18:44:55 +0000 (18:44 +0000)]
am
6c9ad82b: Merge "Revert "make vdso function pointers read-only at runtime""
* commit '
6c9ad82b1c0f26f5edb5d5ca246b88451c5ea238':
Revert "make vdso function pointers read-only at runtime"
Dmitriy Ivanov [Mon, 20 Jul 2015 18:31:07 +0000 (18:31 +0000)]
Merge "Fix dt_runpath test."
Dmitriy Ivanov [Mon, 20 Jul 2015 17:47:49 +0000 (10:47 -0700)]
Fix dt_runpath test.
Bfd linker produces DT_RPATH instead of DT_RUNPATH
unless --enable-new-dtags option is specified.
Bug: http://b/
22560945
Change-Id: I71bdc5137b899ab736e55c5a9574cfbba8e1983b
Elliott Hughes [Mon, 20 Jul 2015 17:36:52 +0000 (17:36 +0000)]
Merge "<sys/time.h> should include [most of] <sys/select.h>."
Elliott Hughes [Mon, 20 Jul 2015 17:30:49 +0000 (17:30 +0000)]
Merge "Revert "make vdso function pointers read-only at runtime""
Elliott Hughes [Mon, 20 Jul 2015 17:30:33 +0000 (17:30 +0000)]
Revert "make vdso function pointers read-only at runtime"
This reverts commit
df1a3c6d21702e3e96cfcddadee4a50bfac82110.
This change prevented N9 from booting (http://b/
22568628).
Change-Id: I071d6d6a0ae7881d65641839e665acdcf58462b4
Elliott Hughes [Sat, 18 Jul 2015 02:10:24 +0000 (19:10 -0700)]
<sys/time.h> should include [most of] <sys/select.h>.
Found by trying to build c-ares with bionic.
Change-Id: I38684abcb806ef1e8806c68b4a6dd9200f48849e
Elliott Hughes [Fri, 17 Jul 2015 22:04:59 +0000 (22:04 +0000)]
am
4f2e1d3b: Merge "Add all the glibc one-line "synonym" header files."
* commit '
4f2e1d3b1e3b3729b551c22c5a0be8d07795adfd':
Add all the glibc one-line "synonym" header files.
Elliott Hughes [Fri, 17 Jul 2015 21:42:03 +0000 (21:42 +0000)]
Merge "Add all the glibc one-line "synonym" header files."
Elliott Hughes [Fri, 17 Jul 2015 20:59:36 +0000 (13:59 -0700)]
Add all the glibc one-line "synonym" header files.
Ported code keeps needing these one by one, so let's just add the whole
set...
Change-Id: I9662b256aeaa1b0ffb22354130e503f0c4aa472b
Elliott Hughes [Fri, 17 Jul 2015 18:39:31 +0000 (18:39 +0000)]
am
ca7bc509: Merge "make vdso function pointers read-only at runtime"
* commit '
ca7bc509cf3b321b4721137df1e5407415fc7dd7':
make vdso function pointers read-only at runtime
Dmitriy Ivanov [Fri, 17 Jul 2015 18:17:06 +0000 (18:17 +0000)]
am
a58d2498: Merge "Fix potential race condition on dlopen"
* commit '
a58d24984045b474883ad14500a465ab331db47d':
Fix potential race condition on dlopen
Elliott Hughes [Fri, 17 Jul 2015 18:13:31 +0000 (18:13 +0000)]
Merge "make vdso function pointers read-only at runtime"
Daniel Micay [Fri, 17 Jul 2015 16:13:27 +0000 (12:13 -0400)]
make vdso function pointers read-only at runtime
Global, writable function pointers are low-hanging fruit for hijacking
control flow with an overflow from a global buffer or an arbitrary write
vulnerability. This moves the function pointer table into a dedicated
page and makes it read-only at runtime, similar to RELRO.
This increases the memory usage of the library by just under one page.
This could be avoided by having the linker load the vdso by replacing
weak symbols. It's not significant within the Zygote spawning model
though because it's read-only after early init.
Change-Id: Id7a49c96c1b15c2e1926528304b3c54a81e78caf
Dmitriy Ivanov [Fri, 17 Jul 2015 17:49:20 +0000 (17:49 +0000)]
Merge "Fix potential race condition on dlopen"