OSDN Git Service

android-x86/bionic.git
7 years agoMerge "Fix streaming(memcpy) performance on Cortex-A7"
Christopher Ferris [Tue, 10 Jan 2017 18:41:14 +0000 (18:41 +0000)]
Merge "Fix streaming(memcpy) performance on Cortex-A7"

7 years agoMerge "Revert "Revert "move android_ids into bionic"""
Elliott Hughes [Tue, 10 Jan 2017 01:15:29 +0000 (01:15 +0000)]
Merge "Revert "Revert "move android_ids into bionic"""

7 years agoMerge "Dynamic linker errors should go to stderr."
Elliott Hughes [Tue, 10 Jan 2017 00:43:38 +0000 (00:43 +0000)]
Merge "Dynamic linker errors should go to stderr."

7 years agoDynamic linker errors should go to stderr.
Elliott Hughes [Mon, 9 Jan 2017 22:39:44 +0000 (14:39 -0800)]
Dynamic linker errors should go to stderr.

Also add the missing \n to the end of the error.

Addresses review comment.

Bug: N/A
Test: manual
Change-Id: I7c997a71e6e02381d21ac762595ba90370db9d05

7 years agoMerge "Exit rather than abort if asked to run a non-PIE executable."
Elliott Hughes [Mon, 9 Jan 2017 22:26:34 +0000 (22:26 +0000)]
Merge "Exit rather than abort if asked to run a non-PIE executable."

7 years agoMerge "Move to .md files for even trivial documentation."
Elliott Hughes [Mon, 9 Jan 2017 21:23:00 +0000 (21:23 +0000)]
Merge "Move to .md files for even trivial documentation."

7 years agoMove to .md files for even trivial documentation.
Elliott Hughes [Sat, 7 Jan 2017 20:47:28 +0000 (12:47 -0800)]
Move to .md files for even trivial documentation.

So it's automatically displayed for folks browsing the source.

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

7 years agoExit rather than abort if asked to run a non-PIE executable.
Elliott Hughes [Sat, 7 Jan 2017 18:38:20 +0000 (10:38 -0800)]
Exit rather than abort if asked to run a non-PIE executable.

Each release we're asked to investigate tombstones from code that hasn't
been allowed to run on Android since L. This is just wasting our time,
and clearly the "obviousness" of aborting rather than exiting hasn't ensured
that all app developers rebuild their old binaries. In some cases it seems
like they run them "just in case" and don't care if they fail.

Bug: http://b/34112178
Test: ran libsupervisor.so from com.ss.android.article.news
Change-Id: I8a3f196c4755601a3888281566fbb7b817f01dca

7 years agoMerge "Fix bionic-unit-tests-static crash"
Treehugger Robot [Sat, 7 Jan 2017 03:59:14 +0000 (03:59 +0000)]
Merge "Fix bionic-unit-tests-static crash"

7 years agoFix bionic-unit-tests-static crash
Dimitry Ivanov [Fri, 6 Jan 2017 22:49:57 +0000 (14:49 -0800)]
Fix bionic-unit-tests-static crash

The crash happens because for static executables call to dlopen
results in crash. This change moves dlopen() == nullptr check
from static variable to a functions so that the dlopen crash only
affects tests calling dlopen but not the whole executable.

Also make static tests report crashes to debugerd

Test: run bionic-unit-tests-static (for arm 32 and 64)
Bug: http://b/34129417
Change-Id: I7c4d8caf2a43250234fe24496b1c95eab572769f

7 years agoMerge "Make /dev/__properties__ 0711"
Treehugger Robot [Fri, 6 Jan 2017 21:53:05 +0000 (21:53 +0000)]
Merge "Make /dev/__properties__ 0711"

7 years agoMake /dev/__properties__ 0711
Nick Kralevich [Fri, 6 Jan 2017 20:04:29 +0000 (12:04 -0800)]
Make /dev/__properties__ 0711

Don't allow processes to read the contents of the directory
/dev/__properties__. This is an implementation detail of the properties
system that processes shouldn't be concerned with.

