OSDN Git Service

android-x86/bionic.git
11 years agoam 6807af77: Merge "Make LD_PRELOAD failures just warnings."
Elliott Hughes [Tue, 18 Jun 2013 20:27:16 +0000 (13:27 -0700)]
am 6807af77: Merge "Make LD_PRELOAD failures just warnings."

* commit '6807af773f862750efb6860e00402580a5f463f3':
  Make LD_PRELOAD failures just warnings.

11 years agoam 02002443: Merge "bionic: fix deleting property arrays in property benchmark"
Colin Cross [Tue, 18 Jun 2013 20:23:51 +0000 (13:23 -0700)]
am 02002443: Merge "bionic: fix deleting property arrays in property benchmark"

* commit '02002443d4b17de78418d51fc303b4c976ad071a':
  bionic: fix deleting property arrays in property benchmark

11 years agoMerge "Make LD_PRELOAD failures just warnings."
Elliott Hughes [Tue, 18 Jun 2013 20:23:07 +0000 (20:23 +0000)]
Merge "Make LD_PRELOAD failures just warnings."

11 years agoMerge "bionic: fix deleting property arrays in property benchmark"
Colin Cross [Tue, 18 Jun 2013 20:22:25 +0000 (20:22 +0000)]
Merge "bionic: fix deleting property arrays in property benchmark"

11 years agoam e2fb05b4: Merge "libc: Introduce __errordecl()"
Nick Kralevich [Tue, 18 Jun 2013 20:17:35 +0000 (13:17 -0700)]
am e2fb05b4: Merge "libc: Introduce __errordecl()"

* commit 'e2fb05b45b9af7b9af8df0ea15bfec63d331d882':
  libc: Introduce __errordecl()

11 years agoMerge "libc: Introduce __errordecl()"
Nick Kralevich [Tue, 18 Jun 2013 20:15:33 +0000 (20:15 +0000)]
Merge "libc: Introduce __errordecl()"

11 years agoMake LD_PRELOAD failures just warnings.
Elliott Hughes [Tue, 18 Jun 2013 20:15:00 +0000 (13:15 -0700)]
Make LD_PRELOAD failures just warnings.

This matches glibc and makes life easier for developers who want to
sometimes preload a library from init (which has no conditionals); they
can simply move/remove the library to disable.

Change-Id: I579b8633f958235af6e46bb53b378b9e363afb1f

11 years agobionic: fix deleting property arrays in property benchmark
Colin Cross [Tue, 18 Jun 2013 20:08:28 +0000 (13:08 -0700)]
bionic: fix deleting property arrays in property benchmark

Use delete[] to delete arrays allocated with new []

Change-Id: Icc2a6b23df09049c008f7f1f50ed93a277174308

11 years agoam 0005b354: Merge "bionic: change properties benchmarks to read a single property"
Colin Cross [Tue, 18 Jun 2013 20:04:10 +0000 (13:04 -0700)]
am 0005b354: Merge "bionic: change properties benchmarks to read a single property"

* commit '0005b3544be345e697592b4dc199ebaa37048559':
  bionic: change properties benchmarks to read a single property

11 years agoMerge "bionic: change properties benchmarks to read a single property"
Colin Cross [Tue, 18 Jun 2013 20:01:04 +0000 (20:01 +0000)]
Merge "bionic: change properties benchmarks to read a single property"

11 years agobionic: change properties benchmarks to read a single property
Colin Cross [Tue, 18 Jun 2013 19:47:38 +0000 (12:47 -0700)]
bionic: change properties benchmarks to read a single property

The properties benchmarks were reading n properties from a property
area with n properties in it, which was making it hard to compare
the time between runs of different sizes.  Change the benchmark
to read a random property per iteration so the numbers between
runs are comparable.

Change-Id: Ib1648ce0948d9038fce76d209608427376cfb8da

11 years agolibc: Introduce __errordecl()
Nick Kralevich [Tue, 18 Jun 2013 17:46:02 +0000 (10:46 -0700)]
libc: Introduce __errordecl()

Define __errordecl and replace __attribute__((__error__("foo")))
with __errordecl. Make sure __errordecl is a no-op on clang, as it
generates a compile time warning.

Change-Id: Ifa1a2d3afd6881de9d479fc2adac6737871a2949

11 years agoam 977a3313: Merge changes Iac00ce10,I192d3825
Colin Cross [Tue, 18 Jun 2013 01:21:37 +0000 (18:21 -0700)]
am 977a3313: Merge changes Iac00ce10,I192d3825

* commit '977a33137d2be0093f474055f839cf665b82b588':
  bionic: add tests for properties
  bionic: move system property writing from init to bionic

11 years agoMerge changes Iac00ce10,I192d3825
Colin Cross [Tue, 18 Jun 2013 01:11:58 +0000 (01:11 +0000)]
Merge changes Iac00ce10,I192d3825

