Commit Graph

4944 Commits

Author SHA1 Message Date
Elliott Hughes
4d17c6c39f am f6aa1779: Merge "Revert "Added a bionic systrace class and tracing to pthread_mutex.cpp."" into lmp-dev
* commit 'f6aa17798c5b0015d002b982c3684595b817d2d0':
  Revert "Added a bionic systrace class and tracing to pthread_mutex.cpp."
2014-07-30 16:41:43 +00:00
Christopher Ferris
4cc7dba978 am 4ad5066e: Merge "Use libunwindbacktrace for debug malloc code."
* commit '4ad5066e1de326e5db46df18eeade9a88bc11bec':
  Use libunwindbacktrace for debug malloc code.
2014-07-30 02:23:58 +00:00
Elliott Hughes
eb0642a2b9 am 17886971: Merge "Remove declarations for things that don\'t exist."
* commit '17886971ffc758270bb3da3fecec86fa5b2bb3c3':
  Remove declarations for things that don't exist.
2014-07-30 01:12:55 +00:00
Elliott Hughes
f6aa17798c Merge "Revert "Added a bionic systrace class and tracing to pthread_mutex.cpp."" into lmp-dev 2014-07-29 21:36:00 +00:00
Elliott Hughes
26c1420fbb Revert "Added a bionic systrace class and tracing to pthread_mutex.cpp."
This reverts commit a09fe118b1.

Change-Id: Ia2eb07b57a25dc2ac76fecc0925efb2bed998156
2014-07-29 23:52:29 +00:00
Dan Albert
7149362d33 en_US.UTF-8 is also supported.
Change-Id: Ic35fad3596dc5e24ee8ae35543a274a471f27bb2
(cherry picked from commit 1abb8bd21d)
2014-07-29 14:20:47 -07:00
Dan Albert
d0a80a927f There is no _MIN for unsigned types.
Change-Id: I49c38e51197b750210bdbf28c9cf6db30452a206
(cherry picked from commit ee7f1b5946)
2014-07-29 14:20:37 -07:00
Dan Albert
4e58609587 Fix mbsrtowcs(3)'s handling of len parameter.
The len parameter is a _maximum_ length. The previous code was treating
it as an exact length, causing the following typical call to fail:

    mbsrtowcs(out, &in, sizeof(out), state); // sizeof(out) > strlen(in)

Change-Id: I48e474fd54ea5f122bc168a4d74bfe08704f28cc
(cherry picked from commit 6b55ba54ef)
2014-07-29 14:20:31 -07:00
Dan Albert
1dd1b88bde __libc_fatal should print a newline to stderr.
Change-Id: I088dc880d7488a65beac8cda95f530f3db41f112
(cherry picked from commit 97e31dedf0)
2014-07-29 14:20:15 -07:00
Elliott Hughes
e9c1d67375 am a7dc7600: Merge "Fix linkage of grantpt(3)."
* commit 'a7dc7600fe1be1f3fd61856b407bb7065307e711':
  Fix linkage of grantpt(3).
2014-07-29 17:52:05 +00:00
Elliott Hughes
2ea0a58e01 Fix linkage of grantpt(3).
Also clean up the implementation of all the pty functions, add tests,
and fix the stub implementations of ttyname(3) and ttyname_r(3).

Bug: https://code.google.com/p/android/issues/detail?id=58888

(cherry picked from commit 4916706cfe)

Change-Id: I5cb7a1c17b156456e4c4818e65f256eb8d045424
2014-07-29 10:48:34 -07:00
Elliott Hughes
1b36954017 am 52f8271f: Merge "Added a bionic systrace class and tracing to pthread_mutex.cpp."
* commit '52f8271fa9fd3f84849465f3c978580fbed866c1':
  Added a bionic systrace class and tracing to pthread_mutex.cpp.
2014-07-29 16:47:01 +00:00
Brigid Smith
a09fe118b1 Added a bionic systrace class and tracing to pthread_mutex.cpp.
bionic_systrace.h contains an implementation of tracing that
can be used with systrace.py and its associated viewer.  pthread_mutex
now uses this tracing to track pthread_mutex contention, which can be
enabled by using the "bionic" command line option to systrace.

Bug: 15116468

(cherry picked from commit a406ee6d5f)

