diff options
author | San Mehat <san@google.com> | 2009-10-29 11:48:50 -0700 |
---|---|---|
committer | San Mehat <san@google.com> | 2009-10-29 11:50:43 -0700 |
commit | a5109a878eeff22e32ee5ce1b1cd15e8daad5234 (patch) | |
tree | f04f2afc3b729f8625f3849ecd2d88ce74471b88 /core/jni/android_util_Process.cpp | |
parent | 22dad5928d1d1f2c791616d9d6ab3a3172cec62e (diff) | |
download | frameworks_base-a5109a878eeff22e32ee5ce1b1cd15e8daad5234.zip frameworks_base-a5109a878eeff22e32ee5ce1b1cd15e8daad5234.tar.gz frameworks_base-a5109a878eeff22e32ee5ce1b1cd15e8daad5234.tar.bz2 |
process: Add debug code to log process group transitions
Signed-off-by: San Mehat <san@google.com>
Diffstat (limited to 'core/jni/android_util_Process.cpp')
-rw-r--r-- | core/jni/android_util_Process.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/core/jni/android_util_Process.cpp b/core/jni/android_util_Process.cpp index 5b6c7ea..7c627c1 100644 --- a/core/jni/android_util_Process.cpp +++ b/core/jni/android_util_Process.cpp @@ -51,6 +51,8 @@ pid_t gettid() { return syscall(__NR_gettid);} #undef __KERNEL__ #endif +#define POLICY_DEBUG 1 + using namespace android; static void signalExceptionForPriorityError(JNIEnv* env, jobject obj, int err) @@ -212,6 +214,26 @@ void android_os_Process_setProcessGroup(JNIEnv* env, jobject clazz, int pid, jin return; } +#if POLICY_DEBUG + char cmdline[32]; + int fd; + + strcpy(cmdline, "unknown"); + + sprintf(proc_path, "/proc/%d/cmdline", pid); + fd = open(proc_path, O_RDONLY); + if (fd >= 0) { + int rc = read(fd, cmdline, sizeof(cmdline)-1); + cmdline[rc] = 0; + close(fd); + } + + if (grp == ANDROID_TGROUP_BG_NONINTERACT) { + LOGD("setProcessGroup: vvv pid %d (%s)", pid, cmdline); + } else { + LOGD("setProcessGroup: ^^^ pid %d (%s)", pid, cmdline); + } +#endif sprintf(proc_path, "/proc/%d/task", pid); if (!(d = opendir(proc_path))) { // If the process exited on us, don't generate an exception |