Commit Graph

4461 Commits

Author SHA1 Message Date
Christopher Ferris
011076b720 Merge "Support for jemalloc to replace dlmalloc." 2014-05-21 18:12:50 +00:00
Elliott Hughes
3db501139b am c323b97c: am 87987df9: am daf69128: Merge "Fix x86_64 __set_tls.c build failure."
* commit 'c323b97c52297c4342dd45e329bad816f3bc5746':
  Fix x86_64 __set_tls.c build failure.
2014-05-21 18:10:23 +00:00
Elliott Hughes
c1b7f44c13 Merge "Remove __syslog; we have the public klogctl API." 2014-05-21 18:07:05 +00:00
Neil Fuller
a073b4ee0a am 55326c4b: am b7a23959: am 76805140: Merge "Treat zero or >1 dat files as an error"
* commit '55326c4b9714cba3e7bf0e27ceea0e2b91240d6f':
  Treat zero or >1 dat files as an error
2014-05-21 17:28:39 +00:00
Calin Juravle
ae0f8f1e48 Add padding to mips ucontext_t.
Bug: 12828904
Change-Id: I49e7adcebf769a9c30dc43def36501260369b1ac
2014-05-21 18:16:17 +01:00
Calin Juravle
eb454522da Clean up ucontext.h TODOs.
There's no need to expose gregset_t and fpregset_t when they
are not used in ucontext_t.

Bug: 12828904
Change-Id: Ieda1edf0ab18015f444c4d385fe9c41c4544017f
2014-05-21 18:15:35 +01:00
Elliott Hughes
7136927d39 Fix x86_64 __set_tls.c build failure.
Change-Id: I697b8ab4ce781d7aebeddb1391b63c653511bbcb
2014-05-21 10:02:00 -07:00
Neil Fuller
768051405e Merge "Treat zero or >1 dat files as an error" 2014-05-21 16:18:59 +00:00
Neil Fuller
43f3715953 Treat zero or >1 dat files as an error
Based on feedback from
I7efbd6f453fe2b3e71f564121ff0f64a74289d86

Change-Id: Ie131ab8475083350dc183d9f6d5ea7a0b0617c5b
2014-05-21 17:18:17 +01:00
Elliott Hughes
b8297bfdf6 am ee2939db: am ceed7b76: am 29f2906b: Merge "Add a few more symbols to check-symbols-glibc."
* commit 'ee2939dbf9d6574394249548e94a31575b4ada2d':
  Add a few more symbols to check-symbols-glibc.
2014-05-21 15:35:58 +00:00
Elliott Hughes
66af04b512 am a7293ddb: am 7a611f18: am 9f0a52e4: Merge "Hide __get_sp."
* commit 'a7293ddb8da94cc823ec28b851f69ef2d99a70d4':
  Hide __get_sp.
2014-05-21 15:31:13 +00:00
Elliott Hughes
802383df53 am f55dc413: am 0aa1fb1c: am 7471a370: Merge "Hide __set_tls."
* commit 'f55dc41303417904136902698191fd0f0fe3a061':
  Hide __set_tls.
2014-05-21 15:31:12 +00:00
Elliott Hughes
29f2906bda Merge "Add a few more symbols to check-symbols-glibc." 2014-05-21 15:23:35 +00:00
Elliott Hughes
9f0a52e4e5 Merge "Hide __get_sp." 2014-05-21 15:21:16 +00:00
Elliott Hughes
7471a37003 Merge "Hide __set_tls." 2014-05-21 15:21:01 +00:00
Neil Fuller
9e2595d7b6 am fa5903ed: am 3248b9d3: am 22784885: Merge "Change update-tzdata.py to update ICU data as well"
* commit 'fa5903edf32062d95a4a09f34571a640c1429eb6':
  Change update-tzdata.py to update ICU data as well
2014-05-21 11:17:01 +00:00
Neil Fuller
2278488546 Merge "Change update-tzdata.py to update ICU data as well" 2014-05-21 08:11:40 +00:00
Elliott Hughes
46a55a4478 Remove __syslog; we have the public klogctl API.
Bug: 11156955
Change-Id: I5c2cc02f39f76dd32984135f5c12c10bf2853796
2014-05-20 21:01:00 -07:00
Elliott Hughes
b497c43336 Add a few more symbols to check-symbols-glibc.
Bug: 11156955
Change-Id: Iee0bae6f9742eca188abc7a337371c50888a0ad6
2014-05-20 20:58:23 -07:00
Elliott Hughes
a75869f0b2 Hide __set_tls.
Bug: 11156955
Change-Id: If82c10ae412651361d09591017d1c3a411bd6f0b
2014-05-20 20:32:28 -07:00
Elliott Hughes
dc961faa95 am 58425608: am a9e2ffd8: am 20177b9f: Merge "Remove perf_event_open."
* commit '5842560845af94c2f15a1e7186c800e0f1e6224b':
  Remove perf_event_open.
2014-05-21 03:28:15 +00:00
Elliott Hughes
c3705f6415 Hide __get_sp.
Bug: 11156955
Change-Id: I55d8d320521e80c2085af28933a18b00cf5c714e
2014-05-20 20:22:50 -07:00
Elliott Hughes
4e631ba568 Remove perf_event_open.
This was accidentally added at a time when you couldn't add a constant
to <syscall.h> without generating an assembly stub! (You no longer need
to add the constants at all.)