Test: Device boots and no problems reading individual properties.
Test: ls -la /dev/__properties__ fails
Change-Id: I00130fe4529525935654bff91e3cc59253b86e26

7 years agoMerge "Add declaration of tgkill to signal.h."
Treehugger Robot [Fri, 6 Jan 2017 00:44:17 +0000 (00:44 +0000)]
Merge "Add declaration of tgkill to signal.h."

7 years agoAdd declaration of tgkill to signal.h.
Josh Gao [Thu, 5 Jan 2017 21:22:26 +0000 (13:22 -0800)]
Add declaration of tgkill to signal.h.

Expose a useful function that we've had since Jelly Bean.

Bug: http://b/34111810
Test: TreeHugger
Change-Id: Iaf3097f224c09b533f36050cf21394ba148007ad

7 years agoMerge "Downgrade dynamic section checks to warning"
Dimitry Ivanov [Tue, 3 Jan 2017 18:03:04 +0000 (18:03 +0000)]
Merge "Downgrade dynamic section checks to warning"

7 years agoDowngrade dynamic section checks to warning
Dimitry Ivanov [Thu, 29 Dec 2016 00:21:49 +0000 (16:21 -0800)]
Downgrade dynamic section checks to warning

For apps targeting pre-O releases print warn about
invalid dynamic section.

Bug: http://b/33842263
Test: Start an app in question and check logs for warning.
Test: Run bionic-unit-test --gtest_filter=dl*:Dl*
Change-Id: I80bd51f2133b956fc04e20a6538cccd50118c1b8

7 years agoFix streaming(memcpy) performance on Cortex-A7
Chitti Babu Theegala [Thu, 15 Dec 2016 20:43:28 +0000 (02:13 +0530)]
Fix streaming(memcpy) performance on Cortex-A7

Stream-mode detection for L1 in A7-core is failing for
non cache-line-size (non 64 byte) aligned addresses.
This leads to destination data getting cached unnecessarily.
This A7 issue is confirmed by ARM

This issue is solved by aligning destination address to 64 byte before
entering the loop in memcpy routine.
Though we get lower score for micro_bench memcpy when L1 cache is bypassed,
it is desirable since it avoids unnecessary eviction of other process data
from L1 which is good for overall system performance.

Higher micro_bench memcpy numbers for < 64byte alignment shows good numbers
but this is at the cost of L1 cache pollution. During memcpy/memset,
unnecessary data is filled in L1 cache, this causes eviction of other
process data from L1.
For example during msmset(0), L1 cache gets filled with 0s which should be
avoided.

Additionally, there is another issue with cortex A7 that impacts performance
for all alignments / all Android Wear versions:
Store Buffer on A7 is 32 byte which limits the 32-byte back to back stores.
In the current implementation back to back 32bytes writes is causing CPU stalls.
This issue can be solved by interleaved Loads and Stores.
This helps in avoiding CPU stalls during memcpy by utilizing efficiently the
A7 internal load and store buffers.

Change-Id: Ie5f12f2bb5d86f627686730416279057e4f5f6d0

7 years agoMerge "versioner: start using C++17."
Josh Gao [Fri, 16 Dec 2016 22:12:36 +0000 (22:12 +0000)]
Merge "versioner: start using C++17."

7 years agoversioner: start using C++17.
Josh Gao [Thu, 15 Dec 2016 21:56:00 +0000 (13:56 -0800)]
versioner: start using C++17.

Bug: None
Test: python run_tests.py
Change-Id: I10101d26b7816a83445f25b33b97ed47d42fd135

7 years agoMerge "Define range of GIDs for cached app data."
Jeff Sharkey [Thu, 15 Dec 2016 21:46:30 +0000 (21:46 +0000)]
Merge "Define range of GIDs for cached app data."

7 years agoMerge "Convert versioner to Android.bp"
Treehugger Robot [Thu, 15 Dec 2016 21:16:04 +0000 (21:16 +0000)]
Merge "Convert versioner to Android.bp"

7 years agoConvert versioner to Android.bp
Colin Cross [Wed, 7 Dec 2016 19:24:06 +0000 (11:24 -0800)]
Convert versioner to Android.bp