* changes:
  bionic: add tests for properties
  bionic: move system property writing from init to bionic

11 years agobionic: add tests for properties
Colin Cross [Tue, 29 Jan 2013 01:19:43 +0000 (17:19 -0800)]
bionic: add tests for properties

(cherry picked from commit 37d9f75dde881a0ba1c1b3253b1be19d4096963d)

Change-Id: Iac00ce10a4272032a1cbdbc4204277d6876e3365

11 years agobionic: move system property writing from init to bionic
Colin Cross [Thu, 24 Jan 2013 07:07:06 +0000 (23:07 -0800)]
bionic: move system property writing from init to bionic

Move the implementation of writing to the system property area
from init to bionic, next to the reader implementation.  This
will allow full property testing to be added to bionic tests.

Add new accessor and waiting functions to hide the implementation
from watchprops and various bionic users.

Also hide some of the implementation details of the property area
from init by moving them into _system_properties.h, and other details
from everybody by moving them into system_properties.h.

(cherry picked from commit dc1038b7900acb664e99643d2974e1a0f4703781)

Change-Id: I192d3825ee276c5047bc751039fe6cfe226a7cca

11 years agoam 5995bf88: Merge "don\'t hardcode register r0/v1 when reading the TLS"
Elliott Hughes [Mon, 17 Jun 2013 21:53:12 +0000 (14:53 -0700)]
am 5995bf88: Merge "don\'t hardcode register r0/v1 when reading the TLS"

* commit '5995bf880e2a7fac249382f0a929b7271c843122':
  don't hardcode register r0/v1 when reading the TLS

11 years agoMerge "don't hardcode register r0/v1 when reading the TLS"
Elliott Hughes [Mon, 17 Jun 2013 21:51:49 +0000 (21:51 +0000)]
Merge "don't hardcode register r0/v1 when reading the TLS"

11 years agodon't hardcode register r0/v1 when reading the TLS
Mathias Agopian [Sat, 15 Jun 2013 02:00:03 +0000 (19:00 -0700)]
don't hardcode register r0/v1 when reading the TLS

this leads to much improved code when calling __get_tls()

Change-Id: I21d870fb33c33a921ca55c4e100772e0f7a8d1e4

11 years agoam 657d0da7: Merge "Slight script cleanup; make gensyscalls work from any directory."
Elliott Hughes [Mon, 17 Jun 2013 18:18:58 +0000 (11:18 -0700)]
am 657d0da7: Merge "Slight script cleanup; make gensyscalls work from any directory."

* commit '657d0da7513e01b0eb104c8a8a522c28fdbc807d':
  Slight script cleanup; make gensyscalls work from any directory.

11 years agoMerge "Slight script cleanup; make gensyscalls work from any directory."
Elliott Hughes [Mon, 17 Jun 2013 18:16:36 +0000 (18:16 +0000)]
Merge "Slight script cleanup; make gensyscalls work from any directory."

11 years agoSlight script cleanup; make gensyscalls work from any directory.
Elliott Hughes [Mon, 17 Jun 2013 17:26:10 +0000 (10:26 -0700)]
Slight script cleanup; make gensyscalls work from any directory.

Also remove a ton of dead code.

Change-Id: I1315623695a004f643b155f121cbafe24b715b8a

11 years agoam 560e9f7e: Merge "Ensure that <stdint.h> defines SIZE_MAX and friends."
Elliott Hughes [Thu, 13 Jun 2013 23:21:55 +0000 (16:21 -0700)]
am 560e9f7e: Merge "Ensure that <stdint.h> defines SIZE_MAX and friends."

* commit '560e9f7e7a39e02aca96709043ca06f562f75d58':
  Ensure that <stdint.h> defines SIZE_MAX and friends.

11 years agoMerge "Ensure that <stdint.h> defines SIZE_MAX and friends."
Elliott Hughes [Thu, 13 Jun 2013 23:19:09 +0000 (23:19 +0000)]
Merge "Ensure that <stdint.h> defines SIZE_MAX and friends."

11 years agoEnsure that <stdint.h> defines SIZE_MAX and friends.
Elliott Hughes [Thu, 13 Jun 2013 23:02:53 +0000 (16:02 -0700)]
Ensure that <stdint.h> defines SIZE_MAX and friends.

We were missing SIG_ATOMIC_MAX, SIG_ATOMIC_MIN, SIZE_MAX,
WCHAR_MAX, WCHAR_MIN, WINT_MAX, and WINT_MIN.

Change-Id: I2535f36bc220fbaea009b483599b7af811c4cb5c

