OSDN Git Service

android-x86/bionic.git
12 years agoMerge "Add auto-generated headers for USB FunctionFS"
Benoit Goby [Tue, 27 Mar 2012 00:14:24 +0000 (17:14 -0700)]
Merge "Add auto-generated headers for USB FunctionFS"

12 years agoHandle pthread-related changes (mutex/atfork)
Jean-Baptiste Queru [Mon, 26 Mar 2012 22:25:19 +0000 (15:25 -0700)]
Handle pthread-related changes (mutex/atfork)

First commit:

Revert "Revert "am be741d47: am 2f460fbe: am 73b5cad9: Merge "bionic: Fix wrong kernel_id in pthread descriptor after fork()"""

This reverts commit 06823da2f0c8b4a4ce4c45113032f03df85c94b8.

Second commit:

bionic: fix atfork hanlder_mutex deadlock

This cherry-picks commit 34e89c232dd5645fe3b5f9b40856d8e3e4cae57a

After applying the kernel_id fix, the system refused to boot up and we
got following crash log:
I/DEBUG   (  113): pid: 618, tid: 618  >>> org.simalliance.openmobileapi.service:remote <<<
I/DEBUG   (  113): signal 16 (SIGSTKFLT), code -6 (?), fault addr --------
I/DEBUG   (  113):  eax fffffe00  ebx b77de994  ecx 00000080  edx 00724002
I/DEBUG   (  113):  esi 00000000  edi 00004000
I/DEBUG   (  113):  xcs 00000073  xds 0000007b  xes 0000007b  xfs 00000000 xss 0000007b
I/DEBUG   (  113):  eip b7761351  ebp bfdf3de8  esp bfdf3dc4  flags 00000202
I/DEBUG   (  113):     #00  eip: 00015351  /system/lib/libc.so
I/DEBUG   (  113):     #01  eip: 0000d13c  /system/lib/libc.so (pthread_mutex_lock)
I/DEBUG   (  113):     #02  eip: 00077b48  /system/lib/libc.so (__bionic_atfork_run_prepare)
I/DEBUG   (  113):     #03  eip: 00052cdb  /system/lib/libc.so (fork)
I/DEBUG   (  113):     #04  eip: 0009ae91  /system/lib/libdvm.so (_Z18dvmOptimizeDexFileillPKcjjb)
I/DEBUG   (  113):     #05  eip: 000819d6  /system/lib/libdvm.so (_Z14dvmJarFileOpenPKcS0_PP7JarFileb)
I/DEBUG   (  113):     #06  eip: 000b175e  /system/lib/libdvm.so (_ZL40Dalvik_dalvik_system_DexFile_openDexFilePKjP6JValue)
I/DEBUG   (  113):     #07  eip: 0011fb94  /system/lib/libdvm.so

Root cause:
The atfork uses the mutex handler_mutex to protect the atfork_head. The
parent will call __bionic_atfork_run_prepare() to lock the handler_mutex,
and need both the parent and child to unlock their own copy of handler_mutex
after fork. At that time, the owner of hanlder_mutex is set as the parent.
If we apply the kernel_id fix, then the child's kernel_id will be set as
child's tid.
The handler_mutex is a recursive lock, and pthread_mutex_unlock(&hander_mutex)
will fail because the mutex owner is the parent, while the current tid
(__get_thread()->kernel_id) is child, not matched with the mutex owner.
At that time, the handler_mutex is left in lock state.If the child wants to
fork other process after than, then it will try to lock handler_mutex, and
then be deadlocked.

Fix:
Since the child has its own copy of vm space from the the parent, the
child space's handler_mutex should be reset to the initialized state.

Change-Id: I3907dd9a153418fb78862f2aa6d0302c375d9e27
Signed-off-by: Jack Ren <jack.ren@intel.com>
Signed-off-by: Chenyang Du <chenyang.du@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
Change-Id: Ic8072f366a877443a60fe215f3c00b3df5a259c8

12 years agoAdd auto-generated headers for USB FunctionFS
Benoit Goby [Tue, 6 Mar 2012 00:10:41 +0000 (16:10 -0800)]
Add auto-generated headers for USB FunctionFS

linux/usb/ch9.h and linux/usb/functionfs.h

Change-Id: I2907081aba63b32740eb9916315759692a96ab42

