OSDN Git Service

android-x86/bionic.git
12 years agoAdd relro support
Nick Kralevich [Tue, 28 Feb 2012 18:40:00 +0000 (10:40 -0800)]
Add relro support

Add support for PT_GNU_RELRO. This allows the static linker to
indicate that certain regions of memory should be marked as
"read-only" after dynamic linking is complete.

See:
  * http://www.akkadia.org/drepper/nonselsec.pdf (section 6)
  * http://tk-blog.blogspot.com/2009/02/relro-not-so-well-known-memory.html

Note that this change has no effect on Android right now, because
we don't compile our code with relro enabled.

Change-Id: I6541f8775367e8558b4388f7d105b1ae6e8f046b

12 years agoMerge "Reference __dso_handle in PIC way"
Kenny Root [Sat, 3 Mar 2012 00:05:57 +0000 (16:05 -0800)]
Merge "Reference __dso_handle in PIC way"

12 years agoReference __dso_handle in PIC way
Kenny Root [Fri, 2 Mar 2012 21:05:25 +0000 (13:05 -0800)]
Reference __dso_handle in PIC way

Use the same pattern in atexit.S to reference __dso_handle in a way that
doesn't require a TEXTREL flag to be set.

Change-Id: Id69d20863ee203d2b2f7ef0db230f9b548657741

12 years agoam 6d074bb7: am 70d1d45f: am a58c88c2: Merge "Upgrade to tzdata2012b."
Elliott Hughes [Fri, 2 Mar 2012 19:13:05 +0000 (11:13 -0800)]
am 6d074bb7: am 70d1d45f: am a58c88c2: Merge "Upgrade to tzdata2012b."

* commit '6d074bb71a316f73f35f4430a71fa706c46d4b75':
  Upgrade to tzdata2012b.

12 years agoam 70d1d45f: am a58c88c2: Merge "Upgrade to tzdata2012b."
Elliott Hughes [Fri, 2 Mar 2012 19:10:43 +0000 (11:10 -0800)]
am 70d1d45f: am a58c88c2: Merge "Upgrade to tzdata2012b."

* commit '70d1d45f0ecaee262627a6ca323fc2b4fe3e9024':
  Upgrade to tzdata2012b.

12 years agoam a58c88c2: Merge "Upgrade to tzdata2012b."
Elliott Hughes [Fri, 2 Mar 2012 19:07:03 +0000 (11:07 -0800)]
am a58c88c2: Merge "Upgrade to tzdata2012b."

* commit 'a58c88c235bfeeb17ac495991e66f7b906935852':
  Upgrade to tzdata2012b.

12 years agoam a2b1bbc9: am a480cf93: resolved conflicts for merge of cfe535ef to stage-aosp...
Elliott Hughes [Fri, 2 Mar 2012 18:49:45 +0000 (10:49 -0800)]
am a2b1bbc9: am a480cf93: resolved conflicts for merge of cfe535ef to stage-aosp-master

* commit 'a2b1bbc9a605819eb5ecd1df61d4f2a79f1a8f92':
  Upgrade to tzdata2011a.

12 years agoam a480cf93: resolved conflicts for merge of cfe535ef to stage-aosp-master
Elliott Hughes [Fri, 2 Mar 2012 18:47:23 +0000 (10:47 -0800)]
am a480cf93: resolved conflicts for merge of cfe535ef to stage-aosp-master

* commit 'a480cf930f31ab404e7efe66259427a53d72fa2b':
  Upgrade to tzdata2011a.

12 years agoresolved conflicts for merge of cfe535ef to stage-aosp-master
Elliott Hughes [Fri, 2 Mar 2012 18:11:18 +0000 (10:11 -0800)]
resolved conflicts for merge of cfe535ef to stage-aosp-master

Change-Id: I21a1dd41503518e75892180c14f1ce79102772ad

12 years agoMerge "Upgrade to tzdata2012b."
Elliott Hughes [Fri, 2 Mar 2012 08:09:03 +0000 (00:09 -0800)]
Merge "Upgrade to tzdata2012b."

12 years agoUpgrade to tzdata2012b.
Elliott Hughes [Fri, 2 Mar 2012 07:34:11 +0000 (23:34 -0800)]
Upgrade to tzdata2012b.

Summer time in Cuba has been delayed 3 weeks (now starts April 1 rather
than March 11). Since March 11 (the old start date, as listed in 2012a)
is just a little over a week away, this change is urgent.

Change-Id: Iadf4dc30072bdac0bcd0ad4b9e076a9ca071efbe

12 years agoMerge "Upgrade to tzdata2011a."
Elliott Hughes [Fri, 2 Mar 2012 07:32:14 +0000 (23:32 -0800)]
Merge "Upgrade to tzdata2011a."

12 years agoam cff86bdc: am 018c27ed: am 25f2d1f0: Merge "update stddef.h"
Jean-Baptiste Queru [Thu, 1 Mar 2012 23:35:45 +0000 (15:35 -0800)]
am cff86bdc: am 018c27ed: am 25f2d1f0: Merge "update stddef.h"

* commit 'cff86bdc02f70bb5758234ace75a2f84a626cc3c':
  update stddef.h

