OSDN Git Service

android-x86/bionic.git
14 years agoAdd missing SMP barriers to libstdc++
David 'Digit' Turner [Fri, 11 Jun 2010 20:18:41 +0000 (13:18 -0700)]
Add missing SMP barriers to libstdc++

Change-Id: I20a8dcd2e3316ac60237e800c682cacc8e59e187

14 years agolibc: Fix sem_post() implementation to wake up all waiting threads.
David 'Digit' Turner [Mon, 28 Jun 2010 21:10:14 +0000 (14:10 -0700)]
libc: Fix sem_post() implementation to wake up all waiting threads.

This also allows us to optimize the case where we increment an
uncontended semaphore (no need to call futex_wake() then).

Change-Id: Iad48efe8551dc66dc89d3e3f18c001e5a6c1939f

14 years agolibc: add sanity checks to pthread_mutex_destroy()
David 'Digit' Turner [Mon, 28 Jun 2010 21:20:22 +0000 (14:20 -0700)]
libc: add sanity checks to pthread_mutex_destroy()

Change-Id: Iddb2204fa792fa9aca5f19838926dddbb09b74a2

14 years agolibstdc++: use extern "C++" in all our C++ system headers.
David 'Digit' Turner [Fri, 25 Jun 2010 23:53:37 +0000 (16:53 -0700)]
libstdc++: use extern "C++" in all our C++ system headers.

This is needed to build an independent toolchain with g++ that doesn't think
that all these headers are in C.

Change-Id: Ie9a8ccfcab7780d6a4e5722777d61c2b1b312001

14 years agoMerge "Add clean headers for 7x30 video codec." into gingerbread
Nick Pelly [Thu, 24 Jun 2010 00:56:38 +0000 (17:56 -0700)]
Merge "Add clean headers for 7x30 video codec." into gingerbread

14 years agoAdd clean headers for 7x30 video codec.
Nick Pelly [Wed, 23 Jun 2010 23:17:58 +0000 (16:17 -0700)]
Add clean headers for 7x30 video codec.

Change-Id: Id4faa5bacb03cc42377527e05c53c6392c776e7d

14 years agoRemove compiler warnings when building Bionic.
David 'Digit' Turner [Wed, 16 Jun 2010 23:36:41 +0000 (16:36 -0700)]
Remove compiler warnings when building Bionic.

Also add missing declarations to misc. functions.
Fix clearerr() implementation (previous was broken).
Handle feature test macros like _POSIX_C_SOURCE properly.

Change-Id: Icdc973a6b9d550a166fc2545f727ea837fe800c4

14 years agoAllow static C++ destructors to be properly called on dlclose().
David 'Digit' Turner [Fri, 18 Jun 2010 21:47:22 +0000 (14:47 -0700)]
Allow static C++ destructors to be properly called on dlclose().

With this patch, _and_ an upcoming build/ patch, the destruction
of static C++ objects contained in shared libraries will happen
properly when dlclose() is called.

Note that this change introduces crtbegin_so.S and crtend_so.S which
are currently ignored by the build system.

+ move definition of __dso_handle to the right place
  (before that, all shared libraries used the __dso_handle
   global variable from the C library).

  Note that we keep a 'weak' __dso_handle in aeabi.c to avoid
  breaking the build until the next patch to build/core/combo/
  appears. We will be able to remove that later.

+ move bionic/aeabi.c to arch-arm/bionic/ (its proper location)

Change-Id: Ie771aa204e3acbdf02fd30ebd4150373a1398f39
NOTE: The NDK will need to be modified to enable this feature in
      the shared libraries that are generated through it.

14 years agoMerge "wchar.h: improve wchar_t support in Bionic" into kraken
David 'Digit' Turner [Tue, 15 Jun 2010 14:05:21 +0000 (07:05 -0700)]
Merge "wchar.h: improve wchar_t support in Bionic" into kraken

14 years agowchar.h: improve wchar_t support in Bionic
David 'Digit' Turner [Tue, 15 Jun 2010 00:18:35 +0000 (17:18 -0700)]
wchar.h: improve wchar_t support in Bionic

Change-Id: Iffd41046fd0933c66542abf7627a1569522dfcb2

14 years agoMerge "linker: remove libcutils dependency by re-implementing simpler socket_local_cl...
David 'Digit' Turner [Tue, 15 Jun 2010 13:54:45 +0000 (06:54 -0700)]
Merge "linker: remove libcutils dependency by re-implementing simpler socket_local_client." into kraken

