OSDN Git Service

android-x86/bionic.git
7 years agoMerge "loader: stop linking libdl/c/m into the loader" am: 660affdf61
Dimitry Ivanov [Tue, 6 Dec 2016 23:45:38 +0000 (23:45 +0000)]
Merge "loader: stop linking libdl/c/m into the loader" am: 660affdf61
am: 60e7557c1c

Change-Id: I6dce1eb383738af733e7d84f44bdf5f4d21066c4

7 years agoloader: stop linking libdl/c/m into the loader am: fc0d48078a
Dimitry Ivanov [Tue, 6 Dec 2016 23:45:28 +0000 (23:45 +0000)]
loader: stop linking libdl/c/m into the loader am: fc0d48078a
am: d2d51ff304

Change-Id: I643976459a6d2326882cde5a7fd1955e6bbaa6de

7 years agoMerge "loader: stop linking libdl/c/m into the loader"
Dimitry Ivanov [Tue, 6 Dec 2016 23:41:00 +0000 (23:41 +0000)]
Merge "loader: stop linking libdl/c/m into the loader"
am: 660affdf61

Change-Id: Id6e0a01140182ca3fe25b9d439d435a5f03e7811

7 years agoloader: stop linking libdl/c/m into the loader
Dimitry Ivanov [Tue, 6 Dec 2016 23:40:59 +0000 (23:40 +0000)]
loader: stop linking libdl/c/m into the loader
am: fc0d48078a

Change-Id: I05ef4a14296e2b73de29510062916853a426a114

7 years agoMerge "loader: stop linking libdl/c/m into the loader"
Treehugger Robot [Tue, 6 Dec 2016 22:09:18 +0000 (22:09 +0000)]
Merge "loader: stop linking libdl/c/m into the loader"

7 years agoloader: stop linking libdl/c/m into the loader
Dimitry Ivanov [Tue, 6 Dec 2016 19:10:09 +0000 (11:10 -0800)]
loader: stop linking libdl/c/m into the loader

This is to prevent situations when libgcc.a calls into incorrect
implementation of dl_iterate_phdr.

Bug: http://b/27106625
Test: build && run bionic-unit-tests --getst_filter=dl*:Dl*
Change-Id: I4cba8c4a156f91f17ba3d95c39cb80f9b70c9d8f

7 years agoMerge "loader: asan path translation now works for symlinks" am: 53cad4beda
Dimitry Ivanov [Tue, 6 Dec 2016 16:50:19 +0000 (16:50 +0000)]
Merge "loader: asan path translation now works for symlinks" am: 53cad4beda
am: 21d77b95b8

Change-Id: I8d0e5fa61bbcec1219dd4b299c6856c81a37f4b0

7 years agoMerge "loader: asan path translation now works for symlinks"
Dimitry Ivanov [Tue, 6 Dec 2016 16:46:49 +0000 (16:46 +0000)]
Merge "loader: asan path translation now works for symlinks"
am: 53cad4beda

Change-Id: I6c8a67728d4af7a63a545ab76f6eb5148fe4c275

7 years agoMerge "loader: asan path translation now works for symlinks"
Dimitry Ivanov [Tue, 6 Dec 2016 16:42:49 +0000 (16:42 +0000)]
Merge "loader: asan path translation now works for symlinks"

7 years agoMerge "Revert "Bionic loader is no longer hijacking libdl.so"" am: b1481bf347
Andreas Gampe [Tue, 6 Dec 2016 03:58:16 +0000 (03:58 +0000)]
Merge "Revert "Bionic loader is no longer hijacking libdl.so"" am: b1481bf347
am: 1785fc1777

Change-Id: I4b9fdc5417c2622b77c9b0aab40c0898bd9902d7

7 years agoMerge "Revert "Bionic loader is no longer hijacking libdl.so""
Andreas Gampe [Tue, 6 Dec 2016 03:54:47 +0000 (03:54 +0000)]
Merge "Revert "Bionic loader is no longer hijacking libdl.so""
am: b1481bf347

Change-Id: I4c6302cb17125b67835b6b8b2657c8a472b620ec

7 years agoMerge "Revert "Bionic loader is no longer hijacking libdl.so""
Treehugger Robot [Tue, 6 Dec 2016 03:48:18 +0000 (03:48 +0000)]
Merge "Revert "Bionic loader is no longer hijacking libdl.so""

7 years agoRevert "Bionic loader is no longer hijacking libdl.so"
Andreas Gampe [Tue, 6 Dec 2016 02:10:13 +0000 (02:10 +0000)]
Revert "Bionic loader is no longer hijacking libdl.so"

This reverts commit c12acef96bd80c419654e159e1dc24a69513a86d.

Breaks the Mips build.

Bug: 27106625
Change-Id: I27edb7114065c36e1b618e387530d58189cdb184