Change-Id: Ic98fc303689fe9384974150d0d258c50806a55e4
2014-07-29 09:41:44 -07:00
Elliott Hughes
3164805b2e am 2be1be47: Revert "Add a hack to <stdlib.h> until we can fix libvpx."
* commit '2be1be47aa9b63568fe6ce1e0a4029b37d90764d':
  Revert "Add a hack to <stdlib.h> until we can fix libvpx."
2014-07-28 23:50:42 +00:00
Elliott Hughes
2be1be47aa Revert "Add a hack to <stdlib.h> until we can fix libvpx."
This reverts commit 3fb5097a7e.
libvpx is now fixed.

Bug: 15598056
Change-Id: Icca974e667f92206505f484bd291726eb0150f68
2014-07-28 16:16:38 -07:00
Elliott Hughes
a032277bb4 am 8a2ecf86: Merge "syscall(3)\'s return type should be long."
* commit '8a2ecf868feebaa39caddc6cdf9500b5385651f0':
  syscall(3)'s return type should be long.
2014-07-28 22:47:57 +00:00
Christopher Ferris
4ad5066e1d Merge "Use libunwindbacktrace for debug malloc code." 2014-07-28 22:45:44 +00:00
Christopher Ferris
861c0ef37b Use libunwindbacktrace for debug malloc code.
Create a method of disabling the debug allocation code paths so that
it's possible to use the libunwindbacktrace library without any
modifications.

Use this path to create and destroy the maps for the process. It's not
stricly necessary in the init code since the symbols are not modified
until after the initialize calls.

Also, remove the debug_XXX source files that doesn't need to be in libc.so.

Fix the maps reading code since it was completely broken for 64 bit.

Bug: 16408686

Change-Id: I6b02ef6ce26fdb7a59ad1029e7cbba9accceb704
2014-07-29 18:10:00 -07:00
Elliott Hughes
a7dc7600fe Merge "Fix linkage of grantpt(3)." 2014-07-28 22:45:44 +00:00
Elliott Hughes
78e4f8fed2 syscall(3)'s return type should be long.
This doesn't require us to change any of the syscall implementations
because (a) the LP32 ones have sizeof(int) == sizeof(long) anyway,
which is how we never noticed this bug before and (b) the LP64 ones
all use a 64-bit register for the result (and for the syscall number
too).

Bug: https://code.google.com/p/android/issues/detail?id=73952
Bug: 16568314

(cherry picked from commit 21972b61ec)

Change-Id: Ifbc424be29e5650ec72a24df25dd35f24fdd5b3c
2014-07-28 15:39:24 -07:00
Elliott Hughes
d201486cdb am b1b60c30: Use vsnprintf(3) in syslog(3).
* commit 'b1b60c30bf321c0fc02264b953b5c16c49d34457':
  Use vsnprintf(3) in syslog(3).
2014-07-28 16:47:40 +00:00
Elliott Hughes
b1b60c30bf Use vsnprintf(3) in syslog(3).
It seemed like a clever trick to use the internal log message formatting
code in syslog(3), but on reflection that means you can't (for example)
format floating point numbers. This patch switches us over to using good
old vsnprintf(3), even though that requires us to jump through a few hoops.

There's no obvious way to unit test this, so I wrote a little program and
ran that.

Bug: 14292866
Change-Id: I9c83500ba9cbb209b6f496067a91bf69434eeef5
2014-07-28 09:33:00 -07:00
Elliott Hughes
4916706cfe Fix linkage of grantpt(3).
Also clean up the implementation of all the pty functions, add tests,
and fix the stub implementations of ttyname(3) and ttyname_r(3).

Bug: https://code.google.com/p/android/issues/detail?id=58888
Change-Id: I0fb36438cd1abf8d4e87c29415f03db9ba13c3c2
2014-07-25 19:55:23 -07:00
Elliott Hughes
c1a6a72560 Remove localtime_tz and strftime_tz.
This also brings our copy of strftime.c much closer to upstream, though
we still have several GNU extensions and hacks to deal with Android32's
broken time_t.

Bug: 15765976

(cherry picked from commit 39d903aea9)

Change-Id: Ie278d3e976b7adc77bad5ce795dd4899cfbf3648
2014-07-25 17:28:52 -07:00
Elliott Hughes
e7e5e37ca4 am 1a918d9b: Merge "Remove localtime_tz and strftime_tz."
* commit '1a918d9be83013cdc8e194edf35b5295eba4ab1c':
  Remove localtime_tz and strftime_tz.