12 years agoam 568ee0d1: am 51d22d7e: am afab5a70: Merge "Eliminate duplicate constants"
Jean-Baptiste Queru [Thu, 1 Mar 2012 23:35:44 +0000 (15:35 -0800)]
am 568ee0d1: am 51d22d7e: am afab5a70: Merge "Eliminate duplicate constants"

* commit '568ee0d135c23c5a49fb4f93de01999b76523428':
  Eliminate duplicate constants

12 years agoam dc755140: (-s ours) am 7c38f53d: am 7f28e0b4: Merge "Clean up the remnants of...
Jean-Baptiste Queru [Thu, 1 Mar 2012 23:35:20 +0000 (15:35 -0800)]
am dc755140: (-s ours) am 7c38f53d: am 7f28e0b4: Merge "Clean up the remnants of SuperH support"

* commit 'dc755140c11bb0ff64f7c3d224dd5588fc643485':
  Clean up the remnants of SuperH support

12 years agoUpgrade to tzdata2011a.
Elliott Hughes [Thu, 1 Mar 2012 17:38:31 +0000 (09:38 -0800)]
Upgrade to tzdata2011a.

From the notes:

       Chile 2011/2012 and 2012/2013 summer time date adjustments.
       Falkland Islands onto permanent summer time (we're assuming for the
               foreseeable future, though 2012 is all we're fairly certain of.)
       Armenia has abolished Summer Time.
       Tokelau jumped the International Date Line back last December
               (just the same as their near neighbour, Samoa).
       America/Creston is a new zone for a small area of British Columbia
       There will be a leapsecod 2012-06-30 23:59:60 UTC.

Change-Id: I1d66edf8d33fd1dbcf21178def91844025fd9047

12 years agoam 018c27ed: am 25f2d1f0: Merge "update stddef.h"
Jean-Baptiste Queru [Thu, 1 Mar 2012 03:12:17 +0000 (19:12 -0800)]
am 018c27ed: am 25f2d1f0: Merge "update stddef.h"

* commit '018c27eda89b54e59e6c043ea2986c6e39ec2ee0':
  update stddef.h

12 years agoam 51d22d7e: am afab5a70: Merge "Eliminate duplicate constants"
Jean-Baptiste Queru [Thu, 1 Mar 2012 03:12:16 +0000 (19:12 -0800)]
am 51d22d7e: am afab5a70: Merge "Eliminate duplicate constants"

* commit '51d22d7ea92e77f47accee59c99cb8157bf29fcb':
  Eliminate duplicate constants

12 years agoam 25f2d1f0: Merge "update stddef.h"
Jean-Baptiste Queru [Thu, 1 Mar 2012 03:08:50 +0000 (19:08 -0800)]
am 25f2d1f0: Merge "update stddef.h"

* commit '25f2d1f0c3c7802af0d4d1e2bbd3bf95a7e0970b':
  update stddef.h

12 years agoam afab5a70: Merge "Eliminate duplicate constants"
Jean-Baptiste Queru [Thu, 1 Mar 2012 03:08:49 +0000 (19:08 -0800)]
am afab5a70: Merge "Eliminate duplicate constants"

* commit 'afab5a703d30df613848cb30ab3ecceafd76102b':
  Eliminate duplicate constants

12 years agoMerge "update stddef.h"
Jean-Baptiste Queru [Thu, 1 Mar 2012 02:59:15 +0000 (18:59 -0800)]
Merge "update stddef.h"

12 years agoMerge "Eliminate duplicate constants"
Jean-Baptiste Queru [Thu, 1 Mar 2012 02:58:52 +0000 (18:58 -0800)]
Merge "Eliminate duplicate constants"

12 years agoupdate stddef.h
Nick Kralevich [Tue, 28 Feb 2012 21:36:31 +0000 (13:36 -0800)]
update stddef.h

Pull in an updated version of stddef.h from the linux kernel.
Pulled from upstream kernel at 891003abb0db6bfffd61b76ad0ed39bb7c3db8e1

This file was generated using the following command:

cd bionic/libc/kernel/
./tools/clean_header.py -u ../../../external/kernel-headers/original/linux/stddef.h

Change-Id: I6c29f3fa100c5368da41d0f0da39bc50fa668e9d

12 years agoEliminate duplicate constants
Nick Kralevich [Tue, 28 Feb 2012 19:49:41 +0000 (11:49 -0800)]
Eliminate duplicate constants

include/elf.h contains basically the same values as
linux/auxvec.h. Eliminate dups.

include/sys/exec_elf.h contains basically the same
values as linux/elf.h. Eliminate dups.

Change-Id: I66b8358161bb52223bb657f8f73ba28b324f4fa3

12 years agoam 7c38f53d: am 7f28e0b4: Merge "Clean up the remnants of SuperH support"
Jean-Baptiste Queru [Wed, 29 Feb 2012 23:43:24 +0000 (15:43 -0800)]
am 7c38f53d: am 7f28e0b4: Merge "Clean up the remnants of SuperH support"

* commit '7c38f53d1911e04acf6398921a7bd4444d585c2b':
  Clean up the remnants of SuperH support

12 years agoam 7f28e0b4: Merge "Clean up the remnants of SuperH support"
Jean-Baptiste Queru [Wed, 29 Feb 2012 23:38:55 +0000 (15:38 -0800)]
am 7f28e0b4: Merge "Clean up the remnants of SuperH support"

* commit '7f28e0b4501de7c4f8f627fd3e4be323d737ae82':
  Clean up the remnants of SuperH support

12 years agoMerge "Clean up the remnants of SuperH support"
Jean-Baptiste Queru [Wed, 29 Feb 2012 22:39:41 +0000 (14:39 -0800)]
Merge "Clean up the remnants of SuperH support"

12 years agoMerge "Eliminate duplicate constants"
Nick Kralevich [Wed, 29 Feb 2012 21:30:48 +0000 (13:30 -0800)]
Merge "Eliminate duplicate constants"

12 years agoEliminate duplicate constants
Nick Kralevich [Tue, 28 Feb 2012 19:49:41 +0000 (11:49 -0800)]
Eliminate duplicate constants

include/elf.h contains basically the same values as
linux/auxvec.h. Eliminate dups.

include/sys/exec_elf.h contains basically the same
values as linux/elf.h. Eliminate dups.

Change-Id: I66b8358161bb52223bb657f8f73ba28b324f4fa3

12 years agoMerge "Trivial fix in comment"
Andrew Hsieh [Wed, 29 Feb 2012 17:40:49 +0000 (09:40 -0800)]
Merge "Trivial fix in comment"

12 years agoMerge "update stddef.h"
Nick Kralevich [Tue, 28 Feb 2012 22:39:12 +0000 (14:39 -0800)]
Merge "update stddef.h"

12 years agoupdate stddef.h
Nick Kralevich [Tue, 28 Feb 2012 21:36:31 +0000 (13:36 -0800)]
update stddef.h

Pull in an updated version of stddef.h from the linux kernel.
Pulled from upstream kernel at 891003abb0db6bfffd61b76ad0ed39bb7c3db8e1

This file was generated using the following command:

cd bionic/libc/kernel/
./tools/clean_header.py -u ../../../external/kernel-headers/original/linux/stddef.h

Change-Id: I6c29f3fa100c5368da41d0f0da39bc50fa668e9d

12 years agoam 2e236c13: am 17edd38f: am 9c9b0fc7: Merge "libm: cherry-pick one patch from freebs...
Jean-Baptiste Queru [Tue, 28 Feb 2012 21:55:51 +0000 (13:55 -0800)]
am 2e236c13: am 17edd38f: am 9c9b0fc7: Merge "libm: cherry-pick one patch from freebsd to fix logb() denormals issue"

* commit '2e236c132fe38e52d8a52d264cca5c520d778c98':
  libm: cherry-pick one patch from freebsd to fix logb() denormals issue

12 years agoam 17edd38f: am 9c9b0fc7: Merge "libm: cherry-pick one patch from freebsd to fix...
Jean-Baptiste Queru [Tue, 28 Feb 2012 21:53:14 +0000 (13:53 -0800)]
am 17edd38f: am 9c9b0fc7: Merge "libm: cherry-pick one patch from freebsd to fix logb() denormals issue"

* commit '17edd38f03300af28c89f9031dad177af8232c3a':
  libm: cherry-pick one patch from freebsd to fix logb() denormals issue

12 years agoam 9c9b0fc7: Merge "libm: cherry-pick one patch from freebsd to fix logb() denormals...
Jean-Baptiste Queru [Tue, 28 Feb 2012 21:28:30 +0000 (13:28 -0800)]
am 9c9b0fc7: Merge "libm: cherry-pick one patch from freebsd to fix logb() denormals issue"

* commit '9c9b0fc7e1dff39baa8cdf2536be9776aa4af766':
  libm: cherry-pick one patch from freebsd to fix logb() denormals issue

12 years agoMerge "libm: cherry-pick one patch from freebsd to fix logb() denormals issue"
Jean-Baptiste Queru [Tue, 28 Feb 2012 17:44:40 +0000 (09:44 -0800)]
Merge "libm: cherry-pick one patch from freebsd to fix logb() denormals issue"

12 years agolibm: cherry-pick one patch from freebsd to fix logb() denormals issue
Jack Ren [Tue, 28 Feb 2012 04:02:21 +0000 (12:02 +0800)]
libm: cherry-pick one patch from freebsd to fix logb() denormals issue

from http://svnweb.freebsd.org/base?view=revision&revision=176101
"
Oops, fix the fix in rev.1.10.  logb() and logbf() were broken on
 denormals, and logb() remained broken after 1.10 because the fix for
 logbf() was incompletely translated.

Convert to __FBSDID().
"

Change-Id: I54f33648db7c421b06eee1ea8e63c57a179fae0d
Signed-off-by: Jack Ren <jack.ren@intel.com>
Signed-off-by: Jin Wei <wei.a.jin@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
12 years agoMerge "Revert "Use the new NativeDaemonConnector style.""
Kenny Root [Fri, 24 Feb 2012 19:04:56 +0000 (11:04 -0800)]
Merge "Revert "Use the new NativeDaemonConnector style.""

12 years agoRevert "Use the new NativeDaemonConnector style."
Kenny Root [Fri, 24 Feb 2012 19:04:42 +0000 (11:04 -0800)]
Revert "Use the new NativeDaemonConnector style."

The other changes relating to this were already reverted.

This reverts commit 1625c7a837d73b6729f97edb32c497d289c0220c

12 years agoam 5d8fd2a0: am a71aefc6: am d041bf20: Merge "bionic/x86: fix one potential deadlock...
Jean-Baptiste Queru [Thu, 23 Feb 2012 20:34:02 +0000 (12:34 -0800)]
am 5d8fd2a0: am a71aefc6: am d041bf20: Merge "bionic/x86: fix one potential deadlock in __set_tls()"

* commit '5d8fd2a0bc059cd07405a372c98617829f8ac378':
  bionic/x86: fix one potential deadlock in __set_tls()

12 years agoam a71aefc6: am d041bf20: Merge "bionic/x86: fix one potential deadlock in __set_tls()"
Jean-Baptiste Queru [Thu, 23 Feb 2012 20:32:37 +0000 (12:32 -0800)]
am a71aefc6: am d041bf20: Merge "bionic/x86: fix one potential deadlock in __set_tls()"

* commit 'a71aefc66f6d4bf1302e0ce5c321aff1a2c769d1':
  bionic/x86: fix one potential deadlock in __set_tls()

12 years agoam d041bf20: Merge "bionic/x86: fix one potential deadlock in __set_tls()"
Jean-Baptiste Queru [Thu, 23 Feb 2012 20:29:10 +0000 (12:29 -0800)]
am d041bf20: Merge "bionic/x86: fix one potential deadlock in __set_tls()"

* commit 'd041bf2095f5f133c87f7ba632a8dfb39537a437':
  bionic/x86: fix one potential deadlock in __set_tls()

12 years agoam 49a05c06: am 62daffe1: am f9c5afb1: Merge "Redesign dlopen() locks to be recursive...
Jean-Baptiste Queru [Thu, 23 Feb 2012 19:20:49 +0000 (11:20 -0800)]
am 49a05c06: am 62daffe1: am f9c5afb1: Merge "Redesign dlopen() locks to be recursive per thread."

* commit '49a05c060acd4d3e17b2819f00a694271bf40977':
  Redesign dlopen() locks to be recursive per thread.

12 years agoMerge "bionic/x86: fix one potential deadlock in __set_tls()"
Jean-Baptiste Queru [Thu, 23 Feb 2012 16:43:29 +0000 (08:43 -0800)]
Merge "bionic/x86: fix one potential deadlock in __set_tls()"

12 years agobionic/x86: fix one potential deadlock in __set_tls()
Jin Wei [Thu, 15 Dec 2011 07:49:25 +0000 (15:49 +0800)]
bionic/x86: fix one potential deadlock in __set_tls()

Fix bug:
Currently the mutex lock _tls_desc_lock is not released
when __set_thread_area() fails. That will leads to the deadlock
when __set_tls( ) is called later on.

Change-Id: Iea3267cb0659971cba7766cbc3346f6924274f86
Signed-off-by: Jin Wei <wei.a.jin@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
12 years agolibc: Add __aeabi_llsl and __aeabi_llsr to libgcc_compat
Dima Zavin [Wed, 22 Feb 2012 23:18:54 +0000 (15:18 -0800)]
libc: Add __aeabi_llsl and __aeabi_llsr to libgcc_compat

Some platform libraries built for ICS do not work with master
because of some refactoring in frameworks/base.

Make sure that these libgcc symbols are always present in our libc

Change-Id: Ib8d345878be0ba711f051082a778f5cc1f1b3a19
Signed-off-by: Dima Zavin <dima@android.com>
12 years agoam 62daffe1: am f9c5afb1: Merge "Redesign dlopen() locks to be recursive per thread."
Jean-Baptiste Queru [Wed, 22 Feb 2012 17:58:17 +0000 (09:58 -0800)]
am 62daffe1: am f9c5afb1: Merge "Redesign dlopen() locks to be recursive per thread."

* commit '62daffe147e8810ce48a897df46b0b3db95ebaa3':
  Redesign dlopen() locks to be recursive per thread.

12 years agoam f9c5afb1: Merge "Redesign dlopen() locks to be recursive per thread."
Jean-Baptiste Queru [Wed, 22 Feb 2012 17:54:52 +0000 (09:54 -0800)]
am f9c5afb1: Merge "Redesign dlopen() locks to be recursive per thread."

* commit 'f9c5afb1f9d8e615ab98774a10bbf117962db66d':
  Redesign dlopen() locks to be recursive per thread.

12 years agoMerge "Redesign dlopen() locks to be recursive per thread."
Jean-Baptiste Queru [Wed, 22 Feb 2012 17:30:52 +0000 (09:30 -0800)]
Merge "Redesign dlopen() locks to be recursive per thread."

12 years agoTrivial fix in comment
Andrew Hsieh [Tue, 21 Feb 2012 23:09:32 +0000 (15:09 -0800)]
Trivial fix in comment

Very, very trivial fix for minor typo in comment about how it works

Change-Id: Ia08d332366837dec8f7e91b9728732c5edea223e

12 years agoRedesign dlopen() locks to be recursive per thread.
Pavel Chupin [Mon, 20 Feb 2012 06:49:13 +0000 (10:49 +0400)]
Redesign dlopen() locks to be recursive per thread.

That is to fix the bug:
dlxxx functions can't be called recursively.
For example, if we use dlopen() to use open one library whose constructor
also calls dlopen() in order to open another library, then the thread is
dead-blocked.

By changing the dl_lock from a non-recursive lock to a recursive lock, we can
prevent the thread from dead-blocked by recursive dlxxx calls in the same
thread context.

Change-Id: I1018b41c82f4641cc009c0a2eda31f5a47a534f9
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
12 years agoam 09049311: am cfff36df: am a60ff6c5: Merge "libc: Define new symbol visibility...
Jean-Baptiste Queru [Mon, 13 Feb 2012 22:42:48 +0000 (14:42 -0800)]
am 09049311: am cfff36df: am a60ff6c5: Merge "libc: Define new symbol visibility macros"

* commit '09049311a229c427f73e3e0ac873bf344b45aaf2':
  libc: Define new symbol visibility macros

12 years agoam cfff36df: am a60ff6c5: Merge "libc: Define new symbol visibility macros"
Jean-Baptiste Queru [Mon, 13 Feb 2012 22:39:52 +0000 (14:39 -0800)]
am cfff36df: am a60ff6c5: Merge "libc: Define new symbol visibility macros"

* commit 'cfff36df2bebd95f2663b7b053c6308593c343dd':
  libc: Define new symbol visibility macros

12 years agoam a60ff6c5: Merge "libc: Define new symbol visibility macros"
Jean-Baptiste Queru [Mon, 13 Feb 2012 22:25:53 +0000 (14:25 -0800)]
am a60ff6c5: Merge "libc: Define new symbol visibility macros"

* commit 'a60ff6c5b2ca76181b387d8c10aee22a2cbcf840':
  libc: Define new symbol visibility macros

12 years agoMerge "libc: Define new symbol visibility macros"
Jean-Baptiste Queru [Mon, 13 Feb 2012 22:23:11 +0000 (14:23 -0800)]
Merge "libc: Define new symbol visibility macros"

12 years agoMerge "Allow C++ to call fdprintf"
Glenn Kasten [Fri, 10 Feb 2012 21:45:49 +0000 (13:45 -0800)]
Merge "Allow C++ to call fdprintf"

12 years agoUpdate bionic to know users and isolated uids for uid string representation.
Dianne Hackborn [Fri, 10 Feb 2012 00:14:28 +0000 (16:14 -0800)]
Update bionic to know users and isolated uids for uid string representation.

Change-Id: I6681bacd69299a7f9837ef8025a80c5562081bad

12 years agoClean up the remnants of SuperH support
Raghu Gandham [Thu, 9 Feb 2012 23:58:46 +0000 (15:58 -0800)]
Clean up the remnants of SuperH support

12 years agoAllow C++ to call fdprintf
Glenn Kasten [Thu, 9 Feb 2012 18:15:45 +0000 (10:15 -0800)]
Allow C++ to call fdprintf

Change-Id: I1adb7b165ab9f62eaee4e7a9108e8b461350b347

12 years agoUse the new NativeDaemonConnector style.
Robert Greenwalt [Tue, 7 Feb 2012 19:53:55 +0000 (11:53 -0800)]
Use the new NativeDaemonConnector style.

Prepend a 0 to match the new sequence-number style, though this module
doesn't really need/use it.

bug:5864209
Change-Id: Iacbcddaced6fe8bb01d186596a916e4fb4805fef

12 years agoam 5d7181a7: am 68fc85ff: am 177a7706: linker: fix x86 build
David 'Digit' Turner [Wed, 1 Feb 2012 19:24:29 +0000 (11:24 -0800)]
am 5d7181a7: am 68fc85ff: am 177a7706: linker: fix x86 build

* commit '5d7181a71c0b066fe6c19b9c5906bd694a399a59':
  linker: fix x86 build

12 years agoam 68fc85ff: am 177a7706: linker: fix x86 build
David 'Digit' Turner [Wed, 1 Feb 2012 19:22:07 +0000 (11:22 -0800)]
am 68fc85ff: am 177a7706: linker: fix x86 build

* commit '68fc85ffc05aca5cc187676bd1502c3c446046d9':
  linker: fix x86 build

12 years agoam 177a7706: linker: fix x86 build
David 'Digit' Turner [Wed, 1 Feb 2012 19:18:06 +0000 (11:18 -0800)]
am 177a7706: linker: fix x86 build

* commit '177a77067b6d3326dbcf88fd93d0664e48e27f9f':
  linker: fix x86 build

12 years agolinker: fix x86 build
David 'Digit' Turner [Wed, 1 Feb 2012 18:38:58 +0000 (19:38 +0100)]
linker: fix x86 build

Change-Id: I47d76a0f50515013c37ccef89accba03cc69529d

12 years agoam 09d695d7: am 44eae4c7: Reconcile with ics-mr1-release
The Android Open Source Project [Wed, 1 Feb 2012 18:03:20 +0000 (10:03 -0800)]
am 09d695d7: am 44eae4c7: Reconcile with ics-mr1-release

* commit '09d695d782007f45504841c1535e53ccf2059a68':

12 years agoam 44eae4c7: Reconcile with ics-mr1-release
The Android Open Source Project [Wed, 1 Feb 2012 18:00:28 +0000 (10:00 -0800)]
am 44eae4c7: Reconcile with ics-mr1-release

* commit '44eae4c7af901e521e2e880a8300b285bbf53010':

12 years agoMerge c4cb87f3
Jean-Baptiste Queru [Wed, 1 Feb 2012 17:46:08 +0000 (09:46 -0800)]
Merge c4cb87f3

Change-Id: I4cc14eba43fde75a7702fdc7ad07d3d949e9c092

12 years agoReconcile with ics-mr1-release
The Android Open Source Project [Wed, 1 Feb 2012 16:49:24 +0000 (08:49 -0800)]
Reconcile with ics-mr1-release

Change-Id: I37e2eb5cd34a47e3eb7b2bf2353b50fc14972adf

12 years agoMerge 5b892aa7
Jean-Baptiste Queru [Wed, 1 Feb 2012 15:12:13 +0000 (07:12 -0800)]
Merge 5b892aa7

Change-Id: Ic82bc2866bdb0c93822c94281301fa127fd4bb0c

12 years agolibc: Define new symbol visibility macros
David 'Digit' Turner [Mon, 23 Jan 2012 14:15:30 +0000 (15:15 +0100)]
libc: Define new symbol visibility macros

This patch defines a few new macros that can be used to control the
visibility of symbols exported by the C library:

- ENTRY_PRIVATE() can be used in assembly sources to indicate
  that an assembler function should have "hidden" visibility, i.e.
  will never be exported by the C library's shared library.

  This is the equivalent of using __LIBC_HIDDEN__ for a C function,
  but ENTRY_PRIVATE() works like ENTRY(), and must be used with
  END() to tag the end of the function.

- __LIBC_ABI_PUBLIC__ can be used to tag a C functions as being
  part of the C library's public ABI. This is important for a
  few functions that must be exposed by the NDK to maintain
  binary compatibility.

  Once a symbol has been tagged with this macro, it shall
  *never* be removed from the library, even if it becomes
  directly unused due to implementation changes
  (e.g. __is_threaded).

- __LIBC_ABI_PRIVATE__ can be used for C functions that should
  always be exported by the C library because they are used by
  other libraries in the platform, but should not be exposed
  by the NDK. It is possible to remove such symbols from the
  implementation if all callers are also modified.

+ Add missing END() assembly macro for x86

Change-Id: Ia96236ea0dbec41d57bea634b39d246b30e5e234

12 years agoMerge "remove obsolete SuperH support"
Jean-Baptiste Queru [Tue, 31 Jan 2012 20:43:59 +0000 (12:43 -0800)]
Merge "remove obsolete SuperH support"

12 years agoremove obsolete SuperH support
David 'Digit' Turner [Mon, 30 Jan 2012 16:17:58 +0000 (17:17 +0100)]
remove obsolete SuperH support

We don't have a toolchain anymore, we don't have working original
kernel headers, and nobody is maintaining this so there is really
no point in keeping this here. Details of the patch:

- removed code paths from Android.mk files related to the SuperH
  architecture ("sh")

- removed libc/arch-sh, linker/arch-sh, libc/kernel/arch-sh

- simplified libc/SYSCALLS.TXT

- simplified the scripts in libc/tools/ and libc/kernel/tools

Change-Id: I26b0e1422bdc347489e4573e2fbec0e402f75560

Signed-off-by: David 'Digit' Turner <digit@android.com>
12 years agoMerge "libc: remove global lock from recursive mutex implementation."
David 'Digit' Turner [Tue, 31 Jan 2012 19:02:33 +0000 (11:02 -0800)]
Merge "libc: remove global lock from recursive mutex implementation."

12 years agoMerge "Add new suspend-block input ioctls."
Jeff Brown [Tue, 31 Jan 2012 18:05:35 +0000 (10:05 -0800)]
Merge "Add new suspend-block input ioctls."

12 years agoFix recursive ELF constructor check
Jesse Hall [Mon, 30 Jan 2012 23:39:57 +0000 (15:39 -0800)]
Fix recursive ELF constructor check

The flag to avoid calling ELF constructors recursively (in the case
of recursive .so dependencies) was being set after the dangerous
recursive constructor call had already been made.

This fixes the libc's debug malloc implementation.

Change-Id: I5e601f0ea19ab1df81b8b1ad4df25c3eab0ccda4

12 years agolibc: remove global lock from recursive mutex implementation.
David 'Digit' Turner [Tue, 24 Jan 2012 14:26:54 +0000 (15:26 +0100)]
libc: remove global lock from recursive mutex implementation.

This optimization improves the performance of recursive locks
drastically. When running the thread_stress program on a Xoom,
the total time to perform all operations goes from 1500 ms to
500 ms on average after this change is pushed to the device.

Change-Id: I5d9407a9191bdefdaccff7e7edefc096ebba9a9d

12 years agoam cc12c74f: am e8004445: Merge "Make sure __u64 is defined even for strict ansi...
Jean-Baptiste Queru [Sat, 28 Jan 2012 05:09:07 +0000 (21:09 -0800)]
am cc12c74f: am e8004445: Merge "Make sure __u64 is defined even for strict ansi or -std=c99"

* commit 'cc12c74f7f65c571778989cd902eb5b9fa74fb11':
  Make sure __u64 is defined even for strict ansi or -std=c99

12 years agoam e8004445: Merge "Make sure __u64 is defined even for strict ansi or -std=c99"
Jean-Baptiste Queru [Fri, 27 Jan 2012 15:41:43 +0000 (07:41 -0800)]
am e8004445: Merge "Make sure __u64 is defined even for strict ansi or -std=c99"

* commit 'e80044455961005ac95e405c8d553f2418d8e50c':
  Make sure __u64 is defined even for strict ansi or -std=c99

12 years agoMerge "Make sure __u64 is defined even for strict ansi or -std=c99"
Jean-Baptiste Queru [Fri, 27 Jan 2012 15:31:09 +0000 (07:31 -0800)]
Merge "Make sure __u64 is defined even for strict ansi or -std=c99"

12 years agoMerge "Increase the size of the system-wide dns cache"
Robert Greenwalt [Thu, 26 Jan 2012 22:51:08 +0000 (14:51 -0800)]
Merge "Increase the size of the system-wide dns cache"

12 years agoLog debuggerd connection failures
Andy McFadden [Thu, 26 Jan 2012 21:21:19 +0000 (13:21 -0800)]
Log debuggerd connection failures

Write a message to the log file if the signal handler is not able
to connect to debuggerd.  This is especially handy if the failure
was caused by running out of file descriptors, since there's some
chance that the lack of fds relates to the crash.

Sample:

 F libc    : Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1)
 F libc    : Unable to open connection to debuggerd: Too many open files

