summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitriy Ivanov <dimitry@google.com>2015-10-13 11:07:56 -0700
committerDmitriy Ivanov <dimitry@google.com>2015-10-13 11:13:19 -0700
commitf32b689d3dbe7a1317bce58d1d9bef9bba173c66 (patch)
tree3cc66a24e8750ba2929b42c53f5e932cf5e7d194
parenta828a2f8e6fd5271787a7dea4c682cbf54425a14 (diff)
downloadbionic-f32b689d3dbe7a1317bce58d1d9bef9bba173c66.zip
bionic-f32b689d3dbe7a1317bce58d1d9bef9bba173c66.tar.gz
bionic-f32b689d3dbe7a1317bce58d1d9bef9bba173c66.tar.bz2
Log dlopen failures caused by text relocations
Some apps will fail to load native libraries with text relocations when switching target sdk version to M. It could be hard to diagnose because some of them suppress dlerror and/or UnsatisfiedLinkError. This change unconditionally logs the error message making the cause of the failure more visible to developers. Bug: http://b/24876001 Change-Id: I0477a0d1307d0879000f3a3a43b974b4cf34bdb2
-rw-r--r--linker/linker.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/linker/linker.cpp b/linker/linker.cpp
index faacd49..c99042f 100644
--- a/linker/linker.cpp
+++ b/linker/linker.cpp
@@ -2937,6 +2937,7 @@ bool soinfo::link_image(const soinfo_list_t& global_group, const soinfo_list_t&
// TODO (dimitry): remove != __ANDROID_API__ check once http://b/20020312 is fixed
if (get_application_target_sdk_version() != __ANDROID_API__
&& get_application_target_sdk_version() > 22) {
+ PRINT("%s: has text relocations", get_realpath());
DL_ERR("%s: has text relocations", get_realpath());
return false;
}