OSDN Git Service

android-x86/bionic.git
11 years agoam 92b7fbf8: (-s ours) am 414aadc7: am 3bf2fcf9: Reconcile with jb-mr1-factory-releas...
The Android Open Source Project [Tue, 6 Nov 2012 19:18:49 +0000 (11:18 -0800)]
am 92b7fbf8: (-s ours) am 414aadc7: am 3bf2fcf9: Reconcile with jb-mr1-factory-release jb-mr1-release - do not merge

* commit '92b7fbf8725fed5bfa3cae7c26d09e813b3ae920':

11 years agoam 414aadc7: am 3bf2fcf9: Reconcile with jb-mr1-factory-release jb-mr1-release -...
The Android Open Source Project [Tue, 6 Nov 2012 19:16:38 +0000 (11:16 -0800)]
am 414aadc7: am 3bf2fcf9: Reconcile with jb-mr1-factory-release jb-mr1-release - do not merge

* commit '414aadc79de68713e0a80a033c03b651615176f8':

11 years agoam 3bf2fcf9: Reconcile with jb-mr1-factory-release jb-mr1-release - do not merge
The Android Open Source Project [Tue, 6 Nov 2012 19:13:52 +0000 (11:13 -0800)]
am 3bf2fcf9: Reconcile with jb-mr1-factory-release jb-mr1-release - do not merge

* commit '3bf2fcf9a2bc811bbee194b19f2a00c4cfb24701':
  Revert "Update ion header"
  :Revert "Update ion header"
  Revert "Upgrade to dlmalloc 2.8.5."
  Revert "Restore posix_memalign"
  When compiling with clang, don't "fortify_source" the strlcpy and strlcat.
  When compiling with clang, don't "fortify_source" the strlen.
  Revert "Fix the clang build: this compiler doesn't support the gnu_inline function attribute"
  Update msm_camera.h to version that supports instance handle based lookup
  Replace ALL_PREBUILTS with BUILD_PREBUILT

11 years agoReconcile with jb-mr1-factory-release jb-mr1-release - do not merge
The Android Open Source Project [Tue, 6 Nov 2012 19:12:01 +0000 (11:12 -0800)]
Reconcile with jb-mr1-factory-release jb-mr1-release - do not merge

Change-Id: I8a58a6aebc81829d15af6802f16d956cad2d39c8

11 years agoam 8baaf6ff: am 604a163e: Merge "Rewrite <fenv.h> for ARM."
Elliott Hughes [Tue, 6 Nov 2012 00:57:23 +0000 (16:57 -0800)]
am 8baaf6ff: am 604a163e: Merge "Rewrite <fenv.h> for ARM."

* commit '8baaf6ff9617ea5d0e49ca4a954c1b01cc306cbc':
  Rewrite <fenv.h> for ARM.

11 years agoam 604a163e: Merge "Rewrite <fenv.h> for ARM."
Elliott Hughes [Tue, 6 Nov 2012 00:51:53 +0000 (16:51 -0800)]
am 604a163e: Merge "Rewrite <fenv.h> for ARM."

* commit '604a163e4c7724f881605fdbda94db4f7c8f0e7a':
  Rewrite <fenv.h> for ARM.

11 years agoMerge "Rewrite <fenv.h> for ARM."
Elliott Hughes [Tue, 6 Nov 2012 00:43:34 +0000 (16:43 -0800)]
Merge "Rewrite <fenv.h> for ARM."

11 years agoam 06224085: am bb91e9fb: Merge "Upgrade to tzdata2012i."
Elliott Hughes [Mon, 5 Nov 2012 19:34:20 +0000 (11:34 -0800)]
am 06224085: am bb91e9fb: Merge "Upgrade to tzdata2012i."

* commit '062240853d75a795db956965cacd4ab09a959ce7':
  Upgrade to tzdata2012i.

11 years agoam bb91e9fb: Merge "Upgrade to tzdata2012i."
Elliott Hughes [Mon, 5 Nov 2012 18:57:20 +0000 (10:57 -0800)]
am bb91e9fb: Merge "Upgrade to tzdata2012i."

* commit 'bb91e9fb96ec6ea8a6ebcf17bf70f66f957df30b':
  Upgrade to tzdata2012i.

11 years agoMerge "Upgrade to tzdata2012i."
Elliott Hughes [Mon, 5 Nov 2012 18:42:57 +0000 (10:42 -0800)]
Merge "Upgrade to tzdata2012i."

11 years agoam ce876beb: am a41e6426: Merge "Tone down some of the overly-verbose linker logging."
Elliott Hughes [Mon, 5 Nov 2012 17:21:57 +0000 (09:21 -0800)]
am ce876beb: am a41e6426: Merge "Tone down some of the overly-verbose linker logging."

* commit 'ce876bebf250d386a06ebc1145c6959e30bf413c':
  Tone down some of the overly-verbose linker logging.

11 years agoam a41e6426: Merge "Tone down some of the overly-verbose linker logging."
Elliott Hughes [Mon, 5 Nov 2012 17:19:57 +0000 (09:19 -0800)]
am a41e6426: Merge "Tone down some of the overly-verbose linker logging."

* commit 'a41e6426073c57881f49bdaec46ca90a5b164401':
  Tone down some of the overly-verbose linker logging.