Bug 5926330

Change-Id: I0ff210d82ab1db39b08f328bae5e08f67a69e5d7

12 years agoIncrease the size of the system-wide dns cache
Robert Greenwalt [Wed, 25 Jan 2012 23:16:03 +0000 (15:16 -0800)]
Increase the size of the system-wide dns cache

32 enteries perhaps was ok for per-process caching with ipv4 only
but adding ipv6 records makes it effectively 16 entries and making
it system wide makes is pretty useless.  Increasing to 640 entries.

bug:5841178
Change-Id: I879f8bf4d3c4d8c1708bb46d46a67c1f64b1861f

12 years agoMake sure __u64 is defined even for strict ansi or -std=c99
Martin Storsjo [Wed, 25 Jan 2012 21:25:09 +0000 (23:25 +0200)]
Make sure __u64 is defined even for strict ansi or -std=c99

The x86 asm headers define __u64 regardless of __STRICT_ANSI__.
The linux/videodev2.h header requires __u64 to be defined, thus
this fixes compiling with -std=c99 when including the
linux/videodev2.h header.

In glibc, the asm/types.h header defines __u64 regardless of
__STRICT_ANSI__.

This is the change for the generated arch-arm/asm/types.h
header, as produced by the update_all.py script (without all
the other unrelated changes that the script produces).

