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

Commit 29e30f25 authored by T.J. Mercier's avatar T.J. Mercier
Browse files

Revert "libprocessgroup: Check validity of uid and pid arguments"

This reverts commit 5a3c3f7c.

Don't SIGABRT for invalid requests.

Bug: 333261173
Change-Id: If22244753b43529ed17c315b3732af371827e774
parent 73c6f08f
Loading
Loading
Loading
Loading
+8 −5
Original line number Diff line number Diff line
@@ -528,8 +528,14 @@ static populated_status cgroupIsPopulated(int events_fd) {
static int KillProcessGroup(
        uid_t uid, pid_t initialPid, int signal, bool once = false,
        std::chrono::steady_clock::time_point until = std::chrono::steady_clock::now() + 2200ms) {
    CHECK_GE(uid, 0);
    CHECK_GT(initialPid, 0);
    if (uid < 0) {
        LOG(ERROR) << __func__ << ": invalid UID " << uid;
        return -1;
    }
    if (initialPid <= 0) {
        LOG(ERROR) << __func__ << ": invalid PID " << initialPid;
        return -1;
    }

    // Always attempt to send a kill signal to at least the initialPid, at least once, regardless of
    // whether its cgroup exists or not. This should only be necessary if a bug results in the
@@ -689,9 +695,6 @@ static int createProcessGroupInternal(uid_t uid, pid_t initialPid, std::string c
}

int createProcessGroup(uid_t uid, pid_t initialPid, bool memControl) {
    CHECK_GE(uid, 0);
    CHECK_GT(initialPid, 0);

    if (memControl && !UsePerAppMemcg()) {
        LOG(ERROR) << "service memory controls are used without per-process memory cgroup support";
        return -EINVAL;