See build/soong/README.md for more information.

Test: mma -j
Change-Id: I0e648143ac480c1257d9829f9b9087ee22005855

7 years agoMerge "Add test for elf-hash and packed relocations"
Dimitry Ivanov [Thu, 15 Dec 2016 18:27:22 +0000 (18:27 +0000)]
Merge "Add test for elf-hash and packed relocations"

7 years agoMerge "Add test for empty symbol lookup"
Dimitry Ivanov [Thu, 15 Dec 2016 18:26:51 +0000 (18:26 +0000)]
Merge "Add test for empty symbol lookup"

7 years agoMerge "Make the __stack_chk_fail message more searchable on the internets."
Treehugger Robot [Thu, 15 Dec 2016 06:15:41 +0000 (06:15 +0000)]
Merge "Make the __stack_chk_fail message more searchable on the internets."

7 years agoMake the __stack_chk_fail message more searchable on the internets.
Elliott Hughes [Thu, 15 Dec 2016 01:30:07 +0000 (17:30 -0800)]
Make the __stack_chk_fail message more searchable on the internets.

Noticed while writing documentation:

  https://source.android.com/devices/tech/debug/

Bug: http://b/28746168
Test: crasher
Change-Id: Ied1c1b1c75a85a899f07e6927134b9bf91316fe4

7 years agoMerge "Document bionic loader logging properties"
Treehugger Robot [Thu, 15 Dec 2016 00:05:26 +0000 (00:05 +0000)]
Merge "Document bionic loader logging properties"

7 years agoMerge "Add a way to track all dlsym calls (contd.)"
Treehugger Robot [Wed, 14 Dec 2016 23:30:06 +0000 (23:30 +0000)]
Merge "Add a way to track all dlsym calls (contd.)"

7 years agoAdd test for empty symbol lookup
Dimitry Ivanov [Wed, 14 Dec 2016 23:16:56 +0000 (15:16 -0800)]
Add test for empty symbol lookup

Check that dlsym(handle, "") fails.

Bug: http://b/33530622
Test: bionic-unit-tests --gtest_filter=dlfcn*
Test: bionic-unit-tests-glibc --gtest_filter=dlfcn*
Change-Id: Iae572bd1d9b798be619c5018de2a5450bf37977e

7 years agoDocument bionic loader logging properties
Dimitry Ivanov [Wed, 14 Dec 2016 22:42:44 +0000 (14:42 -0800)]
Document bionic loader logging properties

Bug: http://b/29458203
Test: spellchecker in vim
Change-Id: I81e60a09fa256110d7ab9b530e7821ae66e8f020

7 years agoAdd a way to track all dlsym calls (contd.)
Dimitry Ivanov [Wed, 14 Dec 2016 22:30:37 +0000 (14:30 -0800)]
Add a way to track all dlsym calls (contd.)

The followup for 4742abdcb52f16120016a5005c466230d4c46341

Changes in this file got lost in the process of cherry-picking
the change across repositories.

Bug: http://b/29458203
Test: flash, set debug.ld.all to dlsym and check
      if there are messages in logcat

Change-Id: I4613908e46e75c5d9ec66396767f10fc6d3e9777

7 years agoMerge "Fix an obsolete comment."
Elliott Hughes [Wed, 14 Dec 2016 21:50:32 +0000 (21:50 +0000)]
Merge "Fix an obsolete comment."

7 years agoFix an obsolete comment.
Elliott Hughes [Wed, 14 Dec 2016 20:43:30 +0000 (12:43 -0800)]
Fix an obsolete comment.

280236537e06c7accaffabf8fb407f93dd1c834f factored the pthread types out
so that they could be in both <sys/types.h> and <pthread.h>.

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

7 years agoAdd test for elf-hash and packed relocations
Dimitry Ivanov [Mon, 21 Nov 2016 20:50:38 +0000 (12:50 -0800)]
Add test for elf-hash and packed relocations

This adds CTS test for system libraries to support
workaround for http://b/24465209: some apps require
a subset of system libs to have elf-hash and not to
use packed relocations.