FWIW, the same issue also is present in
arch-sh/asm/types.h, but there are no source headers for
arch-sh in external/kernel-headers (and regenerating the
headers simply removes that file).

Change-Id: If05fcc9ed6ff5943602be121c7be140116e361fe

12 years agoam 482d59a4: am e22dfc46: Merge "execvp: bcopy() is deprecated. Use memcpy() instead"
Jean-Baptiste Queru [Wed, 25 Jan 2012 16:57:30 +0000 (08:57 -0800)]
am 482d59a4: am e22dfc46: Merge "execvp: bcopy() is deprecated. Use memcpy() instead"

* commit '482d59a42f6c81e3a142ffbf23c67a903836f203':
  execvp: bcopy() is deprecated. Use memcpy() instead

12 years agoam e22dfc46: Merge "execvp: bcopy() is deprecated. Use memcpy() instead"
Jean-Baptiste Queru [Tue, 24 Jan 2012 23:07:56 +0000 (15:07 -0800)]
am e22dfc46: Merge "execvp: bcopy() is deprecated. Use memcpy() instead"

* commit 'e22dfc46b763e9b0c6300b7068609d2db60a9b2c':
  execvp: bcopy() is deprecated. Use memcpy() instead

12 years agoMerge "execvp: bcopy() is deprecated. Use memcpy() instead"
Jean-Baptiste Queru [Tue, 24 Jan 2012 22:26:34 +0000 (14:26 -0800)]
Merge "execvp: bcopy() is deprecated. Use memcpy() instead"