11 years agoMerge "Tone down some of the overly-verbose linker logging."
Elliott Hughes [Mon, 5 Nov 2012 17:13:31 +0000 (09:13 -0800)]
Merge "Tone down some of the overly-verbose linker logging."

11 years agoTone down some of the overly-verbose linker logging.
Elliott Hughes [Mon, 5 Nov 2012 17:11:43 +0000 (09:11 -0800)]
Tone down some of the overly-verbose linker logging.

We don't need to see every dlopen(3)/dlsym(3) failure unless LD_DEBUG is on.

Change-Id: I1edfe8b72f32ff54dd30e1acf32e20d470d5e9f7

11 years agoUpgrade to tzdata2012i.
Elliott Hughes [Mon, 5 Nov 2012 16:53:28 +0000 (08:53 -0800)]
Upgrade to tzdata2012i.

Also support GPG signature verification of updates, and fix remaining
pylint complaints.

The 2012i release of the tz data reflects the following changes recently
circulated on the tz mailing list:

* Cuba switches from DST [2012-11-04] at 01:00.  (Thanks to Steffen Thorsen.)

Change-Id: Ie81d395afa40aa217a0196aad8ca1f9a870bbc31

11 years agoRewrite <fenv.h> for ARM.
Elliott Hughes [Sat, 3 Nov 2012 00:05:20 +0000 (17:05 -0700)]
Rewrite <fenv.h> for ARM.

The old code was one big no-op.

Bug: http://code.google.com/p/android/issues/detail?id=38196
Change-Id: I201a6ffa477385b2629f45e8c948bdfbd47b5bf1

11 years agoam bc35807f: am 9df2e000: Merge "Cleaning the linker environment as we initialize...
Elliott Hughes [Fri, 2 Nov 2012 20:58:48 +0000 (13:58 -0700)]
am bc35807f: am 9df2e000: Merge "Cleaning the linker environment as we initialize it requires less API."

* commit 'bc35807fc6c5f11b6d057b20250d41ebc419da62':
  Cleaning the linker environment as we initialize it requires less API.

11 years agoam cfb47daf: am 01271b18: Merge "Make dynamic linker debugging always available."
Elliott Hughes [Fri, 2 Nov 2012 20:58:47 +0000 (13:58 -0700)]
am cfb47daf: am 01271b18: Merge "Make dynamic linker debugging always available."

* commit 'cfb47daf4eb4741ac462c7350c73ad1cf96cf83f':
  Make dynamic linker debugging always available.

11 years agoam 9df2e000: Merge "Cleaning the linker environment as we initialize it requires...
Elliott Hughes [Fri, 2 Nov 2012 20:56:00 +0000 (13:56 -0700)]
am 9df2e000: Merge "Cleaning the linker environment as we initialize it requires less API."

* commit '9df2e000b5d56b2e529656034d684e370aa6a8d1':
  Cleaning the linker environment as we initialize it requires less API.

11 years agoam 01271b18: Merge "Make dynamic linker debugging always available."
Elliott Hughes [Fri, 2 Nov 2012 20:55:59 +0000 (13:55 -0700)]
am 01271b18: Merge "Make dynamic linker debugging always available."

* commit '01271b1812f2cec8aaf3c105b9f960f027b33a95':
  Make dynamic linker debugging always available.

11 years agoMerge "Cleaning the linker environment as we initialize it requires less API."
Elliott Hughes [Fri, 2 Nov 2012 20:47:50 +0000 (13:47 -0700)]
Merge "Cleaning the linker environment as we initialize it requires less API."

11 years agoMerge "Make dynamic linker debugging always available."
Elliott Hughes [Fri, 2 Nov 2012 20:46:55 +0000 (13:46 -0700)]
Merge "Make dynamic linker debugging always available."

11 years agoMake dynamic linker debugging always available.
Elliott Hughes [Fri, 2 Nov 2012 19:37:13 +0000 (12:37 -0700)]
Make dynamic linker debugging always available.

If you need to build your own linker to get debugging, the debugging
is never available when you need it.

Change-Id: I5ff7e55753459d49a2990f25d9aa155e0b8602e0

11 years agoCleaning the linker environment as we initialize it requires less API.
Elliott Hughes [Fri, 2 Nov 2012 19:40:11 +0000 (12:40 -0700)]
Cleaning the linker environment as we initialize it requires less API.

Change-Id: I612fd699e46833a411589478564a1f859223c380

11 years agoam cdc5a17c: am ed537239: Merge "Adjust symbol lookup for DT_SYMBOLIC case"
Elliott Hughes [Fri, 2 Nov 2012 18:39:02 +0000 (11:39 -0700)]
am cdc5a17c: am ed537239: Merge "Adjust symbol lookup for DT_SYMBOLIC case"

* commit 'cdc5a17cef00c49086e1bfe4c3715d2ebd61addb':
  Adjust symbol lookup for DT_SYMBOLIC case

11 years agoam ed537239: Merge "Adjust symbol lookup for DT_SYMBOLIC case"
Elliott Hughes [Fri, 2 Nov 2012 18:37:40 +0000 (11:37 -0700)]
am ed537239: Merge "Adjust symbol lookup for DT_SYMBOLIC case"

