libprocessgroup: Fix memcg path for apps
The expected memcg path for apps is /dev/memcg/apps/uid_<uid>/pid_<pid>. Right now we are missing the "apps" component. Fix it. Bug: 124776663 Test: Boot on a Go device and does not see error from lmkd anymore. Change-Id: I0e4c1d8520463fabb171ff4e61479034b6446548
This commit is contained in:
parent
7e6dc56b85
commit
ab8d6ab62d
1 changed files with 3 additions and 1 deletions
|
@ -200,7 +200,7 @@ void removeAllProcessGroups() {
|
|||
cgroups.push_back(path);
|
||||
}
|
||||
if (CgroupGetControllerPath("memory", &path)) {
|
||||
cgroups.push_back(path);
|
||||
cgroups.push_back(path + "/apps");
|
||||
}
|
||||
|
||||
for (std::string cgroup_root_path : cgroups) {
|
||||
|
@ -317,6 +317,7 @@ static int KillProcessGroup(uid_t uid, int initialPid, int signal, int retries)
|
|||
|
||||
CgroupGetControllerPath("cpuacct", &cpuacct_path);
|
||||
CgroupGetControllerPath("memory", &memory_path);
|
||||
memory_path += "/apps";
|
||||
|
||||
const char* cgroup =
|
||||
(!access(ConvertUidPidToPath(cpuacct_path.c_str(), uid, initialPid).c_str(), F_OK))
|
||||
|
@ -380,6 +381,7 @@ int createProcessGroup(uid_t uid, int initialPid, bool memControl) {
|
|||
std::string cgroup;
|
||||
if (isMemoryCgroupSupported() && (memControl || UsePerAppMemcg())) {
|
||||
CgroupGetControllerPath("memory", &cgroup);
|
||||
cgroup += "/apps";
|
||||
} else {
|
||||
CgroupGetControllerPath("cpuacct", &cgroup);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue