am cc43ee42: am d2e4e46c: cutils: schedpolicy: Add debug code to log sched policy transitions

Merge commit 'cc43ee42acc3df89f584c670c4287e25808f23b2' into eclair-mr2-plus-aosp

* commit 'cc43ee42acc3df89f584c670c4287e25808f23b2':
  cutils: schedpolicy: Add debug code to log sched policy transitions
This commit is contained in:
San Mehat 2009-10-29 19:52:40 -07:00 committed by Android Git Automerger
commit 748cb49e00
1 changed files with 37 additions and 0 deletions

View File

@ -23,6 +23,9 @@
#include <errno.h>
#include <fcntl.h>
#define LOG_TAG "SchedPolicy"
#include "cutils/log.h"
#ifdef HAVE_SCHED_H
#include <sched.h>
@ -37,6 +40,8 @@
#define SCHED_BATCH 3
#endif
#define POLICY_DEBUG 1
static int __sys_supports_schedgroups = -1;
static int add_tid_to_cgroup(int tid, const char *grp_name)
@ -155,6 +160,38 @@ int set_sched_policy(int tid, SchedPolicy policy)
{
initialize();
#if POLICY_DEBUG
char statfile[64];
char statline[1024];
char thread_name[255];
int fd;
sprintf(statfile, "/proc/%d/stat", tid);
memset(thread_name, 0, sizeof(thread_name));
fd = open(statfile, O_RDONLY);
if (fd >= 0) {
int rc = read(fd, statline, 1023);
close(fd);
statline[rc] = 0;
char *p = statline;
char *q;
for (p = statline; *p != '('; p++);
p++;
for (q = p; *q != ')'; q++);
strncpy(thread_name, p, (q-p));
}
if (policy == SP_BACKGROUND) {
LOGD("vvv tid %d (%s)", tid, thread_name);
} else if (policy == SP_FOREGROUND) {
LOGD("^^^ tid %d (%s)", tid, thread_name);
} else {
LOGD("??? tid %d (%s)", tid, thread_name);
}
#endif
if (__sys_supports_schedgroups) {
const char *grp = NULL;