13543 Commits

Author SHA1 Message Date
Dmitriy Ivanov
a7424d79c4 am fee054f3: am 398eb5a7: Merge "Remove unnecessary lookups during relocations"
* commit 'fee054f3ecd7c26705f544ecf0d76ce4ec57a2d4':
  Remove unnecessary lookups during relocations
2014-10-29 17:13:24 +00:00
Dmitriy Ivanov
0dbb80ae95 am 1babff27: am 566f2bc6: Merge "Fix relocation to look for symbols in local group"
* commit '1babff27fd0e62bd719d04e789da01adbb0b01cd':
  Fix relocation to look for symbols in local group
2014-10-29 17:13:23 +00:00
Elliott Hughes
5e90a97607 am ac5df33e: am 6c5694b6: Merge "Migrate system/extra getaddrinfo test, and fix a bug in getservbyname(3)."
* commit 'ac5df33e091c079d667354d225ed37d23326a270':
  Migrate system/extra getaddrinfo test, and fix a bug in getservbyname(3).
2014-10-29 17:13:22 +00:00
Elliott Hughes
66bae4262a am 7f558f60: am cf8ea37f: Merge "bionic/tests: migrate gethostbyname bionic test from system/extra to bionic/tests"
* commit '7f558f60cb51c54782f6d51cd3537082e00970bc':
  bionic/tests: migrate gethostbyname bionic test from system/extra to bionic/tests
2014-10-29 17:10:58 +00:00
Elliott Hughes
ec2ee183a3 am 96a6f401: am e516321d: Merge "Update bionic to tzdata2014i."
* commit '96a6f40163b5a2b97c470894ef81041e18265192':
  Update bionic to tzdata2014i.
2014-10-29 16:42:51 +00:00
Christopher Ferris
c165b98adc am 274f5e73: am efd2ec8f: Merge "Fix race condition in timer disarm/delete."
* commit '274f5e737dcae3c9d328f89f4f7df29acee41230':
  Fix race condition in timer disarm/delete.
2014-10-29 16:42:50 +00:00
Yabin Cui
63edd69e57 am cbb4606a: Merge "change unsigned int to uint32_t for api arc4random/arc4random_uniform"
* commit 'cbb4606ad00f084f984c92a8674400a112ea200e':
  change unsigned int to uint32_t for api arc4random/arc4random_uniform
2014-10-29 12:32:36 +00:00
Elliott Hughes
91bfaed26a am 13dcb88b: Merge "Disable tzdata in ."
* commit '13dcb88b0f8ce238456059fdc0b6c946caed1e3a':
  Disable tzdata in $ANDROID_DATA.
2014-10-29 12:32:23 +00:00
Elliott Hughes
912fe0a6df am f96eaf62: Merge "[x86,x86_64] Fix libgcc unwinding through signal"
* commit 'f96eaf6202351a1b5153cfaad3137e4b63846f8f':
  [x86,x86_64] Fix libgcc unwinding through signal
2014-10-29 12:31:52 +00:00
Christopher Ferris
1c8ea807eb Cleanup arm assembly.
Remove the old arm directives.
Change the non-local labels to .L labels.
Add cfi directives to strcpy.S.

Bug: 18157900

(cherry picked from commit c8bd2abab24afe563240297018c4fa79944f193b)

Change-Id: Ifa1c3d16553d142eaa0d744af040f0352538106c
2014-10-28 18:19:33 -07:00
Elliott Hughes
89aaaffbf8 Extra strtod/strtof tests.
Check that libc doesn't suffer from a couple of bugs that affected
Java in the past.

Bug: 2206701
Change-Id: I9eb64d7ff2fa0b79e93079b897a5fb78bef866be
2014-10-28 17:54:23 -07:00
Elliott Hughes
69377b8909 Fix merge-induced makefile error.
Change-Id: I6ac7e5e3b9d55108681916044cf2de0e01bca0b2
2014-10-28 16:58:11 -07:00
Christopher Ferris
0cc59dd303 Add __memcpy_chk assembly for 64 bit.
Bug: 17623887

(cherry picked from commit 8cf61dab5f11ed5654a5760ab47cec0239caafe0)