7 years agoMerge "Document how to run CTS in the public documentation too." am: c28c8abc3e
Elliott Hughes [Mon, 5 Dec 2016 23:28:16 +0000 (23:28 +0000)]
Merge "Document how to run CTS in the public documentation too." am: c28c8abc3e
am: 2db064866d

Change-Id: Ibf807d47e69e9350934495800a4d19c250e328d7

7 years agoMerge "Document how to run CTS in the public documentation too."
Elliott Hughes [Mon, 5 Dec 2016 23:24:47 +0000 (23:24 +0000)]
Merge "Document how to run CTS in the public documentation too."
am: c28c8abc3e

Change-Id: Idf04c1d3e3cf0aec857a81d491675cbe07bdee2e

7 years agoMerge "Document how to run CTS in the public documentation too."
Treehugger Robot [Mon, 5 Dec 2016 23:19:45 +0000 (23:19 +0000)]
Merge "Document how to run CTS in the public documentation too."

7 years agoDocument how to run CTS in the public documentation too.
Elliott Hughes [Fri, 2 Dec 2016 21:22:21 +0000 (13:22 -0800)]
Document how to run CTS in the public documentation too.

Bug: N/A
Test: N/A
Change-Id: Ib9f46d09b56795d5202ec7167328042381cdc667

7 years agoloader: asan path translation now works for symlinks
Dimitry Ivanov [Mon, 5 Dec 2016 21:35:47 +0000 (13:35 -0800)]
loader: asan path translation now works for symlinks

Bionic Loader now resolves real path for a library before running
asan path-translation. This fixes situations for bundled loading
libraries which are effectively symlinks to system library;
for example:

 $ adb shell ls -l /system/app/NfcNci/lib/arm64/libnfc_nci_jni.so
 /system/app/NfcNci/lib/arm64/libnfc_nci_jni.so -> /system/lib64/libnfc_nci_jni.so

Bug: http://b/33278445
Test: make and boot
Change-Id: If14a12087c92f8ca628504556332ba0cb67c9118

7 years agoMerge "Bionic loader is no longer hijacking libdl.so" am: 3ccb2bfd7d
Dimitry Ivanov [Mon, 5 Dec 2016 21:39:20 +0000 (21:39 +0000)]
Merge "Bionic loader is no longer hijacking libdl.so" am: 3ccb2bfd7d
am: 1203c11806

Change-Id: I4a8620601683f8e2e9ada6e54c5c5c110417902d

7 years agoMerge "Bionic loader is no longer hijacking libdl.so"
Dimitry Ivanov [Mon, 5 Dec 2016 21:36:19 +0000 (21:36 +0000)]
Merge "Bionic loader is no longer hijacking libdl.so"
am: 3ccb2bfd7d

Change-Id: Iff274f82731b5072b56924ce8b2a58284e86550b

7 years agoMerge "Bionic loader is no longer hijacking libdl.so"
Treehugger Robot [Mon, 5 Dec 2016 21:31:49 +0000 (21:31 +0000)]
Merge "Bionic loader is no longer hijacking libdl.so"

7 years agoMerge "Remove all system properties references" am: dbdc1709c2
Erik Kline [Mon, 5 Dec 2016 21:23:38 +0000 (21:23 +0000)]
Merge "Remove all system properties references" am: dbdc1709c2
am: 78593dc35d

Change-Id: I940478f0386ae58922bf6b47bdf87fd35bc09e90

7 years agoMerge "Remove all system properties references"
Erik Kline [Mon, 5 Dec 2016 21:20:08 +0000 (21:20 +0000)]
Merge "Remove all system properties references"
am: dbdc1709c2

Change-Id: I1012e4843373097c5246e347ed48bd430d19afab

7 years agoMerge "Remove all system properties references"
Treehugger Robot [Mon, 5 Dec 2016 21:12:41 +0000 (21:12 +0000)]
Merge "Remove all system properties references"

7 years agoBionic loader is no longer hijacking libdl.so
Dimitry Ivanov [Wed, 23 Nov 2016 00:55:25 +0000 (16:55 -0800)]
Bionic loader is no longer hijacking libdl.so

Do not hijack libdl.so methods but make libdl proxy calls to
loader instead. This will be replaces by calls to libc.so
once loader functionality is migrated.

Also add a lock to dl_unwind_find_exidx function call.

Test: bionic-unit-tests --gtest_filter=dl*:Dl*
Bug: http://b/27106625
Change-Id: I9e666e771e4bbca52151cfa7fc4c8677e1480818

7 years agoRemove all system properties references
Erik Kline [Mon, 5 Dec 2016 01:42:12 +0000 (10:42 +0900)]
Remove all system properties references

Test: as follows
    - build
    - flash
    - runtest -x system/netd/tests/netd_integration_test.cpp
Bug: 33308258
Change-Id: I59526cb91e91b35a63ba6b413d444712568463e4

