2113 Commits

Author SHA1 Message Date
Pavel Chupin
e007775f4b Add libdl into libc_malloc_debug_leak build
Otherwise libc_malloc_debug_leak.so is failed to load runtime in x86
case

Change-Id: I8207ce06d1ec17b233f4e4fcfdd2b161673b4fa8
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
2012-09-13 12:03:06 +04:00
Elliott Hughes
f801cf55be resolved conflicts for merge of 47bda0c2 to jb-mr1-dev
Change-Id: Ia1969c79111c006bde709920254a515646c20aa7
2012-09-12 16:08:14 -07:00
Elliott Hughes
86ec05acc9 Update the kernel headers to match external/kernel-headers.
Note that the Linux kernel handed over responsibility for most of the
socket constants to glibc some time ago. Someone had updated our
external/kernel-headers file but not regenerated the bionic headers,
so this change copies the missing stuff from the old bionic <linux/socket.h>
into <sys/socket.h>. This is what glibc does.

I've hacked a few of the other files to #include <sys/socket.h> for
backward compatibility, but even so this requires numerous other
changes to switch people over from direct inclusion of <linux/...> headers.

Change-Id: I0e4af64e631d3cef911a31d90f2f806e058278a0
2012-09-12 12:30:22 -07:00
Elliott Hughes
ccd7ee624a am 90ae787b: am 666d06fe: Merge "Backwards and forwards compatibility for an upcoming <sys/socket.h> change."
* commit '90ae787b30890dc7d0f5d95b67ea5578d53bd61e':
  Backwards and forwards compatibility for an upcoming <sys/socket.h> change.
2012-09-12 11:07:12 -07:00
Elliott Hughes
0d207ba624 Backwards and forwards compatibility for an upcoming <sys/socket.h> change.
Change-Id: Iba58077a1f057a968eb2283ebba259975925ff4c
2012-09-12 10:51:05 -07:00
Elliott Hughes
cc0f225365 am 7f798147: am cc8668f2: Merge "[MIPS] Check error status from pipe system call"
* commit '7f798147980798718ac893229ae20dba9e3a26c7':
  [MIPS] Check error status from pipe system call
2012-09-11 16:47:25 -07:00
KwongYuan Wong
b03bc56b79 [MIPS] Check error status from pipe system call
Change-Id: Iaaea0e826c2678aa7f6fad9d46b16302a4d3b876
2012-09-11 16:38:04 -07:00
Irina Tirdea
e77e1afe24 Add tty defaults to bionic
Add ttydefaults.h bionic. Some userspace programs (e.g. perf) need the
definitions from this file. This header file is copied from NetBSD
(http://netbsd.org/) under the NetBSD Foundation's (TNF) license (“2 clause”
Berkeley-style license).

Change-Id: I9c862415b52b710f25adb1629a699627cd715775
Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
2012-09-11 22:47:31 +03:00
Elliott Hughes
3a936a4980 Add the libcutils localtime_tz and mktime_t extensions to bionic.
Bug: 7012465
Change-Id: Ib66f061e29199ba134545111dc79f9b50c8f4a21
2012-09-11 11:15:53 -07:00
Elliott Hughes
f50b99f471 am e8b4d67a: am 59726bed: Merge "Rename crtstart variables as crtbegin, to match reality."
* commit 'e8b4d67a37e27ffc34086562ad13dcd9316a8249':
  Rename crtstart variables as crtbegin, to match reality.
2012-09-10 12:04:28 -07:00
Elliott Hughes
12949e5d39 Rename crtstart variables as crtbegin, to match reality.
No functional change, but it's confusing that the variable
names don't match the filenames.

Change-Id: I7109f917797be2f056e69fddb92e4a7306281813
2012-09-10 11:16:12 -07:00
Ying Wang
e3738414a6 am f9920563: am 67546bf2: Merge "Generate header dependency makefiles for the crt*.o"
* commit 'f9920563dabc21a5c741ef630e6ca8fe66fbbe5b':
  Generate header dependency makefiles for the crt*.o