Change-Id: I91e66ca0c26f04b50308059f9c89d388d55f6e3a
2014-10-28 16:18:47 -07:00
Elliott Hughes
16b557e1b2 Merge remote-tracking branch 'goog/lmp-mr1-ub-dev' into manualmerge
Conflicts:
	libc/arch-arm/bionic/__restore.S
	libc/arch-arm/cortex-a15/bionic/stpcpy.S
	libc/arch-arm/cortex-a9/bionic/stpcpy.S
	libc/arch-arm64/generic/bionic/memcpy_base.S
	libc/arch-x86/bionic/__restore.S
	libc/arch-x86/x86.mk
	libc/arch-x86_64/bionic/__restore_rt.S
	tests/stack_unwinding_test.cpp
	tests/stack_unwinding_test_impl.c

Change-Id: I2cb250ad78e9da6f390bc279aec742564b75e6c7
2014-10-28 16:06:57 -07:00
Yabin Cui
cbb4606ad0 Merge "change unsigned int to uint32_t for api arc4random/arc4random_uniform" 2014-10-28 22:58:40 +00:00
Elliott Hughes
86d16a053e Clean up the architecture-specific makefiles.
Group things appropriately and name each group.

Bug: 18160821

(cherry picked from commit 7c02d9428ca18ac600f7ba7d51bb24ca71e733f6)

Change-Id: I863242515af44058154d03e2d8c34678e682d66a
2014-10-28 15:13:36 -07:00
Elliott Hughes
b378c27226 No arm source refers to SOFTFLOAT.
So why bother #defining it?

Bug: 18160821

(cherry picked from commit b1a6c319c40674d71e30313040d3b33b8bddf24b)

Change-Id: I9cd9c144ba7071fddda12fa16d1232ad861b66be
2014-10-28 15:13:04 -07:00
Elliott Hughes
22e2c9d963 Fix mips signed/unsigned signal_test.cpp build breakage.
(cherry picked from commit aa13e839f06231b9299bb683a71abd954294b49b)

Bug: 17436734
Change-Id: I167fc5d74c49cca7031c5739bc53fdf3bde71887
2014-10-28 14:02:10 -07:00
Yabin Cui
a39f939e0d change unsigned int to uint32_t for api arc4random/arc4random_uniform
Bug: 17894480
Change-Id: Ia4b5a7cd2b2c6002ed70955f86f7780d26d15e26
2014-10-28 13:44:48 -07:00
Elliott Hughes
382938d092 am ec58e29b: Merge "pthread_setname_np appears in glibc 2.12."
* commit 'ec58e29b276b0f98eb624430fb70703dc32057bf':
  pthread_setname_np appears in glibc 2.12.
2014-10-28 19:28:35 +00:00
Elliott Hughes
7dbb1cff0b am 021b6412: Merge "Fix the type of u_ar0 in <sys/user.h>."
* commit '021b6412f7b7ce73b383480b25a8e5d69323f78c':
  Fix the type of u_ar0 in <sys/user.h>.
2014-10-28 19:28:34 +00:00
Elliott Hughes
ee8faa5e74 am 7f164f60: Merge "POSIX says pthread_mutex_trylock returns EBUSY, not EDEADLK."
* commit '7f164f6052b6dcee1c2cc70accdfac4b2c790b19':
  POSIX says pthread_mutex_trylock returns EBUSY, not EDEADLK.
2014-10-28 19:28:32 +00:00
Christopher Ferris
43dc3a9aae Remove the unnecessary generic-neon code.
Bug: 18156619
(cherry picked from commit 2169e17482da91865e412e55b52b88d7c8db47f6)

Change-Id: I4a7f5bb9ad4c27b274f3a3c86c1617ca0578b98f
2014-10-28 12:07:25 -07:00
Dmitriy Ivanov
3a3a4b8ae6 am e23f564b: Merge "Fix *tests-run-on-host target"
* commit 'e23f564b52fed0dce661cf6db25cf3a89bd66f18':
  Fix *tests-run-on-host target
2014-10-28 17:34:12 +00:00
Elliott Hughes
44331e8bb0 am c716dd1e: Merge "bionic tests: migrate test for mutex type from system/extras"
* commit 'c716dd1e21438ac6585be79fb799b3135e9b381f':
  bionic tests: migrate test for mutex type from system/extras
2014-10-28 17:34:01 +00:00
Elliott Hughes
13dcb88b0f Merge "Disable tzdata in $ANDROID_DATA." 2014-10-28 16:34:46 +00:00
Elliott Hughes
e24bf5d7b9 Disable tzdata in $ANDROID_DATA.
(cherry picked from 4c30130a2155c37e80af4c3b53bf4f6ce832e760.)