7 years agoMerge "Remove obsolete #include and comment." am: f8b4ff4aa1
Elliott Hughes [Mon, 5 Dec 2016 00:09:25 +0000 (00:09 +0000)]
Merge "Remove obsolete #include and comment." am: f8b4ff4aa1
am: 77d575ba4d

Change-Id: I8f8fae9cc155b475d4f3374eed71980ad7173ec6

7 years agoMerge "Remove obsolete #include and comment."
Elliott Hughes [Mon, 5 Dec 2016 00:05:55 +0000 (00:05 +0000)]
Merge "Remove obsolete #include and comment."
am: f8b4ff4aa1

Change-Id: Id77faf4883b894c1d693d3007410da219041bb2e

7 years agoMerge "Remove obsolete #include and comment."
Treehugger Robot [Mon, 5 Dec 2016 00:01:34 +0000 (00:01 +0000)]
Merge "Remove obsolete #include and comment."

7 years agoRemove obsolete #include and comment.
Elliott Hughes [Sat, 3 Dec 2016 01:43:34 +0000 (17:43 -0800)]
Remove obsolete #include and comment.

Bug: http://b/33308258
Test: builds
Change-Id: Id6bbdae536a12134899fa57ea799f488d018db00

7 years agoMerge "Don't flush the per-netid cache when adding nameservers." am: 14998554dd
Erik Kline [Sat, 3 Dec 2016 00:01:01 +0000 (00:01 +0000)]
Merge "Don't flush the per-netid cache when adding nameservers." am: 14998554dd
am: 1cda2fe9af

Change-Id: I516f46a9e834666ef3d31aadc3b2ff7048200b74

7 years agoMerge "Don't flush the per-netid cache when adding nameservers."
Erik Kline [Fri, 2 Dec 2016 23:59:00 +0000 (23:59 +0000)]
Merge "Don't flush the per-netid cache when adding nameservers."
am: 14998554dd

Change-Id: I774ce5fb46fccec29b047ac58b587ccb295d373e

7 years agoMerge "Don't flush the per-netid cache when adding nameservers."
Treehugger Robot [Fri, 2 Dec 2016 23:55:54 +0000 (23:55 +0000)]
Merge "Don't flush the per-netid cache when adding nameservers."

7 years agoMerge "Fix wcsto* where strings begin with whitespace." am: 297ad4cbb8
Dan Albert [Fri, 2 Dec 2016 23:10:25 +0000 (23:10 +0000)]
Merge "Fix wcsto* where strings begin with whitespace." am: 297ad4cbb8
am: 0ee1546794

Change-Id: I6065211b18b3a041347067a881936720434b2135

7 years agoMerge "Fix wcsto* where strings begin with whitespace."
Dan Albert [Fri, 2 Dec 2016 23:09:24 +0000 (23:09 +0000)]
Merge "Fix wcsto* where strings begin with whitespace."
am: 297ad4cbb8

Change-Id: Id431f98b267059daae5d2c8a7293205176f82be5

7 years agoMerge "Fix wcsto* where strings begin with whitespace."
Treehugger Robot [Fri, 2 Dec 2016 23:04:04 +0000 (23:04 +0000)]
Merge "Fix wcsto* where strings begin with whitespace."

7 years agoFix wcsto* where strings begin with whitespace.
Dan Albert [Fri, 2 Dec 2016 20:02:03 +0000 (12:02 -0800)]
Fix wcsto* where strings begin with whitespace.

The libc++ tests caught this.

Test: adb shell /data/nativetest/bionic-unit-tests/bionic-unit-tests
Bug: None
Change-Id: I14864e006f6cf9de3f96acac6aa3eb235894f2b1

7 years agoMerge "Fix unistd.execvpe_ENOEXEC and unistd.execvpe_failure." am: b2d36b4ec7
Elliott Hughes [Fri, 2 Dec 2016 03:16:16 +0000 (03:16 +0000)]
Merge "Fix unistd.execvpe_ENOEXEC and unistd.execvpe_failure." am: b2d36b4ec7
am: f3d49a3bae

Change-Id: I07132a8746a8a3b1f78e75886b37ab28350d4e35

7 years agoMerge "Fix unistd.execvpe_ENOEXEC and unistd.execvpe_failure."
Elliott Hughes [Fri, 2 Dec 2016 03:10:15 +0000 (03:10 +0000)]
Merge "Fix unistd.execvpe_ENOEXEC and unistd.execvpe_failure."
am: b2d36b4ec7

Change-Id: I7d0051a13e5e2097e256afdfbbc580f6733fc523

7 years agoMerge "Fix unistd.execvpe_ENOEXEC and unistd.execvpe_failure."
Treehugger Robot [Fri, 2 Dec 2016 02:59:33 +0000 (02:59 +0000)]
Merge "Fix unistd.execvpe_ENOEXEC and unistd.execvpe_failure."

