OSDN Git Service
Elliott Hughes [Thu, 29 Jan 2015 01:31:58 +0000 (01:31 +0000)]
Merge "Modify MIPS64 stat structure to match a generic one in AOSP."
Raghu Gandham [Thu, 15 Jan 2015 19:12:22 +0000 (11:12 -0800)]
Modify MIPS64 stat structure to match a generic one in AOSP.
The kernel version of the stat structure is used during the syscalls. After the syscall,
the kernel stat structure is converted to match the generic one. Eventually we would like
the generic stat structure and related syscalls be added to MIPS64 kernel, removing the
thunks added to AOSP.
Change-Id: I7764e80278c1cc8254754c3531ec2dda7544a8ec
Yabin Cui [Wed, 28 Jan 2015 21:16:04 +0000 (21:16 +0000)]
Merge "Switch pthread_once_t to stdatomic.h."
Dimitry Ivanov [Wed, 28 Jan 2015 17:34:51 +0000 (17:34 +0000)]
Merge "Fix mips64 build. Replace explicit cast with static_cast"
Nikola Veljkovic [Wed, 28 Jan 2015 15:18:52 +0000 (16:18 +0100)]
Fix mips64 build. Replace explicit cast with static_cast
Change-Id: Ib08fbe8bb832884a3eb33904fe4d490759116cb2
Yabin Cui [Sat, 24 Jan 2015 02:21:46 +0000 (18:21 -0800)]
Switch pthread_once_t to stdatomic.h.
Bug:
17574610
Change-Id: I653f2aa4b5b38dbdaffe4a6c3deccfe6ad3b0e74
Yabin Cui [Tue, 27 Jan 2015 22:00:35 +0000 (22:00 +0000)]
Merge "Fix parse of gtest_filter in bionic gtest main."
Elliott Hughes [Tue, 27 Jan 2015 19:39:37 +0000 (19:39 +0000)]
Merge "Fix mips build."
Yabin Cui [Tue, 27 Jan 2015 19:22:46 +0000 (11:22 -0800)]
Fix parse of gtest_filter in bionic gtest main.
Bug:
19130330
Change-Id: Id6a60570a8aab6ae7259ff228b3801285b378f77
Elliott Hughes [Tue, 27 Jan 2015 19:09:27 +0000 (11:09 -0800)]
Fix mips build.
Move various mips-only things into the arch-mips directory. As soon as mips
writes assembler replacements, we can remove these.
Change-Id: Ia7308559bc361f5c8df3e1d456b381865e060b93
Elliott Hughes [Tue, 27 Jan 2015 19:08:33 +0000 (19:08 +0000)]
Merge "Add a test for float registers across setjmp/logjmp."
Elliott Hughes [Tue, 27 Jan 2015 05:46:55 +0000 (05:46 +0000)]
Merge "x86 has an assembler bcopy implementation."
Elliott Hughes [Tue, 27 Jan 2015 05:45:56 +0000 (21:45 -0800)]
x86 has an assembler bcopy implementation.
Change-Id: I4ed7af3c5b104f86550120401f773150c460f37b
Yabin Cui [Tue, 27 Jan 2015 05:32:52 +0000 (05:32 +0000)]
Merge "Rename "TIMEWARN" to "SLOW" in bionic gtest."
Yabin Cui [Tue, 27 Jan 2015 01:19:37 +0000 (17:19 -0800)]
Rename "TIMEWARN" to "SLOW" in bionic gtest.
Bug:
19109188.
Change-Id: Idfe769ac652bf37642da24e4abb6061ca861d57e
Elliott Hughes [Tue, 27 Jan 2015 04:56:19 +0000 (04:56 +0000)]
Merge "[Arm64] Fix overlapping fp fields in jmp_buf"
Elliott Hughes [Tue, 27 Jan 2015 04:52:34 +0000 (20:52 -0800)]
Add a test for float registers across setjmp/logjmp.
Change-Id: I17cc056b185755e0b91de096b5ceefee4f4e0b3a
Elliott Hughes [Tue, 27 Jan 2015 04:49:06 +0000 (04:49 +0000)]
Merge "Clean up <stdlib.h> slightly."
Lorenzo Colitti [Tue, 27 Jan 2015 04:02:42 +0000 (04:02 +0000)]
Merge "Make bionic compile even if resolver debugging is enabled."
Christopher Ferris [Tue, 27 Jan 2015 01:32:06 +0000 (01:32 +0000)]
Merge "Do not build host benchmark code on macs."
Yabin Cui [Tue, 27 Jan 2015 01:01:05 +0000 (01:01 +0000)]
Merge "Support --gtest_ouput option in bionic gtest main."
Christopher Ferris [Tue, 27 Jan 2015 00:54:40 +0000 (16:54 -0800)]
Do not build host benchmark code on macs.
Macs don't have clock_gettime, and it doesn't seem worth getting this
to run on the host for mac.
Change-Id: I59d9939acc2ede1308b24a60c4242d45355d967d
Yabin Cui [Fri, 23 Jan 2015 03:26:12 +0000 (19:26 -0800)]
Support --gtest_ouput option in bionic gtest main.
Bug:
19109500
Change-Id: Ib18f90ad522e66ea62dd4e02e314585d9b36e15f
Duane Sand [Tue, 27 Jan 2015 00:20:05 +0000 (16:20 -0800)]
[Arm64] Fix overlapping fp fields in jmp_buf
Change-Id: I9be9f118108f3f6e2bb02a5b01e0420fbfd15d85
Elliott Hughes [Mon, 26 Jan 2015 21:34:58 +0000 (13:34 -0800)]
Clean up <stdlib.h> slightly.
Interestingly, this mostly involves cleaning up our implementation of
various <string.h> functions.
Change-Id: Ifaef49b5cb997134f7bc0cc31bdac844bdb9e089
Christopher Ferris [Mon, 26 Jan 2015 21:27:51 +0000 (21:27 +0000)]
Merge "Update kernel headers to v3.18.3."
Elliott Hughes [Mon, 26 Jan 2015 20:38:46 +0000 (20:38 +0000)]
Merge "Add <error.h>."
Elliott Hughes [Sun, 25 Jan 2015 02:36:29 +0000 (18:36 -0800)]
Add <error.h>.
Bug: https://code.google.com/p/android/issues/detail?id=79170
Change-Id: Id91765fac45124545e2674a5b2c814707c1a448b
Christopher Ferris [Mon, 26 Jan 2015 18:57:07 +0000 (10:57 -0800)]
Update kernel headers to v3.18.3.
Bug:
19127803
Change-Id: I67fa0832322ddd0032d909476047578be052bcf2
Lorenzo Colitti [Fri, 28 Nov 2014 02:47:13 +0000 (11:47 +0900)]
Make bionic compile even if resolver debugging is enabled.
The code now compiles with all combinations of DEBUG and
DEBUG_DATA except DEBUG_DATA=1, DEBUG=0, which is unsupported.
Change-Id: I9035a65c649df73092f1fc0864ae1cdd9a14aa3b
Dan Albert [Sun, 25 Jan 2015 22:51:37 +0000 (22:51 +0000)]
Merge "Fix coverage build after adding clang coverage."
Dan Albert [Sun, 25 Jan 2015 22:27:51 +0000 (14:27 -0800)]
Fix coverage build after adding clang coverage.
Static libraries are painful. Details are in the comment. I'll try to
get prebuilts in to the tree so I can fix this on Monday. Until then,
this isn't actually a regression because we've not had coverage
available for this library until now anyway.
Bug:
17574078
Change-Id: I7505c8a94007203e15a6cf192caa06004849d7d9
Elliott Hughes [Sun, 25 Jan 2015 05:09:20 +0000 (05:09 +0000)]
Merge "Remove obsolete BUILD_TINY_ANDROID."
Elliott Hughes [Sun, 25 Jan 2015 03:01:58 +0000 (19:01 -0800)]
Remove obsolete BUILD_TINY_ANDROID.
Change-Id: If2fc97134340fd09ec2583b666ace2f673cbdf66
Elliott Hughes [Sat, 24 Jan 2015 23:44:26 +0000 (23:44 +0000)]
Merge "Reduce <stdlib.h> namespace pollution."
Elliott Hughes [Sat, 24 Jan 2015 23:22:57 +0000 (15:22 -0800)]
Reduce <stdlib.h> namespace pollution.
<stdlib.h> shouldn't drag in all of <string.h>.
Change-Id: I949172f7ff17e329e411e5054e50f79c13775444
Elliott Hughes [Sat, 24 Jan 2015 22:34:51 +0000 (22:34 +0000)]
Merge "Reduce <signal.h> namespace pollution."
Elliott Hughes [Sat, 24 Jan 2015 22:18:16 +0000 (14:18 -0800)]
Reduce <signal.h> namespace pollution.
<signal.h> shouldn't drag in all of <string.h>.
Change-Id: I57aea36dad5e89ea2f9541c35594ca6225e532be
Elliott Hughes [Sat, 24 Jan 2015 22:08:19 +0000 (22:08 +0000)]
Merge "Say "Bad file descriptor" rather than "Bad file number"."
Elliott Hughes [Sat, 24 Jan 2015 21:38:57 +0000 (13:38 -0800)]
Say "Bad file descriptor" rather than "Bad file number".
This text is actually in POSIX (though it's not mandatory) and it's what glibc
says. Who says "file number" anyway?
Change-Id: Icc91ac24587c2bc692e0b97c19d32ac1bdda4ea7
Elliott Hughes [Sat, 24 Jan 2015 21:25:05 +0000 (21:25 +0000)]
Merge "Fix optimized fread."
Elliott Hughes [Sat, 24 Jan 2015 01:48:15 +0000 (17:48 -0800)]
Fix optimized fread.
gcov does writes after reads on the same stream, but the bulk read optimization
was clobbering the FILE _flags, causing fwrite to fail.
Bug:
19129055
Change-Id: I9650cb7de4bb173a706b502406266ed0d2b654d7
Dmitriy Ivanov [Sat, 24 Jan 2015 00:41:52 +0000 (00:41 +0000)]
Merge "Minimize calls to mprotect"
Dmitriy Ivanov [Fri, 23 Jan 2015 20:03:53 +0000 (12:03 -0800)]
Minimize calls to mprotect
Implement refcounter based data protection guard
to avoid unnecessary calls to mprotect when dlopen/dlclose
is called from a constructor.
Bug:
19124318
Big:
7941716
Change-Id: Id221b84ce75443094f99756dc9950b0a1dc87222
Dan Albert [Sat, 24 Jan 2015 00:01:39 +0000 (00:01 +0000)]
Merge "Allow make to set a timeout for the host tests."
Chih-Hung Hsieh [Fri, 23 Jan 2015 23:33:54 +0000 (23:33 +0000)]
Merge "Add comments about the -shared flag."
Dan Albert [Fri, 23 Jan 2015 19:35:48 +0000 (11:35 -0800)]
Allow make to set a timeout for the host tests.
Change-Id: Icc2ebf64bd1da1687bf313fe7a5640155c5795d8
Elliott Hughes [Fri, 23 Jan 2015 18:55:29 +0000 (18:55 +0000)]
Merge "Add a log message to make the transition from linker to user code clear."
Elliott Hughes [Fri, 23 Jan 2015 18:43:58 +0000 (10:43 -0800)]
Add a log message to make the transition from linker to user code clear.
Handy when looking at strace output for seeing "where does my code start?",
though you'll need to set LD_DEBUG=1 (or greater) and constructors will
already have run (but you can set LD_DEBUG to a higher value to track that).
Change-Id: I82d53a7123b39febf5b2a956de83c8a30f229651
Dmitriy Ivanov [Fri, 23 Jan 2015 03:09:21 +0000 (03:09 +0000)]
Merge "Enable -Wold-style-cast warnings for linker"
Chih-Hung Hsieh [Thu, 22 Jan 2015 22:05:15 +0000 (14:05 -0800)]
Add comments about the -shared flag.
Must build this linker as a shared object.
A statically linked module does not load during init.
BUG:
18008984
Change-Id: I5f0411129024edcb9381c473ea4e741a075e9184
Dan Albert [Fri, 23 Jan 2015 00:46:53 +0000 (00:46 +0000)]
Merge "Add a basic NDK compatibility library."
Dmitriy Ivanov [Fri, 23 Jan 2015 00:04:25 +0000 (16:04 -0800)]
Enable -Wold-style-cast warnings for linker
And fix old style casts.
Change-Id: I37e7a3e3fd852528ea76f02d967c7bd8cd5b06c9
Elliott Hughes [Thu, 22 Jan 2015 23:40:07 +0000 (23:40 +0000)]
Merge "There's no such thing as LOCAL_CXXFLAGS."
Elliott Hughes [Thu, 22 Jan 2015 23:36:24 +0000 (15:36 -0800)]
There's no such thing as LOCAL_CXXFLAGS.
Change-Id: Iad70e6bd4cb7cec9e0ece500a540e4dadc83d92e
Elliott Hughes [Thu, 22 Jan 2015 23:35:47 +0000 (23:35 +0000)]
Merge "Fix the stdio.fread_EOF test."
Elliott Hughes [Thu, 22 Jan 2015 23:13:38 +0000 (15:13 -0800)]
Fix the stdio.fread_EOF test.
Another sizeof/strlen screwup caused by trying to be too clever. Use
std::string instead.
Also fix all the ASSERT_STREQ calls in this file that had the arguments
the right^Wwrong way round. If I ever see Kent Beck...
Change-Id: I47a1bdfee99cf4e7bed9b398f3158a308fbcf1e8
Elliott Hughes [Thu, 22 Jan 2015 22:24:52 +0000 (22:24 +0000)]
Merge "Fix fread_EOF test name."
Elliott Hughes [Thu, 22 Jan 2015 22:18:35 +0000 (14:18 -0800)]
Fix fread_EOF test name.
Change-Id: I53a7f1428fd27c0b2a5c80f2e8af4845d17f5b4b
Dan Albert [Thu, 22 Jan 2015 22:00:36 +0000 (22:00 +0000)]
Merge "Add support for building other architectures."
Elliott Hughes [Thu, 22 Jan 2015 20:15:03 +0000 (20:15 +0000)]
Merge "Use a more specific return type for app_id_from_name."
Elliott Hughes [Thu, 22 Jan 2015 19:02:59 +0000 (11:02 -0800)]
Use a more specific return type for app_id_from_name.
I suspect we can simplify this code, but I don't know enough about it
to get involved now.
Change-Id: I1c39761ae31beb70d41ffa6f0e396a4f17529d46
Dan Albert [Thu, 22 Jan 2015 01:50:29 +0000 (17:50 -0800)]
Add a basic NDK compatibility library.
We know we can safely statically link `libm`, since it doesn't have
any dependencies on the OS or the layout of a data type that has
changed between releases (like `pthread_t`).
We can safely statically link `libc_syscalls` because the user can
check for and handle `ENOSYS`.
Update `ndk_missing_symbols.py` to account for symbols that are in the
compatibility library.
Improve `symbols.py` to be able to pull symbols from a static library.
Change-Id: Ifb0ede1e8b4a8f0f33865d9fed72fb8b4d443fbc
Elliott Hughes [Thu, 22 Jan 2015 01:52:05 +0000 (01:52 +0000)]
Merge "Turn on -Wold-style-cast and fix the errors."
Dan Albert [Thu, 22 Jan 2015 01:25:56 +0000 (01:25 +0000)]
Merge "Add ndk_missing_symbols.py."
Elliott Hughes [Thu, 22 Jan 2015 00:19:07 +0000 (16:19 -0800)]
Turn on -Wold-style-cast and fix the errors.
A couple of dodgy cases where we cast away const, but otherwise pretty boring.
Change-Id: Ibc39ebd525377792b5911464be842121c20f03b9
Dan Albert [Thu, 22 Jan 2015 00:42:02 +0000 (16:42 -0800)]
Add ndk_missing_symbols.py.
ndk_missing_symbols.py pulls libc.so and libm.so off a running device
or emulator and shows the list of symbols that are in the current
bionic that aren't available on the target.
Change-Id: Ia92c315a6a0ce2e5c33db0b62c8fab41c08a4c31
Elliott Hughes [Wed, 21 Jan 2015 19:42:40 +0000 (19:42 +0000)]
Merge "Implement __fsetlocking."
Christopher Ferris [Wed, 21 Jan 2015 18:39:59 +0000 (18:39 +0000)]
Merge "Contact proper debuggerd when crashing."
Elliott Hughes [Wed, 21 Jan 2015 02:09:05 +0000 (18:09 -0800)]
Implement __fsetlocking.
The old __isthreaded hack was never very useful on Android because all user
code runs in a VM where there are lots of threads running. But __fsetlocking
lets a caller say "I'll worry about the locking for this FILE*", which is
useful for the normal case where you don't share a FILE* between threads
so you don't need any locking.
Bug:
17154740
Bug:
18593728
Change-Id: I2a8dddc29d3edff39a3d7d793387f2253608a68d
Dan Albert [Wed, 21 Jan 2015 18:25:39 +0000 (18:25 +0000)]
Merge "Report 404 errors from Gerrit and continue."
Dan Albert [Wed, 21 Jan 2015 17:56:28 +0000 (09:56 -0800)]
Report 404 errors from Gerrit and continue.
Currently, we get a 404 from Gerrit in the event that two projects
have the same Change-Id. We should be able to handle this and actually
cherry-pick each change so we can check multi-project changes, but for
now just skip these changes.
Change-Id: I7bc63208998d58beec83b71b302450d9be3ea026
Christopher Ferris [Mon, 19 Jan 2015 19:16:52 +0000 (11:16 -0800)]
Contact proper debuggerd when crashing.
Make the request structure match the new structure found in debuggerd
code.
On 64 bit systems, make sure that the 32 bit compiled linker is contacted.
Bug: https://code.google.com/p/android/issues/detail?id=97024
Change-Id: I675b8ff222fcf836b05de4e9b5976ff91ca929bf
Elliott Hughes [Wed, 21 Jan 2015 00:57:06 +0000 (00:57 +0000)]
Merge "Fix signed/unsigned comparison that was upsetting clang."
Elliott Hughes [Wed, 21 Jan 2015 00:52:04 +0000 (16:52 -0800)]
Fix signed/unsigned comparison that was upsetting clang.
bionic/libc/stdio/fread.c:86:27: error: comparison of integers of different signs: 'int' and 'size_t' (aka 'unsigned int') [-Werror,-Wsign-compare]
Change-Id: Ia7e1e053e0cb13113e8f2eede820be013acbab82
Elliott Hughes [Wed, 21 Jan 2015 00:50:01 +0000 (00:50 +0000)]
Merge "Add TEMP_FAILURE_RETRY to stdio's low-level read/write functions."
Elliott Hughes [Wed, 21 Jan 2015 00:18:32 +0000 (16:18 -0800)]
Add TEMP_FAILURE_RETRY to stdio's low-level read/write functions.
This is correctness rather than performance, but found while investigating
performance.
Bug:
18593728
Change-Id: Idbdfed89d1931fcfae65db29d662108d4bbd9b65
Elliott Hughes [Wed, 21 Jan 2015 00:13:27 +0000 (00:13 +0000)]
Merge "Fix build error when XLOG is enabled"
Patrick Tjin [Wed, 21 Jan 2015 00:02:04 +0000 (16:02 -0800)]
Fix build error when XLOG is enabled
(cherrypick of
79a49c9857f3949fc13373eeb179f27b6ecdca81.)
Change-Id: I7bb44fd1fe3ef2ddfc115247f328eccfceeb5352
Signed-off-by: Patrick Tjin <pattjin@google.com>
Elliott Hughes [Wed, 21 Jan 2015 00:11:30 +0000 (00:11 +0000)]
Merge "Optimized fread."
Elliott Hughes [Tue, 20 Jan 2015 19:23:50 +0000 (11:23 -0800)]
Optimized fread.
This makes us competitive with glibc for fully-buffered and unbuffered reads,
except in single-threaded situations where glibc avoids locking, but since
we're never really single-threaded anyway, that isn't a priority.
Bug:
18593728
Change-Id: Ib776bfba422ccf46209581fc0dc54f3567645b8f
Yabin Cui [Tue, 20 Jan 2015 23:38:34 +0000 (23:38 +0000)]
Merge "Remove testcase time printing in bionic-unit-tests."
Yabin Cui [Tue, 20 Jan 2015 22:46:03 +0000 (14:46 -0800)]
Remove testcase time printing in bionic-unit-tests.
Bug:
19075565
Change-Id: Icccb60657a2985e96abb1703673f0ebe2199586a
Yabin Cui [Tue, 20 Jan 2015 22:44:01 +0000 (22:44 +0000)]
Merge "Add target libbionic_gtest_main for cts test."
Yabin Cui [Tue, 20 Jan 2015 20:02:21 +0000 (12:02 -0800)]
Add target libbionic_gtest_main for cts test.
Bug:
17589740
Change-Id: I37f2d3fe72870b9dc867407fa1619c9a6fcd5cbb
Elliott Hughes [Tue, 20 Jan 2015 18:07:36 +0000 (18:07 +0000)]
Merge "Improve <stdio_ext.h> testing."
Elliott Hughes [Sat, 17 Jan 2015 01:24:43 +0000 (01:24 +0000)]
Merge "Add a benchmark for using stdio to read a file in /proc."
Elliott Hughes [Sat, 17 Jan 2015 01:08:31 +0000 (17:08 -0800)]
Add a benchmark for using stdio to read a file in /proc.
Change-Id: I12517aae19e36b7c022a11e8807aece61bb0cb9c
Elliott Hughes [Sat, 17 Jan 2015 00:40:55 +0000 (16:40 -0800)]
Improve <stdio_ext.h> testing.
I almost fixed a non-bug. Add a test to prevent me from doing that.
Change-Id: I4a1dc13e603a7a377bdaee2e78132015087f7107
Elliott Hughes [Sat, 17 Jan 2015 00:23:34 +0000 (00:23 +0000)]
Merge "Use SI prefixes throughout the benchmark output."
Yabin Cui [Fri, 16 Jan 2015 21:52:11 +0000 (21:52 +0000)]
Merge "Make sys_resource test more robust."
Yabin Cui [Mon, 5 Jan 2015 19:06:30 +0000 (11:06 -0800)]
Make sys_resource test more robust.
"ulimit -c xxx" command may run before bionic-unit-tests.
Make sure sys_resource test fails gently in that case.
Change-Id: Ic3b5ed8b20acba56df8c5ef082c88e5050e761aa
Elliott Hughes [Fri, 16 Jan 2015 21:11:25 +0000 (13:11 -0800)]
Use SI prefixes throughout the benchmark output.
Also switch throughput to GiB/s. I did play with using the new code,
but having consistent units for all results seemed easier to use
anyway (and doesn't require extra code).
Change-Id: I466fd573373bd05619e6f6e6d3dedd7dae0d9362
Elliott Hughes [Fri, 16 Jan 2015 03:22:40 +0000 (03:22 +0000)]
Merge "Use a vector of benchmarks and new for loop syntax."
Elliott Hughes [Fri, 16 Jan 2015 01:10:42 +0000 (17:10 -0800)]
Use a vector of benchmarks and new for loop syntax.
Change-Id: Ib1f1250e7786770083ed6a478677a893b2075a93
Elliott Hughes [Fri, 16 Jan 2015 00:44:16 +0000 (00:44 +0000)]
Merge "bionic benchmarks: limit benchmark run time to 1s real time"
Colin Cross [Thu, 28 Nov 2013 01:37:54 +0000 (17:37 -0800)]
bionic benchmarks: limit benchmark run time to 1s real time
The benchmark run loop tries to run until 1s of time has been
accumulated between StartBenchmarkTiming() and StopBenchmarkTiming().
If a majority of the time is spent stopped this can lead to
benchmarks running for very long periods of time. This can easily
happen when benchmarking something that requires initialization or
cleanup on each iteration.
Modify the loop to run for 1s of real time instead of 1s of
benchmark time. For existing benchmarks this shouldn't make much
of a difference.
Change-Id: Iaba8a13b4dfc4a5e2cd9992041c9173ea556f9cc
Elliott Hughes [Fri, 16 Jan 2015 00:36:19 +0000 (00:36 +0000)]
Merge "bionic benchmarks: export benchmark library"
Colin Cross [Fri, 15 Nov 2013 22:34:22 +0000 (14:34 -0800)]
bionic benchmarks: export benchmark library
Export libbenchmark for external projects to write benchmarks against.
Change-Id: I3b04a56a62ce517afc0d5e06dc8d28879ada3d30
Yabin Cui [Thu, 15 Jan 2015 19:35:38 +0000 (19:35 +0000)]
Merge "Fix possible leak in pthread_detach."