11939 Commits

Author SHA1 Message Date
Elliott Hughes
8885dcc779 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
2015-01-20 16:18:32 -08:00
Elliott Hughes
927d8be76d Merge "Fix build error when XLOG is enabled" 2015-01-21 00:13:28 +00:00
Patrick Tjin
a6a0949b1d Fix build error when XLOG is enabled
(cherrypick of 79a49c9857f3949fc13373eeb179f27b6ecdca81.)

Change-Id: I7bb44fd1fe3ef2ddfc115247f328eccfceeb5352
Signed-off-by: Patrick Tjin <pattjin@google.com>
2015-01-20 16:12:45 -08:00
Elliott Hughes
c053a42831 Merge "Optimized fread." 2015-01-21 00:11:31 +00:00
Elliott Hughes
75b99387dd 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
2015-01-20 15:59:17 -08:00
Yabin Cui
da307e7d91 am d3d75c02: Merge "Remove testcase time printing in bionic-unit-tests."
* commit 'd3d75c029a9b768989d5370000788dca4032b97a':
  Remove testcase time printing in bionic-unit-tests.
2015-01-20 23:43:15 +00:00
Yabin Cui
d3d75c029a Merge "Remove testcase time printing in bionic-unit-tests." 2015-01-20 23:38:35 +00:00
Yabin Cui
978e54a788 am 1c01c9f7: Merge "Add target libbionic_gtest_main for cts test."
* commit '1c01c9f752c07d758349356c18563261b8216da9':
  Add target libbionic_gtest_main for cts test.
2015-01-20 22:51:49 +00:00
Yabin Cui
516eb53113 Remove testcase time printing in bionic-unit-tests.
Bug: 19075565
Change-Id: Icccb60657a2985e96abb1703673f0ebe2199586a
2015-01-20 14:46:03 -08:00
Yabin Cui
1c01c9f752 Merge "Add target libbionic_gtest_main for cts test." 2015-01-20 22:44:02 +00:00
Yabin Cui
6104eb9fa7 Add target libbionic_gtest_main for cts test.
Bug: 17589740
Change-Id: I37f2d3fe72870b9dc867407fa1619c9a6fcd5cbb
2015-01-20 14:32:07 -08:00
Elliott Hughes
3873c9dfe6 am 1d7b3f3c: Merge "Improve <stdio_ext.h> testing."
* commit '1d7b3f3ccc4f2883cbc0fe677dff888c56c18996':
  Improve <stdio_ext.h> testing.
2015-01-20 18:27:47 +00:00
Elliott Hughes
1d7b3f3ccc Merge "Improve <stdio_ext.h> testing." 2015-01-20 18:07:37 +00:00
Elliott Hughes
3ef0c58db6 am 3bbf4639: Merge "Add a benchmark for using stdio to read a file in /proc."
* commit '3bbf4639080bc2f42435b4a7fd400c44aab7fd70':
  Add a benchmark for using stdio to read a file in /proc.
2015-01-17 01:42:16 +00:00
Elliott Hughes
3bbf463908 Merge "Add a benchmark for using stdio to read a file in /proc." 2015-01-17 01:24:44 +00:00
Elliott Hughes
1cf32f83d3 Add a benchmark for using stdio to read a file in /proc.
Change-Id: I12517aae19e36b7c022a11e8807aece61bb0cb9c
2015-01-16 17:08:31 -08:00
Elliott Hughes
df8f1a42d1 Improve <stdio_ext.h> testing.
I almost fixed a non-bug. Add a test to prevent me from doing that.

Change-Id: I4a1dc13e603a7a377bdaee2e78132015087f7107
2015-01-16 16:40:55 -08:00
Elliott Hughes
52e9fe53bb am 481cf21e: Merge "Use SI prefixes throughout the benchmark output."
* commit '481cf21e08a6cbbc686487744f1cb07b6d3f400e':
  Use SI prefixes throughout the benchmark output.
2015-01-17 00:27:58 +00:00
Elliott Hughes
481cf21e08 Merge "Use SI prefixes throughout the benchmark output." 2015-01-17 00:23:35 +00:00
Yabin Cui
58bbe437ac am cfe7e75f: Merge "Make sys_resource test more robust."
* commit 'cfe7e75fc13afb987d86aaaee305040f3369f797':
  Make sys_resource test more robust.
2015-01-16 21:57:33 +00:00
Yabin Cui
cfe7e75fc1 Merge "Make sys_resource test more robust." 2015-01-16 21:52:11 +00:00
Yabin Cui
4853f40f3f 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
2015-01-16 13:28:43 -08:00
Elliott Hughes
8bb020e8e5 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
2015-01-16 13:11:25 -08:00
Elliott Hughes
e8d620d5a2 am ffad8df6: Merge "Use a vector of benchmarks and new for loop syntax."
* commit 'ffad8df672363bad43528898cc47aa2ed3d08c66':
  Use a vector of benchmarks and new for loop syntax.
2015-01-16 03:27:04 +00:00
Elliott Hughes
ffad8df672 Merge "Use a vector of benchmarks and new for loop syntax." 2015-01-16 03:22:40 +00:00
Elliott Hughes
e48f533c95 Use a vector of benchmarks and new for loop syntax.
Change-Id: Ib1f1250e7786770083ed6a478677a893b2075a93
2015-01-15 17:10:42 -08:00
Elliott Hughes
cb41ce5f4e am 594db0f1: Merge "bionic benchmarks: limit benchmark run time to 1s real time"
* commit '594db0f1b235306d2687395564745888348df808':
  bionic benchmarks: limit benchmark run time to 1s real time
