Commit Graph

7667 Commits

Author SHA1 Message Date
Elliott Hughes
9e3a0356f4 am 1454ff25: Merge "Clear the return address register in __bionic_clone."
* commit '1454ff2574f0bee9fb3646c9c6dd30443e0dbd38':
  Clear the return address register in __bionic_clone.
2014-05-27 22:55:34 +00:00
Elliott Hughes
1454ff2574 Merge "Clear the return address register in __bionic_clone." 2014-05-27 22:53:52 +00:00
Elliott Hughes
e7dccdf683 Clear the return address register in __bionic_clone.
The unwinder will end up on the parent thread's stack if the return
address register is not cleared.

Bug: 14270816
Bug: 15195760
Change-Id: Iebcdf5cc881cad245643bb193760de35eb7f8b19
2014-05-27 15:49:51 -07:00
Dan Albert
4a542fc519 am 134911d7: Merge "Use __typeof__() instead of typeof()"
* commit '134911d75deab2b5babc175c894c002e875dfed6':
  Use __typeof__() instead of typeof()
2014-05-27 21:59:33 +00:00
Dan Albert
134911d75d Merge "Use __typeof__() instead of typeof()" 2014-05-27 21:57:24 +00:00
Dan Albert
a7821b7121 Use __typeof__() instead of typeof()
typeof() is a gcc builtin and is not always available (such as clang when
-std=c*). Both gcc and clang always expose __typeof__(), so just use that.

Change-Id: I75e2a990acc35f6f39b2c353f6548100ec03c67f
2014-05-27 12:47:54 -07:00
Elliott Hughes
946bc9528d am 8e85b4f0: Merge "Restore __srefill for LP32."
* commit '8e85b4f00e8816f22bf5b5f20b1f978432f2ae08':
  Restore __srefill for LP32.
2014-05-27 18:41:52 +00:00
Elliott Hughes
8e85b4f00e Merge "Restore __srefill for LP32." 2014-05-27 18:38:56 +00:00
Elliott Hughes
aa50585d96 Restore __srefill for LP32.
The NDK apparently includes an android_support.a library that
refers to __srefill in its copy of the vsnprintf implementation.

Bug: 15249361
Change-Id: Ic2cf6f21290b3146c42fbe0624f5e4d54f6194b4
2014-05-27 11:22:39 -07:00
Elliott Hughes
50c52f7424 am b3c75a1e: Merge "Restore __srget and __swbuf for LP32."
* commit 'b3c75a1e8ffbf575c2a425b34fd67ff8077da299':
  Restore __srget and __swbuf for LP32.
2014-05-26 05:10:46 +00:00
Elliott Hughes
b3c75a1e8f Merge "Restore __srget and __swbuf for LP32." 2014-05-26 05:07:20 +00:00
Elliott Hughes
21296dfe53 am bc904896: Merge "Add C11 <stdatomic.h>."
* commit 'bc904896a6f846e2648922d46324ea626ae9e1d1':
  Add C11 <stdatomic.h>.
2014-05-25 17:51:05 +00:00
Elliott Hughes
bc904896a6 Merge "Add C11 <stdatomic.h>." 2014-05-25 17:48:19 +00:00
Elliott Hughes
35d90bb6ec Restore __srget and __swbuf for LP32.
Anthony King <anthonydking@slimroms.net> reports that for Grouper the
Nvidia GL blobs need access to __swbuf. This is because the old <stdio.h>
had inline getc and putc implementations that directly referred to these
symbols.

Change-Id: I11a7b5550018ecc93d8f195c99857759669b2906
2014-05-25 10:38:25 -07:00
Elliott Hughes
06c9662a2f am 255789e4: Merge "Restore tkill for LP32."
* commit '255789e4d12d95dbb8e34cfae7fdc58514843ba5':
  Restore tkill for LP32.
2014-05-25 03:18:14 +00:00
Elliott Hughes
255789e4d1 Merge "Restore tkill for LP32." 2014-05-25 03:14:39 +00:00
Anthony King
001707363d Restore tkill for LP32.
libmono from Unity still requires tkill(2).

Change-Id: I37a1994b08086c7fedb5c78ea0dadf2d72bc1463
Signed-off-by: Anthony King <anthonydking@slimroms.net>
2014-05-24 20:13:13 -07:00
Elliott Hughes
85df714f91 am d4f37110: Merge "Restore __futex_wake and __futex_wait for LP32."
* commit 'd4f37110ce4b8439dd30540565f7c73e00cfe2fb':
  Restore __futex_wake and __futex_wait for LP32.