Bug: 11156955
Change-Id: I053c17879138787976c744a5ecf7d30ee51dc48f
2014-05-20 16:24:55 -07:00
Christopher Ferris
72bbd42357 Support for jemalloc to replace dlmalloc.
To use jemalloc, add MALLOC_IMPL = jemalloc in a board config file
and you get the new version automatically.

Update the pthread_create_key tests since jemalloc uses a few keys.
Add a new test to verify memalign works as expected.

Bug: 981363

Change-Id: I16eb152b291a95bd2499e90492fc6b4bd7053836
2014-05-20 14:47:33 -07:00
Christopher Ferris
223069e0e1 am 1a5d6435: am 78f22ecb: am afb89c2a: Merge "denver: optimize memmove"
* commit '1a5d64357968393d03c66c564066add0d589b760':
  denver: optimize memmove
2014-05-20 20:18:04 +00:00
Dmitriy Ivanov
8151d09639 am 1350ed3d: am 5277e772: am 0a8f296e: Merge "Add RTLD_NOLOAD support and some related changes."
* commit '1350ed3d5252ed2beb8eb06564660c2cc97747f9':
  Add RTLD_NOLOAD support and some related changes.
2014-05-20 20:17:54 +00:00
Christopher Ferris
afb89c2a01 Merge "denver: optimize memmove" 2014-05-20 19:56:13 +00:00
Shu Zhang
6c80ccdeed denver: optimize memmove
Optimize 32-bit denver memmove with reversal memcpy.

Change-Id: Iaad0a9475248cdd7e4f50d58bea9db1b767abc88
2014-05-20 12:31:38 -07:00
Dmitriy Ivanov
0a8f296e09 Merge "Add RTLD_NOLOAD support and some related changes." 2014-05-20 19:11:09 +00:00
Dmitriy Ivanov
b648a8a57e Add RTLD_NOLOAD support and some related changes.
* Aligned RTLD_ values with glibc for lp64
 * dlopen supports RTLD_NOLOAD flag
 * soinfo_unload calls find_library(.., RTLD_NOLOAD)
   instead of naive find_loaded_library_by_name()
 * dlopen changed to add child to caller soinfo instead
   of somain.

Bug: https://code.google.com/p/android/issues/detail?id=64069
Change-Id: I1a65f2c34f3e0edc6d2c41a2e408b58195feb640
2014-05-20 12:02:24 -07:00
Elliott Hughes
7435e9e974 am 7bdf1e48: am da095f3c: am ce0e1b81: Merge "Add a script for finding symbols in bionic that aren\'t in glibc."
* commit '7bdf1e48ff8711f35163f95764bb1d467b205b96':
  Add a script for finding symbols in bionic that aren't in glibc.
2014-05-20 18:35:30 +00:00
Elliott Hughes
ce0e1b81cc Merge "Add a script for finding symbols in bionic that aren't in glibc." 2014-05-20 18:25:24 +00:00
Calin Juravle
077cbee5d1 am 995b9704: am bcd1a312: am b2b0f7e1: Merge "Add uc_regspace to arm\'s ucontext_t"
* commit '995b9704d8ba70d4d09ef0c3453d5f25ed099816':
  Add uc_regspace to arm's ucontext_t
2014-05-20 18:15:40 +00:00
Neil Fuller
246c688020 Change update-tzdata.py to update ICU data as well
The update-tzdata.py tool now uses downloaded Olson data
to update ICU (*new*) at the same time as it updates Bionic
data.

Change-Id: I7efbd6f453fe2b3e71f564121ff0f64a74289d86
2014-05-20 11:48:43 +01:00
Calin Juravle
b2b0f7e1ae Merge "Add uc_regspace to arm's ucontext_t" 2014-05-20 10:14:49 +00:00
Elliott Hughes
5a93e88c7f Add a script for finding symbols in bionic that aren't in glibc.
Bug: 11156955
Change-Id: I9772f054f6a92b842531df084dee0ea9c28806be
2014-05-19 18:01:07 -07:00
Dan Albert
4cc742e920 am 60bab8a7: am d8cc98ad: am 94a9ba2b: Merge "Removes RTTI support from libc"
* commit '60bab8a7ef30f72eb26a843afc3e0bdd02d3796d':
  Removes RTTI support from libc
2014-05-20 00:23:09 +00:00
Elliott Hughes
310ecf1ae9 am 348adca2: am be3db39e: am 948acf71: Merge "Switch back to OpenBSD inet_ntop now they\'re FORTIFY clean."
* commit '348adca20e68c42bdfbf594aaa675062d3595761':
  Switch back to OpenBSD inet_ntop now they're FORTIFY clean.
2014-05-20 00:23:09 +00:00
Sreeram Ramachandran
7c30167b3a am d70e0c88: am 54c83fee: am 9925c1a8: Merge "Mark sockets on creation (socket()) and accept4()."
* commit 'd70e0c884c19c08aa44c038dbf2f12a5b55c73fe':
  Mark sockets on creation (socket()) and accept4().
2014-05-20 00:23:03 +00:00
Dan Albert
94a9ba2b4a Merge "Removes RTTI support from libc" 2014-05-19 23:21:46 +00:00
Elliott Hughes
948acf710e Merge "Switch back to OpenBSD inet_ntop now they're FORTIFY clean." 2014-05-19 23:19:32 +00:00
Elliott Hughes
f51d3e8767 Switch back to OpenBSD inet_ntop now they're FORTIFY clean.
Change-Id: I04798a4966c352a8a12feebdff9646e3bad5933f
2014-05-19 15:55:29 -07:00
Sreeram Ramachandran
903b78873a Mark sockets on creation (socket()) and accept4().
Remove the separate syscall for accept() and implement it as accept4(..., 0).