12 years agoFixed to #include correct 32-bit headers; Refreshed libc/kernel headers
Andrew Hsieh [Fri, 23 Mar 2012 15:07:36 +0000 (23:07 +0800)]
Fixed to #include correct 32-bit headers; Refreshed libc/kernel headers

This patch fixes an issue where 64-bit hreaders are incorrectly included
in kernel headers.  For example, file "libc/kernel/arch-x86/asm/io.h"
incorreclty includes "io_64.h" (missing, BTW) instead of "io_32.h".

The reason is because CONFIG_X86_32 isn't considered pre-defined in
"kernel_default_arch_macros" for x86, and clean_header.py doesn't
look at it at all anyway (ie. __i386__ is also ignored, but it's
okay since x86 cross compiler defines it back)

Fixed 2 tools/*py, README.TXT, and refreshed libc/kernel headers

Change-Id: Iac834cc8b3548f055d3f2a214af36072dd679fe8

12 years agoInitialize mspace->least_addr properly in the mmap path.
Ben Cheng [Wed, 21 Mar 2012 22:47:12 +0000 (15:47 -0700)]
Initialize mspace->least_addr properly in the mmap path.

BUG: 6206963
Change-Id: Id2ab580246de50a4511b56a734a7bece98fb945c

12 years agoMerge "string.h: add __attribute__ ((pure)) to string functions"
Nick Kralevich [Wed, 21 Mar 2012 21:40:41 +0000 (14:40 -0700)]
Merge "string.h: add __attribute__ ((pure)) to string functions"

12 years agoMerge "bionic: pass MADV_MERGEABLE on private & anonymous mmaps"
Iliyan Malchev [Wed, 21 Mar 2012 20:51:42 +0000 (13:51 -0700)]
Merge "bionic: pass MADV_MERGEABLE on private & anonymous mmaps"

12 years agoMerge "Update the libc kernel includes to support the newer mman for KSM support"
JP Abgrall [Wed, 21 Mar 2012 20:43:10 +0000 (13:43 -0700)]
Merge "Update the libc kernel includes to support the newer mman for KSM support"

12 years agobionic: pass MADV_MERGEABLE on private & anonymous mmaps
JP Abgrall [Wed, 21 Mar 2012 20:19:51 +0000 (13:19 -0700)]
bionic: pass MADV_MERGEABLE on private & anonymous mmaps

Change-Id: I8bc167bb33dec6417fe772172697ea6ff97da2f6
Signed-off-by: Iliyan Malchev <malchev@google.com>
12 years agoUpdate the libc kernel includes to support the newer mman for KSM support
JP Abgrall [Wed, 21 Mar 2012 20:21:08 +0000 (13:21 -0700)]
Update the libc kernel includes to support the newer mman for KSM support

These are generated from the matching external/kernel-headers/original
files (from kernel/samsung android-samsung-3.0-wip).

Change-Id: I982ff6a0d522ea250c3a437f5756766fcc6c5c91

12 years agoMerge "fnmatch.c: Update to version in OpenBSD HEAD"
Nick Kralevich [Wed, 21 Mar 2012 17:07:55 +0000 (10:07 -0700)]
Merge "fnmatch.c: Update to version in OpenBSD HEAD"

12 years agofnmatch.c: Update to version in OpenBSD HEAD
Nick Kralevich [Wed, 21 Mar 2012 16:46:46 +0000 (09:46 -0700)]
fnmatch.c: Update to version in OpenBSD HEAD

Upgrade fnmatch.c from OpenBSD version 1.13 to 1.16.
This is needed primarily to address CVE-2011-0419.

This is a straight copy from upstream's version at
http://www.openbsd.org/cgi-bin/cvsweb/src/lib/libc/gen/fnmatch.c and
incorporates the following changes:

Revision 1.16:
New fnmatch(3) implementation which is not recursive.
Written and provided under BSD licence by William A. Rowe Jr.
Originally released in Apache APR-1.4.5.
Merged class matching code from r1.14 and PATH_MAX check from r1.15.
ok miod millert

Revision 1.15:
Put a limit on recursion during matching, and reject input of size greater
or equal PATH_MAX. Based on similar fix made in NetBSD.
ok miod@ millert@

Revision 1.14:
POSIX character class support for fnmatch(3) and glob(3).  OK deraadt@

Version 1.14 introduced charclasses.h, which we copy unmodified
from upstream version 1.1.
http://www.openbsd.org/cgi-bin/cvsweb/src/lib/libc/gen/charclass.h

Bug: 3435120
Change-Id: I45133468f0c3d439fd10eb087a1c647799f9d25b

12 years agoMerge "New additions/bug fixes required/found when porting perf."
Ben Cheng [Wed, 21 Mar 2012 16:32:24 +0000 (09:32 -0700)]
Merge "New additions/bug fixes required/found when porting perf."

12 years agostring.h: add __attribute__ ((pure)) to string functions
Nick Kralevich [Wed, 21 Mar 2012 15:48:18 +0000 (08:48 -0700)]
string.h: add __attribute__ ((pure)) to string functions

cdefs.h: Introduce the __purefunc attribute, which allows us to mark
certain functions as being "pure".

http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html

  Many functions have no effects except the return value and their
  return value depends only on the parameters and/or global variables.
  Such a function can be subject to common subexpression elimination
  and loop optimization just as an arithmetic operator would be.

string.h: Mark many commently used string functions as "pure", to
allow for additional compiler optimizations.

Change-Id: I42961f90f822b6dbcbc3fd72cdbe774a7adc8785

12 years agolibc/kernel: Add rules to autogenerate device specific kernel headers
Dima Zavin [Fri, 16 Mar 2012 23:18:15 +0000 (16:18 -0700)]
libc/kernel: Add rules to autogenerate device specific kernel headers

This change will automatically post-process kernel headers
specified by device, board, and product. This will allow us
to not check in each kernel header twice, at least for the
device specific headers for now.

Change-Id: I3bb144b6535504b7c26b807daa75de495554356d
Signed-off-by: Dima Zavin <dima@android.com>
12 years agoNew additions/bug fixes required/found when porting perf.
Ben Cheng [Wed, 14 Mar 2012 06:04:57 +0000 (23:04 -0700)]
New additions/bug fixes required/found when porting perf.

New functions:
tfind
tsearch
tdelete
twalk
tdestroy (GNU extension)

Bug fix: the current implementation for realpath would crash
if the second argument (resolved_path) is NULL.

New headers:
ar.h
search.h

Change-Id: Ib6c1e42fc186a6d597a6e5a9692b16acaa155804

12 years agoMerge "linker: fix off-by-one error in GNU_RELRO handling"
Nick Kralevich [Tue, 20 Mar 2012 17:52:42 +0000 (10:52 -0700)]
Merge "linker: fix off-by-one error in GNU_RELRO handling"

12 years agoMerge "linker: initially reserved memory as PROT_NONE"
Nick Kralevich [Tue, 20 Mar 2012 17:52:23 +0000 (10:52 -0700)]
Merge "linker: initially reserved memory as PROT_NONE"

12 years agolinker: fix off-by-one error in GNU_RELRO handling
Nick Kralevich [Fri, 16 Mar 2012 18:38:58 +0000 (11:38 -0700)]
linker: fix off-by-one error in GNU_RELRO handling

Fix a bug where the GNU_RELRO end address could be exactly
the end of the loadable segment.

Change-Id: If6c43acabc06e9aff9217c0f6016e158b28bb41f

12 years agolinker: initially reserved memory as PROT_NONE
Nick Kralevich [Fri, 16 Mar 2012 20:06:12 +0000 (13:06 -0700)]
linker: initially reserved memory as PROT_NONE

When the dynamic linker loads a shared library into memory, it
initially allocates a chunk of memory. The memory is then carved
into smaller chunks for each LOAD region, and appropriate memory
protections applied.

Modify the initial memory allocation so that the pages are mapped
as PROT_NONE, rather than PROT_READ / PROT_EXEC. This ensures that
gaps between LOAD regions are not inadvertantly readable / executable.

(Long term, we should munmap() these gaps entirely)

Change-Id: If128a203ccc6fe12dcbbd2bfe0cf13a2045675af

12 years agoAdd in auto-generated if_alg.h header
Kenny Root [Fri, 16 Mar 2012 04:59:01 +0000 (21:59 -0700)]
Add in auto-generated if_alg.h header

Change-Id: I5d0934069e74be2eafecdee43074590124db57a7

12 years agoMerge "Update kernel headers and add syscall "perf_event_open""
Ben Cheng [Tue, 13 Mar 2012 20:04:22 +0000 (13:04 -0700)]
Merge "Update kernel headers and add syscall "perf_event_open""

12 years agoUpdate kernel headers and add syscall "perf_event_open"
Ben Cheng [Tue, 13 Mar 2012 19:28:40 +0000 (12:28 -0700)]
Update kernel headers and add syscall "perf_event_open"

Change-Id: I43f12b727881df002a8524f2738586c043833bae

12 years agoRevert "am be741d47: am 2f460fbe: am 73b5cad9: Merge "bionic: Fix wrong kernel_id...
Guang Zhu [Tue, 13 Mar 2012 05:05:36 +0000 (22:05 -0700)]
Revert "am be741d47: am 2f460fbe: am 73b5cad9: Merge "bionic: Fix wrong kernel_id in pthread descriptor after fork()""

This reverts commit 76d56cf4a94e875a8b621025e2780775247adb6e, reversing
changes made to c59ba4595be25a1213955233fcf9bcd1afe6438e.

Bug: 6157577

12 years agoam be741d47: am 2f460fbe: am 73b5cad9: Merge "bionic: Fix wrong kernel_id in pthread...
Elliott Hughes [Tue, 13 Mar 2012 00:12:35 +0000 (17:12 -0700)]
am be741d47: am 2f460fbe: am 73b5cad9: Merge "bionic: Fix wrong kernel_id in pthread descriptor after fork()"

* commit 'be741d472868a8ffcb455588f18cda889b0f465c':
  bionic: Fix wrong kernel_id in pthread descriptor after fork()

12 years agoam 2f460fbe: am 73b5cad9: Merge "bionic: Fix wrong kernel_id in pthread descriptor...
Elliott Hughes [Tue, 13 Mar 2012 00:10:46 +0000 (17:10 -0700)]
am 2f460fbe: am 73b5cad9: Merge "bionic: Fix wrong kernel_id in pthread descriptor after fork()"

* commit '2f460fbee9abe2936175379c49c6618de7421233':
  bionic: Fix wrong kernel_id in pthread descriptor after fork()

12 years agoam 73b5cad9: Merge "bionic: Fix wrong kernel_id in pthread descriptor after fork()"
Elliott Hughes [Tue, 13 Mar 2012 00:06:09 +0000 (17:06 -0700)]
am 73b5cad9: Merge "bionic: Fix wrong kernel_id in pthread descriptor after fork()"

* commit '73b5cad989da317cc8089b57ee25f502b1cac71f':
  bionic: Fix wrong kernel_id in pthread descriptor after fork()

12 years agoMerge "bionic: Fix wrong kernel_id in pthread descriptor after fork()"
Elliott Hughes [Mon, 12 Mar 2012 17:32:02 +0000 (10:32 -0700)]
Merge "bionic: Fix wrong kernel_id in pthread descriptor after fork()"

12 years agobionic: Fix wrong kernel_id in pthread descriptor after fork()
Jack Ren [Tue, 17 Jan 2012 08:27:42 +0000 (16:27 +0800)]
bionic: Fix wrong kernel_id in pthread descriptor after fork()

After forking, the kernel_id field in the phtread_internal_t returned by pthread_self()
is incorrect --- it's the tid from the parent, not the new tid of the
child.

The root cause is that: currently the kernel_id is set by
_init_thread(), which is called in 2 cases:
(1) called by __libc_init_common(). That happens when the execv( ) is
called after fork( ). But when the zygote tries to fork the android
application, the child application doesn't call execv( ), instread, it
tries to call the Java main method directly.
(2) called by pthread_create(). That happens when a new thread is
created.

For the lead thread which is the thread created by fork(), it should
call execv() but it doesn't, as described in (1) above. So its kernel_id
will inherit the parent's kernel_id.

Fixed it in this patch.

Change-Id: I63513e82af40ec5fe51fbb69456b1843e4bc0fc7
Signed-off-by: Chenyang Du <chenyang.du@intel.com>
Signed-off-by: Jack Ren <jack.ren@intel.com>
Signed-off-by: Bruce Beare <bruce.j.beare@intel.com>
12 years agoUse new binary code format
Robert Greenwalt [Fri, 9 Mar 2012 19:34:27 +0000 (11:34 -0800)]
Use new binary code format

3-digits + null.  Old was 3-digits + space + null.

Change-Id: If5fdf9ced073f432ace3a76858025ad651c74e3d

12 years agoRe-throw signals
Andy McFadden [Thu, 8 Mar 2012 19:14:37 +0000 (11:14 -0800)]
Re-throw signals

If we catch a fatal signal that won't automatically re-throw when
the thread resumes, re-throw it manually.  (Common examples are
SIGPIPE and the SIGFPE from integer division by zero.)

Change-Id: I329e6d4db907047c555957b42cbd09c50fc808e7

12 years agoUpdate bionic kernel headers using update_all.py
Ben Cheng [Thu, 8 Mar 2012 05:13:49 +0000 (21:13 -0800)]
Update bionic kernel headers using update_all.py

Change-Id: I9c377436e9bf158e7236b3b7dcebf3e79fa961de

12 years agoMerge "Prevent potential stall on dns proxy operations."
Selim Gurun [Thu, 8 Mar 2012 01:05:15 +0000 (17:05 -0800)]
Merge "Prevent potential stall on dns proxy operations."

12 years agoMerge "Revert "Update bionic kernel headers using update_all.py""
Ben Cheng [Thu, 8 Mar 2012 00:16:10 +0000 (16:16 -0800)]
Merge "Revert "Update bionic kernel headers using update_all.py""

12 years agoRevert "Update bionic kernel headers using update_all.py"
Ben Cheng [Thu, 8 Mar 2012 00:14:53 +0000 (16:14 -0800)]
Revert "Update bionic kernel headers using update_all.py"

This reverts commit 94a85f663694e1869acb1c2e8a3c374a6fa3ab86

There is a smoke test failure for Prime but Crespo/Stingray are fine. Will revert the change for now until further investigation is made.

12 years agoPrevent potential stall on dns proxy operations.
Selim Gurun [Mon, 27 Feb 2012 23:58:54 +0000 (15:58 -0800)]
Prevent potential stall on dns proxy operations.

Update wire protocol to return and process error code first.
This will make sure dns proxy operations do not stall when
an internal error happens.
Also fix a compiler warning.
Also fix a potential buffer overflow.
And use correct types (uint32_t) rather than int when reading from network.

Change-Id: I9f99c16d6fd5e9137491a4d1b293a7c78e31b9c3

12 years agoMerge "Update bionic kernel headers using update_all.py"
Ben Cheng [Wed, 7 Mar 2012 21:57:09 +0000 (13:57 -0800)]
Merge "Update bionic kernel headers using update_all.py"

12 years agoMerge "Log the thread id and name for fatal signals."
Marco Nelissen [Wed, 7 Mar 2012 21:09:36 +0000 (13:09 -0800)]
Merge "Log the thread id and name for fatal signals."

12 years agoLog the thread id and name for fatal signals.
Marco Nelissen [Wed, 7 Mar 2012 17:04:18 +0000 (09:04 -0800)]
Log the thread id and name for fatal signals.

This adds the thread id and name to the "Fatal signal" logging,
making it easier to track down where in process it actually crashed.

Change-Id: I17a365042b2f10b161debe98bc2e7070af055dfb

12 years agoUpdate bionic kernel headers using update_all.py
Ben Cheng [Tue, 6 Mar 2012 23:45:52 +0000 (15:45 -0800)]
Update bionic kernel headers using update_all.py

Change-Id: I4da6b23cdbce89445f1ca5d2fadeb23345ce694c

12 years agoMerge "Add relro support"
Nick Kralevich [Tue, 6 Mar 2012 19:31:59 +0000 (11:31 -0800)]
Merge "Add relro support"

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 "Revert "Reference __dso_handle in PIC way""
Kenny Root [Mon, 5 Mar 2012 18:46:01 +0000 (10:46 -0800)]
Merge "Revert "Reference __dso_handle in PIC way""

12 years agoRevert "Reference __dso_handle in PIC way"
Kenny Root [Mon, 5 Mar 2012 18:45:31 +0000 (10:45 -0800)]
Revert "Reference __dso_handle in PIC way"

This reverts commit 93cb30813764b140f0adbaa620dcdbb1cae56dd8

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