aboutsummaryrefslogtreecommitdiff
path: root/daemon/Proc.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'daemon/Proc.cpp')
-rw-r--r--daemon/Proc.cpp62
1 files changed, 31 insertions, 31 deletions
diff --git a/daemon/Proc.cpp b/daemon/Proc.cpp
index e6b26b1..4ba59b6 100644
--- a/daemon/Proc.cpp
+++ b/daemon/Proc.cpp
@@ -1,5 +1,5 @@
/**
- * Copyright (C) ARM Limited 2013-2014. All rights reserved.
+ * Copyright (C) ARM Limited 2013-2015. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
@@ -31,20 +31,20 @@ struct ProcStat {
static bool readProcStat(ProcStat *const ps, const char *const pathname, DynBuf *const b) {
if (!b->read(pathname)) {
- logg->logMessage("%s(%s:%i): DynBuf::read failed, likely because the thread exited", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("DynBuf::read failed, likely because the thread exited");
// This is not a fatal error - the thread just doesn't exist any more
return true;
}
char *comm = strchr(b->getBuf(), '(');
if (comm == NULL) {
- logg->logMessage("%s(%s:%i): parsing stat failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("parsing stat failed");
return false;
}
++comm;
char *const str = strrchr(comm, ')');
if (str == NULL) {
- logg->logMessage("%s(%s:%i): parsing stat failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("parsing stat failed");
return false;
}
*str = '\0';
@@ -53,7 +53,7 @@ static bool readProcStat(ProcStat *const ps, const char *const pathname, DynBuf
const int count = sscanf(str + 2, " %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %*s %ld", &ps->numThreads);
if (count != 1) {
- logg->logMessage("%s(%s:%i): sscanf failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("sscanf failed");
return false;
}
@@ -65,7 +65,7 @@ static const char APP_PROCESS[] = "app_process";
static const char *readProcExe(DynBuf *const printb, const int pid, const int tid, DynBuf *const b) {
if (tid == -1 ? !printb->printf("/proc/%i/exe", pid)
: !printb->printf("/proc/%i/task/%i/exe", pid, tid)) {
- logg->logMessage("%s(%s:%i): DynBuf::printf failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("DynBuf::printf failed");
return NULL;
}
@@ -82,7 +82,7 @@ static const char *readProcExe(DynBuf *const printb, const int pid, const int ti
// readlink /proc/[pid]/exe returns ENOENT for kernel threads
image = "\0";
} else {
- logg->logMessage("%s(%s:%i): DynBuf::readlink failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("DynBuf::readlink failed");
return NULL;
}
@@ -94,12 +94,12 @@ static const char *readProcExe(DynBuf *const printb, const int pid, const int ti
if (tid == -1 ? !printb->printf("/proc/%i/cmdline", pid)
: !printb->printf("/proc/%i/task/%i/cmdline", pid, tid)) {
- logg->logMessage("%s(%s:%i): DynBuf::printf failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("DynBuf::printf failed");
return NULL;
}
if (!b->read(printb->getBuf())) {
- logg->logMessage("%s(%s:%i): DynBuf::read failed, likely because the thread exited", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("DynBuf::read failed, likely because the thread exited");
return NULL;
}
@@ -110,12 +110,12 @@ static bool readProcTask(const uint64_t currTime, Buffer *const buffer, const in
bool result = false;
if (!b1->printf("/proc/%i/task", pid)) {
- logg->logMessage("%s(%s:%i): DynBuf::printf failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("DynBuf::printf failed");
return result;
}
DIR *task = opendir(b1->getBuf());
if (task == NULL) {
- logg->logMessage("%s(%s:%i): opendir failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("opendir failed");
// This is not a fatal error - the thread just doesn't exist any more
return true;
}
@@ -130,22 +130,22 @@ static bool readProcTask(const uint64_t currTime, Buffer *const buffer, const in
}
if (!printb->printf("/proc/%i/task/%i/stat", pid, tid)) {
- logg->logMessage("%s(%s:%i): DynBuf::printf failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("DynBuf::printf failed");
goto fail;
}
ProcStat ps;
if (!readProcStat(&ps, printb->getBuf(), b1)) {
- logg->logMessage("%s(%s:%i): readProcStat failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("readProcStat failed");
goto fail;
}
const char *const image = readProcExe(printb, pid, tid, b2);
if (image == NULL) {
- logg->logMessage("%s(%s:%i): readImage failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("readImage failed");
goto fail;
}
- buffer->comm(currTime, pid, tid, image, ps.comm);
+ buffer->marshalComm(currTime, pid, tid, image, ps.comm);
}
result = true;
@@ -161,7 +161,7 @@ bool readProcComms(const uint64_t currTime, Buffer *const buffer, DynBuf *const
DIR *proc = opendir("/proc");
if (proc == NULL) {
- logg->logMessage("%s(%s:%i): opendir failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("opendir failed");
return result;
}
@@ -175,26 +175,26 @@ bool readProcComms(const uint64_t currTime, Buffer *const buffer, DynBuf *const
}
if (!printb->printf("/proc/%i/stat", pid)) {
- logg->logMessage("%s(%s:%i): DynBuf::printf failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("DynBuf::printf failed");
goto fail;
}
ProcStat ps;
if (!readProcStat(&ps, printb->getBuf(), b1)) {
- logg->logMessage("%s(%s:%i): readProcStat failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("readProcStat failed");
goto fail;
}
if (ps.numThreads <= 1) {
const char *const image = readProcExe(printb, pid, -1, b1);
if (image == NULL) {
- logg->logMessage("%s(%s:%i): readImage failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("readImage failed");
goto fail;
}
- buffer->comm(currTime, pid, pid, image, ps.comm);
+ buffer->marshalComm(currTime, pid, pid, image, ps.comm);
} else {
if (!readProcTask(currTime, buffer, pid, printb, b1, b2)) {
- logg->logMessage("%s(%s:%i): readProcTask failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("readProcTask failed");
goto fail;
}
}
@@ -213,7 +213,7 @@ bool readProcMaps(const uint64_t currTime, Buffer *const buffer, DynBuf *const p
DIR *proc = opendir("/proc");
if (proc == NULL) {
- logg->logMessage("%s(%s:%i): opendir failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("opendir failed");
return result;
}
@@ -227,16 +227,16 @@ bool readProcMaps(const uint64_t currTime, Buffer *const buffer, DynBuf *const p
}
if (!printb->printf("/proc/%i/maps", pid)) {
- logg->logMessage("%s(%s:%i): DynBuf::printf failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("DynBuf::printf failed");
goto fail;
}
if (!b->read(printb->getBuf())) {
- logg->logMessage("%s(%s:%i): DynBuf::read failed, likely because the process exited", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("DynBuf::read failed, likely because the process exited");
// This is not a fatal error - the process just doesn't exist any more
continue;
}
- buffer->maps(currTime, pid, pid, b->getBuf());
+ buffer->marshalMaps(currTime, pid, pid, b->getBuf());
}
result = true;
@@ -251,7 +251,7 @@ bool readKallsyms(const uint64_t currTime, Buffer *const buffer, const bool *con
int fd = ::open("/proc/kallsyms", O_RDONLY | O_CLOEXEC);
if (fd < 0) {
- logg->logMessage("%s(%s:%i): open failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logMessage("open failed");
return true;
};
@@ -260,7 +260,7 @@ bool readKallsyms(const uint64_t currTime, Buffer *const buffer, const bool *con
while (gSessionData->mSessionIsActive && !ACCESS_ONCE(*isDone)) {
// Assert there is still space in the buffer
if (sizeof(buf) - pos - 1 == 0) {
- logg->logError(__FILE__, __LINE__, "no space left in buffer");
+ logg->logError("no space left in buffer");
handleException();
}
@@ -268,13 +268,13 @@ bool readKallsyms(const uint64_t currTime, Buffer *const buffer, const bool *con
// -1 to reserve space for \0
const ssize_t bytes = ::read(fd, buf + pos, sizeof(buf) - pos - 1);
if (bytes < 0) {
- logg->logError(__FILE__, __LINE__, "read failed", __FUNCTION__, __FILE__, __LINE__);
+ logg->logError("read failed");
handleException();
}
if (bytes == 0) {
// Assert the buffer is empty
if (pos != 0) {
- logg->logError(__FILE__, __LINE__, "buffer not empty on eof");
+ logg->logError("buffer not empty on eof");
handleException();
}
break;
@@ -288,13 +288,13 @@ bool readKallsyms(const uint64_t currTime, Buffer *const buffer, const bool *con
if (buf[newline] == '\n') {
const char was = buf[newline + 1];
buf[newline + 1] = '\0';
- buffer->kallsyms(currTime, buf);
+ buffer->marshalKallsyms(currTime, buf);
// Sleep 3 ms to avoid sending out too much data too quickly
usleep(3000);
buf[0] = was;
// Assert the memory regions do not overlap
if (pos - newline >= newline + 1) {
- logg->logError(__FILE__, __LINE__, "memcpy src and dst overlap");
+ logg->logError("memcpy src and dst overlap");
handleException();
}
if (pos - newline - 2 > 0) {