Change-Id: Ib0b8f5d7c5013b91eae6bbc3847852eb355c7714
2014-05-19 15:19:16 -07:00
Paul Jensen
5240b562e7 Query libnetd_client for the appropriate netId for host resolution.
If libnetd_client can't be found, operate as before and use the default netId
potentially overriden by a more specific netId passed in to
android_get*fornet().

(cherry picked from commit 559c7842cc)

Change-Id: I42ef3293172651870fb46d2de22464c4f03e8e0b
2014-05-19 12:49:52 -07:00
Calin Juravle
0e85fb6121 Add uc_regspace to arm's ucontext_t
Bug: 12828904
Bug: 12875898
Change-Id: Ic5d532bd0ef58cad9e36a99fc2995c4b069121b2
2014-05-19 19:14:03 +01:00
Dan Albert
48ee47ce25 Removes RTTI support from libc
Our type_info stub implementation is incompatible with the libc++ headers. Since
we don't need this support internally and anyone that wants RTTI support will
have to use libc++ anyway, this can be safely removed.

Change-Id: Ied8b67a0d86a4eb0e31191a50cceba0e39a16a6d
2014-05-19 10:32:42 -07:00
Sreeram Ramachandran
57a2627575 Fix build breakage.
Change-Id: I1835198c64c28021b81f0c790f108685a3f456c7
2014-05-19 10:21:39 -07:00
Sreeram Ramachandran
7fe1063797 resolved conflicts for merge of e7329284 to master
Change-Id: Iaeb09451ed1a268a025ce3033ab018f28f954848
2014-05-19 09:57:54 -07:00
Paul Jensen
559c7842cc Query libnetd_client for the appropriate netId for host resolution.
If libnetd_client can't be found, operate as before and use the default netId
potentially overriden by a more specific netId passed in to
android_get*fornet().

Change-Id: I42ef3293172651870fb46d2de22464c4f03e8e0b
2014-05-19 11:23:12 +00:00
Sreeram Ramachandran
72c53933f8 Cosmetic changes to netd client files.
+ Name the dispatch header correctly (NetdClientDispatch.h).
+ Hide the global dispatch variable (__netdClientDispatch).
+ Explain why it's okay to read the variable without locking.
+ Use quotes instead of angle-brackets for non-system includes.
+ Add necessary declarations for C compiles (and not just C++).

Change-Id: Id0932165e71d81da5fce77a684f40c2263f58e61
2014-05-18 15:18:36 -07:00
Elliott Hughes
3810729e54 am 91a7e878: am 81e4ab45: am 8b9a22f3: Merge "Fix the newly-introduced warning and turn on -Werror."
* commit '91a7e878f22776c8b15fb1aceb4823718611fe12':
  Fix the newly-introduced warning and turn on -Werror.
2014-05-17 00:23:14 +00:00
Elliott Hughes
4c2da039ba Fix the newly-introduced warning and turn on -Werror.
I cleaned up most of our warnings last week but forgot to turn on -Werror,
so of course we're getting new warnings already. I've left -Werror commented
out in those places where we still have warnings to deal with before we can
turn on -Werror.

Change-Id: Ia58ff8b8c1ada4bf81eec6f19ec1d34e133cf4b1
2014-05-16 16:50:34 -07:00
Elliott Hughes
0f43d02843 am 19a54ce4: am 88a8e09b: am 5e6e3edb: Merge "Export get_malloc_leak_info and free_malloc_leak_info, used by ddms."
* commit '19a54ce4d446cdea01a7d50c2951481f3ed006bd':
  Export get_malloc_leak_info and free_malloc_leak_info, used by ddms.
2014-05-16 23:40:25 +00:00
Elliott Hughes
f4ad3d6dd7 am b95ce9b3: am 838c5c25: am a23ee2cf: Merge "Hide _exit_with_stack_teardown."
* commit 'b95ce9b3d7b94878cb1a42e19cf059ad4d1455e8':
  Hide _exit_with_stack_teardown.
2014-05-16 23:33:44 +00:00
Elliott Hughes
7c9923d05f Export get_malloc_leak_info and free_malloc_leak_info, used by ddms.
Bug: 11156955
Change-Id: I84043f7b2c0ea0e336f6e2af3b7adb2f8488bd53
2014-05-16 16:29:55 -07:00
Elliott Hughes
31d0398de6 Hide _exit_with_stack_teardown.
Bug: 11156955
Change-Id: Ida3020343c9975177dc324918cd1f10c455eb173
2014-05-16 16:17:44 -07:00
Elliott Hughes
7c8d98db59 am f8cb4542: am 30f89b6f: am aafa3d0e: Merge "Hide various debug malloc implementation details."
* commit 'f8cb45429b2cd4df8908f998fdc72b0fa235474a':
  Hide various debug malloc implementation details.
2014-05-16 23:15:33 +00:00
Elliott Hughes
aafa3d0e46 Merge "Hide various debug malloc implementation details." 2014-05-16 23:04:02 +00:00
Elliott Hughes
968aaf5d8d am fd5155e7: am 48ecb3a6: am 58b52fb1: Merge "Remove dead code."
* commit 'fd5155e7eb64563285831c774e112cf7513adb43':
  Remove dead code.
2014-05-16 23:00:35 +00:00
Elliott Hughes
3ac925850a am 45740160: am 67e34f30: am e2d5746a: Merge "Hide __signalfd4, used to implement signalfd(3)."
* commit '4574016027cce3132c6a348de8f0585348b4ffd5':
  Hide __signalfd4, used to implement signalfd(3).