11 years agoam c843a3e7: Merge "Fix the qsort copyright notice (fixed upstream this afternoon)."
Elliott Hughes [Thu, 13 Jun 2013 00:46:57 +0000 (17:46 -0700)]
am c843a3e7: Merge "Fix the qsort copyright notice (fixed upstream this afternoon)."

* commit 'c843a3e7b215bca5e896e1d56c2fa6332770ea83':
  Fix the qsort copyright notice (fixed upstream this afternoon).

11 years agoMerge "Fix the qsort copyright notice (fixed upstream this afternoon)."
Elliott Hughes [Thu, 13 Jun 2013 00:44:05 +0000 (00:44 +0000)]
Merge "Fix the qsort copyright notice (fixed upstream this afternoon)."

11 years agoFix the qsort copyright notice (fixed upstream this afternoon).
Elliott Hughes [Thu, 13 Jun 2013 00:42:43 +0000 (17:42 -0700)]
Fix the qsort copyright notice (fixed upstream this afternoon).

Change-Id: I786feb42719bceaa7da91565e350c1333b0d301f

11 years agoam c843d766: Merge "Handles spurious wake-ups in pthread_join()"
Elliott Hughes [Thu, 13 Jun 2013 00:34:17 +0000 (17:34 -0700)]
am c843d766: Merge "Handles spurious wake-ups in pthread_join()"

* commit 'c843d7667ada205ecbaf773531067076ed4ad271':
  Handles spurious wake-ups in pthread_join()

11 years agoMerge "Handles spurious wake-ups in pthread_join()"
Elliott Hughes [Thu, 13 Jun 2013 00:31:49 +0000 (00:31 +0000)]
Merge "Handles spurious wake-ups in pthread_join()"

11 years agoam 92e841d0: Merge "Take upstream libm changes."
Elliott Hughes [Thu, 13 Jun 2013 00:30:59 +0000 (17:30 -0700)]
am 92e841d0: Merge "Take upstream libm changes."

* commit '92e841d0aa8d118882a74e3c3fc4b6a6062dcc09':
  Take upstream libm changes.

11 years agoHandles spurious wake-ups in pthread_join()
msg555 [Thu, 6 Jun 2013 18:59:28 +0000 (14:59 -0400)]
Handles spurious wake-ups in pthread_join()

Removed 'join_count' from pthread_internal_t and switched to using the flag
PTHREAD_ATTR_FLAG_JOINED to indicate if a thread is being joined. Combined with
a switch to a while loop in pthread_join, this fixes spurious wake-ups but
prevents a thread from being joined multiple times. This is fine for
two reasons:

1) The pthread_join specification allows for undefined behavior when multiple
   threads try to join a single thread.

2) There is no thread safe way to allow multiple threads to join a single
   thread with the pthread interface.  The second thread calling pthread_join
   could be pre-empted until the thread is destroyed and its handle reused for
   a different thread.  Therefore multi-join is always an error.

Bug: https://code.google.com/p/android/issues/detail?id=52255
Change-Id: I8b6784d47620ffdcdbfb14524e7402e21d46c5f7

11 years agoMerge "Take upstream libm changes."
Elliott Hughes [Thu, 13 Jun 2013 00:29:21 +0000 (00:29 +0000)]
Merge "Take upstream libm changes."

11 years agoTake upstream libm changes.
Elliott Hughes [Wed, 12 Jun 2013 23:37:58 +0000 (16:37 -0700)]
Take upstream libm changes.

Mostly workarounds for GCC and Clang bugs.

Change-Id: I4ef428a42d4ac6d622659053711a8cc416925727

11 years agoam 6a44d227: Merge "Take some fixed upstream copyright headers and regenerate NOTICE."
Elliott Hughes [Wed, 12 Jun 2013 23:16:09 +0000 (16:16 -0700)]
am 6a44d227: Merge "Take some fixed upstream copyright headers and regenerate NOTICE."

* commit '6a44d2271f372d0c65b05a5d3377bd00ce92824e':
  Take some fixed upstream copyright headers and regenerate NOTICE.

11 years agoMerge "Take some fixed upstream copyright headers and regenerate NOTICE."
Elliott Hughes [Wed, 12 Jun 2013 23:13:34 +0000 (23:13 +0000)]
Merge "Take some fixed upstream copyright headers and regenerate NOTICE."

11 years agoTake some fixed upstream copyright headers and regenerate NOTICE.
Elliott Hughes [Wed, 12 Jun 2013 23:00:41 +0000 (16:00 -0700)]
Take some fixed upstream copyright headers and regenerate NOTICE.

Change-Id: Ifff41d69c13322dbc6f928ce7d4c65f76fe36772

11 years agoam 55189a0f: Merge "Switch to current upstream stdio makebuf.c and setvbuf.c."
Elliott Hughes [Wed, 12 Jun 2013 22:58:41 +0000 (15:58 -0700)]
am 55189a0f: Merge "Switch to current upstream stdio makebuf.c and setvbuf.c."