* commit 'ed537239a94ebd11a8c262a319d81fd1f0d3f73f':
  Adjust symbol lookup for DT_SYMBOLIC case

11 years agoMerge "Adjust symbol lookup for DT_SYMBOLIC case"
Elliott Hughes [Fri, 2 Nov 2012 18:25:48 +0000 (11:25 -0700)]
Merge "Adjust symbol lookup for DT_SYMBOLIC case"

11 years agoAdjust symbol lookup for DT_SYMBOLIC case
Pavel Chupin [Wed, 31 Oct 2012 09:55:51 +0000 (13:55 +0400)]
Adjust symbol lookup for DT_SYMBOLIC case

According ELF spec re. DT_SYMBOLIC:
This element's presence in a shared object library alters the dynamic
linker's symbol resolution algorithm for references within the library.
Instead of starting a symbol search with the executable file, the
dynamic linker starts from the shared object itself. If the shared
object fails to supply the referenced symbol, the dynamic linker then
searches the executable file and other shared objects as usual.

This change implements the last part.

Change-Id: Iae95d53d455313a4306f11733941bcd3596ac85f
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
11 years agoam e109930e: am dc77a228: Merge "Allow dlopen("egl/blah.so")."
Elliott Hughes [Fri, 2 Nov 2012 06:10:56 +0000 (23:10 -0700)]
am e109930e: am dc77a228: Merge "Allow dlopen("egl/blah.so")."

* commit 'e109930e9fd0922280e6f74b3df270093ee95fa6':
  Allow dlopen("egl/blah.so").

11 years agoam dc77a228: Merge "Allow dlopen("egl/blah.so")."
Elliott Hughes [Fri, 2 Nov 2012 06:08:27 +0000 (23:08 -0700)]
am dc77a228: Merge "Allow dlopen("egl/blah.so")."

* commit 'dc77a22850e31eb369ec9776c13c967566bf61d0':
  Allow dlopen("egl/blah.so").

11 years agoMerge "Allow dlopen("egl/blah.so")."
Elliott Hughes [Fri, 2 Nov 2012 06:01:57 +0000 (23:01 -0700)]
Merge "Allow dlopen("egl/blah.so")."

11 years agoAllow dlopen("egl/blah.so").
Elliott Hughes [Fri, 2 Nov 2012 05:59:19 +0000 (22:59 -0700)]
Allow dlopen("egl/blah.so").

NVIDIA binary blobs construct strings to pass to dlopen(3) that
contain '/' but require that we fall back to LD_LIBRARY_PATH.

Change-Id: Iad831899986baace6962f4b335eeb288250a1e22

11 years agoam 7f7ac8cd: am e3c7b519: Merge "Don\'t corrupt the thread list if the main thread...
Elliott Hughes [Fri, 2 Nov 2012 00:39:12 +0000 (17:39 -0700)]
am 7f7ac8cd: am e3c7b519: Merge "Don\'t corrupt the thread list if the main thread exits."

* commit '7f7ac8cd19f1a7fc61aa640505747dee9036fa61':
  Don't corrupt the thread list if the main thread exits.

11 years agoam e3c7b519: Merge "Don\'t corrupt the thread list if the main thread exits."
Elliott Hughes [Fri, 2 Nov 2012 00:37:04 +0000 (17:37 -0700)]
am e3c7b519: Merge "Don\'t corrupt the thread list if the main thread exits."

* commit 'e3c7b5192e65eeb0bd90bf884d3435ed9adfad0e':
  Don't corrupt the thread list if the main thread exits.

11 years agoMerge "Don't corrupt the thread list if the main thread exits."
Elliott Hughes [Fri, 2 Nov 2012 00:28:00 +0000 (17:28 -0700)]
Merge "Don't corrupt the thread list if the main thread exits."

11 years agoDon't corrupt the thread list if the main thread exits.
Elliott Hughes [Thu, 1 Nov 2012 23:33:29 +0000 (16:33 -0700)]
Don't corrupt the thread list if the main thread exits.

...and don't pass a non-heap pointer to free(3), either.

This patch replaces the "node** prev" with the clearer "node* prev"
style and fixes the null pointer dereference in the old code. That's
not sufficient to fix the reporter's bug, though. The pthread_internal_t*
for the main thread isn't heap-allocated --- __libc_init_tls causes a
pointer to a statically-allocated pthread_internal_t to be added to
the thread list.

Bug: http://code.google.com/p/android/issues/detail?id=37410
Change-Id: I112b7f22782fc789d58f9c783f7b323bda8fb8b7

11 years agoam 6db8f5bb: am d30116cf: Merge "Keep the dynamic linker\'s soinfo pools mostly read...
Elliott Hughes [Fri, 2 Nov 2012 00:02:23 +0000 (17:02 -0700)]
am 6db8f5bb: am d30116cf: Merge "Keep the dynamic linker\'s soinfo pools mostly read-only."

* commit '6db8f5bb75bb79e0b4873e6d293aa25e2c9f090b':
  Keep the dynamic linker's soinfo pools mostly read-only.

11 years agoam d30116cf: Merge "Keep the dynamic linker\'s soinfo pools mostly read-only."
Elliott Hughes [Fri, 2 Nov 2012 00:00:13 +0000 (17:00 -0700)]
am d30116cf: Merge "Keep the dynamic linker\'s soinfo pools mostly read-only."