Bug: 18139284
Change-Id: I2670dc1791d635139a5d39a438dc08777439476b
2014-10-28 09:34:09 -07:00
Elliott Hughes
1ea31a2901 Merge "Don't mask out SA_RESTORER from sa_flags." into lmp-mr1-dev 2014-10-28 15:36:56 +00:00
Elliott Hughes
cd99bbfd50 Merge "Disable tzdata in $ANDROID_DATA." into lmp-mr1-dev 2014-10-28 15:06:31 +00:00
Elliott Hughes
28ea229bb2 Don't mask out SA_RESTORER from sa_flags.
glibc doesn't do this, and we probably shouldn't either.

Bug: 16703540
Bug: 17436734

(cherry picked from commit afe58ad9892de27a7acb0aaded6312ee0f958314)

Change-Id: Iada5d0ae814f438cb276f056b2b5e3675f0e3666
2014-10-28 07:55:53 -07:00
Dmitriy Ivanov
85d770211b am f56a2f5e: Merge "Remove unnecessary reinterpret_cast"
* commit 'f56a2f5ed2508e0743581003420c0f2d9cb54c7b':
  Remove unnecessary reinterpret_cast
2014-10-28 04:51:51 +00:00
Chih-Hung Hsieh
f3b0d9cd79 am 57c5a556: Merge "Disable clang compilation due to lack of ifunc."
* commit '57c5a5562b08007dbe6379a4b68ca3a0225747c0':
  Disable clang compilation due to lack of ifunc.
2014-10-28 04:51:47 +00:00
Elliott Hughes
1dd65cc30c am c83837ec: Merge "Make the netdb unit tests work on the host."
* commit 'c83837ec158a14bf84ea702c04f606de3b0599a8':
  Make the netdb unit tests work on the host.
2014-10-28 04:51:46 +00:00
Elliott Hughes
3f5d8a00e4 am cad8d226: Merge "Use mxcr_mask instead of mxcsr_mask to match glibc."
* commit 'cad8d226c3589a65775fda972d4cd3ebd3877dab':
  Use mxcr_mask instead of mxcsr_mask to match glibc.
2014-10-28 04:51:25 +00:00
Elliott Hughes
43ec1fb76c am a4c0b756: Merge "Add mkfifoat(3)."
* commit 'a4c0b7567190968d263bedd1073ea633510f9a45':
  Add mkfifoat(3).
2014-10-28 04:49:11 +00:00
Dmitriy Ivanov
3db80168ff am f33a7d7f: Merge "Fix mips build"
* commit 'f33a7d7f1cc96cf1445013fe49f6db0f03cbd44f':
  Fix mips build
2014-10-28 04:46:55 +00:00
Dmitriy Ivanov
fee054f3ec am 398eb5a7: Merge "Remove unnecessary lookups during relocations"
* commit '398eb5a7ee1f0f7173e463e82381431ef4b21a17':
  Remove unnecessary lookups during relocations
2014-10-28 04:46:54 +00:00
Dmitriy Ivanov
1babff27fd am 566f2bc6: Merge "Fix relocation to look for symbols in local group"
* commit '566f2bc623dbd1d6e8bcf3a6c6e7a6fffe7f68fd':
  Fix relocation to look for symbols in local group
2014-10-28 04:46:52 +00:00
Elliott Hughes
ac5df33e09 am 6c5694b6: Merge "Migrate system/extra getaddrinfo test, and fix a bug in getservbyname(3)."
* commit '6c5694b6c8343d740c36adbe904442cecd8030a6':
  Migrate system/extra getaddrinfo test, and fix a bug in getservbyname(3).
2014-10-28 04:33:09 +00:00
Pavel Chupin
8eb8c39299 [x86,x86_64] Fix libgcc unwinding through signal
This change provides __restore/__restore_rt on x86 and __restore_rt on
x86_64 with unwinding information to be able to unwind through signal
frame via libgcc provided unwinding interface. See comments inlined for
more details.

Also remove the test that had a dependency on
__attribute__((cleanup(foo_cleanup))). It doesn't provide us with any
better test coverage than we have from the newer tests, and it doesn't
work well across a variety architectures (presumably because no one uses
this attribute in the real world).

Tested this on host via bionic-unit-tests-run-on-host on both x86 and
x86-64.

Bug: 17436734
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>

(cherry picked from commit 50321e2e66f19998970e59d666bc9af387345b3a)