* commit '55189a0fbd26cfd84939d9d3a42a1800a63bd2c5':
  Switch to current upstream stdio makebuf.c and setvbuf.c.

11 years agoMerge "Switch to current upstream stdio makebuf.c and setvbuf.c."
Elliott Hughes [Wed, 12 Jun 2013 22:56:20 +0000 (22:56 +0000)]
Merge "Switch to current upstream stdio makebuf.c and setvbuf.c."

11 years agoSwitch to current upstream stdio makebuf.c and setvbuf.c.
Elliott Hughes [Wed, 12 Jun 2013 22:24:15 +0000 (15:24 -0700)]
Switch to current upstream stdio makebuf.c and setvbuf.c.

Change-Id: I4761b5e94459815520f01062eef39abf62af621f

11 years agoam f1867d47: Merge "Revert "Add SIZE_MAX to <stdint.h> in a way that might actually...
Elliott Hughes [Wed, 12 Jun 2013 22:22:04 +0000 (15:22 -0700)]
am f1867d47: Merge "Revert "Add SIZE_MAX to <stdint.h> in a way that might actually work.""

* commit 'f1867d47cbce4225d712a2684da67031f7350909':
  Revert "Add SIZE_MAX to <stdint.h> in a way that might actually work."

11 years agoMerge "Revert "Add SIZE_MAX to <stdint.h> in a way that might actually work.""
Elliott Hughes [Wed, 12 Jun 2013 22:19:03 +0000 (22:19 +0000)]
Merge "Revert "Add SIZE_MAX to <stdint.h> in a way that might actually work.""

11 years agoRevert "Add SIZE_MAX to <stdint.h> in a way that might actually work."
Elliott Hughes [Wed, 12 Jun 2013 22:18:47 +0000 (22:18 +0000)]
Revert "Add SIZE_MAX to <stdint.h> in a way that might actually work."

This reverts commit d8627af159c6b1bc40296fb29297c61b30a5a8e2 which caused build breakage:

In file included from bionic/libc/include/limits.h:86:0,
                 from bionic/libc/include/stdint.h:33,
                 from bionic/libc/arch-arm/bionic/crtbegin.c:31:
bionic/libc/include/sys/limits.h:30:26: fatal error: linux/limits.h: No such file or directory
compilation terminated.
make: *** [out/target/product/generic/obj/lib/crtbegin_dynamic1.o] Error 1

Change-Id: I128095ecb99df92626e1f57e34c61e08c98a4078

11 years agoam 55c5ec64: Merge "Add SIZE_MAX to <stdint.h> in a way that might actually work."
Elliott Hughes [Wed, 12 Jun 2013 22:06:51 +0000 (15:06 -0700)]
am 55c5ec64: Merge "Add SIZE_MAX to <stdint.h> in a way that might actually work."

* commit '55c5ec64bd26d92bd1882a9a4c91445de73ebfa2':
  Add SIZE_MAX to <stdint.h> in a way that might actually work.

11 years agoMerge "Add SIZE_MAX to <stdint.h> in a way that might actually work."
Elliott Hughes [Wed, 12 Jun 2013 22:05:09 +0000 (22:05 +0000)]
Merge "Add SIZE_MAX to <stdint.h> in a way that might actually work."

11 years agoam 944ea1a3: Merge "Clean up abort."
Elliott Hughes [Wed, 12 Jun 2013 21:58:32 +0000 (14:58 -0700)]
am 944ea1a3: Merge "Clean up abort."

* commit '944ea1a32018c44d6cb55c9454e670b0e152da6d':
  Clean up abort.

11 years agoAdd SIZE_MAX to <stdint.h> in a way that might actually work.
Elliott Hughes [Wed, 12 Jun 2013 21:54:16 +0000 (14:54 -0700)]
Add SIZE_MAX to <stdint.h> in a way that might actually work.

Take two.

Change-Id: I7d08b6d14c82a171312a7f5898270b4441d5cfa2

11 years agoMerge "Clean up abort."
Elliott Hughes [Wed, 12 Jun 2013 21:53:57 +0000 (21:53 +0000)]
Merge "Clean up abort."

11 years agoClean up abort.
Elliott Hughes [Wed, 12 Jun 2013 21:05:46 +0000 (14:05 -0700)]
Clean up abort.

* A dlmalloc usage error shouldn't call abort(3) because we want to
  cause a SIGSEGV by writing the address dlmalloc didn't like to an
  address the kernel won't like, so that debuggerd will dump the
  memory around the address that upset dlmalloc.

* Switch to the simpler FreeBSD/NetBSD style of registering stdio
  cleanup. Hopefully this will let us simplify more of the stdio
  implementation.