* commit 'd30116cf4a590e7bea3b73fa49bb27502a920819':
  Keep the dynamic linker's soinfo pools mostly read-only.

11 years agoMerge "Keep the dynamic linker's soinfo pools mostly read-only."
Elliott Hughes [Thu, 1 Nov 2012 23:49:37 +0000 (16:49 -0700)]
Merge "Keep the dynamic linker's soinfo pools mostly read-only."

11 years agoKeep the dynamic linker's soinfo pools mostly read-only.
Elliott Hughes [Thu, 1 Nov 2012 22:16:56 +0000 (15:16 -0700)]
Keep the dynamic linker's soinfo pools mostly read-only.

We'll need a lot more refactoring of this code before we can reduce
the granularity, but this is a step forward.

Change-Id: I07061720e734b571a8399c1d5b4f2f35cd681307

11 years agoam 65ba5b62: am 064f862d: Merge "Stop defining our own PAGE_SIZE and PAGE_MASK, and...
Elliott Hughes [Thu, 1 Nov 2012 21:15:11 +0000 (14:15 -0700)]
am 65ba5b62: am 064f862d: Merge "Stop defining our own PAGE_SIZE and PAGE_MASK, and test dlclose(3) too."

* commit '65ba5b62c5a59181317b86f772d9ebb756d4741f':
  Stop defining our own PAGE_SIZE and PAGE_MASK, and test dlclose(3) too.

11 years agoam 064f862d: Merge "Stop defining our own PAGE_SIZE and PAGE_MASK, and test dlclose...
Elliott Hughes [Thu, 1 Nov 2012 21:14:00 +0000 (14:14 -0700)]
am 064f862d: Merge "Stop defining our own PAGE_SIZE and PAGE_MASK, and test dlclose(3) too."

* commit '064f862d557ab741575dfae479499a07ca0ab742':
  Stop defining our own PAGE_SIZE and PAGE_MASK, and test dlclose(3) too.

11 years agoMerge "Stop defining our own PAGE_SIZE and PAGE_MASK, and test dlclose(3) too."
Elliott Hughes [Thu, 1 Nov 2012 20:56:59 +0000 (13:56 -0700)]
Merge "Stop defining our own PAGE_SIZE and PAGE_MASK, and test dlclose(3) too."

11 years agoStop defining our own PAGE_SIZE and PAGE_MASK, and test dlclose(3) too.
Elliott Hughes [Thu, 1 Nov 2012 20:49:32 +0000 (13:49 -0700)]
Stop defining our own PAGE_SIZE and PAGE_MASK, and test dlclose(3) too.

Also remove an unnecessary #include and a now-obsolete TODO.

Change-Id: I36d923721e349a286934b9534090a67ce0786e7b

11 years agoam 3bb62578: am 0be1819b: Merge "Dynamically allocate soinfo-structs in linker"
Elliott Hughes [Thu, 1 Nov 2012 18:47:31 +0000 (11:47 -0700)]
am 3bb62578: am 0be1819b: Merge "Dynamically allocate soinfo-structs in linker"

* commit '3bb62578beb36a35d3b1d2fbe18bd34a9d4ecca4':
  Dynamically allocate soinfo-structs in linker

11 years agoam 0be1819b: Merge "Dynamically allocate soinfo-structs in linker"
Elliott Hughes [Thu, 1 Nov 2012 18:44:29 +0000 (11:44 -0700)]
am 0be1819b: Merge "Dynamically allocate soinfo-structs in linker"

* commit '0be1819b22b33fbedcb150f96a196ed096abe2fc':
  Dynamically allocate soinfo-structs in linker

11 years agoMerge "Dynamically allocate soinfo-structs in linker"
Elliott Hughes [Thu, 1 Nov 2012 18:36:01 +0000 (11:36 -0700)]
Merge "Dynamically allocate soinfo-structs in linker"

11 years agoDynamically allocate soinfo-structs in linker
Magnus Malmborn [Wed, 12 Sep 2012 11:00:55 +0000 (13:00 +0200)]
Dynamically allocate soinfo-structs in linker

Request memory from the system when needed instead of having a fixed
array for soinfo structs. Note that malloc() et al can't be used in
linker, so use mmap() instead.

Change-Id: I4b495995931d7752b0e8c944e64d1fe41b9f7144

11 years agoam 1de3af51: am c0ac7eba: Merge "Reject .so files with no sysv hash table."
Elliott Hughes [Wed, 31 Oct 2012 22:15:45 +0000 (15:15 -0700)]
am 1de3af51: am c0ac7eba: Merge "Reject .so files with no sysv hash table."

* commit '1de3af51d459c2ced602f10e4f7e7fe704400cdc':
  Reject .so files with no sysv hash table.

11 years agoam c0ac7eba: Merge "Reject .so files with no sysv hash table."
Elliott Hughes [Wed, 31 Oct 2012 22:13:30 +0000 (15:13 -0700)]
am c0ac7eba: Merge "Reject .so files with no sysv hash table."

* commit 'c0ac7eba934fb88f321c75a71312ea482e9a85e9':
  Reject .so files with no sysv hash table.

11 years agoMerge "Reject .so files with no sysv hash table."
Elliott Hughes [Wed, 31 Oct 2012 22:09:45 +0000 (15:09 -0700)]
Merge "Reject .so files with no sysv hash table."

