From fae39d2bf9fb6f08da4a095f5fe3ff093bcdbee8 Mon Sep 17 00:00:00 2001 From: Dmitriy Ivanov Date: Tue, 13 Oct 2015 11:07:56 -0700 Subject: [PATCH] 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 (cherry picked from commit f32b689d3dbe7a1317bce58d1d9bef9bba173c66) --- linker/linker.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/linker/linker.cpp b/linker/linker.cpp index 4e899c312..406cdee1a 100644 --- a/linker/linker.cpp +++ b/linker/linker.cpp @@ -3108,6 +3108,7 @@ bool soinfo::link_image(const soinfo_list_t& global_group, const soinfo_list_t& if (has_text_relocations) { // Fail if app is targeting sdk version > 22 if (get_application_target_sdk_version() > 22) { + PRINT("%s: has text relocations", get_realpath()); DL_ERR("%s: has text relocations", get_realpath()); return false; }