* Clear the stdio cleanup handler before we abort because of a dlmalloc
  corruption error. This fixes the reported bug, where we'd hang inside
  dlmalloc because the stdio cleanup reentered dlmalloc.

Bug: 9301265
Change-Id: Ief31b389455d6876e5a68f0f5429567d37277dbc

11 years agoam 5cde15eb: Merge "<stdint.h> should expose SIZE_MAX."
Elliott Hughes [Wed, 12 Jun 2013 17:58:23 +0000 (10:58 -0700)]
am 5cde15eb: Merge "<stdint.h> should expose SIZE_MAX."

* commit '5cde15eb17f4ddc0949c0cbd38a46e6c0bad7019':
  <stdint.h> should expose SIZE_MAX.

11 years agoMerge "<stdint.h> should expose SIZE_MAX."
Elliott Hughes [Wed, 12 Jun 2013 17:56:23 +0000 (17:56 +0000)]
Merge "<stdint.h> should expose SIZE_MAX."

11 years ago<stdint.h> should expose SIZE_MAX.
Elliott Hughes [Wed, 12 Jun 2013 17:28:26 +0000 (10:28 -0700)]
<stdint.h> should expose SIZE_MAX.

Change-Id: Id27222c24955c83f29ad953933cbdc48b6f1e900

11 years agoam b6e88020: Merge "fix unittests."
Nick Kralevich [Tue, 11 Jun 2013 22:56:42 +0000 (15:56 -0700)]
am b6e88020: Merge "fix unittests."

* commit 'b6e880200d1690c00cb843e59c6849a275dbfbb7':
  fix unittests.

11 years agoMerge "fix unittests."
Nick Kralevich [Tue, 11 Jun 2013 22:52:54 +0000 (22:52 +0000)]
Merge "fix unittests."

11 years agofix unittests.
Nick Kralevich [Tue, 11 Jun 2013 22:45:23 +0000 (15:45 -0700)]
fix unittests.

7e6ce1a3c52d8533fed92c143419fedb0c93988a fixed abort() to raise
SIGABRT rather than causing SIGSEGV. However, the unittests were
not updated.

Fix unittests.

Change-Id: I73db194127b9b9e9440358aa94273863765a736b

11 years agoam fc104f89: Merge "Fix abort(3) to raise SIGABRT rather than causing SIGSEGV."
Ben Cheng [Tue, 11 Jun 2013 00:25:31 +0000 (17:25 -0700)]
am fc104f89: Merge "Fix abort(3) to raise SIGABRT rather than causing SIGSEGV."

* commit 'fc104f899d47916f76c91127caf9aeaf7b69d4ef':
  Fix abort(3) to raise SIGABRT rather than causing SIGSEGV.

11 years agoMerge "Fix abort(3) to raise SIGABRT rather than causing SIGSEGV."
Ben Cheng [Tue, 11 Jun 2013 00:22:14 +0000 (00:22 +0000)]
Merge "Fix abort(3) to raise SIGABRT rather than causing SIGSEGV."

11 years agoFix abort(3) to raise SIGABRT rather than causing SIGSEGV.
Ben Cheng [Tue, 11 Jun 2013 00:01:41 +0000 (17:01 -0700)]
Fix abort(3) to raise SIGABRT rather than causing SIGSEGV.

tgkill() needs the .save stack unwinding directive to get the complete
stack trace.

BUG: https://code.google.com/p/android/issues/detail?id=16672

Change-Id: Ifb447dca2147a592c48baf32769dfc175d8aea72

11 years agoam 8252b8e4: Merge "Honor p_vaddr if set"
Brian Carlstrom [Mon, 10 Jun 2013 22:41:19 +0000 (15:41 -0700)]
am 8252b8e4: Merge "Honor p_vaddr if set"

* commit '8252b8e4b730b13623f31dc66396e000586d1c58':
  Honor p_vaddr if set

11 years agoMerge "Honor p_vaddr if set"
Brian Carlstrom [Mon, 10 Jun 2013 22:39:06 +0000 (22:39 +0000)]
Merge "Honor p_vaddr if set"

11 years agoam 2fbc9dda: Merge "bionic/x86: Optimization for string routines"
Elliott Hughes [Sat, 8 Jun 2013 00:47:33 +0000 (17:47 -0700)]
am 2fbc9dda: Merge "bionic/x86: Optimization for string routines"

* commit '2fbc9dda345486005569be4ec586c6aae9d51650':
  bionic/x86: Optimization for string routines

11 years agoMerge "bionic/x86: Optimization for string routines"
Elliott Hughes [Sat, 8 Jun 2013 00:45:07 +0000 (00:45 +0000)]
Merge "bionic/x86: Optimization for string routines"