11 years agoReject .so files with no sysv hash table.
Elliott Hughes [Wed, 31 Oct 2012 21:20:03 +0000 (14:20 -0700)]
Reject .so files with no sysv hash table.

Also ensure that dlopen(3) errors always include the name of the library we
failed to open.

Also fix a bug where we'd fall back to searching LD_LIBRARY_PATH and the
built-in paths for names that include slashes.

Bug: http://code.google.com/p/android/issues/detail?id=38479
Change-Id: Ib2c009ed083344a7a012749d58f8679db2f26c78

11 years agoam f510fc78: am b46530bd: Merge "Start cleaning up libm."
Elliott Hughes [Wed, 31 Oct 2012 20:54:18 +0000 (13:54 -0700)]
am f510fc78: am b46530bd: Merge "Start cleaning up libm."

* commit 'f510fc789a67344080543b9ae06d0ff3322561d5':
  Start cleaning up libm.

11 years agoam b46530bd: Merge "Start cleaning up libm."
Elliott Hughes [Wed, 31 Oct 2012 20:51:50 +0000 (13:51 -0700)]
am b46530bd: Merge "Start cleaning up libm."

* commit 'b46530bd3e5984047bd780f5d3a6a5ebabd9f02d':
  Start cleaning up libm.

11 years agoMerge "Start cleaning up libm."
Elliott Hughes [Wed, 31 Oct 2012 20:43:41 +0000 (13:43 -0700)]
Merge "Start cleaning up libm."

11 years agoStart cleaning up libm.
Elliott Hughes [Wed, 31 Oct 2012 20:26:46 +0000 (13:26 -0700)]
Start cleaning up libm.

We have two copies of fenv.h for every architecture, one of which
isn't used. We also have unused makefiles and files for architectures
we don't support.

This patch removes all the obviously useless files.

Bug: http://code.google.com/p/android/issues/detail?id=38196
Change-Id: I1919b6621ba513aa24aa947a34815bc51191487c

11 years agoam 089111a8: (-s ours) Reconcile with jb-mr1-release - do not merge
The Android Open Source Project [Wed, 31 Oct 2012 16:19:14 +0000 (09:19 -0700)]
am 089111a8: (-s ours) Reconcile with jb-mr1-release - do not merge

* commit '089111a80a6a167de827bf32ae2d2a935ff5874f':

11 years agoReconcile with jb-mr1-release - do not merge
The Android Open Source Project [Wed, 31 Oct 2012 16:15:16 +0000 (09:15 -0700)]
Reconcile with jb-mr1-release - do not merge

Change-Id: Ice07f7813d823b0419153d5ac321ad784a690af4

11 years agomerge in jb-mr1-release history after reset to jb-mr1-dev
The Android Automerger [Wed, 31 Oct 2012 03:11:57 +0000 (20:11 -0700)]
merge in jb-mr1-release history after reset to jb-mr1-dev

11 years agoam 3cd7a165: am 084be591: Merge "linker: handle R_ARM_COPY relocations in a proper...
Elliott Hughes [Wed, 31 Oct 2012 00:20:01 +0000 (17:20 -0700)]
am 3cd7a165: am 084be591: Merge "linker: handle R_ARM_COPY relocations in a proper way"

* commit '3cd7a1653aa579213cb68a666bd9949e2b8fff95':
  linker: handle R_ARM_COPY relocations in a proper way

11 years agoam 084be591: Merge "linker: handle R_ARM_COPY relocations in a proper way"
Elliott Hughes [Wed, 31 Oct 2012 00:18:04 +0000 (17:18 -0700)]
am 084be591: Merge "linker: handle R_ARM_COPY relocations in a proper way"

* commit '084be591923d3d509cea0a0f4b11b073e362d730':
  linker: handle R_ARM_COPY relocations in a proper way

11 years agoMerge "linker: handle R_ARM_COPY relocations in a proper way"
Elliott Hughes [Wed, 31 Oct 2012 00:10:30 +0000 (17:10 -0700)]
Merge "linker: handle R_ARM_COPY relocations in a proper way"

11 years agolinker: handle R_ARM_COPY relocations in a proper way
Ard Biesheuvel [Thu, 30 Aug 2012 10:48:32 +0000 (12:48 +0200)]
linker: handle R_ARM_COPY relocations in a proper way

If an executable contain copy relocations, other references
to the symbol it points to should be preempted and made to
point to the copy instead.

Also, the linker should make sure the target area has
sufficient space to contain the copy. It also checks
whether the library that supplies the symbol is built
with -Bsymbolic, and errors out if this is the case.

Change-Id: If135c83590092741cfd8f82f54816f363a4a4a3b
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@gmail.com>
11 years agoam 914112ea: am 155e8d1d: Merge "More dynamic linker cleanup."
Elliott Hughes [Tue, 30 Oct 2012 23:59:17 +0000 (16:59 -0700)]
am 914112ea: am 155e8d1d: Merge "More dynamic linker cleanup."

* commit '914112ea21a62c7658dc4b094a369358009be6a9':
  More dynamic linker cleanup.

11 years agoam 155e8d1d: Merge "More dynamic linker cleanup."
Elliott Hughes [Tue, 30 Oct 2012 23:56:29 +0000 (16:56 -0700)]
am 155e8d1d: Merge "More dynamic linker cleanup."

