system: sched_policy: Don't return an error when the thread we're trying to move exits on us

Signed-off-by: San Mehat <san@google.com>
This commit is contained in:
San Mehat 2009-12-03 12:19:12 -08:00
parent bf95c70f83
commit c1c38dd01c
1 changed files with 10 additions and 1 deletions

View File

@ -53,13 +53,22 @@ static int add_tid_to_cgroup(int tid, const char *grp_name)
sprintf(path, "/dev/cpuctl/%s/tasks", grp_name);
if ((fd = open(path, O_WRONLY)) < 0) {
LOGE("add_tid_to_cgroup failed to open '%s' (%s)\n", path, strerror(errno));
LOGE("add_tid_to_cgroup failed to open '%s' (%s)\n", path,
strerror(errno));
return -1;
}
sprintf(text, "%d", tid);
if (write(fd, text, strlen(text)) < 0) {
close(fd);
/*
* If the thread is in the process of exiting,
* don't flag an error
*/
if (errno == ESRCH)
return 0;
LOGW("add_tid_to_cgroup failed to write '%s' (%s)\n", path,
strerror(errno));
return -1;
}