12 years agoMerge "libc: Fix recursive mutex lock implementation."
David 'Digit' Turner [Tue, 24 Jan 2012 17:28:29 +0000 (09:28 -0800)]
Merge "libc: Fix recursive mutex lock implementation."

12 years agolibc: Fix recursive mutex lock implementation.
David 'Digit' Turner [Tue, 24 Jan 2012 12:20:38 +0000 (13:20 +0100)]
libc: Fix recursive mutex lock implementation.

This fixes a bug that was introduced in the latest pthread optimization.
It happens when a recursive lock is contented by several threads. The main
issue was that the atomic counter increment in _recursive_increment() could
be annihilated by a non-conditional write in pthread_mutex_lock() used to
update the value's lower bits to indicate contention.

This patch re-introduces the use of the global recursive lock in
_recursive_increment(). This will hit performance, but a future patch
will be provided to remove it from the source code.

Change-Id: Ie22069d376cebf2e7d613ba00b6871567f333544

12 years agoam c83c1da5: am cee8425f: Merge "Move variable declaration on its own line"
Jean-Baptiste Queru [Sat, 21 Jan 2012 01:23:52 +0000 (17:23 -0800)]
am c83c1da5: am cee8425f: Merge "Move variable declaration on its own line"

* commit 'c83c1da54831ef1c9ff59cf9df8d5c0173893ee5':
  Move variable declaration on its own line