2014-05-25 03:11:02 +00:00
Elliott Hughes
d4f37110ce Merge "Restore __futex_wake and __futex_wait for LP32." 2014-05-25 03:09:00 +00:00
Elliott Hughes
bd3a98c6b9 Restore __futex_wake and __futex_wait for LP32.
Should fix Skype:

  java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "__futex_wake" referenced by "libsliq.so"...

Bug: 15196718
Change-Id: I8a18e18d830f0436e820cbde577121bd92710803
2014-05-24 17:19:36 -07:00
Elliott Hughes
e6c57fcb05 Add C11 <stdatomic.h>.
Bug: 14903517
Change-Id: I631dbfdaa698cf7fea8e3b5e18a32586383e62a5
2014-05-23 20:06:03 -07:00
Christopher Ferris
86f5d0f9c1 am 1c4d8301: Merge "Revert "Add optimized AArch64 versions of bcopy and wmemmove based on memmove""
* commit '1c4d83012fea4e6d011215bef1665cf68d2ac47c':
  Revert "Add optimized AArch64 versions of bcopy and wmemmove based on memmove"
2014-05-24 01:05:42 +00:00
Christopher Ferris
1c4d83012f Merge "Revert "Add optimized AArch64 versions of bcopy and wmemmove based on memmove"" 2014-05-24 01:02:31 +00:00
Christopher Ferris
fd0ce866ce Revert "Add optimized AArch64 versions of bcopy and wmemmove based on memmove"
This reverts commit 8167dd7cb9.

For some reason I thought the bcopy change was bzero. The bcopy code doesn't pass our tests, so reverting until I can figure out what's wrong.

Change-Id: Id89fe959ea5105cd58dff6bba8d91a30cc4bcb07
2014-05-24 01:02:22 +00:00
Christopher Ferris
5c34b003dc am 78c3e11e: Merge "Add optimized AArch64 versions of bcopy and wmemmove based on memmove"
* commit '78c3e11e78e7d2643ec25e2be1cfc258aeb6d9d7':
  Add optimized AArch64 versions of bcopy and wmemmove based on memmove
2014-05-24 01:01:01 +00:00
Christopher Ferris
78c3e11e78 Merge "Add optimized AArch64 versions of bcopy and wmemmove based on memmove" 2014-05-24 00:58:15 +00:00
Ben Cheng
5034829504 am f4985b14: Merge "Clear link register in __bionic_clone."
* commit 'f4985b14cfed187376a24dd4a0cd16206e746bd9':
  Clear link register in __bionic_clone.
2014-05-24 00:57:39 +00:00
Ben Cheng
f4985b14cf Merge "Clear link register in __bionic_clone." 2014-05-24 00:54:16 +00:00
Bernhard Rosenkraenzer
8167dd7cb9 Add optimized AArch64 versions of bcopy and wmemmove based on memmove
Add optimized versions of bcopy and wmemmove for AArch64 based on the
memmove implementation

Change-Id: Ie43d0ff4f8ec4edba5b4fb5ccacd941f81ac6557
Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>
2014-05-23 17:54:08 -07:00
Ben Cheng
8df0fe0c74 Clear link register in __bionic_clone.
Since __bionic_clone uses tail-call to invoke __bionic_clone_entry,
at runtime the unwinder will reach the stack of the clone() function,
which belongs to the parent thread, if the link register is not cleared.

BUG: 14270816
Change-Id: Ia3711c87f8b619debe73748c28b9fb8691ea698e
2014-05-23 16:35:21 -07:00
Elliott Hughes
764ebf8a90 am a486632e: Merge "Remove <sys/atomics.h>."
* commit 'a486632e789c6db4c35f969485ebb57f503bcf48':
  Remove <sys/atomics.h>.
2014-05-23 22:23:56 +00:00
Elliott Hughes
a486632e78 Merge "Remove <sys/atomics.h>." 2014-05-23 22:18:40 +00:00
Elliott Hughes
c3f909630b Remove <sys/atomics.h>.
Bug: 14903517
Change-Id: I6de1d9d3624922517fdc37922097abbc3b41f661
2014-05-23 14:36:30 -07:00
Calin Juravle
d2b129881a am b2604949: Merge "Migrate pthread_rwlock implementation away from sys/atomics"
* commit 'b26049490b3a5e054d7440b94c0082e8bfd09f0b':
  Migrate pthread_rwlock implementation away from sys/atomics
