Merge "Treat process group creation failure due to a dead process as non-fatal" am: 03dfa27d40
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2467472 Change-Id: Ic98c584d01d8dbb28d5bb48214bb7e61217fcf85 Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -1805,10 +1805,15 @@ static void SpecializeCommon(JNIEnv* env, uid_t uid, gid_t gid, jintArray gids,
|
|||||||
if (!is_system_server && getuid() == 0) {
|
if (!is_system_server && getuid() == 0) {
|
||||||
const int rc = createProcessGroup(uid, getpid());
|
const int rc = createProcessGroup(uid, getpid());
|
||||||
if (rc != 0) {
|
if (rc != 0) {
|
||||||
fail_fn(rc == -EROFS ? CREATE_ERROR("createProcessGroup failed, kernel missing "
|
if (rc == -ESRCH) {
|
||||||
"CONFIG_CGROUP_CPUACCT?")
|
// If process is dead, treat this as a non-fatal error
|
||||||
: CREATE_ERROR("createProcessGroup(%d, %d) failed: %s", uid,
|
ALOGE("createProcessGroup(%d, %d) failed: %s", uid, /* pid= */ 0, strerror(-rc));
|
||||||
/* pid= */ 0, strerror(-rc)));
|
} else {
|
||||||
|
fail_fn(rc == -EROFS ? CREATE_ERROR("createProcessGroup failed, kernel missing "
|
||||||
|
"CONFIG_CGROUP_CPUACCT?")
|
||||||
|
: CREATE_ERROR("createProcessGroup(%d, %d) failed: %s", uid,
|
||||||
|
/* pid= */ 0, strerror(-rc)));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user