Write message to stderr on __libc_fatal()

Change-Id: Ia8d6e256768fa51786d0139d3f3b6e9e4bebe027
diff --git a/linker/linker.cpp b/linker/linker.cpp
index 442f7ce..bf923c1 100644
--- a/linker/linker.cpp
+++ b/linker/linker.cpp
@@ -168,10 +168,7 @@
 #define DISALLOW_ALLOCATION(return_type, name, ...) \
     return_type name __VA_ARGS__ \
     { \
-        const char* msg = "ERROR: " #name " called from the dynamic linker!\n"; \
-        __libc_format_log(ANDROID_LOG_FATAL, "linker", "%s", msg); \
-        write(2, msg, strlen(msg)); \
-        abort(); \
+        __libc_fatal("ERROR: " #name " called from the dynamic linker!\n"); \
     }
 DISALLOW_ALLOCATION(void*, malloc, (size_t u __unused));
 DISALLOW_ALLOCATION(void, free, (void* u __unused));
@@ -467,10 +464,8 @@
                 static_cast<size_t>(s->st_size));
         return s;
       default:
-        const char* msg = "FATAL: Unexpected ST_BIND\n";
-        __libc_format_log(ANDROID_LOG_FATAL, "linker", "%s", msg);
-        write(2, msg, strlen(msg));
-        abort();
+        __libc_fatal("ERROR: Unexpected ST_BIND value: %d for '%s' in '%s'",
+            ELF_ST_BIND(s->st_info), name, si->name);
     }
   }