12 years agoam 5b44655f: am 7e6a5773: Merge "Use the AT_SECURE auxv flag to determine whether...
Jean-Baptiste Queru [Sat, 21 Jan 2012 01:23:51 +0000 (17:23 -0800)]
am 5b44655f: am 7e6a5773: Merge "Use the AT_SECURE auxv flag to determine whether to enable secure mode."

* commit '5b44655f22dd05c7cd8afcd218102616a6f5f4da':
  Use the AT_SECURE auxv flag to determine whether to enable secure mode.

12 years agoMerge 2f80f07d
Jean-Baptiste Queru [Sat, 21 Jan 2012 00:47:01 +0000 (16:47 -0800)]
Merge 2f80f07d

Change-Id: Iff51b8530dbee01499ba4af0ecd6ab837c8c94fb

12 years agoam 8eb948d8: Reconcile with ics-mr1-release
The Android Open Source Project [Fri, 20 Jan 2012 23:52:14 +0000 (15:52 -0800)]
am 8eb948d8: Reconcile with ics-mr1-release

* commit '8eb948d8c8b66d8442a45d398db4e970fb3bf68b':

12 years agoam dac52ff9: am e8e1efea: Update to tzdata2011n.
Elliott Hughes [Fri, 20 Jan 2012 23:48:16 +0000 (15:48 -0800)]
am dac52ff9: am e8e1efea: Update to tzdata2011n.