7 years agoFix unistd.execvpe_ENOEXEC and unistd.execvpe_failure.
Elliott Hughes [Fri, 2 Dec 2016 01:12:49 +0000 (17:12 -0800)]
Fix unistd.execvpe_ENOEXEC and unistd.execvpe_failure.

These passed when run directly (as root) but failed in CTS' more restricted
environment.

Bug: http://b/33270012
Test: ran CTS tests
Change-Id: Iccb407769fe356c30d52a0a99fff11862134a250

7 years agoDon't flush the per-netid cache when adding nameservers.
Erik Kline [Tue, 8 Nov 2016 09:06:57 +0000 (18:06 +0900)]
Don't flush the per-netid cache when adding nameservers.

This wasn't really necessary in the >= Lollipop architecture.

Test: netd_integration_test fails (fixing separately)
Bug: 32517984
Change-Id: I8115bfe913ae6609f64b55161a1c8e28ce2619cf

7 years agoMerge "Disable coverage sanitizer when address sanitizer is disabled on libm." am...
Stephen Hines [Thu, 1 Dec 2016 16:40:05 +0000 (16:40 +0000)]
Merge "Disable coverage sanitizer when address sanitizer is disabled on libm." am: 4511a59ab4
am: bca0aaf244

Change-Id: I14a55f12367ea70de1ad92b137c5ac27db08e8a1

7 years agoMerge "Disable coverage sanitizer when address sanitizer is disabled on libm."
Stephen Hines [Thu, 1 Dec 2016 16:34:36 +0000 (16:34 +0000)]
Merge "Disable coverage sanitizer when address sanitizer is disabled on libm."
am: 4511a59ab4

Change-Id: Ic79bbc59dab5de2dcbf345de49be18b95de319b0

7 years agoMerge "Disable coverage sanitizer when address sanitizer is disabled on libm."
Treehugger Robot [Thu, 1 Dec 2016 16:18:28 +0000 (16:18 +0000)]
Merge "Disable coverage sanitizer when address sanitizer is disabled on libm."

7 years agoDisable coverage sanitizer when address sanitizer is disabled on libm.
Stephen Hines [Thu, 1 Dec 2016 10:23:13 +0000 (02:23 -0800)]
Disable coverage sanitizer when address sanitizer is disabled on libm.

Test: Built bullhead with SANITIZE_TARGET="address coverage".
Change-Id: I9a8f9f42b3b8fdff6c5ff41ddd42a60c04f85a27

7 years agoMerge "Clean up <sys/limits.h> a bit." am: cf922ff804
Elliott Hughes [Thu, 1 Dec 2016 03:22:46 +0000 (03:22 +0000)]
Merge "Clean up <sys/limits.h> a bit." am: cf922ff804
am: 3c8b27c385

Change-Id: I48626be90ed67e89ccab9454c468adbd46ce3dc2

7 years agoMerge "Clean up <sys/limits.h> a bit."
Elliott Hughes [Thu, 1 Dec 2016 03:17:47 +0000 (03:17 +0000)]
Merge "Clean up <sys/limits.h> a bit."
am: cf922ff804

Change-Id: Ib0b097bcb1a5b731b3070e0ceb0a4bddc94cd355

7 years agoMerge "Clean up <sys/limits.h> a bit."
Elliott Hughes [Thu, 1 Dec 2016 03:08:44 +0000 (03:08 +0000)]
Merge "Clean up <sys/limits.h> a bit."

7 years agoMerge "Abort harder." am: 68ddf5cad3
Elliott Hughes [Wed, 30 Nov 2016 23:27:32 +0000 (23:27 +0000)]
Merge "Abort harder." am: 68ddf5cad3
am: e435bb9051

Change-Id: I3a935e19822c3336ba1ac02cace4149989bd1011

7 years agoMerge "Abort harder."
Elliott Hughes [Wed, 30 Nov 2016 23:22:31 +0000 (23:22 +0000)]
Merge "Abort harder."
am: 68ddf5cad3

Change-Id: I7eee73e41bf2c64efe2a840f4770808782629dee

7 years agoMerge "Abort harder."
Elliott Hughes [Wed, 30 Nov 2016 23:06:26 +0000 (23:06 +0000)]
Merge "Abort harder."

7 years agoMerge changes Iade6a185,Iab3050bd am: f347046f2d
Evgenii Stepanov [Wed, 30 Nov 2016 21:55:36 +0000 (21:55 +0000)]
Merge changes Iade6a185,Iab3050bd am: f347046f2d
am: f851123f7f

Change-Id: I1f6133ac753b312986241ec1fb106148de51a4c0