2014-05-16 23:00:34 +00:00
Elliott Hughes
58b52fb133 Merge "Remove dead code." 2014-05-16 22:52:41 +00:00
Elliott Hughes
7222b1b594 Hide __signalfd4, used to implement signalfd(3).
Bug: 11156955
Change-Id: I50842279cb5b32ec8bd45193435574e415cd806e
2014-05-16 15:47:29 -07:00
Elliott Hughes
6b7987cca3 Hide various debug malloc implementation details.
Bug: 11156955
Change-Id: Ib9d69d49ecec8eff4f12392bde94d843ae53d442
2014-05-16 15:23:54 -07:00
Elliott Hughes
bd27a8b4af Remove dead code.
This doesn't exist upstream.

Really we should upgrade to the current arc4random, but that's a bigger
job for another day.

Bug: 11156955
Change-Id: If6cd41b79139c64c17e81999e246cf4f00882ce8
2014-05-16 14:43:00 -07:00
Elliott Hughes
971f66e469 am 1453b3df: am 7177d1d6: am d9b06298: Merge "Hide __futex_wake_ex and __futex_wait_ex."
* commit '1453b3df559609252633e40d677aadaf5dd70309':
  Hide __futex_wake_ex and __futex_wait_ex.
2014-05-16 20:07:34 +00:00
Elliott Hughes
3973de9616 Hide __futex_wake_ex and __futex_wait_ex.
Also remove some cruft that isn't needed now we're using uapi headers.

Bug: 11156955
Change-Id: I936b9c5b01d8bd6bfb2e5bc0e3f86cd86739cc04
2014-05-16 12:53:31 -07:00
Elliott Hughes
a0accd85c9 am 0178eba2: am 9700b6ca: am 22ade3c3: Merge "With libstdc++ in libc, __futex_wait and __futex_wake can be hidden."
* commit '0178eba213dfec500e71cd9889ece5af2f7de4cb':
  With libstdc++ in libc, __futex_wait and __futex_wake can be hidden.
2014-05-16 18:10:33 +00:00
Elliott Hughes
22ade3c30d Merge "With libstdc++ in libc, __futex_wait and __futex_wake can be hidden." 2014-05-16 18:00:51 +00:00
Elliott Hughes
879180c3ac With libstdc++ in libc, __futex_wait and __futex_wake can be hidden.
This patch is conservative and just touches LP64. (But not because we
know of anyone using this in LP32.)

Bug: 13367666
Change-Id: Id45652debc4534584479b16b501401f6f23acea9
2014-05-16 10:58:59 -07:00
Elliott Hughes
ae04d58b96 am 505de840: am 80cff53e: am 2a602272: Merge "Move libstdc++ into libc."
* commit '505de840a225be10947f6aa25b25e8e623e670e5':
  Move libstdc++ into libc.
2014-05-16 17:40:55 +00:00
Elliott Hughes
2a60227223 Merge "Move libstdc++ into libc." 2014-05-16 16:37:20 +00:00
Christopher Ferris
02aabff12e am c98359cc: am 0d9c78af: am 5265ad62: Merge "Fix comment typo."
* commit 'c98359cc6bffdffe03067740a0ad691cc16d83fa':
  Fix comment typo.
2014-05-16 02:21:53 +00:00
Christopher Ferris
5265ad6273 Merge "Fix comment typo." 2014-05-16 02:14:07 +00:00
Christopher Ferris
9029d2f638 Fix comment typo.
Change-Id: I1909f724826b531daf14fec4853e40d578fc0f59
2014-05-15 19:11:58 -07:00
Dmitriy Ivanov
6a0f7d6187 am a161eea2: am 7f3d6b69: am 0a5b0166: Merge "Register _cleanup function with atexit"
* commit 'a161eea241da06c70995248df7a00b6553050e05':
  Register _cleanup function with atexit
2014-05-16 00:43:54 +00:00
Dmitriy Ivanov
0a5b016623 Merge "Register _cleanup function with atexit" 2014-05-16 00:37:54 +00:00
Elliott Hughes
c571c26820 am 9eb2d38d: am b9fdad77: am ec81b4a3: Merge "Scrub uapi headers slightly harder."
* commit '9eb2d38d53b2d00a9b5bd189a34f51afb7c385bf':
  Scrub uapi headers slightly harder.
2014-05-15 23:12:23 +00:00
Dmitriy Ivanov
623b0d05bd Register _cleanup function with atexit
* Register cleanup function with atexit
   instead of calling it explicitly on
   exit()
 * abort() no longer calls _cleanup:
   Flushing stdio buffers on abort is no
   longer required by POSIX.
 * dlmalloc no longer need to reset cleanup
   (see above)
 * Upstream findfp.c makebuf.c setvbuf.cexit.c
   to openbsd versions.

Bug: 14415367
Change-Id: I277058852485a9d3dbb13e5c232db5f9948d78ac
2014-05-15 13:05:21 -07:00
Elliott Hughes
8ed7a23309 Scrub uapi headers slightly harder.
There's no point having always-false tests. It just makes the headers
harder to read.

Bug: 11560081
Change-Id: I6187755e1514ca9ff5642b3c1b0489f22edddaf5
2014-05-15 12:01:11 -07:00
Calin Juravle
bfcc82b3c0 am 4c9eab72: am 83c94c6d: am 98efae4c: Merge "Fill in missing bits in x86(_64) ucontext_t"
* commit '4c9eab723481df5921296c2dba2dbdd8a81b1395':
  Fill in missing bits in x86(_64) ucontext_t