14 years agolibc: add missing truncate() declaration
David 'Digit' Turner [Fri, 11 Jun 2010 21:37:34 +0000 (14:37 -0700)]
libc: add missing truncate() declaration

Change-Id: Icb3601bbc9365b75b05ff443a39192f9cd3cbfb7

14 years agolibc: Add missing <termio.h> header
David 'Digit' Turner [Fri, 11 Jun 2010 20:30:25 +0000 (13:30 -0700)]
libc: Add missing <termio.h> header

Change-Id: Id4e020ed330b3eabf09324f9b6d44d3a0f336d87

14 years agolibc: remove cutils dependencies
David 'Digit' Turner [Fri, 11 Jun 2010 06:34:24 +0000 (23:34 -0700)]
libc: remove cutils dependencies

We simply copy the stuff we need from cutils headers.

A future patch will change cutils to include the private <bionic_atomic_inline.h>

Change-Id: Ib6fd9a03bc9e337ce867bd606dc94c2b4438480a

14 years agolinker: remove libcutils dependency by re-implementing simpler socket_local_client.
David 'Digit' Turner [Fri, 11 Jun 2010 01:29:33 +0000 (18:29 -0700)]
linker: remove libcutils dependency by re-implementing simpler socket_local_client.

Change-Id: I87f29fd59454d713b9ddfb13e6cf114822f52efd

14 years agosysconf(): Fix line parser for /proc files.
David 'Digit' Turner [Thu, 10 Jun 2010 01:15:57 +0000 (18:15 -0700)]
sysconf(): Fix line parser for /proc files.

Change-Id: I2678010ee95933de19c8a8e3b2fe65ceb9b86400

14 years agoAdd missing termios defns to bring on par with ARM - DO NOT MERGE
Bruce Beare [Fri, 4 Jun 2010 15:14:44 +0000 (08:14 -0700)]
Add missing termios defns to bring on par with ARM - DO NOT MERGE

Change-Id: I6e16e7ab117b6df07ef24f092de1511fe1e9e7b1

14 years agoDO NOT MERGE - add sincos.c to libm compilation
David 'Digit' Turner [Wed, 9 Jun 2010 22:49:35 +0000 (15:49 -0700)]
DO NOT MERGE - add sincos.c to libm compilation

For some reason, a previous backport from master didn't get this.

Change-Id: I59eb96ad9de495a659808fdfb557033476c3d123

14 years agoUpdate libthread_db for gdb-7.0 - DO NOT MERGE
David 'Digit' Turner [Fri, 19 Mar 2010 23:01:28 +0000 (16:01 -0700)]
Update libthread_db for gdb-7.0 - DO NOT MERGE

Change-Id: Id02b29314109ad1bf6de3388f856af6da3f90d33

14 years agoAdd sincosl() function to bionic. So that sincos optimization can - DO NOT MERGE
David 'Digit' Turner [Wed, 9 Jun 2010 21:35:29 +0000 (14:35 -0700)]
Add sincosl() function to bionic. So that sincos optimization can - DO NOT MERGE
be enabled.

Change-Id: I672cb319689aa4fb3f1f7cd868dda76842bebae9

14 years agoRemove a gcc-4.5 compilation warning:
Jing Yu [Fri, 21 May 2010 03:25:48 +0000 (20:25 -0700)]
Remove a gcc-4.5 compilation warning:
bionic/libc/include/../include/stdlib.h: In function 'int grantpt(int)':
bionic/libc/include/../include/stdlib.h:138:23: warning: parameter '__fd' set but not used [-Wunused-but-set-parameter]

By adding __attribute((unused)) to __fd, the warning is gone, and this
attribute is compatible with gcc-4.4.0, gcc-4.3.1 gcc-4.2.1.
There is no any side effect.

Change-Id: I385f0f4da1013ffd1499e391eac9123aafe1f7a5

14 years agoFix setjmp()/longjmp() to save FP registers on ARMv7. - DO NOT MERGE
David 'Digit' Turner [Thu, 25 Mar 2010 16:54:33 +0000 (09:54 -0700)]
Fix setjmp()/longjmp() to save FP registers on ARMv7. - DO NOT MERGE

Change-Id: I3a0c2c05e295ac05ed51a531dabda668be204ca0