* commit 'dac52ff9f5591afda2b8c2a3d41aa08d7cab179e':
  Update to tzdata2011n.

12 years agoam cee8425f: Merge "Move variable declaration on its own line"
Jean-Baptiste Queru [Fri, 20 Jan 2012 19:54:49 +0000 (11:54 -0800)]
am cee8425f: Merge "Move variable declaration on its own line"

* commit 'cee8425f22cfe268614c7bb47b2f5874ac6a0e4b':
  Move variable declaration on its own line

12 years agoam 7e6a5773: Merge "Use the AT_SECURE auxv flag to determine whether to enable secure...
Jean-Baptiste Queru [Fri, 20 Jan 2012 19:54:48 +0000 (11:54 -0800)]
am 7e6a5773: Merge "Use the AT_SECURE auxv flag to determine whether to enable secure mode."

* commit '7e6a5773133e4b65d678535418b1f5d594859da2':
  Use the AT_SECURE auxv flag to determine whether to enable secure mode.

12 years agoam 23f56bbb: Merge "Add extended attribute (xattr) system call wrappers to bionic."
Jean-Baptiste Queru [Fri, 20 Jan 2012 19:54:47 +0000 (11:54 -0800)]
am 23f56bbb: Merge "Add extended attribute (xattr) system call wrappers to bionic."