2014-05-15 10:34:37 +00:00
Calin Juravle
a6ab968ca0 Fill in missing bits in x86(_64) ucontext_t
Bug: 12828904
Bug: 12875898
Change-Id: I0ec0dfe16af80bfb3153f3c3b1b3d180eff30f39
2014-05-15 10:34:06 +01:00
Andrew Hsieh
61c88b5648 am 5d76a6c2: am c67e917a: am d0a89921: Merge "Rename user_i387_struct -> user_fpregs_struct in sys/ucontext.h"
* commit '5d76a6c26e47cbd1b9c98b0151dda1677db32af6':
  Rename  user_i387_struct -> user_fpregs_struct in sys/ucontext.h
2014-05-15 01:59:52 +00:00
Elliott Hughes
15b641a267 Move libstdc++ into libc.
The Android build system always links against libstdc++.so anyway. Having
operator new and operator delete in a separate library means we can't use
constructors and destructors on heap-allocated objects inside the C library,
which is quite an unfortunate limitation.

This will be cheaper too; on LP64 we can stop linking against the [now empty]
libstdc++.so giving the dynamic linker one less library to worry about for
every process.

There's precedent too --- we already have no libpthread or librt.

For now I'm leaving the include files where they are, and I'm generating a
dummy libstdc++.so and libstdc++.a. We can come back and clean that up later
if all goes well.

Bug: 13367666
Change-Id: I6f3e27ea7c30d03d6394965d0400c9dc87fa83db
2014-05-14 18:18:55 -07:00
Christopher Ferris
4903b31733 am 70240fda: am 493cfc33: am 1596b884: Merge "Increase minimum thread size for 64 bit."
* commit '70240fda03d5a375b6bb4e25dd50d1e7803a140e':
  Increase minimum thread size for 64 bit.
2014-05-15 01:13:50 +00:00
Andrew Hsieh
9b5b40b4df Rename user_i387_struct -> user_fpregs_struct in sys/ucontext.h
See 93e1907ae1

Change-Id: Icb207f4e17cfffdd6d37500656434adf1cc34427
2014-05-15 09:11:11 +08:00
Christopher Ferris
1596b88464 Merge "Increase minimum thread size for 64 bit." 2014-05-15 01:06:25 +00:00
Christopher Ferris
ea5248ee1b Increase minimum thread size for 64 bit.
Bug: 14468519
Change-Id: I642a5515acf5fbed46e77e176f6b5dd3b7c7bd45
2014-05-14 18:02:11 -07:00
Elliott Hughes
71db4f6571 am e05c4ebb: am 4cbb778b: am f280130f: Merge "Remove the unused __system_property_wait."
* commit 'e05c4ebb651dc73ba86ae45242707c285847df2b':
  Remove the unused __system_property_wait.
2014-05-15 00:30:41 +00:00
Christopher Ferris
0799b77011 am d849068a: am cd5b7920: am bc7f8a79: Merge "Do not keep struct state on the stack."
* commit 'd849068a35040083ef56cfe457011bbf3a0d305c':
  Do not keep struct state on the stack.
2014-05-15 00:12:30 +00:00
Elliott Hughes
3e786987b5 Remove the unused __system_property_wait.
This isn't declared in any header file.

Bug: 14970171
Change-Id: Ib9fce61343dfb6b6ccd7e1430e1a6e34e4e869df
2014-05-14 17:02:09 -07:00
Christopher Ferris
8a8b0c9bfc Do not keep struct state on the stack.
This structure is huge (~18000 bytes on arm64) and can blow out
the stack very easily.
Modify the code to allocate these structures instead of leaving them
on the stack.

Bug: 14468519
Change-Id: I774f71235d896d32a14ab1af06f95ca9ef819f52
2014-05-14 16:50:41 -07:00
Elliott Hughes
f693d2916b am c6057a5f: am d60d67db: am aeec2ae7: Merge "Remove the broken pthread deadlock prediction."
* commit 'c6057a5f618cca842432c3a28af1a9293b551aff':
  Remove the broken pthread deadlock prediction.
2014-05-14 19:54:24 +00:00
Sreeram Ramachandran
49ec2a0cdc Merge "Mark sockets on accept()." 2014-05-14 19:40:50 +00:00
Elliott Hughes
07f1ded139 Remove the broken pthread deadlock prediction.
This hasn't built in over one release cycle and no one even noticed.
art does this the right way and other projects should do the same.

Change-Id: I7d1fb84c4080e008f329ee73e209ce85a36e6d55
2014-05-14 11:38:22 -07:00
Sreeram Ramachandran
8f0cd8aa22 Mark sockets on accept().
(cherry picked from commit 58b1f3f6a30a660ad81637c2b50382c3d279243b)

Change-Id: I5d09be413cf720fbed905f96313b007997ada76c
2014-05-14 11:10:22 -07:00
Elliott Hughes
a0d2534ef4 am b270fd33: am 7451897c: am e6c27a7a: Merge "Fix a typo in the big g_ search/replace."
* commit 'b270fd332922b365091f835b1b61ed221a87f102':
  Fix a typo in the big g_ search/replace.
2014-05-14 18:09:56 +00:00
Elliott Hughes
cd46104cf8 Fix a typo in the big g_ search/replace.
Change-Id: I79261de70d225236d0eadff288220258d697437f
2014-05-14 10:58:58 -07:00
Elliott Hughes
73a3760ea8 am b2da973f: am 6eb0fe2b: am 15c13bd6: Merge "Switch to g_ for globals."
* commit 'b2da973fe9e7a1c9e774433eeae86c517321ebdc':
  Switch to g_ for globals.
