OSDN Git Service
Elliott Hughes [Wed, 14 May 2014 18:35:49 +0000 (11:35 -0700)]
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
Elliott Hughes [Wed, 14 May 2014 17:59:52 +0000 (17:59 +0000)]
Merge "Fix a typo in the big g_ search/replace."
Elliott Hughes [Wed, 14 May 2014 17:58:58 +0000 (10:58 -0700)]
Fix a typo in the big g_ search/replace.
Change-Id: I79261de70d225236d0eadff288220258d697437f
Elliott Hughes [Wed, 14 May 2014 17:36:35 +0000 (17:36 +0000)]
Merge "Switch to g_ for globals."
Elliott Hughes [Wed, 14 May 2014 17:02:03 +0000 (10:02 -0700)]
Switch to g_ for globals.
That's what the Google style guide recommends, and we're starting
to get a mix.
Change-Id: Ib0c53a890bb5deed5c679e887541a715faea91fc
Ross McIlroy [Wed, 14 May 2014 14:27:40 +0000 (14:27 +0000)]
Merge "Fix x86_64 user_fpregs_struct to use the same name for the tag word as glibc."
Ross McIlroy [Wed, 14 May 2014 12:29:19 +0000 (13:29 +0100)]
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
Calin Juravle [Wed, 14 May 2014 10:33:46 +0000 (10:33 +0000)]
Merge "Change wctype_t from int to long."
Calin Juravle [Wed, 14 May 2014 10:33:34 +0000 (10:33 +0000)]
Merge "Change wctype_t from enum to int"
Elliott Hughes [Wed, 14 May 2014 02:21:20 +0000 (02:21 +0000)]
Merge "Use the NetBSD inet_ntop until the OpenBSD bug is fixed."
Elliott Hughes [Wed, 14 May 2014 02:17:46 +0000 (19:17 -0700)]
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
Dmitriy Ivanov [Wed, 14 May 2014 01:45:50 +0000 (01:45 +0000)]
Merge "Remove page level mprotects"
Elliott Hughes [Wed, 14 May 2014 01:43:15 +0000 (01:43 +0000)]
Merge "Fix <sys/endian.h> uint32_t build failures."
Elliott Hughes [Wed, 14 May 2014 01:42:12 +0000 (18:42 -0700)]
Fix <sys/endian.h> uint32_t build failures.
Change-Id: I833b51318f0bf7749073859b7ffacc668c27558e
Dmitriy Ivanov [Wed, 14 May 2014 01:34:48 +0000 (18:34 -0700)]
Remove page level mprotects
Freeing block mprotects on the page which it turn
may lead to application crash if linker subsequently
tries to modify another block on the page.
Bug:
14895266
Change-Id: I8ff7f5df467d7be184242de652032b3c84e24b76
Elliott Hughes [Wed, 14 May 2014 01:09:00 +0000 (01:09 +0000)]
Merge "Flesh out <arpa/inet.h>."
Elliott Hughes [Tue, 13 May 2014 23:05:51 +0000 (16:05 -0700)]
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
Elliott Hughes [Wed, 14 May 2014 01:06:11 +0000 (01:06 +0000)]
Merge "We don't need two copies of <nsswitch.h>."
Elliott Hughes [Wed, 14 May 2014 01:05:29 +0000 (18:05 -0700)]
We don't need two copies of <nsswitch.h>.
Change-Id: I3f874326d96f41249f5c9b1b3c2885f858589029
Sreeram Ramachandran [Wed, 14 May 2014 00:43:47 +0000 (00:43 +0000)]
Merge "Fix build (take two)."
Sreeram Ramachandran [Wed, 14 May 2014 00:24:03 +0000 (17:24 -0700)]
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
Sreeram Ramachandran [Tue, 13 May 2014 23:57:07 +0000 (23:57 +0000)]
Merge "Fix build."
Sreeram Ramachandran [Tue, 13 May 2014 23:30:12 +0000 (16:30 -0700)]
Fix build.
Change-Id: I33293d8bc62cbb22e23a704c4242e7e9d3fce7c5
Sreeram Ramachandran [Tue, 13 May 2014 22:07:25 +0000 (22:07 +0000)]
Merge "Introduce netd_client, a dynamic library that talks to netd."
Sreeram Ramachandran [Mon, 12 May 2014 18:19:16 +0000 (11:19 -0700)]
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
Elliott Hughes [Tue, 13 May 2014 18:27:30 +0000 (18:27 +0000)]
Merge "Upgrade to tzdata2014c."
Elliott Hughes [Tue, 13 May 2014 18:26:46 +0000 (18:26 +0000)]
Merge "Consistently use #if defined(__BIONIC__) in tests."
Elliott Hughes [Tue, 13 May 2014 18:23:18 +0000 (11:23 -0700)]
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
Elliott Hughes [Tue, 13 May 2014 18:19:57 +0000 (11:19 -0700)]
Consistently use #if defined(__BIONIC__) in tests.
I've also switched some tests to be positive rather than negative,
because !defined is slightly harder to reason about and there are
only two cases: bionic and glibc.
Change-Id: I8d3ac40420ca5aead3e88c69cf293f267273c8ef
Elliott Hughes [Tue, 13 May 2014 18:14:48 +0000 (18:14 +0000)]
Merge "Add getmntent_r to our collection of <mntent.h> compatibility stubs."
Elliott Hughes [Tue, 13 May 2014 17:44:07 +0000 (10:44 -0700)]
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
Elliott Hughes [Tue, 13 May 2014 17:32:47 +0000 (17:32 +0000)]
Merge "Reduce stack usage of tmpfile(3)."
Calin Juravle [Tue, 13 May 2014 17:16:30 +0000 (17:16 +0000)]
Merge "Use __LP64__ instead of __LP32__ in sched.h"
Elliott Hughes [Tue, 13 May 2014 17:14:22 +0000 (10:14 -0700)]
Reduce stack usage of tmpfile(3).
Also ensure that none of our home-grown code uses more than 2KiB per frame.
Change-Id: I8987a17d72f4b7f082bb7fa25e137c8433664c14
Dmitriy Ivanov [Tue, 13 May 2014 15:49:18 +0000 (15:49 +0000)]
Merge "Refactor linker allocator"
Calin Juravle [Tue, 13 May 2014 15:01:43 +0000 (16:01 +0100)]
Use __LP64__ instead of __LP32__ in sched.h
Gcc defines only __LP64__ so testing __LP32__ will always be false.
Bug:
14881256
Change-Id: Ic63c1d562be09c3eb4b9e17c9e5ef2d9e404db80
Calin Juravle [Tue, 13 May 2014 12:11:27 +0000 (13:11 +0100)]
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
Calin Juravle [Tue, 13 May 2014 11:47:27 +0000 (12:47 +0100)]
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
Calin Juravle [Tue, 13 May 2014 10:31:06 +0000 (10:31 +0000)]
Merge "Undef private *_BODY defines after use"
Calin Juravle [Tue, 13 May 2014 10:01:11 +0000 (11:01 +0100)]
Undef private *_BODY defines after use
Bug:
14865741
Change-Id: I1398f7b3f64e3c94f2714cede5b61205dfa78a24
Calin Juravle [Tue, 13 May 2014 09:37:07 +0000 (09:37 +0000)]
Merge "Add fpos_t tests."
Calin Juravle [Tue, 13 May 2014 09:36:01 +0000 (09:36 +0000)]
Merge "Support mb sequences across calls to mb*to*wcs* functions"
Dmitriy Ivanov [Mon, 5 May 2014 23:49:04 +0000 (16:49 -0700)]
Refactor linker allocator
Makes it reusable for different fixed sized and not very
big structures (<PAGE_SIZE).
Change-Id: Id5ec13fc6541b1935ef7fe3671c22b98685abbae
Christopher Ferris [Tue, 13 May 2014 00:48:40 +0000 (00:48 +0000)]
Merge "Add 64-bit Silvermont-optimized string/memory functions."
Varvara Rainchik [Tue, 29 Apr 2014 13:44:56 +0000 (17:44 +0400)]
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>
Christopher Ferris [Tue, 13 May 2014 00:26:50 +0000 (00:26 +0000)]
Merge "Add 32-bit Silvermont-optimized string/memory functions."
Calin Juravle [Thu, 8 May 2014 13:42:06 +0000 (14:42 +0100)]
Add fpos_t tests.
Bug:
13077905
Change-Id: I86bb0ee95660f69f9971231c6f828a3a067d1ac8
Calin Juravle [Thu, 8 May 2014 13:38:35 +0000 (14:38 +0100)]
Support mb sequences across calls to mb*to*wcs* functions
Bug:
13077905
Change-Id: I5abdc7cc3c27c109b7900c94b112f18a95c35763
Elliott Hughes [Mon, 12 May 2014 23:14:51 +0000 (23:14 +0000)]
Merge "Remove the useless indirection in mips' __set_tls."
Elliott Hughes [Mon, 12 May 2014 23:11:06 +0000 (16:11 -0700)]
Remove the useless indirection in mips' __set_tls.
Change-Id: I12e9d6716c42ccbccc9a186441aca0736bb22d05
Elliott Hughes [Mon, 12 May 2014 22:30:41 +0000 (22:30 +0000)]
Merge "Fix use-after-free errors in stdio_test."
Elliott Hughes [Mon, 12 May 2014 22:15:37 +0000 (15:15 -0700)]
Fix use-after-free errors in stdio_test.
fclose(3) frees the passed-in FILE*. We should close(2) the underlying fd,
not fclose(3) the stream, if we want to test what happens with a stream
we can't read from.
Bug:
14466691
Change-Id: I99fed5904b0266b9c6ae05d0b9cf2e926446c064
Varvara Rainchik [Thu, 24 Apr 2014 11:41:20 +0000 (15:41 +0400)]
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>
Dmitriy Ivanov [Mon, 12 May 2014 18:49:34 +0000 (18:49 +0000)]
Merge "Cleanup: updated comments"
Dmitriy Ivanov [Mon, 12 May 2014 18:36:56 +0000 (11:36 -0700)]
Cleanup: updated comments
Bug:
14566672
Change-Id: I49ad28e3914b7d559db1e98542fee919db768f49
Dmitriy Ivanov [Mon, 12 May 2014 17:21:35 +0000 (17:21 +0000)]
Merge "Cleanup: remove AARCH/ARM_COPY relocation support"
Dmitriy Ivanov [Mon, 12 May 2014 16:06:14 +0000 (09:06 -0700)]
Cleanup: remove AARCH/ARM_COPY relocation support
They are only legal for ET_EXEC binaries and these are no
longer supported.
Bug:
14566672
Change-Id: I99e0ff47e8c572db474bc5e52df870a72269abb3
Calin Juravle [Mon, 12 May 2014 09:59:57 +0000 (09:59 +0000)]
Merge "Reserve space for the future in statvfs(64)"
Calin Juravle [Fri, 9 May 2014 21:28:09 +0000 (22:28 +0100)]
Reserve space for the future in statvfs(64)
The kernel struct has some spare space at the end too, and some extra
fields, so having a bit of flexibility in statvfs might be worthwhile.
Bug:
14681331
Bug:
12875898
Change-Id: I5b502c5dd9d2e3bb8f34804f83c02669cefce01e
Calin Juravle [Mon, 12 May 2014 09:53:40 +0000 (09:53 +0000)]
Merge "Align struct passwd definition with other variations of libc"
Elliott Hughes [Sat, 10 May 2014 03:32:28 +0000 (03:32 +0000)]
Merge "Bring in google3-style DISALLOW_* macros."
Elliott Hughes [Sat, 10 May 2014 02:12:08 +0000 (19:12 -0700)]
Bring in google3-style DISALLOW_* macros.
I've been meaning to do this for a very long time...
Change-Id: Ia8c16eee7c026c3c9505399948485fb778fb0152
Elliott Hughes [Sat, 10 May 2014 00:38:50 +0000 (00:38 +0000)]
Merge "Align the child stack in clone(2)."
Elliott Hughes [Fri, 9 May 2014 21:42:16 +0000 (14:42 -0700)]
Align the child stack in clone(2).
Also let clone(2) set the TLS for x86.
Also ensure we initialize the TLS before we clone(2) for all architectures.
Change-Id: Ie5fa4466e1c9ee116a281dfedef574c5ba60c0b5
Calin Juravle [Fri, 9 May 2014 20:50:53 +0000 (21:50 +0100)]
Align struct passwd definition with other variations of libc
Add pg_gecos ("real name") field to struct passwd.
Bug:
14679430
Bug:
12875898
Change-Id: I833ec2c46f6a6259b7232a8e3f7942968ef0b50d
Elliott Hughes [Fri, 9 May 2014 21:28:05 +0000 (21:28 +0000)]
Merge "Align arm64 stacks to 16 bytes in __bionic_clone."
Christopher Ferris [Fri, 9 May 2014 21:09:55 +0000 (21:09 +0000)]
Merge "Use larger neon instructions for moving data."
Elliott Hughes [Fri, 9 May 2014 19:16:20 +0000 (12:16 -0700)]
Align arm64 stacks to 16 bytes in __bionic_clone.
Also ensure that arm64/x86-64/x86 assembler uses local labels.
(There are are so many non-local labels in arm that fixing them
seems out of scope.)
Also synchronize the __bionic_clone.S comments.
Change-Id: I03b4f84780d996b54d6637a074638196bbb01cd4
Christopher Ferris [Fri, 2 May 2014 01:10:51 +0000 (18:10 -0700)]
Use larger neon instructions for moving data.
Included is a new target generic-neon that will use neon instructions
on 64 bit platforms where appropriate.
Change-Id: Iaf71b768780aa9240a24539cd87666ca9298e4c6
Elliott Hughes [Fri, 9 May 2014 16:13:52 +0000 (16:13 +0000)]
Merge "Hide the __bionic_clone and __bionic_clone_entry implementation details."
Elliott Hughes [Fri, 9 May 2014 04:33:31 +0000 (04:33 +0000)]
Merge "Declare sincos/sincosf/sincosl in <math.h>."
Elliott Hughes [Fri, 9 May 2014 04:19:12 +0000 (21:19 -0700)]
Declare sincos/sincosf/sincosl in <math.h>.
Change-Id: If7b98f98c7ab4d3d77d310be082bff64512d51a8
Elliott Hughes [Fri, 9 May 2014 02:00:23 +0000 (19:00 -0700)]
Hide the __bionic_clone and __bionic_clone_entry implementation details.
clone(2) is the public symbol.
Also switch a test from __bionic_clone to clone; testing public API
means the test now works on glibc too.
Change-Id: If59def26a00c3afadb8a6cf9442094c35a59ffde
Dmitriy Ivanov [Fri, 9 May 2014 00:52:07 +0000 (00:52 +0000)]
Merge "Test dlopen with symlinked .so files"
Elliott Hughes [Thu, 8 May 2014 23:52:59 +0000 (23:52 +0000)]
Merge "wchar_test.cpp: fix error between comparison signed and unsigned integer"
Dmitriy Ivanov [Thu, 8 May 2014 19:27:25 +0000 (12:27 -0700)]
Test dlopen with symlinked .so files
Bug:
9741592
Change-Id: I68c59d6f4e690136395c3dc3de13f99ce38de528
Dmitriy Ivanov [Thu, 8 May 2014 20:52:10 +0000 (20:52 +0000)]
Merge "Remove support for non-PIE executables"
Nick Kralevich [Wed, 7 May 2014 17:32:39 +0000 (10:32 -0700)]
Remove support for non-PIE executables
Don't support the dynamic linker loading ET_EXEC executables. Only
support ET_DYN executables.
Bug:
14566672
Change-Id: Ia1f2bfffe7ea867c1cd62e67d7fd637c60c0728d
Yongqin Liu [Thu, 8 May 2014 15:21:01 +0000 (23:21 +0800)]
wchar_test.cpp: fix error between comparison signed and unsigned integer
when compile the cts package with aarch64 gcc4.9, will get following error:
bionic/tests/wchar_test.cpp:253:3: required from here
external/gtest/include/gtest/gtest.h:1448:16:
error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]
this change fix it by using static_cast<wchar_t> as suggested by Calin Juravle
Change-Id: I7fb9506e7b84b8a12b9d003458d4f0e78554c3cd
Signed-off-by: Yongqin Liu <yongqin.liu@linaro.org>
Elliott Hughes [Thu, 8 May 2014 00:13:26 +0000 (00:13 +0000)]
Merge "Fix LOG_ID_CRASH build failure."
Elliott Hughes [Thu, 8 May 2014 00:12:40 +0000 (17:12 -0700)]
Fix LOG_ID_CRASH build failure.
Change-Id: I66517e30c568d7f36f6bf6b1e4507ecf14f01226
Elliott Hughes [Wed, 7 May 2014 23:40:27 +0000 (23:40 +0000)]
Merge "Send bionic's fatal logging to the crash log."
Elliott Hughes [Wed, 7 May 2014 23:40:10 +0000 (23:40 +0000)]
Merge "Add basic tests for fsync/fdatasync."
Elliott Hughes [Wed, 7 May 2014 23:35:59 +0000 (16:35 -0700)]
Send bionic's fatal logging to the crash log.
Bug:
14159417
Change-Id: I7aa986fb8e11660035221f9bb4fe0bc40ac36c58
Elliott Hughes [Wed, 7 May 2014 21:30:33 +0000 (14:30 -0700)]
Add basic tests for fsync/fdatasync.
Bug:
14613980
Change-Id: Ie8002c2a1abae07295b7bdb33772764767c03d37
Dmitriy Ivanov [Wed, 7 May 2014 20:49:00 +0000 (20:49 +0000)]
Merge "Add missing test for atexit test suite."
Elliott Hughes [Wed, 7 May 2014 19:58:20 +0000 (19:58 +0000)]
Merge "Give bionic's __ANDROID_API__ a more reasonable value."
Elliott Hughes [Wed, 7 May 2014 19:37:44 +0000 (12:37 -0700)]
Give bionic's __ANDROID_API__ a more reasonable value.
This matches what frameworks/base does with Build.VERSION and means that
bionic's version number will always sort >= than any released version.
This should prevent confusion in code that builds both against bionic
and the NDK.
(Note that <sys/cdefs.h> drags this in, so it's always in the namespace.)
Bug:
14613709
Change-Id: I91fb745920e848a6b20f2f5797c0a7d6cde6c032
Dmitriy Ivanov [Tue, 6 May 2014 02:52:13 +0000 (19:52 -0700)]
Add missing test for atexit test suite.
Change-Id: I3d14d7df1da53ccef534c106633593551ab6a7cb
Calin Juravle [Wed, 7 May 2014 18:31:11 +0000 (18:31 +0000)]
Merge "Fix bionic-unit-tests-glibc-run target"
Calin Juravle [Wed, 7 May 2014 18:06:30 +0000 (19:06 +0100)]
Fix bionic-unit-tests-glibc-run target
Configure multilib for bionic-unit-tests-glibc-run target (the path to
the host executable was already patched to support multilib build but
the multilib itself wasn't configured).
Change-Id: If533fbdb19bc737e543cf85a0787505458f24579
Torne (Richard Coles) [Wed, 7 May 2014 15:25:44 +0000 (15:25 +0000)]
Merge "Test that relro sharing actually saves memory."
Calin Juravle [Wed, 7 May 2014 14:04:31 +0000 (14:04 +0000)]
Merge "Reserve some space in sem_t for the future."
Calin Juravle [Wed, 7 May 2014 14:04:21 +0000 (14:04 +0000)]
Merge "Allow for better utmp logging."
Calin Juravle [Wed, 7 May 2014 14:04:11 +0000 (14:04 +0000)]
Merge "Fix ino_t and suseconds_t"
Calin Juravle [Wed, 7 May 2014 14:04:00 +0000 (14:04 +0000)]
Merge "Leave more space for extensions in pthread_rwlockattr_t"
Elliott Hughes [Wed, 7 May 2014 04:04:27 +0000 (04:04 +0000)]
Merge "Change the interface for fatal logging."
Elliott Hughes [Wed, 7 May 2014 03:37:22 +0000 (20:37 -0700)]
Change the interface for fatal logging.
This more general interface lets liblog give us any fatal log message,
regardless of source. This means we can remove the special case for
LOG_ALWAYS_FATAL with a simpler scheme that automatically works for
the VM too.
Change-Id: Ia6dbf7c3dbabf223081bd5159294835d954bb067
Elliott Hughes [Tue, 6 May 2014 20:42:10 +0000 (20:42 +0000)]
Merge "Fix a gethnamaddr.c warning that's already fixed upstream."
Elliott Hughes [Tue, 6 May 2014 20:21:03 +0000 (20:21 +0000)]
Merge "Sync with upstream OpenBSD wcsftime.c."