7 years agoCleanup: replace sanitize:never with address:false. am: bc232b9f34
Evgenii Stepanov [Wed, 30 Nov 2016 21:55:31 +0000 (21:55 +0000)]
Cleanup: replace sanitize:never with address:false. am: bc232b9f34
am: ffde7a4df2

Change-Id: I6623df12ae366e1b31b69e91d4d11beaeef0d6f8

7 years agoAdd __libc_arc4random_unlimited_entropy. am: 585fc3e554
Josh Gao [Wed, 30 Nov 2016 21:55:26 +0000 (21:55 +0000)]
Add __libc_arc4random_unlimited_entropy. am: 585fc3e554
am: c640d75c77

Change-Id: I639854171f23a26ec8d5d39afc678c5dfc8ebd83

7 years agoMerge changes Iade6a185,Iab3050bd
Evgenii Stepanov [Wed, 30 Nov 2016 21:50:33 +0000 (21:50 +0000)]
Merge changes Iade6a185,Iab3050bd
am: f347046f2d

Change-Id: I804f5f0eca2baa6fd4135f6fdfa8def543751a5a

7 years agoCleanup: replace sanitize:never with address:false.
Evgenii Stepanov [Wed, 30 Nov 2016 21:50:31 +0000 (21:50 +0000)]
Cleanup: replace sanitize:never with address:false.
am: bc232b9f34

Change-Id: I1e1ed64c25672646d7a3a465e7edf3356d3163eb

7 years agoAdd __libc_arc4random_unlimited_entropy.
Josh Gao [Wed, 30 Nov 2016 21:50:26 +0000 (21:50 +0000)]
Add __libc_arc4random_unlimited_entropy.
am: 585fc3e554

Change-Id: Ie14370e99ced180f5031c7a9bb1ac938184fc094

7 years agoMerge changes Iade6a185,Iab3050bd
Evgenii Stepanov [Wed, 30 Nov 2016 21:34:04 +0000 (21:34 +0000)]
Merge changes Iade6a185,Iab3050bd

* changes:
  Cleanup: replace sanitize:never with address:false.
  Add __libc_arc4random_unlimited_entropy.

7 years agoMerge "Ship all the UAPI bits." am: f563ae89be
Dan Albert [Wed, 30 Nov 2016 20:00:42 +0000 (20:00 +0000)]
Merge "Ship all the UAPI bits." am: f563ae89be
am: ed7a9c1c6b

Change-Id: I57dd468de9134f509b42d4a585a788e20eae1180

7 years agoMerge "Ship all the UAPI bits."
Dan Albert [Wed, 30 Nov 2016 19:55:45 +0000 (19:55 +0000)]
Merge "Ship all the UAPI bits."
am: f563ae89be

Change-Id: I1465164f5a9498c8962dca5bae89cea977c1dea0

7 years agoMerge "Ship all the UAPI bits."
Treehugger Robot [Wed, 30 Nov 2016 19:43:29 +0000 (19:43 +0000)]
Merge "Ship all the UAPI bits."

7 years agoMerge "Correct the return types of readv and writev." am: 04a3b24d7e
Josh Gao [Wed, 30 Nov 2016 19:38:47 +0000 (19:38 +0000)]
Merge "Correct the return types of readv and writev." am: 04a3b24d7e
am: 6d9daae2e0

Change-Id: Ibee67d43fce2815fed14ef7b03d712f1efd30935

7 years agoMerge "Correct the return types of readv and writev."
Josh Gao [Wed, 30 Nov 2016 19:34:17 +0000 (19:34 +0000)]
Merge "Correct the return types of readv and writev."
am: 04a3b24d7e

Change-Id: Ifb0bab889ecb0847cf7b5af97bf706bd00eb3f99

7 years agoMerge "Correct the return types of readv and writev."
Treehugger Robot [Wed, 30 Nov 2016 19:26:05 +0000 (19:26 +0000)]
Merge "Correct the return types of readv and writev."

7 years agoClean up <sys/limits.h> a bit.
Elliott Hughes [Wed, 30 Nov 2016 02:06:34 +0000 (18:06 -0800)]
Clean up <sys/limits.h> a bit.

<sys/limits.h> shouldn't even exist, but leave it in for backwards
compatibility.

Everything that seems legit moves to <limits.h>, though it still seems
like a lot of that ought to come from the compiler instead (there's even
an angry rant in the clang header to that effect).

Unfortunately, we've long exposed [a copy and paste of] the contents
of <float.h> from <limits.h> and <sys/limits.h>. This patch preserves
that for backwards compatibility, but at least switches us over to
using the real <float.h> instead.

Bug: http://b/32776472
Test: builds
Change-Id: I2d5b3b5237b3a0442195e99bb967c076ce484f35

7 years agoMerge "Update timezone data to 2016j" am: fa1a85d003
Neil Fuller [Wed, 30 Nov 2016 11:30:51 +0000 (11:30 +0000)]
Merge "Update timezone data to 2016j" am: fa1a85d003
am: 845df9e2d2