* commit '155e8d1df5b8fdfeabda3e7b61d95beb5b8d1467':
  More dynamic linker cleanup.

11 years agoMerge "More dynamic linker cleanup."
Elliott Hughes [Tue, 30 Oct 2012 23:41:00 +0000 (16:41 -0700)]
Merge "More dynamic linker cleanup."

11 years agoMore dynamic linker cleanup.
Elliott Hughes [Tue, 30 Oct 2012 00:37:13 +0000 (17:37 -0700)]
More dynamic linker cleanup.

I still want to break linker_format out into its own library so we can reuse
it for malloc debugging and so forth. (There are many similar pieces of code
in bionic, but the linker's one seems to be the most complete/functional.)

Change-Id: If3721853d28937c8e821ca1d23cf200e228a409a

11 years agoam b0ac82e9: Merge commit \'bd8ee3d3\' into mm
Elliott Hughes [Tue, 30 Oct 2012 22:24:37 +0000 (15:24 -0700)]
am b0ac82e9: Merge commit \'bd8ee3d3\' into mm

* commit 'b0ac82e9baf969236be1174b49784500b33e6f48':
  Upgrade to tzdata2012h.

11 years agoMerge commit 'bd8ee3d3' into mm
Elliott Hughes [Tue, 30 Oct 2012 22:20:13 +0000 (15:20 -0700)]
Merge commit 'bd8ee3d3' into mm

11 years agoam a811d7a8: Upgrade to tzdata2012h.
Elliott Hughes [Tue, 30 Oct 2012 21:30:12 +0000 (14:30 -0700)]
am a811d7a8: Upgrade to tzdata2012h.

* commit 'a811d7a8e638ca49aee704c613cb9f1e03c3698d':
  Upgrade to tzdata2012h.

11 years agoam 4569ab97: am 06b59610: Merge "Fix bug in pthread_join, pthread_exit, pthread_detach"
Elliott Hughes [Tue, 30 Oct 2012 20:06:47 +0000 (13:06 -0700)]
am 4569ab97: am 06b59610: Merge "Fix bug in pthread_join, pthread_exit, pthread_detach"

* commit '4569ab9773efb1c984bde146002975e7a3753f11':
  Fix bug in pthread_join, pthread_exit, pthread_detach

11 years agoam 06b59610: Merge "Fix bug in pthread_join, pthread_exit, pthread_detach"
Elliott Hughes [Tue, 30 Oct 2012 20:04:23 +0000 (13:04 -0700)]
am 06b59610: Merge "Fix bug in pthread_join, pthread_exit, pthread_detach"

* commit '06b596104a9ed3ac089abd00186a5698d7e8544f':
  Fix bug in pthread_join, pthread_exit, pthread_detach

11 years agoMerge "Fix bug in pthread_join, pthread_exit, pthread_detach"
Elliott Hughes [Tue, 30 Oct 2012 19:57:57 +0000 (12:57 -0700)]
Merge "Fix bug in pthread_join, pthread_exit, pthread_detach"

11 years agoam 743a273e: am 1f21ece4: Merge "Clean up the <libgen.h> implementation a little...
Elliott Hughes [Tue, 30 Oct 2012 17:11:44 +0000 (10:11 -0700)]
am 743a273e: am 1f21ece4: Merge "Clean up the <libgen.h> implementation a little, bring in tests."

* commit '743a273e40e49c199d79462338fc606ae12c999f':
  Clean up the <libgen.h> implementation a little, bring in tests.

11 years agoam 5f787190: am 4d36b0bd: Merge "Fix the pthread_join on self error case."
Elliott Hughes [Tue, 30 Oct 2012 17:11:43 +0000 (10:11 -0700)]
am 5f787190: am 4d36b0bd: Merge "Fix the pthread_join on self error case."

* commit '5f787190a9e7a749d95f566f920b78eafcd05050':
  Fix the pthread_join on self error case.

11 years agoam 0b8fa1d4: am 9297af94: Merge "Fix a potential NULL pointer dereference in _init_th...
Elliott Hughes [Tue, 30 Oct 2012 17:11:42 +0000 (10:11 -0700)]
am 0b8fa1d4: am 9297af94: Merge "Fix a potential NULL pointer dereference in _init_thread()."

* commit '0b8fa1d456f6cf831be41a6dc6b0a67e89f01bd5':
  Fix a potential NULL pointer dereference in _init_thread().

11 years agoam 40e467ec: am 33c4a3ad: Merge "libc: Fix alphasort() signature (and implementation)."
Elliott Hughes [Tue, 30 Oct 2012 17:11:41 +0000 (10:11 -0700)]
am 40e467ec: am 33c4a3ad: Merge "libc: Fix alphasort() signature (and implementation)."

* commit '40e467ec668b59be25491bd44bf348a884d6a68d':
  libc: Fix alphasort() signature (and implementation).

11 years agoam 85765609: am 8f9a1eb1: Merge "Upgrade to tzdata2012h."
Elliott Hughes [Tue, 30 Oct 2012 17:11:40 +0000 (10:11 -0700)]
am 85765609: am 8f9a1eb1: Merge "Upgrade to tzdata2012h."

* commit '8576560979e3d126ef8204959b87336d980b390b':
  Upgrade to tzdata2012h.

11 years agoam a67cedb5: am 9e783963: Merge "Clean up the implementation of the <dirent.h> functi...
Elliott Hughes [Tue, 30 Oct 2012 17:11:39 +0000 (10:11 -0700)]
am a67cedb5: am 9e783963: Merge "Clean up the implementation of the <dirent.h> functions."

* commit 'a67cedb52cb57f116a545482bddb979d995fd634':
  Clean up the implementation of the <dirent.h> functions.

11 years agoam 1f21ece4: Merge "Clean up the <libgen.h> implementation a little, bring in tests."
Elliott Hughes [Tue, 30 Oct 2012 00:15:12 +0000 (17:15 -0700)]
am 1f21ece4: Merge "Clean up the <libgen.h> implementation a little, bring in tests."

* commit '1f21ece48a87abbbdd9fb939b79a1dd81fb867eb':
  Clean up the <libgen.h> implementation a little, bring in tests.

11 years agoam 4d36b0bd: Merge "Fix the pthread_join on self error case."
Elliott Hughes [Tue, 30 Oct 2012 00:15:09 +0000 (17:15 -0700)]
am 4d36b0bd: Merge "Fix the pthread_join on self error case."

* commit '4d36b0bd38559ae0376b61a0ac2f5fa8329ec56d':
  Fix the pthread_join on self error case.

11 years agoam 9297af94: Merge "Fix a potential NULL pointer dereference in _init_thread()."
Elliott Hughes [Tue, 30 Oct 2012 00:15:03 +0000 (17:15 -0700)]
am 9297af94: Merge "Fix a potential NULL pointer dereference in _init_thread()."

* commit '9297af943887d9d6974aaec8c45a4e7d93422965':
  Fix a potential NULL pointer dereference in _init_thread().

11 years agoam 33c4a3ad: Merge "libc: Fix alphasort() signature (and implementation)."
Elliott Hughes [Tue, 30 Oct 2012 00:15:02 +0000 (17:15 -0700)]
am 33c4a3ad: Merge "libc: Fix alphasort() signature (and implementation)."

* commit '33c4a3adde3cf1753af0661f48ce86358e105277':
  libc: Fix alphasort() signature (and implementation).

11 years agoam 8f9a1eb1: Merge "Upgrade to tzdata2012h."
Elliott Hughes [Tue, 30 Oct 2012 00:15:01 +0000 (17:15 -0700)]
am 8f9a1eb1: Merge "Upgrade to tzdata2012h."

* commit '8f9a1eb108f22fc2ce7283ef184d909ec0ca1152':
  Upgrade to tzdata2012h.

11 years agoam 9e783963: Merge "Clean up the implementation of the <dirent.h> functions."
Elliott Hughes [Tue, 30 Oct 2012 00:14:59 +0000 (17:14 -0700)]
am 9e783963: Merge "Clean up the implementation of the <dirent.h> functions."

* commit '9e783963d58acf48e06902236ea64c7f5b337a0f':
  Clean up the implementation of the <dirent.h> functions.

11 years agoMerge "Clean up the <libgen.h> implementation a little, bring in tests."
Elliott Hughes [Mon, 29 Oct 2012 22:03:21 +0000 (15:03 -0700)]
Merge "Clean up the <libgen.h> implementation a little, bring in tests."

11 years agoClean up the <libgen.h> implementation a little, bring in tests.
Elliott Hughes [Mon, 29 Oct 2012 21:27:10 +0000 (14:27 -0700)]
Clean up the <libgen.h> implementation a little, bring in tests.

Most of these tests were in system/extras, but I've added more to cover other
cases explicitly mentioned by POSIX.

Change-Id: I5e8d77e4179028d77306935cceadbb505515dcde

11 years agoFix bug in pthread_join, pthread_exit, pthread_detach
Sergey Melnikov [Fri, 26 Oct 2012 10:06:43 +0000 (14:06 +0400)]
Fix bug in pthread_join, pthread_exit, pthread_detach

pthread_no_op_detach_after_join test from bionic-unit-tests hangs
on x86 emulator. There is a race in the pthread_join, pthread_exit,
pthread_detach functions:
- pthread_join waits for the non-detached thread
- pthread_detach sets the detached flag on that thread
- the thread executes pthread_exit which just kills the now-detached
thread, without sending the join notification.

This patch improves the test so it fails on ARM too, and modifies
pthread_detach to behave more like glibc, not setting the detach state if
called on a thread that's already being joined (but not returning an error).

Change-Id: I87dc688221ce979ef5178753dd63d01ac0b108e6
Signed-off-by: Sergey Melnikov <sergey.melnikov@intel.com>
11 years agoMerge "Fix the pthread_join on self error case."
Elliott Hughes [Mon, 29 Oct 2012 17:30:15 +0000 (10:30 -0700)]
Merge "Fix the pthread_join on self error case."

11 years agoFix the pthread_join on self error case.
Elliott Hughes [Mon, 29 Oct 2012 17:19:44 +0000 (10:19 -0700)]
Fix the pthread_join on self error case.

We should return EDEADLK, not deadlock the calling thread.

Change-Id: I1243483f709c11b2a60e41142725c54c7dbfcbc9

11 years agoMerge "Fix a potential NULL pointer dereference in _init_thread()."
Elliott Hughes [Mon, 29 Oct 2012 15:26:01 +0000 (08:26 -0700)]
Merge "Fix a potential NULL pointer dereference in _init_thread()."

11 years agoFix a potential NULL pointer dereference in _init_thread().
Xi Wang [Sat, 27 Oct 2012 06:02:01 +0000 (02:02 -0400)]
Fix a potential NULL pointer dereference in _init_thread().

The first NULL pointer check against `attr' suggests that `attr' can
be NULL.  Then later `attr' is directly dereferenced, suggesting the
opposite.

    if (attr == NULL) {
        ...
    } else {
        ...
    }
    ...
    if (attr->stack_base == ...) { ... }

The public API pthread_create(3) allows NULL, and interprets it as "default".
Our implementation actually swaps in a pointer to the global default
pthread_attr_t, so we don't need any NULL checks in _init_thread. (The other
internal caller passes its own pthread_attr_t.)

Change-Id: I0a4e79b83f5989249556a07eed1f2887e96c915e
Signed-off-by: Xi Wang <xi.wang@gmail.com>
11 years agoMerge "libc: Fix alphasort() signature (and implementation)."
Elliott Hughes [Mon, 29 Oct 2012 14:45:12 +0000 (07:45 -0700)]
Merge "libc: Fix alphasort() signature (and implementation)."

11 years agolibc: Fix alphasort() signature (and implementation).
David 'Digit' Turner [Mon, 29 Oct 2012 14:32:54 +0000 (15:32 +0100)]
libc: Fix alphasort() signature (and implementation).

The declaration for alphasort() in <dirent.h> used the deprecated:

  int alphasort(const void*, const void*);

while both Posix and GLibc use instead:

  int alphasort(const struct dirent** a, const struct dirent** b);

See: http://pubs.opengroup.org/onlinepubs/9699919799/functions/alphasort.html

This patch does the following:

- Update the declaration to match Posix/GLibc
- Get rid of the upstream BSD code which isn't compatible with the new
  signature.
- Implement a new trivial alphasort() with the right signature, and
  ensure that it uses strcoll() instead of strcmp().
- Remove Bionic-specific #ifdef .. #else .. #endif block in
  dirent_test.cpp which uses alphasort().

Even through strcoll() currently uses strcmp(), this does the right
thing in the case where we decide to update strcoll() to properly
implement locale-specific ordered comparison.

Change-Id: I4fd45604d8a940aaf2eb0ecd7d73e2f11c9bca96

11 years agoMerge "Upgrade to tzdata2012h."
Elliott Hughes [Mon, 29 Oct 2012 14:29:13 +0000 (07:29 -0700)]
Merge "Upgrade to tzdata2012h."

11 years agoUpgrade to tzdata2012h.
Elliott Hughes [Sat, 27 Oct 2012 21:32:44 +0000 (14:32 -0700)]
Upgrade to tzdata2012h.

The 2012h release reflects the following changes recently circulated
on the tz mailing list:

[Brazil]  Bahia no longer has DST.  (Thanks to Kelley Cook.)

[Brazil]  Tocantins has DST.  (Thanks to Rodrigo Severo.)

[Israel]  Israel has new DST rules next year.  (Thanks to Ephraim Silverberg.)

[Jordan]  Jordan stays on DST this winter.  (Thanks to Steffen Thorsen.)

Bug: 7429010
Change-Id: I0ec5fb72343e42f3f79490dfdea5f7f1946ae76f

11 years agoUpgrade to tzdata2012h.
Elliott Hughes [Sat, 27 Oct 2012 21:29:14 +0000 (14:29 -0700)]
Upgrade to tzdata2012h.

The 2012h release reflects the following changes recently circulated
on the tz mailing list:

[Brazil]  Bahia no longer has DST.  (Thanks to Kelley Cook.)

[Brazil]  Tocantins has DST.  (Thanks to Rodrigo Severo.)

[Israel]  Israel has new DST rules next year.  (Thanks to Ephraim Silverberg.)

[Jordan]  Jordan stays on DST this winter.  (Thanks to Steffen Thorsen.)

Bug: 7429010
Change-Id: I82f19ce49f944f928b6dd8dc5a893786266e5cb9

11 years agoMerge "Clean up the implementation of the <dirent.h> functions."
Elliott Hughes [Fri, 26 Oct 2012 23:42:47 +0000 (16:42 -0700)]
Merge "Clean up the implementation of the <dirent.h> functions."

11 years agoClean up the implementation of the <dirent.h> functions.
Elliott Hughes [Fri, 26 Oct 2012 03:55:23 +0000 (20:55 -0700)]
Clean up the implementation of the <dirent.h> functions.

Change-Id: I3c647cc9588525afc41fee90ee468d58cd13503a

11 years agoam 8cacc639: am 7193731a: Merge "Workaround g++ 4.7 compfail"
Elliott Hughes [Thu, 25 Oct 2012 22:23:29 +0000 (15:23 -0700)]
am 8cacc639: am 7193731a: Merge "Workaround g++ 4.7 compfail"

* commit '8cacc639b6ae660c494aca07c537cb443c6c6cd9':
  Workaround g++ 4.7 compfail