Bug: http://b/32917341
Bug: http://b/24465209
Test: bionic-unit-tests --gtest_filter=Dl*:dl*
Change-Id: Ia0bc28506b1f1f97d4cf902d73b0769e2815fed3

7 years agoMerge "Update socket constants."
Elliott Hughes [Wed, 14 Dec 2016 16:28:24 +0000 (16:28 +0000)]
Merge "Update socket constants."

7 years agoRevert "Revert "move android_ids into bionic""
Elliott Hughes [Tue, 13 Dec 2016 23:47:25 +0000 (23:47 +0000)]
Revert "Revert "move android_ids into bionic""

This reverts commit 77cb68d9f2621639ec7f4e1b124ceeee5c80a66a.

Change-Id: Ibc9f775c4cd418be90fd8a6f192dd72ca5dff09a

7 years agoMerge "Update to kernel headers v4.8.14."
Christopher Ferris [Tue, 13 Dec 2016 23:40:00 +0000 (23:40 +0000)]
Merge "Update to kernel headers v4.8.14."

7 years agoUpdate socket constants.
Elliott Hughes [Tue, 13 Dec 2016 23:29:58 +0000 (15:29 -0800)]
Update socket constants.

This corresponds to Linux 4.10.

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

7 years agoMerge "libc: ARM64: update memset/strlen/memcpy/memmove to newlib/cortex-strings"
Christopher Ferris [Tue, 13 Dec 2016 23:11:27 +0000 (23:11 +0000)]
Merge "libc: ARM64: update memset/strlen/memcpy/memmove to newlib/cortex-strings"

7 years agoMerge "Remove BSD cruft from <pwd.h>."
Elliott Hughes [Tue, 13 Dec 2016 22:55:05 +0000 (22:55 +0000)]
Merge "Remove BSD cruft from <pwd.h>."

7 years agoMerge "Rename <grp.h>/<pwd.h> tests to fit the usual pattern."
Elliott Hughes [Tue, 13 Dec 2016 22:53:24 +0000 (22:53 +0000)]
Merge "Rename <grp.h>/<pwd.h> tests to fit the usual pattern."

7 years agoDefine range of GIDs for cached app data.
Jeff Sharkey [Tue, 13 Dec 2016 21:03:19 +0000 (14:03 -0700)]
Define range of GIDs for cached app data.

To support upcoming disk usage calculation optimizations, this change
creates a new GID for each app that will be used to mark its cached
data.  We're allocating these unique GIDs so that we can use
quotactl() to track cached data on a per-app basis.

Test: builds, boots, tests pass
Bug: 27948817
Change-Id: Ic00c39ccedc23d5d43988029e9921679126f8f2d

7 years agoMerge "bionic-unit-tests: Build host testlibs in bionic-loader-test-libs"
Treehugger Robot [Tue, 13 Dec 2016 19:32:09 +0000 (19:32 +0000)]
Merge "bionic-unit-tests: Build host testlibs in bionic-loader-test-libs"

7 years agoUpdate to kernel headers v4.8.14.
Christopher Ferris [Mon, 12 Dec 2016 22:55:36 +0000 (14:55 -0800)]
Update to kernel headers v4.8.14.

Test: Built mips/arm/arm64/x86/x86_64. Built and booted angler.
Change-Id: Icedb035769d8a41a170a6f1ecd707113e332d8dd

7 years agoMerge "Add a way to track all dlsym calls"
Treehugger Robot [Tue, 13 Dec 2016 02:25:48 +0000 (02:25 +0000)]
Merge "Add a way to track all dlsym calls"

7 years agoMerge "Repair dlwarning toast"
Treehugger Robot [Tue, 13 Dec 2016 02:10:50 +0000 (02:10 +0000)]
Merge "Repair dlwarning toast"

7 years agoRename <grp.h>/<pwd.h> tests to fit the usual pattern.
Elliott Hughes [Tue, 13 Dec 2016 01:32:14 +0000 (17:32 -0800)]
Rename <grp.h>/<pwd.h> tests to fit the usual pattern.