14 years agoAdd missing sysinfo() implementation (already declared in <sys/sysinfo.h>) - DO NOT...
David 'Digit' Turner [Thu, 20 May 2010 17:55:45 +0000 (10:55 -0700)]
Add missing sysinfo() implementation (already declared in <sys/sysinfo.h>) - DO NOT MERGE

Change-Id: Iac4eb5911ffe4a7ab72b84df44e907685ac816af

14 years agoUse private futexes for semaphores, unless they are initialized with pshared != 0.
David 'Digit' Turner [Thu, 3 Jun 2010 01:12:12 +0000 (18:12 -0700)]
Use private futexes for semaphores, unless they are initialized with pshared != 0.

Change-Id: I534e36a7171cd37037ae03b910ba71ea6968286d
Note: previously, sem_init() would return an error if pshared != 0.

14 years agoresolved conflicts for merge of 7b6e6fa5 to kraken
Jean-Baptiste Queru [Thu, 3 Jun 2010 22:05:04 +0000 (15:05 -0700)]
resolved conflicts for merge of 7b6e6fa5 to kraken

Change-Id: I2b9b80a7fa32c56be2b85ff8be0d6e7ac1848afe

14 years agomerge from open-source master
The Android Open Source Project [Thu, 3 Jun 2010 21:39:20 +0000 (14:39 -0700)]
merge from open-source master

Change-Id: Ib7fc9c6f79f9b13e2175da137005d8968ea85eaf

14 years agoMerge "pthread: introduce pthread_setname_np() as a mean to give names to threads"
David Turner [Thu, 3 Jun 2010 20:11:52 +0000 (13:11 -0700)]
Merge "pthread: introduce pthread_setname_np() as a mean to give names to threads"

14 years agoAtomic/SMP update, part 3.
Andy McFadden [Fri, 28 May 2010 20:31:45 +0000 (13:31 -0700)]
Atomic/SMP update, part 3.

Update ARM atomic ops to use LDREX/STREX.  Stripped out #if 0 chunk.

Insert explicit memory barriers in pthread and semaphore code.

For bug 2721865.

Change-Id: I0f153b797753a655702d8be41679273d1d5d6ae7

14 years agoAtomic/SMP update.
Andy McFadden [Thu, 20 May 2010 05:38:07 +0000 (22:38 -0700)]
Atomic/SMP update.

Added an underscore to _ARM_HAVE_LDREX_STREX to make it match the others.

Added __ARM_HAVE_DMB and __ARM_HAVE_LDREXD when appropriate.

Fixed some typos.

Change-Id: I2f55febcff4aeb7de572a514fb2cd2f820dca27c

14 years agopthread: introduce pthread_setname_np() as a mean to give names to threads
André Goddard Rosa [Thu, 20 May 2010 02:17:16 +0000 (23:17 -0300)]
pthread: introduce pthread_setname_np() as a mean to give names to threads

... so that each cloned process at the kernel level can be named
independently. Tools like 'top' can display the CPU/memory statistics
for each process's thread if "Show Threads" mode is on.

With this function in place, we can convert dalvik/Thread.c setThreadName()
function over this function. This feature ought to be provided by the
underlying C library and not coded directly in Dalvik.

Change-Id: Ifa997665dbaa114e0b126f8c667708be9a4137fd
Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
14 years agoAdd pthread_rwlock_t implementation to the C library (DO NOT MERGE)
David 'Digit' Turner [Tue, 11 May 2010 23:39:22 +0000 (16:39 -0700)]
Add pthread_rwlock_t implementation to the C library (DO NOT MERGE)

Change-Id: I756d8c26afc37cd7b71117ddbaa02a2cb40fdecb

14 years agomerge from open-source master
The Android Open Source Project [Mon, 17 May 2010 17:22:35 +0000 (10:22 -0700)]
merge from open-source master

Change-Id: I5804d8850f2d4fb7b5d5c53d51e153f7ced9646e

14 years agoimprove readability of stdio: fix indentation and remove trailing spaces
André Goddard Rosa [Sun, 31 Jan 2010 00:46:25 +0000 (22:46 -0200)]
improve readability of stdio: fix indentation and remove trailing spaces

Change-Id: Ic51e58a7c75d20bf770dc0ebd7f97a338fbe0036
Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
14 years agomerge from open-source master
The Android Open Source Project [Fri, 14 May 2010 20:30:10 +0000 (13:30 -0700)]
merge from open-source master