Change-Id: If551a995f0fe72758ac9eb03fcb7573b2ac65de7

7 years agoMerge "Update timezone data to 2016j"
Neil Fuller [Wed, 30 Nov 2016 11:25:22 +0000 (11:25 +0000)]
Merge "Update timezone data to 2016j"
am: fa1a85d003

Change-Id: Icd6dd33712ee1ba21d2c6fcc7cd9b69232f6d140

7 years agoMerge "Update timezone data to 2016j"
Neil Fuller [Wed, 30 Nov 2016 11:16:38 +0000 (11:16 +0000)]
Merge "Update timezone data to 2016j"

7 years agoAbort harder.
Elliott Hughes [Wed, 30 Nov 2016 00:59:26 +0000 (16:59 -0800)]
Abort harder.

Some PoS internal system can't cope with more than 4 stack frames,
so the fact that our abort(3) implementation takes 4 frames by itself
makes it useless.

Re-reading POSIX, it only says "behaves as if", so the previous
implementation chain wasn't mandatory and we can just go straight to
calling tgkill...

Before:

     #00 pc 0000000000069be4  /system/lib64/libc.so (tgkill+8)
     #01 pc 0000000000066d50  /system/lib64/libc.so (pthread_kill+64)
     #02 pc 0000000000028110  /system/lib64/libc.so (raise+24)
     #03 pc 000000000001d4ec  /system/lib64/libc.so (abort+52)

After:

     #00 pc 0000000000069bc8  /system/lib64/libc.so (tgkill+8)
     #01 pc 000000000001d4c8  /system/lib64/libc.so (abort+80)
     #02 pc 0000000000001494  /system/xbin/crasher64 (_ZL9do_actionPKc+872)
     #03 pc 00000000000010e0  /system/xbin/crasher64 (main+88)

This is less useful on 32-bit ARM because there there's an extra trampoline
from an assembler abort(3) implementation, so you'll still only get one
meaningful stack frame. But every other architecture will now get two!

But wait!

It turns out that the assembler hack isn't needed any more. Here we are
unwinding just fine all the way through the 32-bit ARM crasher:

Before (with direct call to tgkill but still using the assembler):

     #00 pc 00049e7c  /system/lib/libc.so (tgkill+12)
     #01 pc 00019c6f  /system/lib/libc.so (__libc_android_abort+50)
     #02 pc 000181f8  /system/lib/libc.so (abort+4)
     #03 pc 00001025  /system/xbin/crasher (_ZL9do_actionPKc+656)
     #04 pc 00017721  /system/lib/libc.so (__libc_init+48)
     #05 pc 00000b38  /system/xbin/crasher (_start+96)

After:

     #00 pc 00049e6c  /system/lib/libc.so (tgkill+12)
     #01 pc 00019c5f  /system/lib/libc.so (abort+50)
     #02 pc 00001025  /system/xbin/crasher (_ZL9do_actionPKc+656)
     #03 pc 00017721  /system/lib/libc.so (__libc_init+48)
     #04 pc 00000b38  /system/xbin/crasher (_start+96)

(As you can see, the fact that we see __libc_init rather than main was true
with the assembler stub too, so that's not a regression even if it does seem
odd...)

Bug: N/A
Test: ran crasher64
Change-Id: I9dd5b214c495604c8b502c7ec0de3631080d8c29

7 years agoMerge "Fix getpriority/setpriority types." am: 609880c12f
Elliott Hughes [Wed, 30 Nov 2016 06:00:10 +0000 (06:00 +0000)]
Merge "Fix getpriority/setpriority types." am: 609880c12f
am: f3b691ad1c

Change-Id: Id9e0aaa22ec4e3a1d99f398b6bd726f2cd2f604f

7 years agoMerge "Fix return type of sync(2)." am: 3b6b2f7c2d
Elliott Hughes [Wed, 30 Nov 2016 05:59:58 +0000 (05:59 +0000)]
Merge "Fix return type of sync(2)." am: 3b6b2f7c2d
am: 558f6f9ff3

Change-Id: I541635ba2a30a8822923b3d9841ad56d625b39e7

7 years agoMerge "Fix getpriority/setpriority types."
Elliott Hughes [Wed, 30 Nov 2016 05:54:41 +0000 (05:54 +0000)]
Merge "Fix getpriority/setpriority types."
am: 609880c12f

Change-Id: I33de9bd9710164a4b56c30491fd51b20ac5c34f8

7 years agoMerge "Fix return type of sync(2)."
Elliott Hughes [Wed, 30 Nov 2016 05:54:28 +0000 (05:54 +0000)]
Merge "Fix return type of sync(2)."
am: 3b6b2f7c2d

Change-Id: I56f6dc1e6a9a454f6691d71ea6f03b0fd6a034e2