Change-Id: Iba90e36958b00c7cc7db5eeebf888dc89ce4d619
2014-10-27 16:42:49 -07:00
Elliott Hughes
190dce9e56 Stack unwinding unit tests.
Bug: 17436734

(cherry picked from commit bee1993a14b47bc7acda544242f405ae45e42566)

Change-Id: I7205a862ba2c3b474e287f5e9c8982cef4610af9
2014-10-27 16:42:37 -07:00
Elliott Hughes
e5e61a0a92 Use the kernel's sa_restorer for aarch64.
gdb was happy with what we had, but libgcc and libunwind weren't.
libgcc is happy with the kernel's restorer (because of the extra nop),
though libunwind looks like it's going to need code changes regardless.

We could make our restorer more like the kernel's one, but why bother
when we can just let the kernel supply the canonical one?

Bug: 17436734

(cherry picked from commit 1cff9a89645a8f362a9ce19c7f9544e98c1fd9e7)

Change-Id: Ie13d73fd97395e1979a67c2294e036a97c50000d
2014-10-27 16:42:19 -07:00
Elliott Hughes
5054e1a121 Fix 32-bit arm unwinding through signal frames.
gdb was already okay; libgcc and libunwind need a little extra help.

Bug: 17436734

(cherry picked from commit 148dff3ec6114a03acc722ae43990f1b342abad9)

Change-Id: I2cc997017acc57c930284af5264f353656b98c7b
2014-10-27 16:41:56 -07:00
Elliott Hughes
7dc2b7b30d Fix signal trampolines.
* LP32 should use sa_restorer too. gdb expects this, and future (>= 3.15) x86
  kernels will apparently stop supporting the case where SA_RESTORER isn't
  set.

* gdb and libunwind care about the exact instruction sequences, so we need to
  modify the code slightly in a few cases to match what they're looking for.

* gdb also cares about the exact function names (for some architectures),
  so we need to use __restore and __restore_rt rather than __sigreturn and
  __rt_sigreturn.

* It's possible that we don't have a VDSO; dl_iterate_phdr shouldn't assume
  that getauxval(AT_SYSINFO_EHDR) will return a non-null pointer.

This fixes unwinding through a signal handler in gdb for all architectures.
It doesn't fix libunwind for arm and arm64. I'll keep investigating that...

(cherry picked from commit 36f451a6d93b6807944d99fa23396e039c47e845)

Bug: 17436734
Change-Id: Ic1ea1184db6655c5d96180dc07bcc09628e647cb
2014-10-27 16:41:28 -07:00
Elliott Hughes
f96eaf6202 Merge "[x86,x86_64] Fix libgcc unwinding through signal" 2014-10-27 23:30:56 +00:00
Pavel Chupin
50321e2e66 [x86,x86_64] Fix libgcc unwinding through signal
This change provides __restore/__restore_rt on x86 and __restore_rt on
x86_64 with unwinding information to be able to unwind through signal
frame via libgcc provided unwinding interface. See comments inlined for
more details.

Also remove the test that had a dependency on
__attribute__((cleanup(foo_cleanup))). It doesn't provide us with any
better test coverage than we have from the newer tests, and it doesn't
work well across a variety architectures (presumably because no one uses
this attribute in the real world).

Tested this on host via bionic-unit-tests-run-on-host on both x86 and
x86-64.

Bug: 17436734
Change-Id: I2f06814e82c8faa732cb4f5648868dc0fd2e5fe4
Signed-off-by: Pavel Chupin <pavel.v.chupin@intel.com>
2014-10-27 16:14:55 -07:00
Elliott Hughes
4c30130a21 Disable tzdata in $ANDROID_DATA.
Bug: 18139284
Change-Id: I2670dc1791d635139a5d39a438dc08777439476b
2014-10-27 13:38:21 -07:00
Elliott Hughes
ec58e29b27 Merge "pthread_setname_np appears in glibc 2.12." 2014-10-27 20:01:36 +00:00
Elliott Hughes
ed29e858d0 pthread_setname_np appears in glibc 2.12.
And our emulator kernels are now new enough to not require a workaround.

Change-Id: Id56c983dbfd8abc69f72a78411a5502391941dfc
2014-10-27 12:01:51 -07:00
Elliott Hughes
021b6412f7 Merge "Fix the type of u_ar0 in <sys/user.h>." 2014-10-27 17:41:00 +00:00