Change-Id: I9c926a3cd680a96ece026cdec71c6e0fb0b7ad7c

14 years agoMerge "Add declaration for sys_signame[] forgotten in change 12489"
David Turner [Fri, 14 May 2010 19:12:24 +0000 (12:12 -0700)]
Merge "Add declaration for sys_signame[] forgotten in change 12489"

14 years agomerge from open-source master
The Android Open Source Project [Thu, 13 May 2010 21:31:02 +0000 (14:31 -0700)]
merge from open-source master

Change-Id: I2be62bce462ee53fe9519f433523bd7a44a73d40

14 years agoSet SA_RESTORER in sigaction()
Matt Fischer [Mon, 11 Jan 2010 02:02:06 +0000 (10:02 +0800)]
Set SA_RESTORER in sigaction()

GDB looks for specific opcode sequences when trying to recognize a stack
frame as a signal trampoline.  The sequences it looks for happen to be those
created when SA_RESTORER is set, since glibc always sets a restorer.  This
patch does the same here, so that the trampolines can be correctly identified.

Change-Id: I0ac574a68818cb24d939c3527f3aaeb04b853d04

14 years agofix build
Jean-Baptiste Queru [Wed, 12 May 2010 17:05:59 +0000 (10:05 -0700)]
fix build

Change-Id: I243c98e20a250e0d40d481f16af481ff070219fd

14 years agomerge from open-source master
The Android Open Source Project [Wed, 12 May 2010 16:22:50 +0000 (09:22 -0700)]
merge from open-source master

Change-Id: Iecfd2bd3069f70bbe508042cc249fcf7ff24800d

14 years agoMerge "Sometimes the compiler is very right! Found bug in bessel routines for float."
Jean-Baptiste Queru [Tue, 11 May 2010 17:43:56 +0000 (10:43 -0700)]
Merge "Sometimes the compiler is very right! Found bug in bessel routines for float."

14 years agoMerge "Reduce compiler anxiety."
David Turner [Tue, 11 May 2010 17:20:15 +0000 (10:20 -0700)]
Merge "Reduce compiler anxiety."

14 years agoMerge "Added support for LD_PRELOAD"
David Turner [Tue, 11 May 2010 17:17:00 +0000 (10:17 -0700)]
Merge "Added support for LD_PRELOAD"

14 years agoMerge "stdio: simplify __fremovelock()"
David Turner [Mon, 10 May 2010 23:04:02 +0000 (16:04 -0700)]
Merge "stdio: simplify __fremovelock()"

14 years agoMerge "Reversed order of const and static to hush warning from compiler."
Jean-Baptiste Queru [Mon, 10 May 2010 23:00:22 +0000 (16:00 -0700)]
Merge "Reversed order of const and static to hush warning from compiler."

14 years agostdio: simplify __fremovelock()
André Goddard Rosa [Sun, 31 Jan 2010 00:45:07 +0000 (22:45 -0200)]
stdio: simplify __fremovelock()

... by removing extraneous NULL check, as free() already does it.

Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
Change-Id: I0445f35c7ad0a049a0e4aee1fbe002ed2f13b94b

14 years agoAdded support for LD_PRELOAD
Matt Fischer [Thu, 31 Dec 2009 18:09:10 +0000 (12:09 -0600)]
Added support for LD_PRELOAD

The LD_PRELOAD environment variable allows the user to specify a list of
libraries which should be unconditionally loaded before any others.  This
makes possible some useful tricks, such as library interposers.

Change-Id: I433d775ab08ef63a5fbe7b21f87a5642954fc32f

14 years agoMerge "string: tidy up strndup()"
David Turner [Mon, 10 May 2010 21:52:02 +0000 (14:52 -0700)]
Merge "string: tidy up strndup()"

14 years agoSometimes the compiler is very right! Found bug in bessel routines for float.
Scott Turner [Sat, 16 Jan 2010 16:30:44 +0000 (11:30 -0500)]
Sometimes the compiler is very right! Found bug in bessel routines for float.

Original compiler error:

target arm C: libm <= bionic/libm/src/e_j0f.c
bionic/libm/src/e_j0f.c: In function 'j0f':
bionic/libm/src/e_j0f.c:66: warning: comparison between signed and unsigned integer expressions
bionic/libm/src/e_j0f.c: In function 'y0f':
bionic/libm/src/e_j0f.c:140: warning: comparison between signed and unsigned integer expressions
target arm C: libm <= bionic/libm/src/e_j1.c