11 years agoam 157c4299: Merge "Revert "libc x86: Remove strcat.S""
Elliott Hughes [Sat, 8 Jun 2013 00:44:20 +0000 (17:44 -0700)]
am 157c4299: Merge "Revert "libc x86: Remove strcat.S""

* commit '157c42997b7aa31b36cca63ad03dbb5a601ce347':
  Revert "libc x86: Remove strcat.S"

11 years agoMerge "Revert "libc x86: Remove strcat.S""
Elliott Hughes [Sat, 8 Jun 2013 00:42:44 +0000 (00:42 +0000)]
Merge "Revert "libc x86: Remove strcat.S""

11 years agoRevert "libc x86: Remove strcat.S"
Elliott Hughes [Sat, 8 Jun 2013 00:42:35 +0000 (00:42 +0000)]
Revert "libc x86: Remove strcat.S"

This reverts commit 4fe461b3a67148a2f557605e10a34deff9c8773a

Change-Id: Ibeb76e24f054abd7c96ad6899366c2f9bfc2a5ad

11 years agoam 9647f797: Merge "Implement malloc_usable_size for debug impls."
Christopher Ferris [Fri, 7 Jun 2013 22:16:30 +0000 (15:16 -0700)]
am 9647f797: Merge "Implement malloc_usable_size for debug impls."

* commit '9647f797d59222cd91507d4554bf62166ba88e0a':
  Implement malloc_usable_size for debug impls.

11 years agoMerge "Implement malloc_usable_size for debug impls."
Christopher Ferris [Fri, 7 Jun 2013 22:15:33 +0000 (22:15 +0000)]
Merge "Implement malloc_usable_size for debug impls."

11 years agoImplement malloc_usable_size for debug impls.
Christopher Ferris [Wed, 22 May 2013 00:48:01 +0000 (17:48 -0700)]
Implement malloc_usable_size for debug impls.

- Implemented chk_memalign.
- Fixed a few bugs in leak_memalign.
- Implemented {leak,fill,check,qemu}_malloc_usable_size.
- Make malloc_usable_size update at run time.
- Add malloc_test.cpp as a small set of tests for the
  malloc debug routines.
- Fix the qemu routines since it's been broken since it moved to C++.
- Add support for the %u format to the out_vformat in libc_logging.cpp.
  This is used by the emulator code.

Tested using the bionic-unit-tests with setprop libc.debug.malloc
set to 1, 5, and 10.

I tested as much as possible on the emulator, but tracing doesn't appear
to be working properly.

Bug: 6143477

Merge change from internal master.

(cherry-picked from commit 3d594c258045783fc9e1956ce7a4d91e302f011e)

Change-Id: I4ae00fffba82315a8c283f35893fd554460722fb

11 years agoHonor p_vaddr if set
Brian Carlstrom [Fri, 11 Jan 2013 00:39:58 +0000 (16:39 -0800)]
Honor p_vaddr if set

(cherry picked from commit 88ff15c2c279d2bbe3569101b36cd2aa0931a0a9)

Change-Id: I4aabbe911d30aea8ace69e29bb6e980a4e89de90

11 years agoam b7b4f5b8: Merge "update signal.h to be C90 compatable"
Elliott Hughes [Thu, 6 Jun 2013 01:09:17 +0000 (18:09 -0700)]
am b7b4f5b8: Merge "update signal.h to be C90 compatable"

* commit 'b7b4f5b838cd41407c734af74e8211f5c7da0036':
  update signal.h to be C90 compatable

11 years agoMerge "update signal.h to be C90 compatable"
Elliott Hughes [Thu, 6 Jun 2013 01:06:40 +0000 (01:06 +0000)]
Merge "update signal.h to be C90 compatable"

11 years agoam 18af4503: Merge "Ensure header files using __BEGIN_DECLS include sys/cdefs.h."
Elliott Hughes [Thu, 6 Jun 2013 01:06:04 +0000 (18:06 -0700)]
am 18af4503: Merge "Ensure header files using __BEGIN_DECLS include sys/cdefs.h."

* commit '18af450393b005b4ead896d82cda750e6876fd33':
  Ensure header files using __BEGIN_DECLS include sys/cdefs.h.

11 years agoupdate signal.h to be C90 compatable
Erik Gilling [Wed, 29 May 2013 23:26:23 +0000 (16:26 -0700)]
update signal.h to be C90 compatable

sigismember, sigaddset, and sigdelset had mixed code and declarations
which are not allowed in C90 and before.

Change-Id: I662af944fc1489e34bed228ce592e41f50d00e17
Signed-off-by: Erik Gilling <konkers@android.com>
11 years agoMerge "Ensure header files using __BEGIN_DECLS include sys/cdefs.h."
Elliott Hughes [Thu, 6 Jun 2013 01:04:13 +0000 (01:04 +0000)]
Merge "Ensure header files using __BEGIN_DECLS include sys/cdefs.h."