7 years agoMerge "Fix getpriority/setpriority types."
Treehugger Robot [Wed, 30 Nov 2016 05:49:03 +0000 (05:49 +0000)]
Merge "Fix getpriority/setpriority types."

7 years agoMerge "Enable libc/libdl/libm/linker for host bionic" am: b99b6762b4
Dan Willemsen [Wed, 30 Nov 2016 05:43:27 +0000 (05:43 +0000)]
Merge "Enable libc/libdl/libm/linker for host bionic" am: b99b6762b4
am: d528de0d58

Change-Id: Idfdb0b3636f710048c84d3c9e504a1c017be96bb

7 years agoMerge "Fix return type of sync(2)."
Treehugger Robot [Wed, 30 Nov 2016 05:42:53 +0000 (05:42 +0000)]
Merge "Fix return type of sync(2)."

7 years agoMerge "Enable libc/libdl/libm/linker for host bionic"
Dan Willemsen [Wed, 30 Nov 2016 05:37:56 +0000 (05:37 +0000)]
Merge "Enable libc/libdl/libm/linker for host bionic"
am: b99b6762b4

Change-Id: I5484525abac921f00ce6e01d0aef4c3a4c9a656a

7 years agoMerge "Enable libc/libdl/libm/linker for host bionic"
Dan Willemsen [Wed, 30 Nov 2016 05:32:06 +0000 (05:32 +0000)]
Merge "Enable libc/libdl/libm/linker for host bionic"

7 years agoCleanup: replace sanitize:never with address:false.
Evgenii Stepanov [Wed, 23 Nov 2016 01:36:25 +0000 (17:36 -0800)]
Cleanup: replace sanitize:never with address:false.

Bug: 33091541
Test: NFC
Change-Id: Iade6a1852e7b1f34e06c26ccadcc17bac5d81c14

7 years agoAdd __libc_arc4random_unlimited_entropy.
Josh Gao [Fri, 11 Nov 2016 00:26:44 +0000 (16:26 -0800)]
Add __libc_arc4random_unlimited_entropy.

Let the caller know when libc has an entropy source and arc4random is safe.
This is useful for the callers that want entropy, but don't absolutely need it.

Bug: http://b/27729263
Test: booted angler-userdebug w/ safestack
Change-Id: Iab3050bd19f23518e1676629573eebc656ba1090

7 years agoMerge "Use icu4c to implement <wctype.h>." am: bd734f0716
Elliott Hughes [Tue, 29 Nov 2016 23:20:03 +0000 (23:20 +0000)]
Merge "Use icu4c to implement <wctype.h>." am: bd734f0716
am: d3adf35e5b

Change-Id: If12283a7a6b992bd1d66d08e373c26fe415a6cba

7 years agoFix return type of sync(2).
Elliott Hughes [Tue, 29 Nov 2016 23:16:08 +0000 (15:16 -0800)]
Fix return type of sync(2).

Bug: N/A
Test: builds
Change-Id: Ie93f1e8609baf2939c809f673b96248a384695ee

7 years agoMerge "Use icu4c to implement <wctype.h>."
Elliott Hughes [Tue, 29 Nov 2016 23:15:02 +0000 (23:15 +0000)]
Merge "Use icu4c to implement <wctype.h>."
am: bd734f0716

Change-Id: Id46c588eb1e3502d02f5b7e8bf6a46ad69047fe5

7 years agoFix getpriority/setpriority types.
Elliott Hughes [Tue, 29 Nov 2016 23:10:29 +0000 (15:10 -0800)]
Fix getpriority/setpriority types.

Bug: N/A
Test: builds
Change-Id: Ica099bae04a0260871783452811a54672094ba4a

7 years agoMerge "Use icu4c to implement <wctype.h>."
Elliott Hughes [Tue, 29 Nov 2016 23:05:31 +0000 (23:05 +0000)]
Merge "Use icu4c to implement <wctype.h>."

7 years agoCorrect the return types of readv and writev.
Josh Gao [Tue, 29 Nov 2016 22:26:15 +0000 (14:26 -0800)]
Correct the return types of readv and writev.

readv and writev should return ssize_t, not int.

Bug: none
Test: `m checkbuild` on bullhead
Change-Id: I934c2e8cb7bf76384b63cedfeab88e2f6b65971a

7 years agoEnable libc/libdl/libm/linker for host bionic
Dan Willemsen [Tue, 29 Nov 2016 01:02:25 +0000 (17:02 -0800)]
Enable libc/libdl/libm/linker for host bionic

Disables debuggerd integration unless building for android.

Bug: 31559095
Test: Diff out/soong/build.ninja before/after, only change is moving
      linker's libdebuggerd_client static lib to the beginning of the
      list.
Test: lunch aosp_arm64-eng; mmma -j bionic
Change-Id: I62e725f7a9b98b7fe31637d0a835fd5846b0aff0