It's subtle but ix is masked with 0x7f000000 so it can never ever have a value
greater than 0x80000000. So I switched to using the unmasked hx and added a
cast as a reward to the compiler for being right.

I checked the original routines that e_j0f.c was ported from (in e_j0.c) and
the double's don't use 0x80000000 so this issue didn't exist there.

Let that be a warning to those that just slap on casts to shut up the compiler,
sometimes it's sniffed out a bug for you. :-)

Similar fixes in the other functions.

Change-Id: I7a776e5d4721fc3a9e3bd89179b67e9af3a2ebfa

14 years agomerge from open-source master
The Android Open Source Project [Mon, 3 May 2010 22:33:05 +0000 (15:33 -0700)]
merge from open-source master

Change-Id: If02d33af51017dbd85e91c79ac2e848eda6cf253

14 years agoMerge "Fix log channel initialization at bionic/logd_write.c."
David Turner [Sat, 1 May 2010 22:31:39 +0000 (15:31 -0700)]
Merge "Fix log channel initialization at bionic/logd_write.c."

14 years agoMerge "added headers for SuperH which automatically generate by update_all.py"
Jean-Baptiste Queru [Thu, 29 Apr 2010 15:01:50 +0000 (08:01 -0700)]
Merge "added headers for SuperH which automatically generate by update_all.py"

14 years agolinker: fix the undefined weak symbols issue
Yi Sun [Wed, 2 Dec 2009 08:08:14 +0000 (00:08 -0800)]
linker: fix the undefined weak symbols issue

I'm not sure if this is a correct fix or not.
Also need to find out why 1.6 does not have this issue.

Change-Id: If46c844834bda1e2cbf084a1a45a1832119b3ae3

14 years agobionic: add missing NULL check from memory allocation on record_backtrace()
André Goddard Rosa [Fri, 5 Feb 2010 18:03:09 +0000 (16:03 -0200)]
bionic: add missing NULL check from memory allocation on record_backtrace()

Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
Change-Id: I739c63c5a7344fff1775580044dc647edf246ebf

14 years agostdio: simplify vasprintf()
André Goddard Rosa [Sun, 31 Jan 2010 00:40:45 +0000 (22:40 -0200)]
stdio: simplify vasprintf()

... by removing unneeded NULL check, as free() already does it.
By the way, we don't need to set a stack variable back to NULL.

Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
Change-Id: Id90eb8f042b5c922c5ff139b11ff8366fb404566

14 years agostdio: simplify asprintf()
André Goddard Rosa [Sun, 31 Jan 2010 00:39:00 +0000 (22:39 -0200)]
stdio: simplify asprintf()

... by removing unneeded NULL check, as free() already does it.
By the way, we don't need to set a stack variable back to NULL.

Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
Change-Id: Id1f72e872f73366dddcea4abc75885a3d9a318c6

14 years agoimprove readability of stdlib: fix indentation and remove trailing spaces
André Goddard Rosa [Fri, 5 Feb 2010 20:32:52 +0000 (18:32 -0200)]
improve readability of stdlib: fix indentation and remove trailing spaces

Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
Change-Id: I7dd90a0816b5376ffc1de4499d56935e0bd574a1

14 years agomerge from open-source master
The Android Open Source Project [Wed, 21 Apr 2010 16:10:08 +0000 (09:10 -0700)]
merge from open-source master

Change-Id: I518bb4ae9d7269957365561d4d609f22cde519db

14 years agomerge from open-source master
The Android Open Source Project [Thu, 8 Apr 2010 18:11:53 +0000 (11:11 -0700)]
merge from open-source master

Change-Id: If77618a329fc7b497c44c2585e644bc50e7e1406

14 years agoFixed support for RTLD_NEXT in dlsym()
Matt Fischer [Thu, 31 Dec 2009 18:17:56 +0000 (12:17 -0600)]
Fixed support for RTLD_NEXT in dlsym()

The previous implementation of this flag was broken--it behaved identically
to RTLD_DEFAULT.  This adds a proper implementation, which examines the address
of the calling function, and uses it to determine which library to use to begin
the symbol search process.

Change-Id: I2ad2b46363f68932af63a3828a22f9c7987eea67