* commit '23f56bbb6ae053996dd821f29379aea0c7166055':
  Add extended attribute (xattr) system call wrappers to bionic.

12 years agoMerge "Move variable declaration on its own line"
Jean-Baptiste Queru [Fri, 20 Jan 2012 19:07:40 +0000 (11:07 -0800)]
Merge "Move variable declaration on its own line"

12 years agoMove variable declaration on its own line
Stephen Smalley [Fri, 20 Jan 2012 18:59:15 +0000 (10:59 -0800)]
Move variable declaration on its own line

Change-Id: Ied54ffabccdc867ea4e124a0f0324a217270d6e7

12 years agoMerge "Use the AT_SECURE auxv flag to determine whether to enable secure mode."
Jean-Baptiste Queru [Fri, 20 Jan 2012 18:43:18 +0000 (10:43 -0800)]
Merge "Use the AT_SECURE auxv flag to determine whether to enable secure mode."

12 years agoUse the AT_SECURE auxv flag to determine whether to enable secure mode.
Stephen Smalley [Fri, 13 Jan 2012 12:48:11 +0000 (07:48 -0500)]
Use the AT_SECURE auxv flag to determine whether to enable secure mode.

The Linux kernel provides an AT_SECURE auxv flag to inform userspace
whether or not a security transition has occurred.  This is more reliable
than directly checking the uid/gid against the euid/egid, because it covers
not only setuid/setgid but also file capabilities, SELinux, and AppArmor
security transitions.  It is also a more efficient test since it does
not require any additional system calls.

Change-Id: I9752a4f6da452273258d2876d13b05e402fb0409