2014-07-25 23:26:24 +00:00
Elliott Hughes
708c112054 Start hiding "private/bionic_time.h".
Bug: 15765976

(cherry picked from commit 905e6d58aa)

Change-Id: Ic7435308e8b521886f42ac7bf59531924921ea67
2014-07-25 15:24:57 -07:00
Elliott Hughes
4b4ee2fc1b am 50a9630c: Merge "Start hiding "private/bionic_time.h"."
* commit '50a9630cc26cbc1e38e3ddc589f04fa5cd91697b':
  Start hiding "private/bionic_time.h".
2014-07-25 22:21:42 +00:00
Elliott Hughes
f4c1a36a45 Remove declarations for things that don't exist.
The <grp.h> ones prevent gdb from building out of the box.

Change-Id: I0efbffad2215cfcd75b4d442dfc972444b51d97c
2014-07-29 16:57:47 -07:00
Brigid Smith
a406ee6d5f Added a bionic systrace class and tracing to pthread_mutex.cpp.
bionic_systrace.h contains an implementation of tracing that
can be used with systrace.py and its associated viewer.  pthread_mutex
now uses this tracing to track pthread_mutex contention, which can be
enabled by using the "bionic" command line option to systrace.

Bug: 15116468
Change-Id: I30ed5b377c91ca4c36568a0e647ddf95d4e4a61a
2014-07-28 19:38:08 -07:00
Dan Albert
779fdd7c0d am a4c14fda: Merge "en_US.UTF-8 is also supported."
* commit 'a4c14fda9176678cadb65fb53f503fda6668f8d1':
  en_US.UTF-8 is also supported.
2014-07-25 19:06:44 +00:00
Elliott Hughes
d00b2327c5 am b902641d: Implement twalk(3), add unit tests.
* commit 'b902641d7303d2ea24c10f6d6e7ff49e7ee75611':
  Implement twalk(3), add unit tests.
2014-07-24 23:36:16 +00:00
Elliott Hughes
b902641d73 Implement twalk(3), add unit tests.
I've also added insque(3) and remque(3) (from NetBSD because the OpenBSD
ones are currently broken for non-circular lists).

I've not added the three hash table functions that should be in this header
because they operate on a single global hash table and thus aren't likely
to be useful.

Bug: https://code.google.com/p/android/issues/detail?id=73719

(cherry picked from commit 3e424d0a24)

Change-Id: I5882a6b48c80fea8ac6b9c27e7b9de10b202b4ff
2014-07-24 15:14:06 -07:00
Elliott Hughes
21972b61ec syscall(3)'s return type should be long.
This doesn't require us to change any of the syscall implementations
because (a) the LP32 ones have sizeof(int) == sizeof(long) anyway,
which is how we never noticed this bug before and (b) the LP64 ones
all use a 64-bit register for the result (and for the syscall number
too).

Bug: https://code.google.com/p/android/issues/detail?id=73952
Change-Id: I9866c3579a7a94de27bfbe80ad7a822c3183c7fb
2014-07-28 12:33:07 -07:00
Elliott Hughes
50a9630cc2 Merge "Start hiding "private/bionic_time.h"." 2014-07-24 20:55:36 +00:00
Elliott Hughes
905e6d58aa Start hiding "private/bionic_time.h".
Bug: 15765976
Change-Id: Ibd9cf07067ec8dffe9fda6c3d498d4ab90708220
2014-07-25 12:03:51 -07:00
Elliott Hughes
39d903aea9 Remove localtime_tz and strftime_tz.
This also brings our copy of strftime.c much closer to upstream, though
we still have several GNU extensions and hacks to deal with Android32's
broken time_t.

Bug: 15765976
Change-Id: Ic9ef36e8acd3619504ecc4d73feec2b61fd4dfa1
2014-07-25 15:50:31 -07:00
Dan Albert
1abb8bd21d en_US.UTF-8 is also supported.
Change-Id: Ic35fad3596dc5e24ee8ae35543a274a471f27bb2
2014-07-25 11:24:03 -07:00
Elliott Hughes
f1e83cc34a Use vsnprintf(3) in syslog(3).
It seemed like a clever trick to use the internal log message formatting
code in syslog(3), but on reflection that means you can't (for example)
format floating point numbers. This patch switches us over to using good
old vsnprintf(3), even though that requires us to jump through a few hoops.