2014-05-14 17:50:17 +00:00
Elliott Hughes
1728b23965 Switch to g_ for globals.
That's what the Google style guide recommends, and we're starting
to get a mix.

Change-Id: Ib0c53a890bb5deed5c679e887541a715faea91fc
2014-05-14 10:02:03 -07:00
Ross McIlroy
4586f8d3ae am 582cf711: am bc45edaa: am bac79558: Merge "Fix x86_64 user_fpregs_struct to use the same name for the tag word as glibc."
* commit '582cf711309138e4e7e0c46696491028c823834d':
  Fix x86_64 user_fpregs_struct to use the same name for the tag word as glibc.
2014-05-14 14:40:05 +00:00
Ross McIlroy
bac795586b Merge "Fix x86_64 user_fpregs_struct to use the same name for the tag word as glibc." 2014-05-14 14:27:41 +00:00
Ross McIlroy
0c8a5f82e6 Fix x86_64 user_fpregs_struct to use the same name for the tag word as glibc.
Glibc calls the tag pointer in user_fpregs_struct ftw instead of twd.

Change-Id: I4a8dab777fa889de0b9927035cd18557ae6f3263
2014-05-14 13:29:19 +01:00
Sreeram Ramachandran
dedf2922d5 Mark sockets on accept().
Conflicts:
	libc/SYSCALLS.TXT

Change-Id: I5d09be413cf720fbed905f96313b007997ada76c
2014-05-14 04:26:51 -07:00
Paul Jensen
41d9a50371 Add support for deleting per-network DNS resolver caches.
This is required when the possible range of NetIds is large to
prevent netd consuming excessive amounts of memory.
This required replacing the per-cache locks in favor of a single
global lock to prevent accesses to deleted caches.

Change-Id: I99d058bafea5de743e56075dbed74031da4df63f
2014-05-14 04:16:18 -07:00
Calin Juravle
7fbc7481cc am 32cd82f0: am 7c0b313d: am a7318774: Merge "Change wctype_t from int to long."
* commit '32cd82f093184fc3b6b43171f16ed5d74ca02795':
  Change wctype_t from int to long.
2014-05-14 10:47:04 +00:00
Calin Juravle
9d60edbcfe am c16e4332: am d36bbf13: am fd3171b4: Merge "Change wctype_t from enum to int"
* commit 'c16e4332e42ff152c06963c398e9195576d6aae4':
  Change wctype_t from enum to int
2014-05-14 10:47:04 +00:00
Calin Juravle
a731877406 Merge "Change wctype_t from int to long." 2014-05-14 10:33:46 +00:00
Calin Juravle
fd3171b465 Merge "Change wctype_t from enum to int" 2014-05-14 10:33:35 +00:00
Elliott Hughes
8e168d2a01 am 28c9e21f: am 2146f78c: am 3e684183: Merge "Use the NetBSD inet_ntop until the OpenBSD bug is fixed."
* commit '28c9e21fe7bfadf0af5d183d6bcad5bf638de91b':
  Use the NetBSD inet_ntop until the OpenBSD bug is fixed.
2014-05-14 02:33:31 +00:00
Elliott Hughes
5c8c88dd8d Use the NetBSD inet_ntop until the OpenBSD bug is fixed.
Stupidly I found this bug by accident when writing the existing
tests, but I didn't think any real code would hit it. It turns
out that libcore always uses an INET6_ADDRSTRLEN-sized buffer
even when working with AF_INET addresses.

Change-Id: Ieffc8e4bbe9b66b49b033e3e7101c896e097e6f8
2014-05-13 19:17:46 -07:00
Elliott Hughes
d8e8909f95 am 46afef32: am 9b1e2a14: am 3557f2f6: Merge "Fix <sys/endian.h> uint32_t build failures."
* commit '46afef329fee8de35d092e3f1e635d11d6f6e91d':
  Fix <sys/endian.h> uint32_t build failures.
2014-05-14 01:56:31 +00:00
Elliott Hughes
135b103fd9 Fix <sys/endian.h> uint32_t build failures.
Change-Id: I833b51318f0bf7749073859b7ffacc668c27558e
2014-05-13 18:42:12 -07:00
Elliott Hughes
aa8e269d29 am 239347d9: am cb6f6243: am 17f8ef87: Merge "Flesh out <arpa/inet.h>."
* commit '239347d97effbd711f07da75def7620a1557988b':
  Flesh out <arpa/inet.h>.
2014-05-14 01:21:59 +00:00
Elliott Hughes
6033068d17 am 62c24c83: am f984afd0: am 57722375: Merge "We don\'t need two copies of <nsswitch.h>."
* commit '62c24c83538258fa2cd7e31d9b616bbb32d6398f':
  We don't need two copies of <nsswitch.h>.
2014-05-14 01:21:58 +00:00
Elliott Hughes
17f8ef87b5 Merge "Flesh out <arpa/inet.h>." 2014-05-14 01:09:01 +00:00
Elliott Hughes
6a41b0fb0e Flesh out <arpa/inet.h>.
Use the upstream OpenBSD implementations of these functions.

Also ensure we have symbols for htonl, htons, ntohl, and ntohs.
gtest doesn't like us using the macro versions in ASSERT_EQ.