11 years agoEnsure header files using __BEGIN_DECLS include sys/cdefs.h.
Elliott Hughes [Thu, 6 Jun 2013 00:51:20 +0000 (17:51 -0700)]
Ensure header files using __BEGIN_DECLS include sys/cdefs.h.

We keep fixing these one-by-one; let's fix them all at once.

Found thus:

  find . -name *.h | xargs grep -L sys/cdefs.h | xargs grep -l BEGIN_DECL | xargs grep -L sys/types

Change-Id: I188842aa2484dc6176e96556d57c38a0f785b59b

11 years agoam c5bfb624: Merge "sys/personality.h: include <sys/cdefs.h>"
Elliott Hughes [Thu, 6 Jun 2013 00:29:01 +0000 (17:29 -0700)]
am c5bfb624: Merge "sys/personality.h: include <sys/cdefs.h>"

* commit 'c5bfb62433751579e86d5fd24cddf3ae28a49b43':
  sys/personality.h: include <sys/cdefs.h>

11 years agoMerge "sys/personality.h: include <sys/cdefs.h>"
Elliott Hughes [Thu, 6 Jun 2013 00:28:07 +0000 (00:28 +0000)]
Merge "sys/personality.h: include <sys/cdefs.h>"

11 years agoam 8d36050a: Merge "Clean up useless declaration in thread_private.h"
Elliott Hughes [Thu, 6 Jun 2013 00:02:29 +0000 (17:02 -0700)]
am 8d36050a: Merge "Clean up useless declaration in thread_private.h"

* commit '8d36050ac2bb1c4a6a04462e64c5440e3c23c9f0':
  Clean up useless declaration in thread_private.h

11 years agoMerge "Clean up useless declaration in thread_private.h"
Elliott Hughes [Thu, 6 Jun 2013 00:00:40 +0000 (00:00 +0000)]
Merge "Clean up useless declaration in thread_private.h"

11 years agosys/personality.h: include <sys/cdefs.h>
Kito Cheng [Wed, 5 Jun 2013 03:30:17 +0000 (11:30 +0800)]
sys/personality.h: include <sys/cdefs.h>

Change-Id: Ia3fa558a38e0cffe5287bc454e85d5d3bdaa6ba1

11 years agoClean up useless declaration in thread_private.h
Kito Cheng [Fri, 3 May 2013 02:31:17 +0000 (10:31 +0800)]
Clean up useless declaration in thread_private.h

Change-Id: Ie7bcdc7195a3fcbcd09a95f73b0c49e8897ad50b

11 years agoam 4c001859: Merge "Fix declaration of malloc_usable_size()"
Elliott Hughes [Wed, 5 Jun 2013 02:00:03 +0000 (19:00 -0700)]
am 4c001859: Merge "Fix declaration of malloc_usable_size()"

* commit '4c001859feeda27727917c5bd00338e90b801742':
  Fix declaration of malloc_usable_size()

11 years agoMerge "Fix declaration of malloc_usable_size()"
Elliott Hughes [Wed, 5 Jun 2013 01:58:26 +0000 (01:58 +0000)]
Merge "Fix declaration of malloc_usable_size()"

11 years agoam a24e81ef: Merge "Add tests for __strcpy_chk()"
Nick Kralevich [Tue, 4 Jun 2013 19:07:16 +0000 (12:07 -0700)]
am a24e81ef: Merge "Add tests for __strcpy_chk()"

* commit 'a24e81efd30d106cdfa6a019acf7c77cd88b40cc':
  Add tests for __strcpy_chk()

11 years agoMerge "Add tests for __strcpy_chk()"
Nick Kralevich [Tue, 4 Jun 2013 19:05:33 +0000 (19:05 +0000)]
Merge "Add tests for __strcpy_chk()"

11 years agoAdd tests for __strcpy_chk()
Nick Kralevich [Mon, 3 Jun 2013 17:58:06 +0000 (10:58 -0700)]
Add tests for __strcpy_chk()

Change-Id: I5675d04fcd471732c1b87b83879a54fbcd27762e

11 years agoam 06713930: Merge "Small cleanup of soinfo_elf_lookup."
Brian Carlstrom [Tue, 4 Jun 2013 03:21:04 +0000 (20:21 -0700)]
am 06713930: Merge "Small cleanup of soinfo_elf_lookup."

* commit '0671393072a78e75a726c58aa3ca718e55eeac3e':
  Small cleanup of soinfo_elf_lookup.

11 years agoMerge "Small cleanup of soinfo_elf_lookup."
Brian Carlstrom [Tue, 4 Jun 2013 03:18:23 +0000 (03:18 +0000)]
Merge "Small cleanup of soinfo_elf_lookup."