2012-09-10 10:07:17 -07:00
Ying Wang
cf464878ef Generate header dependency makefiles for the crt*.o
Bug: 7127743
Change-Id: I606e5f7cd2b513f855a1fefd2b001abd365fc854
2012-09-07 17:13:37 -07:00
Elliott Hughes
b010245490 am 7c7a7f8e: am d10309c3: Merge "Rename __dso_handle_so.c to __dso_handle_so.h"
* commit '7c7a7f8e526518f37eae3ce2a785344316f263e0':
  Rename __dso_handle_so.c to __dso_handle_so.h
2012-09-07 11:09:23 -07:00
Elliott Hughes
b18d4f6361 am 72fcdbe9: am 691ef3c8: Merge "Add mlockall and munlockall for Google TV."
* commit '72fcdbe9025b0405251c17eb391f326e03bf92ef':
  Add mlockall and munlockall for Google TV.
2012-09-07 11:09:23 -07:00
Elliott Hughes
d10309c36b Merge "Rename __dso_handle_so.c to __dso_handle_so.h" 2012-09-07 10:59:20 -07:00
Elliott Hughes
691ef3c80b Merge "Add mlockall and munlockall for Google TV." 2012-09-07 10:51:49 -07:00
Andrew Hsieh
048569be54 Rename __dso_handle_so.c to __dso_handle_so.h
Also chang libc/arch-arm/bionic/crtbegin_so.c to include it
as a header.

Change-Id: Ib91b0b8caf5c8b936425aa8a4fc1a229b2b27929
2012-09-07 12:49:41 +08:00
Ian Rogers
973bf681b7 am 77039d34: am e8f81547: Merge "Fix build warning of initialization but no use."
* commit '77039d34449e369b9425a36eaed38d41b9d20884':
  Fix build warning of initialization but no use.
2012-09-06 11:50:22 -07:00
Ian Rogers
e8f815473b Merge "Fix build warning of initialization but no use." 2012-09-06 11:41:52 -07:00
Elliott Hughes
1ad05db9ce Add mlockall and munlockall for Google TV.
Change-Id: I10e961d701e74aab07211ec7975f61167e387853
2012-09-06 11:24:45 -07:00
Elliott Hughes
de0dc25112 am 41ff8b98: am 6e3b0f2d: Merge "Don\'t corrupt the thread list in static executables."
* commit '41ff8b98044de19d6ea5228452c2d555c4224da7':
  Don't corrupt the thread list in static executables.
2012-09-06 10:44:13 -07:00
Ian Rogers
09f76cdd9b Fix build warning of initialization but no use.
first_run is only used with LOCK_AT_FORK, however, care needs to be
taken with the #if to avoid compiler warnings when LOCK_AT_FORK isn't
being used.

Change-Id: I6bcfac2ab8732c91607f4a1bcd7c0019f29c2eec
2012-09-06 09:59:13 -07:00
Ajay Dudani
183d0a57a2 Update msm_ion.h ioctls so they dont conflict with ion.h
Change-Id: Ib6ffcc147e39b3f9f2eb9a8ed403b74d99bc755f
Signed-off-by: Iliyan Malchev <malchev@google.com>
2012-09-05 21:47:32 -07:00
Ajay Dudani
85811fc7c2 Revert "msm_ion: switch to using legacy_ion.h"
This reverts commit 66edcd9dad6a10622015f6350ea9bc11a358801a.
2012-09-05 21:43:15 -07:00
Ajay Dudani
dc81b44759 Revert "add legacy_ion.h"
This reverts commit 5f1d206de357684365a98c53b505491e18b6694a.
2012-09-05 21:42:10 -07:00
Elliott Hughes
bfeab1bbe7 Don't corrupt the thread list in static executables.
Several previous changes conspired to make a mess of the thread list
in static binaries. This was most obvious when trying to call
pthread_key_delete(3) on the main thread.

