am 949bd4c2: Merge "Print ABI in backtraces."

* commit '949bd4c208fb9e2ccea2cb0ed76fafef7a5cecea':
  Print ABI in backtraces.
This commit is contained in:
Michael Wright 2014-06-25 01:49:18 +00:00 committed by Android Git Automerger
commit 3888cefc4d
3 changed files with 18 additions and 16 deletions

View file

@ -49,8 +49,9 @@ static void dump_process_header(log_t* log, pid_t pid) {
struct tm tm; struct tm tm;
localtime_r(&t, &tm); localtime_r(&t, &tm);
char timestr[64]; char timestr[64];
_LOG(log, logtype::BACKTRACE, "\n\nABI: '%s'\n", ABI_STRING);
strftime(timestr, sizeof(timestr), "%F %T", &tm); strftime(timestr, sizeof(timestr), "%F %T", &tm);
_LOG(log, logtype::BACKTRACE, "\n\n----- pid %d at %s -----\n", pid, timestr); _LOG(log, logtype::BACKTRACE, "\n----- pid %d at %s -----\n", pid, timestr);
if (procname) { if (procname) {
_LOG(log, logtype::BACKTRACE, "Cmd line: %s\n", procname); _LOG(log, logtype::BACKTRACE, "Cmd line: %s\n", procname);

View file

@ -58,21 +58,6 @@
// Must match the path defined in NativeCrashListener.java // Must match the path defined in NativeCrashListener.java
#define NCRASH_SOCKET_PATH "/data/system/ndebugsocket" #define NCRASH_SOCKET_PATH "/data/system/ndebugsocket"
// Figure out the abi based on defined macros.
#if defined(__arm__)
#define ABI_STRING "arm"
#elif defined(__aarch64__)
#define ABI_STRING "arm64"
#elif defined(__mips__)
#define ABI_STRING "mips"
#elif defined(__i386__)
#define ABI_STRING "x86"
#elif defined(__x86_64__)
#define ABI_STRING "x86_64"
#else
#error "Unsupported ABI"
#endif
static bool signal_has_si_addr(int sig) { static bool signal_has_si_addr(int sig) {
switch (sig) { switch (sig) {
case SIGBUS: case SIGBUS:

View file

@ -21,6 +21,22 @@
#include <stdbool.h> #include <stdbool.h>
#include <sys/types.h> #include <sys/types.h>
// Figure out the abi based on defined macros.
#if defined(__arm__)
#define ABI_STRING "arm"
#elif defined(__aarch64__)
#define ABI_STRING "arm64"
#elif defined(__mips__)
#define ABI_STRING "mips"
#elif defined(__i386__)
#define ABI_STRING "x86"
#elif defined(__x86_64__)
#define ABI_STRING "x86_64"
#else
#error "Unsupported ABI"
#endif
typedef struct { typedef struct {
/* tombstone file descriptor */ /* tombstone file descriptor */
int tfd; int tfd;