7 years agoMerge "Implement <langinfo.h>." am: 86841573ed
Elliott Hughes [Tue, 29 Nov 2016 19:31:48 +0000 (19:31 +0000)]
Merge "Implement <langinfo.h>." am: 86841573ed
am: 03b787262c

Change-Id: Idb64dcf0adb5bdd98e1a7ba0c3a3266517dedc15

7 years agoMerge "Implement <langinfo.h>."
Elliott Hughes [Tue, 29 Nov 2016 19:25:48 +0000 (19:25 +0000)]
Merge "Implement <langinfo.h>."
am: 86841573ed

Change-Id: I1897be912644f66f2c73865b4d93bf2d0beabf60

7 years agoUse icu4c to implement <wctype.h>.
Elliott Hughes [Fri, 18 Nov 2016 02:18:08 +0000 (18:18 -0800)]
Use icu4c to implement <wctype.h>.

Pretty useless, because the POSIX APIs are useless for actually
internationalization, but it lets us put this to bed for good.

Bug: http://b/18492914
Test: bionic tests
Change-Id: I4dd0aff66c44b5547039be3ffea806c865b9014a

7 years agoShip all the UAPI bits.
Dan Albert [Tue, 29 Nov 2016 19:09:12 +0000 (11:09 -0800)]
Ship all the UAPI bits.

Test: make ndk
Bug: None
Change-Id: I24507846fb62b5844e06d7a424497a5ffc0357d1

7 years agoMerge "Implement <langinfo.h>."
Elliott Hughes [Tue, 29 Nov 2016 19:16:08 +0000 (19:16 +0000)]
Merge "Implement <langinfo.h>."

7 years agoUpdate timezone data to 2016j
Neil Fuller [Tue, 29 Nov 2016 14:46:05 +0000 (14:46 +0000)]
Update timezone data to 2016j

IANA changes:

Briefly: Saratov, Russia moves from +03 to +04 on 2016-12-04.

  Changes to future time stamps

    Saratov, Russia switches from +03 to +04 on 2016-12-04 at 02:00.
    This hives off a new zone Europe/Saratov from Europe/Volgograd.
    (Thanks to Yuri Konotopov and Stepan Golosunov.)

  Changes to past time stamps

    The new zone Asia/Atyrau for AtyraĆ« Region, Kazakhstan, is like
    Asia/Aqtau except it switched from +04/+05 to +05/+06 in spring
    1999, not fall 1994.  (Thanks to Stepan Golosunov.)

  Changes to past time zone abbreviations

    Asia/Gaza and Asia/Hebron now use "EEST", not "EET", to denote
    summer time before 1948.  The old use of "EET" was a typo.

Bug: 33136357
Change-Id: I6875bfa35b5d28839b6f4c3272fd9a1715b17aba
Test: CtsLibcoreTestCases / CtsBionicTestCases

7 years agoMerge "Fix bionic-unit-tests-glibc" am: 11b362d284
Dimitry Ivanov [Mon, 28 Nov 2016 23:14:14 +0000 (23:14 +0000)]
Merge "Fix bionic-unit-tests-glibc" am: 11b362d284
am: ead36866f4

Change-Id: Ib57706e5de0270e5d40ff429418589878aabff9e

7 years agoMerge "Fix bionic-unit-tests-glibc"
Dimitry Ivanov [Mon, 28 Nov 2016 23:09:14 +0000 (23:09 +0000)]
Merge "Fix bionic-unit-tests-glibc"
am: 11b362d284

Change-Id: I0d4ac9cbf001cbc49e35964a7ca607419283a0a4

7 years agoMerge "Fix bionic-unit-tests-glibc"
Treehugger Robot [Mon, 28 Nov 2016 23:01:54 +0000 (23:01 +0000)]
Merge "Fix bionic-unit-tests-glibc"

7 years agoMerge "Add cortex-a7 specific routines." am: 8c8cd2f3be
Christopher Ferris [Mon, 28 Nov 2016 22:47:30 +0000 (22:47 +0000)]
Merge "Add cortex-a7 specific routines." am: 8c8cd2f3be
am: cc8a4201a2

Change-Id: Ife027b526ebc413111bc3d4d38b047080e1b74d7

7 years agoMerge "Add cortex-a7 specific routines."
Christopher Ferris [Mon, 28 Nov 2016 22:43:30 +0000 (22:43 +0000)]
Merge "Add cortex-a7 specific routines."
am: 8c8cd2f3be

Change-Id: I61878678e1007b554f0c6e0a36f1a5e5cb7736e9

7 years agoMerge "Add cortex-a7 specific routines."
Christopher Ferris [Mon, 28 Nov 2016 22:34:28 +0000 (22:34 +0000)]
Merge "Add cortex-a7 specific routines."