There's no obvious way to unit test this, so I wrote a little program and
ran that.

(cherry-pick of b1b60c30bf321c0fc02264b953b5c16c49d34457.)

Bug: 14292866
Change-Id: I9c83500ba9cbb209b6f496067a91bf69434eeef5
2014-07-28 09:43:21 -07:00
Christopher Ferris
efbb837dc4 am bc74ecfa: HACK: Disable syslog going to android log.
* commit 'bc74ecfaf5de47056fd8a48db65c0e5aef892f0c':
  HACK: Disable syslog going to android log.
2014-07-24 19:47:58 +00:00
Colin Cross
abca870989 am 49fbec6d: HACK: remove %m support from printf.
* commit '49fbec6d9aee62462a4acf3ba47788ca1e35be37':
  HACK: remove %m support from printf.
2014-07-24 19:23:45 +00:00
Elliott Hughes
c6f39339de am 8dbe3f0f: Merge "[MIPS] Drop soft-fp targets"
* commit '8dbe3f0f51f0cd26c22df82bdef9a2f8caea7ef6':
  [MIPS] Drop soft-fp targets
2014-07-24 18:29:55 +00:00
Duane Sand
5ade7e3f6b [MIPS] Drop soft-fp targets
(cherry picked from commit ba23bd0a40)

Change-Id: Ica09192c2760d38ceebc14e23a5d3ba94c20764c
2014-07-24 11:17:55 -07:00
Duane Sand
c86950cb3f [MIPSR6] setjmp supports mips32r6 and FP64A/FPXX reg models
Save and restore floating point registers via 64-bit
load/stores when possible.  Use assembler's builtin macro
ops to generate pairs of 32-bit load/stores on Mips I cpus.

Some cpus or FR modes have only 16 even-numbered dp fp regs.
This is exposed by _MIPS_FPSET, defined by existing compilers.

(cherry picked from commit dd37251c47)

Change-Id: Ibd43653701a363a77af85121d3cbd229d132a06a
2014-07-23 21:04:20 -07:00
Elliott Hughes
0caa27b148 am 7d22a451: Merge "[MIPSR6] setjmp supports mips32r6 and FP64A/FPXX reg models"
* commit '7d22a4519610f830178bbff32d961a2784354397':
  [MIPSR6] setjmp supports mips32r6 and FP64A/FPXX reg models
2014-07-24 04:03:03 +00:00
Christopher Ferris
bc74ecfaf5 HACK: Disable syslog going to android log.
Bug: 14292866

Change-Id: I3adc448dbacfeecd32508ddccf27be3aa653e466
2014-07-23 18:08:09 -07:00
Elliott Hughes
d6f614a4e1 Merge "Implement twalk(3), add unit tests." 2014-07-24 22:07:52 +00:00
Elliott Hughes
3e424d0a24 Implement twalk(3), add unit tests.
I've also added insque(3) and remque(3) (from NetBSD because the OpenBSD
ones are currently broken for non-circular lists).

I've not added the three hash table functions that should be in this header
because they operate on a single global hash table and thus aren't likely
to be useful.

Bug: https://code.google.com/p/android/issues/detail?id=73719
Change-Id: I97397a7b921e2e860fd9c8032cafd9097380498a
2014-07-24 14:55:29 -07:00
Colin Cross
49fbec6d9a HACK: remove %m support from printf.
The change that added this support causes a cpu hard lock on one
device.  This code clearly isn't at fault, but disabling it to
unblock until we can find a real fix.

Bug: 16484311
Change-Id: I33834dc49d959ae403b10d2c7cad12ae2950f772
2014-07-23 14:56:20 -07:00
Elliott Hughes
0200a28583 am f9bfc2ff: Merge "Fix belated review comments on syslog change."
* commit 'f9bfc2ff8eb5db99a106a8a384498165361291ce':
  Fix belated review comments on syslog change.
2014-07-23 20:18:59 +00:00
Elliott Hughes
4126c12961 Fix belated review comments on syslog change.
Bug: 14292866

(cherry picked from commit afe6360627)

Change-Id: I8e3cc6b37b2539e51a27261ffb5d6e58266ce11d
2014-07-23 13:11:15 -07:00