- 10 Oct, 2014 1 commit
-
-
Christopher Ferris authored
Bug: 17813018 Change-Id: Id939426ee5303117b9601e7915fcfec5024fc621
-
- 09 Oct, 2014 1 commit
-
-
Christopher Ferris authored
It turns out that appportable has a version that calls dlmalloc directly. Re-add the dlmalloc symbol for 32 bit only as a compatibility shim that calls malloc. Bug: 17881362 Change-Id: I8f20963b0b8d323489dc083e4063779e0d1d7447
-
- 07 Oct, 2014 2 commits
-
-
Elliott Hughes authored
This library calls pthread_mutex_lock and pthread_mutex_unlock with a NULL pthread_mutex_t*. This gives them (and their users) one release to fix things. Bug: 17443936 (cherry picked from commit 7d3f553f) Change-Id: Ie26bbecd3a74d61113b51c18832872499b97ee86 (cherry picked from commit b5e7eba6)
-
Christopher Ferris authored
* commit '40bc7cd4': DO NOT MERGE Re-add .save directive for arm assembler code.
-
- 06 Oct, 2014 1 commit
-
-
Christopher Ferris authored
For silvermont, the __popcountsi2 symbol does not get exported by libc. But for atom, this symbol is exported. Since we already exported this symbol for previous releases, it's better to just follow through and force the export, but only for 32 bit. x86 64 bit will not export this symbol. Bug: 17681440 Change-Id: I6c62245f0960910f64baaaf6d9d090bf3ea5f435
-
- 04 Oct, 2014 1 commit
-
-
Alex Van Brunt authored
Unlike times(), clock_gettime() is implemented as a vDSO on many architectures. So, using clock_gettime() will return a more accurate time and do so with less overhead because it does have the overhead of calling into the kernel. It is also significantly more accurate because it measures the actual time in nanoseconds rather than the number of ticks (typically 1 millisecond or more). Bug: 17814435 (cherry picked from commit 8d0b2dbf) Change-Id: Id4945d9f387330518f78669809639952e9227ed9
-
- 03 Oct, 2014 1 commit
-
-
Elliott Hughes authored
Bug: 17441123 Bug: 17814435 (cherry picked from commit f83c208b) Change-Id: I2065afe73b79a8d86404edee16e983625d902cdc
-
- 25 Sep, 2014 2 commits
-
-
Elliott Hughes authored
-
Elliott Hughes authored
Keeps a variety of apps running. Bug: 17047819 Change-Id: I55882ec95f2b59a5df76e5a89c23aa315609e01d
-
- 24 Sep, 2014 2 commits
-
-
Christopher Ferris authored
It's not allowed for a shell user to create a fifo in /data/local/tmp. Make the test do nothing if not run as root. Bug: 17646702 Change-Id: I932262fa233eae8b5dd607a2398a47c50a208701
-
Dan Albert authored
strtoll(3), strtoull(3), wcstoll(3), and wcstoull(3) all take an _int_ as a base, not a size_t. This is an ABI compatibility issue. Bug: 17628622 Change-Id: I17f8eead34ce2112005899fc30162067573023ec (cherry picked from commit 3c5037f1)
-
- 14 Sep, 2014 1 commit
-
-
Christopher Ferris authored
Bug: 17407564 Change-Id: Idcfc40a7254605280e3d5474c61ae1ab7b2b7b51
-
- 11 Sep, 2014 5 commits
-
-
Elliott Hughes authored
Bug: 17476127 Change-Id: I0ef1355ac913d782c268a638f88642d6cfc236c2
-
Elliott Hughes authored
A lot of third-party code calls the private __get_thread symbol, often as part of a backport of bionic's pthread_rwlock implementation. Hopefully this will go away for LP64 (since you're guaranteed the real implementation there), but there are still APIs that take a tid and no way to convert between a pthread_t and a tid. pthread_gettid_np is a public API for that. To aid the transition, make __get_thread available again for LP32. Bug: 14079438 Change-Id: I43fabc7f1918250d31d4665ffa4ca352d0dbeac1
-
Elliott Hughes authored
Bug: 12449798 (cherry picked from commit 9990b397) Change-Id: Iba92e2aa262666a59fc38b870dfd9f4082eeb628
-
Elliott Hughes authored
-
Elliott Hughes authored
Bug: 12449798 Change-Id: I07cbf3f670a0d1304b68148325a774f266b5c433
-
- 10 Sep, 2014 1 commit
-
-
Lorenzo Colitti authored
Bug: 16070602 Change-Id: I605f1cca50b08479ebcad290b3bd179f59be8a96
-
- 08 Sep, 2014 3 commits
-
-
Elliott Hughes authored
The use of the .hidden directive to avoid going via the PLT for __set_errno had the side-effect of actually making __set_errno hidden (which is odd because assembler directives don't usually affect symbols defined in a different file --- you can't even create a weak reference to a symbol that's defined in a different file). This change switches the system call stubs over to a new always-hidden __set_errno_internal and has a visible __set_errno on LP32 just for binary compatibility with old NDK apps. Bug: 17423135 Change-Id: I6b6d7a05dda85f923d22e5ffd169a91e23499b7b
-
Elliott Hughes authored
-
Elliott Hughes authored
This was in <stdlib.h> in older releases. It's no longer used, but we can preserve backwards compatibility by making it a no-op. Bug: 16205834 Change-Id: Idde7b46df4f253e39675600bcf82352879a716e7
-
- 06 Sep, 2014 2 commits
-
-
Christopher Ferris authored
-
Christopher Ferris authored
Bug: 17337831 Change-Id: I50c50559a5dfa083c85f064042bc0726718c988b
-
- 05 Sep, 2014 2 commits
-
-
Elliott Hughes authored
Bug: 17407423 Change-Id: I47fe499a4c396bf09d7b78fd828728d04777398b
-
Elliott Hughes authored
There were two problems here: * This would fail when run with unlimited stack, because it didn't know that bionic reports unlimited stacks as 8MiB. * This would leave RLIMIT_STACK small, causing failures to exec (so the popen and system tests would fail). (cherry-pick of 27a9aed8 plus the new ScopeGuard.h from a3ad450a.) Bug: 17394276 Change-Id: I5b92dc64ca089400223b2d9a3743e9b9d57c1bc2
-
- 03 Sep, 2014 1 commit
-
-
Elliott Hughes authored
The current arc4random implementation stirs itself as needed, but we need to keep an arc4random_stir symbol around for binary compatibility. Bug: 17291075 Change-Id: Iaf6171c3ec65c39c1868364d5b35ea280e29a363
-
- 02 Sep, 2014 5 commits
-
-
Elliott Hughes authored
-
Hans Boehm authored
This is needed to make L work correctly, and bionic tests pass again, after applying the equivalent of commit 00aaea36 there. It makes the preexisting code that uses __sync implementations much more useful, although we should no longer be exercising that code in AOSP. Specifically fixes: We were invoking __has_extension and __has_builtin for GCC compilations. They're clang specific. Restructured the tests. The __sync implementation was not defining the LOCK_FREE macros. ATOMIC_VAR_INIT was using named field initializations. These are a C, not C++, feature, that is not supported by g++ 4.6. The stdatomic bionic test still failed with 4.6 and glibc with our questionable LOCK_FREE macro implementation. Don't run that piece with 4.6. In L, this is a prerequisite for fixing: Bug:16880454 Bug:16513433 Change-Id: I9b61e42307f96a114dce7552b6ead4ad1c544eab (cherry picked from commit 32429606)
-
Elliott Hughes authored
From the release notes: Changes affecting future time stamps Turks & Caicos is switching from US eastern time to UTC-4 year-round, modeled as a switch from EST/EDT to AST on 2014-11-02 at 02:00. Changes affecting past time stamps Time in Russia or the USSR before 1926 or so has been corrected by a few seconds in the following zones: Asia/Irkutsk, Asia/Krasnoyarsk, Asia/Omsk, Asia/Samarkand, Asia/Tbilisi, Asia/Vladivostok, Asia/Yakutsk, Europe/Riga, Europe/Samara. For Asia/Yekaterinburg the correction is a few minutes. (Thanks to Vladimir Karpinsky.) The Portuguese decree of 1911-05-26 took effect on 1912-01-01. This affects 1911 time stamps in Africa/Bissau, Africa/Luanda, Atlantic/Azores, and Atlantic/Madeira. Also, Lisbon's pre-1912 GMT offset was -0:36:45 (rounded from -0:36:44.68), not -0:36:32. (Thanks to Stephen Colebourne for pointing to the decree.) Asia/Dhaka ended DST on 2009-12-31 at 24:00, not 23:59. A new file 'backzone' contains data which may appeal to connoisseurs of old time stamps, although it is out of scope for the tz database, is often poorly sourced, and contains some data that is known to be incorrect. The new file is not recommended for ordinary use and its entries are not installed by default. (Thanks to Lester Caine for the high-quality Jersey, Guernsey, and Isle of Man entries.) Some more zones have been turned into links, when they differed from existing zones only for older time stamps. As usual, these changes affect UTC offsets in pre-1970 time stamps only. Their old contents have been moved to the 'backzone' file. The affected zones are: Africa/Bangui, Africa/Brazzaville, Africa/Douala, Africa/Kinshasa, Africa/Libreville, Africa/Luanda, Africa/Malabo, Africa/Niamey, and Africa/Porto-Novo. Bug: 17277574 (cherry picked from commit 9685c30a) Change-Id: I6120be3a0ec76af2d07ca6f9ea6f83d81d215803
-
Hans Boehm authored
Stdatomic.h was potentially redefining _Atomic, in spite of a prior definition by <atomic>. This could cause g++ builds that included <stdatomic.h> with an available <atomic> header to break. A functional stdatomic.h is a prerequisite for fixing the following bugs. This is the middle of 3 AOSP updates to bionics stdatomic.h that are needded to get there. Bug:16880454 Bug:16513433 Change-Id: I562c7115118c0587d594d4d5b62d25101e47bfd8 (cherry picked from commit 3e4a0099)
-
Hans Boehm authored
We seem to use this stdatomic.h sometimes, and slightly different prebuilts at other times, making them all difficult to test, and making it unclear which one we're testing. This generalizes the bionic header so that it can be used directly as the prebuilt header as well. So long as they don't diverge again, that should somewhat improve test coverage. Use the correct builtin for atomic_is_lock_free. Fix atomic_flag_init. Turn on atomic tests even with __GLIBC__, since they now appear to pass. Include uchar.h in stdatomic.h where needed. Add a basic memory ordering test. Fix bit-rotted comments in bionic tests makefile. Prerequisite for fixing b/16880454 and Bug:16513433 Change-Id: If6a14c1075b379395ba5d93357d56025c0ffab68 (cherry picked from commit 00aaea36)
-
- 01 Sep, 2014 1 commit
-
-
Dmitriy Ivanov authored
-
- 29 Aug, 2014 2 commits
-
-
Elliott Hughes authored
Bug: 16874785 (cherry picked from commit e0c56efd) Change-Id: I9c922ba019f648766fc399d1c4e35e789e25acd4
-
Dmitriy Ivanov authored
Change lookup order during relocation so that ld_preloads always precede caller (unless caller is main executable). Asan needs this change in order to intercept libc->libc calls. Bug: 15432753 Change-Id: If69aa16efe59aa35bb30e96feb83d08f1efbec86
-
- 27 Aug, 2014 6 commits
-
-
Elliott Hughes authored
...rather than just what's already mapped in. This seems somewhat contrary to POSIX's "All pages within the stack described by stackaddr and stacksize shall be both readable and writable by the thread", but it's what glibc does. Bug: 17111575 (cherry picked from commit 9e4ffa70) Change-Id: I73f219a569917b2e4546c09436d7ef5231facc07
-
Elliott Hughes authored
-
Christopher Ferris authored
-
Christopher Ferris authored
When enabling debug malloc, the snprintf calls in the linker fails to update the buffer. The problem is that snprintf makes a call to pthread_getspecific that returns a valid pointer, but the data it points to is zero. This should never happen and causes the snprintf to stop and do nothing. Temporarily replace snprintf with a different implementation to work around this issue. Bug: 16874447 Bug: 17302493 Change-Id: I7a500f28adf153150cf2812fae745ff41f1c48d3
-
Elliott Hughes authored
Merge "call uselocale() before freelocale() to make sure that g_local_key has a valid locale." into lmp-dev
-
Wally Yau authored
For tests that call uselocale(), the locale is stored in the g_userlocale_key thread-specific key. If freelocale() is called later, then g_uselocal_key points to a deleted pointer. CTS eventually calls vfprintf to print the result, which calls MB_CUR_MAX and MB_CUR_MAX accesses the deleted locale stored in g_uselocale_key, causing unpredictable errors. Fixed the tests by calling uselocale() with the old locale before calling freelocale. Bug: 17299565 Change-Id: I87efa2a9b16999a11d587f68d3aeedcbe6ac8a2c
-