Bug: 14840760
Change-Id: I68720e9aca14838df457d2bb27b999d5818ac2b5
2014-05-13 18:08:29 -07:00
Elliott Hughes
5772237588 Merge "We don't need two copies of <nsswitch.h>." 2014-05-14 01:06:11 +00:00
Elliott Hughes
eed3d0d1f3 We don't need two copies of <nsswitch.h>.
Change-Id: I3f874326d96f41249f5c9b1b3c2885f858589029
2014-05-13 18:05:29 -07:00
Sreeram Ramachandran
47b93faa48 Fix build (take two).
Make sure __netdClientDispatch is defined in the same set of libraries that
refer to it (e.g.: with connect.cpp).

(cherry picked from commit 8205a61248)

Change-Id: I86d7bf2df5bde09f75a35b204eac0e1361747e22
2014-05-13 17:48:52 -07:00
Sreeram Ramachandran
8205a61248 Fix build (take two).
Make sure __netdClientDispatch is defined in the same set of libraries that
refer to it (e.g.: with connect.cpp).

Change-Id: I86d7bf2df5bde09f75a35b204eac0e1361747e22
2014-05-13 17:24:03 -07:00
Sreeram Ramachandran
2677d133dd Fix build.
(cherry picked from commit 06e8796ee9)

Change-Id: I33293d8bc62cbb22e23a704c4242e7e9d3fce7c5
2014-05-13 16:59:38 -07:00
Sreeram Ramachandran
06e8796ee9 Fix build.
Change-Id: I33293d8bc62cbb22e23a704c4242e7e9d3fce7c5
2014-05-13 16:30:12 -07:00
Sreeram Ramachandran
20f8da95c0 am af36c9ae: am 9b5bc6fd: am 79b56f4b: Merge "Introduce netd_client, a dynamic library that talks to netd."
* commit 'af36c9ae139b08109fa9ffad923b542e3a64f612':
  Introduce netd_client, a dynamic library that talks to netd.
2014-05-13 22:20:38 +00:00
Elliott Hughes
05ba476c11 am 5c0fe1a3: am b00435d1: am 0ccef7ec: Merge "Upgrade to tzdata2014c."
* commit '5c0fe1a39d35886e30792f3b6023bc9799e5ebc2':
  Upgrade to tzdata2014c.
2014-05-13 18:42:26 +00:00
Sreeram Ramachandran
ceb5bd787c Introduce netd_client, a dynamic library that talks to netd.
The library exists outside bionic. It is dynamically loaded, to replace selected
standard socket syscalls with versions that talk to netd.

Change connect() to use the library if available.

(cherry picked from commit 3a6b627a14df8111b03e452f2df4b5f4938e0e49)

Change-Id: Ib6198e19dbc306521a26fcecfdf6e8424d163fc9
2014-05-13 11:30:03 -07:00
Elliott Hughes
a8e0f0e633 am 1d8130e8: am 56b18bb4: am a26dd781: Merge "Add getmntent_r to our collection of <mntent.h> compatibility stubs."
* commit '1d8130e8b30e25ad8e3e33bbd0d08f8e44f73a35':
  Add getmntent_r to our collection of <mntent.h> compatibility stubs.
2014-05-13 18:27:32 +00:00
Elliott Hughes
121cb5f4a7 Upgrade to tzdata2014c.
From the release notes:

  Changes affecting near-future time stamps

    Egypt observes DST starting 2014-05-15 at 24:00.
    (Thanks to Ahmad El-Dardiry and Gunther Vermier.)
    Details have not been announced, except that DST will not be
    observed during Ramadan.  Guess that DST will stop during the same
    Ramadan dates as Morocco, and that Egypt's future spring and fall
    transitions will be the same as 2010 when it last observed DST,
    namely April's last Friday at 00:00 to September's last Thursday at
    23:00 standard time.  Also, guess that Ramadan transitions will be
    at 00:00 standard time.

Change-Id: I6a20cae02a314871acbd52cb90fcbebd37625810
2014-05-13 11:23:18 -07:00
Elliott Hughes
280bd7a9f4 am 2fbb0fb7: am 2b5503b5: am dbcba8f5: Merge "Reduce stack usage of tmpfile(3)."
* commit '2fbb0fb751b985c6f8a6fa556cf5fe51c88e6645':
  Reduce stack usage of tmpfile(3).
2014-05-13 17:49:29 +00:00
Elliott Hughes
eb664e24c0 Add getmntent_r to our collection of <mntent.h> compatibility stubs.
This helps build 'external/flo' out of the box.

Bug: 14841211
Change-Id: I30dde77239cceaf1f5743163744eb3604d27a266
2014-05-13 10:44:07 -07:00
Elliott Hughes
dbcba8f5f9 Merge "Reduce stack usage of tmpfile(3)." 2014-05-13 17:32:48 +00:00
Calin Juravle
1b530a9f80 am 493f718d: am 66faa0c2: am f34f0ccb: Merge "Use __LP64__ instead of __LP32__ in sched.h"
* commit '493f718d87722615b2657dc6a0254dc3c3714a16':
  Use __LP64__ instead of __LP32__ in sched.h
2014-05-13 17:29:56 +00:00
Calin Juravle
f34f0ccb0e Merge "Use __LP64__ instead of __LP32__ in sched.h" 2014-05-13 17:16:30 +00:00
Elliott Hughes
b6943186ce Reduce stack usage of tmpfile(3).
Also ensure that none of our home-grown code uses more than 2KiB per frame.