Bug: N/A
Test: ran tests
Change-Id: I5ec30cc17f94e631f3376b671055a0e82fb472c3

7 years agoRemove BSD cruft from <pwd.h>.
Elliott Hughes [Tue, 13 Dec 2016 01:31:02 +0000 (17:31 -0800)]
Remove BSD cruft from <pwd.h>.

Other C libraries don't have this, and it doesn't make sense on Android
anyway.

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

7 years agoMerge "versioner: use unique_ptr to handle ownership of FTS*."
Josh Gao [Tue, 13 Dec 2016 01:14:09 +0000 (01:14 +0000)]
Merge "versioner: use unique_ptr to handle ownership of FTS*."

7 years agoAdd a way to track all dlsym calls
Dimitry Ivanov [Tue, 13 Dec 2016 00:30:15 +0000 (16:30 -0800)]
Add a way to track all dlsym calls

Add dlsym option to debug.ld.all and debug.ld.app.<appname> which
enables logging of dlsym calls.

Bug: http://b/29458203
Test: flash, set debug.ld.all to dlsym and check
      if there are messages in logcat

Change-Id: I9cb815a38b5b98aac9ebe3ac1540bcdedd2e8db0

7 years agoMerge "Revert "move android_ids into bionic""
Treehugger Robot [Tue, 13 Dec 2016 00:31:25 +0000 (00:31 +0000)]
Merge "Revert "move android_ids into bionic""

7 years agoRepair dlwarning toast
Dimitry Ivanov [Tue, 13 Dec 2016 00:21:46 +0000 (16:21 -0800)]
Repair dlwarning toast

This was introduced by d9e427cf41893377dcdd0650ba20ff7cf7d72209
where libdl.c android_dlwarning method implementation was
not updated.

This makes it delegate the call to ld-android.so

Bug: http://b/33530622
Test: build, flash and launch test app
Change-Id: I8a379442de94724280638db73e5f7934f2ea394e

7 years agoMerge "Fix gtest_filter of bionic gtest runner."
Yabin Cui [Mon, 12 Dec 2016 23:59:06 +0000 (23:59 +0000)]
Merge "Fix gtest_filter of bionic gtest runner."

7 years agoRevert "move android_ids into bionic"
Elliott Hughes [Mon, 12 Dec 2016 22:11:37 +0000 (22:11 +0000)]
Revert "move android_ids into bionic"

This reverts commit 1a13db5b2675759316a8529873c5d29831a9ba32.

Change-Id: I7f571b3a9d542694d16fb9cf1131ef9e59d330ea

7 years agoMerge "Fix android_dlwarning lookup"
Dimitry Ivanov [Mon, 12 Dec 2016 22:02:08 +0000 (22:02 +0000)]
Merge "Fix android_dlwarning lookup"

7 years agoFix gtest_filter of bionic gtest runner.
Yabin Cui [Mon, 12 Dec 2016 21:32:15 +0000 (13:32 -0800)]
Fix gtest_filter of bionic gtest runner.

Bug: http://b/29514723
Test: run bionic-unit-tests --gtest-filter='*grp*'
Change-Id: I45ed561702bd601bae84c8d77824aa5769dbfa9c

7 years agoFix android_dlwarning lookup
Dimitry Ivanov [Mon, 12 Dec 2016 21:11:50 +0000 (13:11 -0800)]
Fix android_dlwarning lookup

Bug: http://b/33530622
Test: mm
Change-Id: I3eefca58e91b7bbc41f6add9b8c756f1474a7f93

7 years agoMerge "Fix the way to find negative filter pattern."
Yabin Cui [Sat, 10 Dec 2016 03:49:16 +0000 (03:49 +0000)]
Merge "Fix the way to find negative filter pattern."

7 years agoMerge "Bionic loader is no longer hijacking libdl.so"
Treehugger Robot [Sat, 10 Dec 2016 00:37:38 +0000 (00:37 +0000)]
Merge "Bionic loader is no longer hijacking libdl.so"