11 years agoSmall cleanup of soinfo_elf_lookup.
Christopher Ferris [Tue, 4 Jun 2013 00:27:49 +0000 (17:27 -0700)]
Small cleanup of soinfo_elf_lookup.

- Remove unnecessary line.
- Move declarations to first use.

Change-Id: I1d8398d6c13f7cb86bffe0b68af849e35a4b234d

11 years agoam 404d491e: Merge "Use bl instead of blx to support interworking properly."
Ben Cheng [Sat, 1 Jun 2013 15:19:07 +0000 (08:19 -0700)]
am 404d491e: Merge "Use bl instead of blx to support interworking properly."

* commit '404d491eb655839bf4260cc168bb79864473e129':
  Use bl instead of blx to support interworking properly.

11 years agoMerge "Use bl instead of blx to support interworking properly."
Ben Cheng [Fri, 31 May 2013 21:40:37 +0000 (21:40 +0000)]
Merge "Use bl instead of blx to support interworking properly."

11 years agoUse bl instead of blx to support interworking properly.
Ben Cheng [Fri, 31 May 2013 21:25:48 +0000 (14:25 -0700)]
Use bl instead of blx to support interworking properly.

(cherry picked from commit 9e1905794b4ecd8f7b87d8e4e2f954c8cfc6beda in
master)

Change-Id: I9b8c35ea9e201e00f84315f9f105013c23c94d85

11 years agoam 8539961f: Merge "FORTIFY_SOURCE: strcat / strncat optimize"
Nick Kralevich [Fri, 31 May 2013 18:14:56 +0000 (11:14 -0700)]
am 8539961f: Merge "FORTIFY_SOURCE: strcat / strncat optimize"

* commit '8539961ff299b05d8feac9be8b119698be22da03':
  FORTIFY_SOURCE: strcat / strncat optimize

11 years agoMerge "FORTIFY_SOURCE: strcat / strncat optimize"
Nick Kralevich [Fri, 31 May 2013 18:13:23 +0000 (18:13 +0000)]
Merge "FORTIFY_SOURCE: strcat / strncat optimize"

11 years agoFORTIFY_SOURCE: strcat / strncat optimize
Nick Kralevich [Thu, 30 May 2013 23:48:53 +0000 (16:48 -0700)]
FORTIFY_SOURCE: strcat / strncat optimize

__strcat_chk and __strncat_chk are slightly inefficient,
because they end up traversing over the same memory region
two times.

This change optimizes __strcat_chk / __strncat_chk so they
only access the memory once. Although I haven't benchmarked these
changes, it should improve the performance of these functions.

__strlen_chk - expose this function, even if -D_FORTIFY_SOURCE
isn't defined. This is needed to compile libc itself without
-D_FORTIFY_SOURCE.

Change-Id: Id2c70dff55a276b47c59db27a03734d659f84b74

11 years agobionic/x86: Optimization for string routines
Liubov Dmitrieva [Tue, 17 Jan 2012 08:55:46 +0000 (12:55 +0400)]
bionic/x86: Optimization for string routines

Optimized strcpy, strcat,
strncpy, strncat, strlcpy, strlcat,
memchr, memrchr, strchr, strrchr, index,
strnlen, strlen, wcslen, wmemcmp, wcscmp,
wcschr, wcsrchr, wcscpy, wcscat

Change-Id: I82b29132edf9a2e144e0bb3ee4ff5217df8d2a6d
Signed-off-by: Liubov Dmitrieva <liubov.dmitrieva@intel.com>
11 years agoam 72f59c84: Merge "Add strncpy FORTIFY_SOURCE tests."
Nick Kralevich [Thu, 30 May 2013 23:54:24 +0000 (16:54 -0700)]
am 72f59c84: Merge "Add strncpy FORTIFY_SOURCE tests."

* commit '72f59c84fd73a0a701ce6448d103e9021c1cb060':
  Add strncpy FORTIFY_SOURCE tests.

11 years agoam d515f468: Merge "libc x86: Remove strcat.S"
Nick Kralevich [Thu, 30 May 2013 23:54:18 +0000 (16:54 -0700)]
am d515f468: Merge "libc x86: Remove strcat.S"

* commit 'd515f46888cf381c1fbbc99a62be727174b30a23':
  libc x86: Remove strcat.S

11 years agoMerge "Add strncpy FORTIFY_SOURCE tests."
Nick Kralevich [Thu, 30 May 2013 20:33:02 +0000 (20:33 +0000)]
Merge "Add strncpy FORTIFY_SOURCE tests."

11 years agoAdd strncpy FORTIFY_SOURCE tests.
Nick Kralevich [Thu, 30 May 2013 20:21:14 +0000 (13:21 -0700)]
Add strncpy FORTIFY_SOURCE tests.

Change-Id: Id108b1d72b44d7e5fb911268e80bbdf896808f60