14 years agoam 91638721: kernel_headers: Update rtnetlink/pkt_sched headers for 2.6.32
San Mehat [Wed, 7 Apr 2010 05:02:48 +0000 (22:02 -0700)]
am 91638721: kernel_headers: Update rtnetlink/pkt_sched headers for 2.6.32

Merge commit '9163872132a3e92f986b1d684badb1dd4482ad8e' into froyo-plus-aosp

* commit '9163872132a3e92f986b1d684badb1dd4482ad8e':
  kernel_headers: Update rtnetlink/pkt_sched headers for 2.6.32

14 years agokernel_headers: Update rtnetlink/pkt_sched headers for 2.6.32
San Mehat [Wed, 7 Apr 2010 01:49:49 +0000 (18:49 -0700)]
kernel_headers: Update rtnetlink/pkt_sched headers for 2.6.32

For: For http://b/issue?id=2576057

Change-Id: I553ca14974aaec4434e384979e0bb7007dcf6033
Signed-off-by: San Mehat <san@google.com>
14 years agoAdd declaration for sys_signame[] forgotten in change 12489
Thorsten Glaser [Tue, 1 Dec 2009 14:12:01 +0000 (15:12 +0100)]
Add declaration for sys_signame[] forgotten in change 12489

14 years agomerge from open-source master
The Android Open Source Project [Wed, 31 Mar 2010 21:24:25 +0000 (14:24 -0700)]
merge from open-source master

Change-Id: I950e9aca87cbb0c35099b1d53cff6378bd0f26f4

14 years agomerge from open-source master
The Android Open Source Project [Wed, 31 Mar 2010 21:19:51 +0000 (14:19 -0700)]
merge from open-source master

Change-Id: I483fedf77d978b1c6e52d73eebc14f011bb9f809

14 years agomerge from open-source master
The Android Open Source Project [Wed, 31 Mar 2010 21:15:30 +0000 (14:15 -0700)]
merge from open-source master

Change-Id: I076e0df8656fdf58c229cc9a168cd6d8e16b6d8e

14 years agobionic: fix memory leak in get_malloc_leak_info() error path
André Goddard Rosa [Fri, 5 Feb 2010 18:01:05 +0000 (16:01 -0200)]
bionic: fix memory leak in get_malloc_leak_info() error path

Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
14 years agoMerge "bionic: clear only the part of the buffer which is not overwritten afterward"
David Turner [Tue, 30 Mar 2010 21:52:14 +0000 (14:52 -0700)]
Merge "bionic: clear only the part of the buffer which is not overwritten afterward"

14 years agoMerge "linker: fix the undefined weak symbols issue"
David Turner [Mon, 29 Mar 2010 22:49:42 +0000 (15:49 -0700)]
Merge "linker: fix the undefined weak symbols issue"

14 years agolinker: fix the undefined weak symbols issue
Min-su, Kim [Tue, 19 Jan 2010 01:05:33 +0000 (10:05 +0900)]
linker: fix the undefined weak symbols issue

14 years agoMerge changes Ibdc6e3c8,I9bcb91a2
David Turner [Mon, 29 Mar 2010 22:05:47 +0000 (15:05 -0700)]
Merge changes Ibdc6e3c8,I9bcb91a2

* changes:
  Correct generic memset implementation
  Generic memcpy should define MEMCOPY before including bcopy.c

14 years agoMerge "Atom optimized string and memory routines"
David Turner [Mon, 29 Mar 2010 21:40:05 +0000 (14:40 -0700)]
Merge "Atom optimized string and memory routines"

14 years agomerge from open-source master
The Android Open Source Project [Mon, 29 Mar 2010 18:01:59 +0000 (11:01 -0700)]
merge from open-source master

Change-Id: I96d2cd063f084fd17116bf7ee08fa7109a3c1ceb

14 years agobionic: clear only the part of the buffer which is not overwritten afterward
André Goddard Rosa [Mon, 29 Mar 2010 00:32:36 +0000 (21:32 -0300)]
bionic: clear only the part of the buffer which is not overwritten afterward

Change-Id: I5ddd93f0557e5a7401460dc9fc8a55b330a79c3a
Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
14 years agostdlib: optimize bsearch()
André Goddard Rosa [Mon, 29 Mar 2010 00:18:56 +0000 (21:18 -0300)]
stdlib: optimize bsearch()