Bug: http://code.google.com/p/android/issues/detail?id=36893
Change-Id: I2a2f553114d8fb40533c481252b410c10656da2e
2012-09-05 17:47:37 -07:00
Elliott Hughes
faf361a6ac am 2fc3e1ef: am b2c5bd54: Merge "ARM: warn about atexit() calls from legacy shared libraries"
* commit '2fc3e1efda003d9eb110c3fc08bb32f29c6e8a4b':
  ARM: warn about atexit() calls from legacy shared libraries
2012-09-05 10:32:25 -07:00
Elliott Hughes
b2c5bd543d Merge "ARM: warn about atexit() calls from legacy shared libraries" 2012-09-05 10:18:43 -07:00
Elliott Hughes
ac3e35cd8f am a76f2eca: am 26f2e4a1: Merge "ARM: make CRT_LEGACY_WORKAROUND work as intended"
* commit 'a76f2ecaa203bd8b5cc2ca157f06c0d2de66a52f':
  ARM: make CRT_LEGACY_WORKAROUND work as intended
2012-09-05 10:01:48 -07:00
Elliott Hughes
26f2e4a163 Merge "ARM: make CRT_LEGACY_WORKAROUND work as intended" 2012-09-05 09:43:35 -07:00
Ian Rogers
f71d757f6e am 7310a1c4: am 82978cae: Merge "Avoid malloc lock while calling pthread_atfork."
* commit '7310a1c4326bc875aeea2ce091a4b6558d183b2d':
  Avoid malloc lock while calling pthread_atfork.
2012-09-05 07:52:12 -07:00
Ian Rogers
82978cae4e Merge "Avoid malloc lock while calling pthread_atfork." 2012-09-05 07:41:32 -07:00
Elliott Hughes
ab558163a3 am b9f0a6eb: am be19a367: Merge "termios: add tcdrain"
* commit 'b9f0a6eb75aa8f1eec95fb5718d84cef1d0f61b8':
  termios: add tcdrain
2012-09-04 18:13:50 -07:00
Elliott Hughes
be19a36717 Merge "termios: add tcdrain" 2012-09-04 17:52:40 -07:00
Elliott Hughes
f34c6d7796 am bc374078: am 5ff23471: Merge "Add getsid system call to bionic"
* commit 'bc3740787ac4108c2e0e247bc7ca2ea66329c5ab':
  Add getsid system call to bionic
2012-09-04 16:47:44 -07:00
Elliott Hughes
5ff2347130 Merge "Add getsid system call to bionic" 2012-09-04 16:36:27 -07:00
Elliott Hughes
877ad30fd6 am 507bcabb: am e03ab936: Merge "Add missing MALLOC_FAILURE_ACTION calls to dlmalloc."
* commit '507bcabb3565d20541242ad61f987bc1a6483ba1':
  Add missing MALLOC_FAILURE_ACTION calls to dlmalloc.
2012-09-04 16:00:20 -07:00
Elliott Hughes
63deae5e4f Add missing MALLOC_FAILURE_ACTION calls to dlmalloc.
Without these, sometimes malloc(3) returns NULL without setting errno.

Change-Id: I4708c3f675bf2c878ddcaf012fde7848b255826b
2012-09-04 15:42:23 -07:00
Vitaly Wool
954923858b termios: add tcdrain
Change-Id: I05c0007f7bcc6ef5295c32f86fafbf1ad31e07fa
2012-09-04 14:11:28 +02:00
Irina Tirdea
1ad10a566e Add getsid system call to bionic
Add getsid() system call to bionic for
all architectures. This is needed for various tools
(e.g. perf).

Adding the getsid system call was done in 3 steps:
() add getsid system call (function name and syscall
number) to libc/SYSCALLS.TXT
() generate all necessary headers by calling
libc/tools/gensyscalls.py. This patch is adding
the generated files since the build system
does not call gensyscalls.py.
() add the system call signature to libc/include/unistd.h