7 years agoMerge "move android_ids into bionic"
Elliott Hughes [Sat, 10 Dec 2016 00:13:04 +0000 (00:13 +0000)]
Merge "move android_ids into bionic"

7 years agoFix the way to find negative filter pattern.
Yabin Cui [Fri, 9 Dec 2016 23:49:09 +0000 (15:49 -0800)]
Fix the way to find negative filter pattern.

Bug: http://b/29514723
Test: run CtsBionicTestCases --gtest_filter=-Fortify2_clang.strncpy --gtest_list_tests
Change-Id: Ia3adec1fc03252adee4aed238b9c88508da17faf

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: Ic33a7109a86f4262798d63a35f4c61d15b0068bb

7 years agobionic-unit-tests: Build host testlibs in bionic-loader-test-libs
Kevin Brodsky [Fri, 9 Dec 2016 09:54:42 +0000 (09:54 +0000)]
bionic-unit-tests: Build host testlibs in bionic-loader-test-libs

The target test libs are now all built in
nativetest/bionic-loader-test-libs. However, libs built using
libs/Android.build.testlib.mk are still put in lib/ on the host.

This commit refactors libs/Android.build.testlib*.mk so that all test
libs go into nativetest/bionic-loader-test-libs on the host; nothing
changes on the target. Android.build.mk now understands
*_install_to_native_tests_dir both for host and target builds.

Change-Id: I1022e9bab38bf53036c95fd39b3b240bcb31f23a

7 years agoMerge "Fix icu4c calling on x86."
Treehugger Robot [Fri, 9 Dec 2016 02:09:23 +0000 (02:09 +0000)]
Merge "Fix icu4c calling on x86."

7 years agoFix icu4c calling on x86.
Elliott Hughes [Thu, 8 Dec 2016 23:16:37 +0000 (15:16 -0800)]
Fix icu4c calling on x86.

Some of the function pointer types were wrong, and x86 cares if you
say `int` when you meant `int8_t` (because it feels at liberty to
leave the top bits dirty and ignore them, both sides need to agree
which they're dealing with).

Also slightly improve the wcstoimax and wcstoumax tests, since my
investigation started there.

Bug: http://b/33451822
Test: tests pass on x86, arm, and arm64
Change-Id: I553193962f0cb993666f9f8e415990bba5b669e1

7 years agoMerge "Fix linker_asan64 symlink"
Bill Napier [Thu, 8 Dec 2016 20:04:25 +0000 (20:04 +0000)]
Merge "Fix linker_asan64 symlink"

7 years agoFix linker_asan64 symlink
Colin Cross [Thu, 8 Dec 2016 17:57:35 +0000 (09:57 -0800)]
Fix linker_asan64 symlink

Soong now appends the suffix to the symlink, so the multilib-specific
symlink is no longer necessary.

Test: m -j out/target/product/angler/system/bin/linker_asan64
Test: Examine LOCAL_MODULE_SYMLINKS in out/soong/Android-aosp_angler.mk
Change-Id: I913a318bb31de3e630eebd2d68041a55ce3eccaf

7 years agoMerge "Add test for ambient caps"
Treehugger Robot [Wed, 7 Dec 2016 16:15:54 +0000 (16:15 +0000)]
Merge "Add test for ambient caps"

7 years agoAdd test for ambient caps
Greg Hackmann [Tue, 6 Dec 2016 23:17:59 +0000 (15:17 -0800)]
Add test for ambient caps

PR_CAP_AMBIENT landed in 4.3 and has been backported to earlier kernels
in kernel/common.

Test: bionic-unit-test --gtest_filter=sys_prctl.pr_cap_ambient
Change-Id: I632f6316ef1a4eb636d2bf7e07d541e400567ef4
Signed-off-by: Greg Hackmann <ghackmann@google.com>
7 years agoMerge remote-tracking branch 'goog/stage-aosp-master' into HEAD
Bill Yi [Tue, 6 Dec 2016 22:30:02 +0000 (14:30 -0800)]
Merge remote-tracking branch 'goog/stage-aosp-master' into HEAD

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"
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""
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."
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"
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"
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."
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."
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."
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."
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."
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