... by checking most probable condition first (elements do differ)

Change-Id: I424eab9c32a6d9eb82b686ca04025ec8c9097035
Signed-off-by: André Goddard Rosa <andre.goddard@gmail.com>
14 years agoAtom optimized string and memory routines
Bruce Beare [Thu, 4 Mar 2010 19:03:37 +0000 (11:03 -0800)]
Atom optimized string and memory routines

Change-Id: I27b68bb28551c75c9ac84bb9730e2cd8254d8991

14 years agoAndroid hack for size_t
Bruce Beare [Wed, 10 Mar 2010 23:52:42 +0000 (15:52 -0800)]
Android hack for size_t

Change-Id: I3c967fca60f542459dc17be84da47b3b6a26242b

14 years agoFix comparison of IPv6 prefixes
Kenny Root [Thu, 25 Mar 2010 01:06:20 +0000 (18:06 -0700)]
Fix comparison of IPv6 prefixes

Typo assigned prefixlen1 twice instead of to the two different variables
for comparison and difference computation.

Change-Id: I6631b8269ca6aae264c8d7d414127b756838df96

14 years agolibc: kernel: update msm_kgsl.h
Dima Zavin [Tue, 9 Mar 2010 01:34:52 +0000 (17:34 -0800)]
libc: kernel: update msm_kgsl.h

Change-Id: I8cd5a186071892bdc2b2b29061dd6c1fd927c0f5
Signed-off-by: Dima Zavin <dima@android.com>
14 years agoFix typo that broke recursive mutexes implementation.
David 'Digit' Turner [Tue, 23 Mar 2010 12:30:55 +0000 (05:30 -0700)]
Fix typo that broke recursive mutexes implementation.

Change-Id: I832901604b487c6a50304c311b5ba135e153530d

14 years agopthread: Use private futexes by default in condition variables
David 'Digit' Turner [Sat, 20 Mar 2010 00:59:23 +0000 (17:59 -0700)]
pthread: Use private futexes by default in condition variables

Now that the system properly uses shared condvars when needed, we
can enable the use of private futexes for them too.

Change-Id: Icf8351fc0a2309f764cba45c65bc3af047720cdf

14 years agomerge from open-source master
The Android Open Source Project [Mon, 22 Mar 2010 22:55:09 +0000 (15:55 -0700)]
merge from open-source master

Change-Id: I70266ee8c520b216773f267e46c8273d2334c31d

14 years agoMerge "Fix strtod security bug."
David 'Digit' Turner [Mon, 22 Mar 2010 22:45:32 +0000 (15:45 -0700)]
Merge "Fix strtod security bug."

14 years agoUse private futexes for pthread_mutex_t.
David 'Digit' Turner [Fri, 19 Mar 2010 00:13:41 +0000 (17:13 -0700)]
Use private futexes for pthread_mutex_t.

This does not change the implementation of conditional variables
since we're waiting for other system components to properly use
pthread_condattr_init/setpshared before that.

Also remove an obsolete x86 source file.

Change-Id: Ia3e3fbac35b87a534fb04d4381c3c66b975bc8f7

14 years agoMerge "bionic: on pthread_join(), avoid extra check in case we find the thread"
David Turner [Thu, 18 Mar 2010 23:42:49 +0000 (16:42 -0700)]
Merge "bionic: on pthread_join(), avoid extra check in case we find the thread"

14 years agoMerge "bionic: ftell() returns a long, not an int"
David Turner [Thu, 18 Mar 2010 23:35:42 +0000 (16:35 -0700)]
Merge "bionic: ftell() returns a long, not an int"

14 years agoAdd pthread_condattr_init/destroy/setpshared/getpshared
David 'Digit' Turner [Thu, 18 Mar 2010 21:07:42 +0000 (14:07 -0700)]
Add pthread_condattr_init/destroy/setpshared/getpshared

Note that this does not change the implementation of conditional variables
which still use shared futexes, independent on the flags being selected.

This will be fixed in a later patch, once our system is modified to use
pthread_condattr_setpshared(attr, PTHREAD_PROCESS_SHARED) properly.

Change-Id: I935de50964cd41f97a13dbfd6626d3407b0406c3

14 years agoAdded support for dladdr()
Matt Fischer [Thu, 31 Dec 2009 18:17:40 +0000 (12:17 -0600)]
Added support for dladdr()