Change-Id: I8987a17d72f4b7f082bb7fa25e137c8433664c14
2014-05-13 10:14:22 -07:00
Calin Juravle
dd09699fae Use __LP64__ instead of __LP32__ in sched.h
Gcc defines only __LP64__ so testing __LP32__ will always be false.

Bug: 14881256
Change-Id: Ic63c1d562be09c3eb4b9e17c9e5ef2d9e404db80
2014-05-13 16:07:28 +01:00
Calin Juravle
b55f2631dc Change wctype_t from int to long.
On LP64 this brings us on par with the other libcs where wctype_t is 8
bytes.

Bug: 12875898
Change-Id: Ice4f538ccf0634ef6667a8d90d0f7f09cec9e1b0
2014-05-13 13:11:27 +01:00
Calin Juravle
0c472479a2 Change wctype_t from enum to int
This increases bionic source compatibility with other libcs where
"wctype_t foo = 0;" is valid without -fpermissive.

Bug: 14646243
Change-Id: Ia9bd0785bc42c7b46e2bb6c3d9b9a9d3f769d983
2014-05-13 12:47:27 +01:00
Calin Juravle
3b0d098df1 am d0c625f5: am d9f0e8f2: am ddda264f: Merge "Undef private *_BODY defines after use"
* commit 'd0c625f5de63e659e524710fe49ae1061d585dc6':
  Undef private *_BODY defines after use
2014-05-13 10:41:10 +00:00
Calin Juravle
f963da22ec Undef private *_BODY defines after use
Bug: 14865741
Change-Id: I1398f7b3f64e3c94f2714cede5b61205dfa78a24
2014-05-13 11:01:11 +01:00
Calin Juravle
e1a15335be am df45321d: am e0913cd4: am e788f5e0: Merge "Support mb sequences across calls to mb*to*wcs* functions"
* commit 'df45321da1b41ee3fb6c2a5504f6e84ea3599361':
  Support mb sequences across calls to mb*to*wcs* functions
2014-05-13 09:49:39 +00:00
Calin Juravle
e788f5e04b Merge "Support mb sequences across calls to mb*to*wcs* functions" 2014-05-13 09:36:01 +00:00
Christopher Ferris
823074c5e4 am 66d0e685: am 199e830a: am 1abb1b93: Merge "Add 64-bit Silvermont-optimized string/memory functions."
* commit '66d0e685145a400b08f5e4ec6bbc61ed8185cd39':
  Add 64-bit Silvermont-optimized string/memory functions.
2014-05-13 00:59:29 +00:00
Christopher Ferris
64010b8f7e am 19e15c5b: am 5a3303da: am c1d26965: Merge "Add 32-bit Silvermont-optimized string/memory functions."
* commit '19e15c5bf6eecf2baa5bf8dd50fcf028477991bf':
  Add 32-bit Silvermont-optimized string/memory functions.
2014-05-13 00:38:59 +00:00
Varvara Rainchik
a020a244ae Add 64-bit Silvermont-optimized string/memory functions.
Add following functions:
bcopy, bzero, memcpy, memmove, memset, stpcpy, stpncpy, strcat, strcpy,
strlen, strncat, strncpy, memcmp, strcmp, strncmp.
Set all these functions as the default ones.

Change-Id: Ic66b250ad8c349a43d25e2d4dea075604f6df6ac
Signed-off-by: Varvara Rainchik <varvara.rainchik@intel.com>
2014-05-12 17:37:07 -07:00
Elliott Hughes
3ff9c0246c am 5a19b361: am 0b1a2ee7: am 8b307e0e: Merge "Remove the useless indirection in mips\' __set_tls."
* commit '5a19b361684283e51e00d532af231f5e9e4a9456':
  Remove the useless indirection in mips' __set_tls.
2014-05-13 00:33:52 +00:00
Christopher Ferris
c1d26965ae Merge "Add 32-bit Silvermont-optimized string/memory functions." 2014-05-13 00:26:50 +00:00
Calin Juravle
15a6310e4b Support mb sequences across calls to mb*to*wcs* functions
Bug: 13077905
Change-Id: I5abdc7cc3c27c109b7900c94b112f18a95c35763
2014-05-13 00:24:25 +01:00
Elliott Hughes
8b307e0e98 Merge "Remove the useless indirection in mips' __set_tls." 2014-05-12 23:14:51 +00:00
Elliott Hughes
dcbef06ce6 Remove the useless indirection in mips' __set_tls.
Change-Id: I12e9d6716c42ccbccc9a186441aca0736bb22d05
2014-05-12 16:11:06 -07:00
Varvara Rainchik
5a92284167 Add 32-bit Silvermont-optimized string/memory functions.
Add following functions:
bcopy, memcpy, memmove, memset, bzero, memcmp, wmemcmp, strlen,
strcpy, strncpy, stpcpy, stpncpy.
Create new directories inside arch-x86 to specify architecture: atom,
silvermont and generic (non atom or silvermont architectures are treated like generic).
Due to introducing optimized versions of stpcpy and stpncpy,
c-implementations of these functions are moved from
common for architectures makefile to arm and mips specific makefiles.

Change-Id: I990f8061c3e9bca1f154119303da9e781c5d086e
Signed-off-by: Varvara Rainchik <varvara.rainchik@intel.com>
2014-05-12 13:56:59 -07:00
Calin Juravle
3c831506cf am 26fbede0: am e032a18c: am d67c6af2: Merge "Reserve space for the future in statvfs(64)"
* commit '26fbede03e32a679836ac0b4fabe7be0d9458759':
  Reserve space for the future in statvfs(64)
2014-05-12 10:11:57 +00:00