2014-05-23 10:11:35 +00:00
Calin Juravle
b26049490b Merge "Migrate pthread_rwlock implementation away from sys/atomics" 2014-05-23 10:07:46 +00:00
Elliott Hughes
69068fd919 am fb9a47c7: Merge "Hide various stdio implementation details."
* commit 'fb9a47c740661a1c578cfc4f16180f14724cbdf5':
  Hide various stdio implementation details.
2014-05-23 07:15:53 +00:00
Elliott Hughes
fb9a47c740 Merge "Hide various stdio implementation details." 2014-05-23 06:28:42 +00:00
Elliott Hughes
cdf15e3908 am 253fa170: Merge "Lose the hand-written futex assembler."
* commit '253fa170a3f6a1edce8ce4b8e6e966b35152b550':
  Lose the hand-written futex assembler.
2014-05-23 05:38:49 +00:00
Elliott Hughes
253fa170a3 Merge "Lose the hand-written futex assembler." 2014-05-23 05:34:28 +00:00
Elliott Hughes
2899de9b05 Hide various stdio implementation details.
I've left __sF exposed since that's how the OpenBSD stdin, stdout, stderr
are implemented. Other BSDs and glibc use a separate global for each instead
of an array.

Bug: 11156955
Change-Id: I9f3d2d4314a8d4a78c3197b9acd9258820c5f150
2014-05-22 20:06:23 -07:00
Elliott Hughes
ced906c849 Lose the hand-written futex assembler.
Also stop exporting 'futex'.

Bug: 12250341
Change-Id: Icc4fa4296cd04dfe0d1061822c69e2eb40c3433a
2014-05-22 19:49:11 -07:00
Dmitriy Ivanov
d97458eb87 am ce00354f: Merge "Do not add arcs to the soinfo graph on dlopen"
* commit 'ce00354fec9dfad87090aad4ec79c418e42e92f4':
  Do not add arcs to the soinfo graph on dlopen
2014-05-23 02:22:42 +00:00
Dmitriy Ivanov
ce00354fec Merge "Do not add arcs to the soinfo graph on dlopen" 2014-05-23 02:19:10 +00:00
Bjorn Andersson
3c005d6019 Do not add arcs to the soinfo graph on dlopen
While introducing RTLD_NOLOAD in b648a8a5 a change in how soinfo structs are
connected was also introduced. When calling dlopen the library that is loaded
is added as a child to the soinfo from which the caller comes - i.e. building a
dependency graph.

Unfortunately this shows issues upon unloading, such as blowing the stack if
there are loops in the graph.

This change reverts that part of b648a8a5, keeping everything as a child of the
root soinfo.

Change-Id: I604ee9210613b19f693a568158e69707620a95db
Signed-off-by: Bjorn Andersson <bjorn.andersson@sonymobile.com>
2014-05-22 19:08:14 -07:00
Elliott Hughes
5a95dd1446 am ea7dc320: Merge "Add some more BSD symbols to the list."
* commit 'ea7dc32080114af59789c119ca6aa4814426ea42':
  Add some more BSD symbols to the list.
2014-05-23 01:58:38 +00:00
Elliott Hughes
ea7dc32080 Merge "Add some more BSD symbols to the list." 2014-05-23 01:53:53 +00:00
Elliott Hughes
45bf4c315d Add some more BSD symbols to the list.
Bug: 11156955
Change-Id: I07489ec63536121dbfc372170ef5cf60a5c58948
2014-05-22 18:53:21 -07:00
Elliott Hughes
3fd88ebe0f am 0f79a2f4: Merge "Cleaned up pthread rwlocks implementation."
* commit '0f79a2f48788c093804c9f61a66105873eb1cb59':
  Cleaned up pthread rwlocks implementation.
2014-05-23 01:52:42 +00:00
Elliott Hughes
0f79a2f487 Merge "Cleaned up pthread rwlocks implementation." 2014-05-23 01:47:56 +00:00
Elliott Hughes
bfa87e27f7 am ec071ac0: Merge "Remove the tkill(2) stub."
* commit 'ec071ac062077498dfee3e2171371def7320aa56':
  Remove the tkill(2) stub.
2014-05-23 01:47:49 +00:00