dladdr() is a GNU extension function, which allows the caller to retrieve
symbol information for a specified memory address.  It is useful for things
like generating backtrace information at runtime.

Change-Id: I3a1def1a6c9c666d93e1e97b7d260dfa5b9b79a9

14 years agoMerge "x86 syscall system call implementation"
David Turner [Wed, 17 Mar 2010 21:07:27 +0000 (14:07 -0700)]
Merge "x86 syscall system call implementation"

14 years agoMerge "Fix pread()/pwrite() stubs"
David Turner [Wed, 17 Mar 2010 21:00:20 +0000 (14:00 -0700)]
Merge "Fix pread()/pwrite() stubs"

14 years agoFix indentation in pthread mutex implementation.
David 'Digit' Turner [Wed, 17 Mar 2010 18:25:46 +0000 (11:25 -0700)]
Fix indentation in pthread mutex implementation.

This is preliminary work to simplify later changes to support
private futexes.

Change-Id: I06750936a93747a5e3f5a10228cbdc29e39c528c

14 years agoMerge "bionic: remove unneeded variable from chk_realloc()"
David Turner [Wed, 17 Mar 2010 00:26:44 +0000 (17:26 -0700)]
Merge "bionic: remove unneeded variable from chk_realloc()"

14 years agoMerge "bionic: equalize the <unknown> program name between ssp.c and libc_init_common.c"
David Turner [Wed, 17 Mar 2010 00:25:53 +0000 (17:25 -0700)]
Merge "bionic: equalize the <unknown> program name between ssp.c and libc_init_common.c"

14 years agoMerge "improve readability of string: fix indentation and remove trailing spaces"
David Turner [Wed, 17 Mar 2010 00:25:04 +0000 (17:25 -0700)]
Merge "improve readability of string: fix indentation and remove trailing spaces"

14 years agoMerge "optimize delete/delete[] operators by removing unneeded branch"
David Turner [Wed, 17 Mar 2010 00:21:52 +0000 (17:21 -0700)]
Merge "optimize delete/delete[] operators by removing unneeded branch"

14 years agoRevert "bionic: pthread: use private futexes by default for mutexes and condvars"
Fabrice Di Meglio [Thu, 11 Mar 2010 22:47:47 +0000 (14:47 -0800)]
Revert "bionic: pthread: use private futexes by default for mutexes and condvars"

This reverts commit ba9c6f0989ae94778ba2b9f597adc827c9dc81e8.

14 years agobionic: pthread: use private futexes by default for mutexes and condvars
David 'Digit' Turner [Thu, 11 Mar 2010 00:44:08 +0000 (16:44 -0800)]
bionic: pthread: use private futexes by default for mutexes and condvars

Private futexes are a recent kernel addition: faster futexes that cannot be
shared between processes. This patch uses them by default, unless the PROCESS_SHARED
attribute flag is used when creating a mutex and/or conditional variable.

Also introduces pthread_condattr_init/destroy/setpshared/getpshared.

Change-Id: I3a0e2116f467072b046524cb5babc00e41057a53

14 years agoMerge "Only use NEON memcpy if __ARM_NEON__ is defined"
Colin Cross [Thu, 11 Mar 2010 02:14:25 +0000 (18:14 -0800)]
Merge "Only use NEON memcpy if __ARM_NEON__ is defined"

14 years agoOnly use NEON memcpy if __ARM_NEON__ is defined
Colin Cross [Wed, 10 Mar 2010 00:23:51 +0000 (16:23 -0800)]
Only use NEON memcpy if __ARM_NEON__ is defined

Change-Id: I32e6b9385d46efeec15dee8e395a82eef24ba3ea

14 years agoFix strtod security bug.
David 'Digit' Turner [Thu, 4 Mar 2010 19:51:42 +0000 (11:51 -0800)]
Fix strtod security bug.

To avoid introducing NULL checks everytime a Bigint computation
is performed, introduce a special value (BIGINT_INVALID) and only
check for it when absolutely needed (which means when the code
needs to access the Bigint's internal structure fields).

Change-Id: Ie3954523b0985b6a8cb62340802d8dcf63cbf16f

14 years agoMerge "Fix spurious DNS lookups in the C library."
David 'Digit' Turner [Tue, 9 Mar 2010 19:13:35 +0000 (11:13 -0800)]
Merge "Fix spurious DNS lookups in the C library."