2015-01-16 00:48:36 +00:00
Elliott Hughes
594db0f1b2 Merge "bionic benchmarks: limit benchmark run time to 1s real time" 2015-01-16 00:44:16 +00:00
Elliott Hughes
f14170937f am 3159972a: Merge "bionic benchmarks: export benchmark library"
* commit '3159972a80234f7a8e3903cefaeb7719a50f6279':
  bionic benchmarks: export benchmark library
2015-01-16 00:42:43 +00:00
Colin Cross
a763504f9d 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
2015-01-15 16:42:20 -08:00
Elliott Hughes
3159972a80 Merge "bionic benchmarks: export benchmark library" 2015-01-16 00:36:20 +00:00
Colin Cross
7b9df19491 bionic benchmarks: export benchmark library
Export libbenchmark for external projects to write benchmarks against.

Change-Id: I3b04a56a62ce517afc0d5e06dc8d28879ada3d30
2015-01-15 16:22:42 -08:00
Yabin Cui
afb488a3e9 am 6fac2f68: Merge "Fix possible leak in pthread_detach."
* commit '6fac2f680f829570122276dc6876f02350a652b1':
  Fix possible leak in pthread_detach.
2015-01-15 19:43:52 +00:00
Yabin Cui
6fac2f680f Merge "Fix possible leak in pthread_detach." 2015-01-15 19:35:38 +00:00
Yabin Cui
4a53841212 am deab11ac: Merge "Make bionic-unit-tests default run isolate mode."
* commit 'deab11acd7000573ad9c034e5bf9475aadbc5cbe':
  Make bionic-unit-tests default run isolate mode.
2015-01-15 19:10:33 +00:00
Yabin Cui
19e246dda6 Fix possible leak in pthread_detach.
If pthread_detach() is called while the thread is in pthread_exit(),
it takes the risk that no one can free the pthread_internal_t.
So I add PTHREAD_ATTR_FLAG_ZOMBIE to detect this, maybe very rare, but
both glibc and netbsd libpthread have similar function.

Change-Id: Iaa15f651903b8ca07aaa7bd4de46ff14a2f93835
2015-01-15 10:45:25 -08:00
Yabin Cui
deab11acd7 Merge "Make bionic-unit-tests default run isolate mode." 2015-01-15 18:10:30 +00:00
Dmitriy Ivanov
c16eafd5ff am fcc6fd35: Merge "Refactoring: move mips reloc to separate method"
* commit 'fcc6fd35dfa88e659aa1769d1a1351ad74278763':
  Refactoring: move mips reloc to separate method
2015-01-15 18:01:49 +00:00
Dmitriy Ivanov
fcc6fd35df Merge "Refactoring: move mips reloc to separate method" 2015-01-15 17:56:36 +00:00
Dmitriy Ivanov
114ff69f17 Refactoring: move mips reloc to separate method
Change-Id: I712614853e3f0e515f5c2bdd8f0aaa5feeae8e55
2015-01-14 18:03:19 -08:00
Dmitriy Ivanov
0f1fe41f53 am ffa2c9ed: Merge "Refactoring: unify relocate function"
* commit 'ffa2c9edb5b1cf295bceffc7876a68747b6fa259':
  Refactoring: unify relocate function
2015-01-14 18:19:37 +00:00
Dmitriy Ivanov
ffa2c9edb5 Merge "Refactoring: unify relocate function" 2015-01-14 18:14:30 +00:00
Andres Morales
740ac6fe73 am 2b15f54a: Merge "bionic: libc: Added path to root ramdisk build properties file."
* commit '2b15f54a489d84d9a273025b615cdb63f63d5fc9':
  bionic: libc: Added path to root ramdisk build properties file.
2015-01-14 15:59:03 +00:00
Andres Morales
2b15f54a48 Merge "bionic: libc: Added path to root ramdisk build properties file." 2015-01-14 15:54:04 +00:00
Yabin Cui
d12ea31b8d am 85747809: Merge "Test that ip6-localhost exists in etc/hosts."
* commit '85747809b05a5e3b48bd4da9a7ea98d0adf8f919':
  Test that ip6-localhost exists in etc/hosts.
2015-01-14 12:00:21 +00:00
Dmitriy Ivanov
47a32828c2 am a23569c9: Merge "Refactoring: use generic reloc constants"
* commit 'a23569c9485d50e9184dcc7d97640140015b3f3d':
  Refactoring: use generic reloc constants
2015-01-14 12:00:19 +00:00
Elliott Hughes
5bff8a2337 am d986f2e4: Merge "Sync with upstream OpenBSD stdio."
* commit 'd986f2e4642a0571754cb1349101acf8ac10b484':
  Sync with upstream OpenBSD stdio.
2015-01-14 12:00:18 +00:00
Dmitriy Ivanov
bcc04d0069 Refactoring: unify relocate function
Use one relocate for all platforms.

Change-Id: I43e75162c5b29105e651defc11a511e168368736
2015-01-13 19:15:02 -08:00
Andres Morales
9d9ebc5fc9 bionic: libc: Added path to root ramdisk build properties file.
Change-Id: Id850e4e5ef4e91cea7ad53f6858886daf660eeec
2015-01-13 18:07:23 -08:00
Yabin Cui
85747809b0 Merge "Test that ip6-localhost exists in etc/hosts." 2015-01-14 01:50:20 +00:00