Change-Id: Id69a257e13ec02e1a44085a6b217a3f19ab025b1
Signed-off-by: Irina Tirdea <irina.tirdea@intel.com>
2012-09-03 01:38:34 +03:00
Kirill Artamonov
3e2d2936b0 Avoid malloc lock while calling pthread_atfork.
Expecting the memory in a forked child process to be sane wrt threading
is a bad idea. An example of a problem is when the parent process has
the malloc lock and a child process is forked. The malloc lock in the
child will appear locked by a thread that doesn't exist.

This change aims to make bionic more compatible with glibc by reseting
the malloc lock in the child forked process, as well as holding it
during the fork. This is a feature in dlmalloc 2.8.6 called
LOCK_AT_FORK. In general this feature isn't necessary as a forked
process will then exec. Some bad applications rely on being able to use
features like malloc before the exec and having multiple threads running
in the parent program. This isn't a problem with glibc and this patch
makes it not a problem for bionic.

Unfortunately for use in bionic, LOCK_AT_FORK has an issue as internally
it uses pthread_atfork that in bionic uses malloc. This leads to the
LOCK_AT_FORK initialization deadlocking with pthread_atfork's call to
malloc due to the malloc lock. This change moves the pthread_atfork logic
in LOCK_AT_FORK to be called without the malloc lock held.

Change-Id: Id68175a564a6abb936ee4488b44d9479f7311f69
2012-08-31 11:11:40 -07:00
Ian Rogers
b9ad1a1e00 am 6abab301: am 6fe901ef: Merge "Upgrade to dlmalloc 2.8.6."
* commit '6abab301db84af7c98a4873fbf49997078aa19cc':
  Upgrade to dlmalloc 2.8.6.
2012-08-31 08:58:33 -07:00
Ian Rogers
6fe901ef38 Merge "Upgrade to dlmalloc 2.8.6." 2012-08-31 08:42:41 -07:00
Ian Rogers
c6d95add30 Upgrade to dlmalloc 2.8.6.
This fixes a bug and enables the use of MORECORE_CONTIGUOUS.

Change-Id: Ia7c5d32bdc46e99b3ecb92ee94d1f702c4385d5d
2012-08-29 18:18:29 -07:00
Nick Kralevich
fe7d7d4693 am 92133ca4: am 17d9be8a: Merge "disable _FORTIFY_SOURCE under clang"
* commit '92133ca427b9c697d5afb59b74cb2cff50840c8e':
  disable _FORTIFY_SOURCE under clang
2012-08-29 14:06:57 -07:00
Nick Kralevich
17d9be8ad7 Merge "disable _FORTIFY_SOURCE under clang" 2012-08-29 13:54:49 -07:00
Elliott Hughes
8900e2de45 am e5b85f45: am 0d7177c0: Merge "Clean up warnings in the malloc_debug_* files."
* commit 'e5b85f45f9b23b4adbea5a9bb0bc29099880ed69':
  Clean up warnings in the malloc_debug_* files.
2012-08-29 13:19:58 -07:00
Elliott Hughes
0d7177c0d4 Merge "Clean up warnings in the malloc_debug_* files." 2012-08-29 13:08:50 -07:00
Nick Kralevich
829c089f83 disable _FORTIFY_SOURCE under clang
Clang and _FORTIFY_SOURCE are just plain incompatible with
each other.  First of all, clang doesn't understand the
__attribute__((gnu_inline)) header. Second of all,
Clang doesn't have support for __builtin_va_arg_pack()
and __builtin_va_arg_pack_len() (see
http://clang.llvm.org/docs/UsersManual.html#c_unimpl_gcc)

Until we can resolve these issues, don't even try using
_FORTIFY_SOURCE under clang.

Change-Id: I81c2b8073bb3276fa9a4a6b93c427b641038356a
2012-08-29 12:47:41 -07:00