Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1cae1b0f authored by Vic Yang's avatar Vic Yang Committed by Gerrit Code Review
Browse files

Merge "libprocessgroup: Fix memcg path for apps"

parents 86f38d56 ab8d6ab6
Loading
Loading
Loading
Loading
+3 −1
Original line number Original line Diff line number Diff line
@@ -200,7 +200,7 @@ void removeAllProcessGroups() {
        cgroups.push_back(path);
        cgroups.push_back(path);
    }
    }
    if (CgroupGetControllerPath("memory", &path)) {
    if (CgroupGetControllerPath("memory", &path)) {
        cgroups.push_back(path);
        cgroups.push_back(path + "/apps");
    }
    }


    for (std::string cgroup_root_path : cgroups) {
    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("cpuacct", &cpuacct_path);
    CgroupGetControllerPath("memory", &memory_path);
    CgroupGetControllerPath("memory", &memory_path);
    memory_path += "/apps";


    const char* cgroup =
    const char* cgroup =
            (!access(ConvertUidPidToPath(cpuacct_path.c_str(), uid, initialPid).c_str(), F_OK))
            (!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;
    std::string cgroup;
    if (isMemoryCgroupSupported() && (memControl || UsePerAppMemcg())) {
    if (isMemoryCgroupSupported() && (memControl || UsePerAppMemcg())) {
        CgroupGetControllerPath("memory", &cgroup);
        CgroupGetControllerPath("memory", &cgroup);
        cgroup += "/apps";
    } else {
    } else {
        CgroupGetControllerPath("cpuacct", &cgroup);
        CgroupGetControllerPath("cpuacct", &cgroup);
    }
    }