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

Commit 9b77c0ba authored by Suren Baghdasaryan's avatar Suren Baghdasaryan Committed by Android (Google) Code Review
Browse files

Merge "libprocessgroup: add flags to indicate when a controller failed to mount" into qt-dev

parents 2a19765e fd285d2b
Loading
Loading
Loading
Loading
+8 −0
Original line number Original line Diff line number Diff line
@@ -67,6 +67,13 @@ bool CgroupController::HasValue() const {
    return controller_ != nullptr;
    return controller_ != nullptr;
}
}


bool CgroupController::IsUsable() const {
    if (!HasValue()) return false;

    uint32_t flags = ACgroupController_getFlags(controller_);
    return (flags & CGROUPRC_CONTROLLER_FLAG_MOUNTED) != 0;
}

std::string CgroupController::GetTasksFilePath(const std::string& rel_path) const {
std::string CgroupController::GetTasksFilePath(const std::string& rel_path) const {
    std::string tasks_path = path();
    std::string tasks_path = path();


@@ -153,6 +160,7 @@ void CgroupMap::Print() const {
        const ACgroupController* controller = ACgroupFile_getController(i);
        const ACgroupController* controller = ACgroupFile_getController(i);
        LOG(INFO) << "\t" << ACgroupController_getName(controller) << " ver "
        LOG(INFO) << "\t" << ACgroupController_getName(controller) << " ver "
                  << ACgroupController_getVersion(controller) << " path "
                  << ACgroupController_getVersion(controller) << " path "
                  << ACgroupController_getFlags(controller) << " flags "
                  << ACgroupController_getPath(controller);
                  << ACgroupController_getPath(controller);
    }
    }
}
}
+1 −0
Original line number Original line Diff line number Diff line
@@ -38,6 +38,7 @@ class CgroupController {
    const char* path() const;
    const char* path() const;


    bool HasValue() const;
    bool HasValue() const;
    bool IsUsable() const;


    std::string GetTasksFilePath(const std::string& path) const;
    std::string GetTasksFilePath(const std::string& path) const;
    std::string GetProcsFilePath(const std::string& path, uid_t uid, pid_t pid) const;
    std::string GetProcsFilePath(const std::string& path, uid_t uid, pid_t pid) const;
+3 −3
Original line number Original line Diff line number Diff line
@@ -42,19 +42,19 @@ cc_library {
        "libcgrouprc_format",
        "libcgrouprc_format",
    ],
    ],
    stubs: {
    stubs: {
        symbol_file: "libcgrouprc.map.txt",
        symbol_file: "libcgrouprc.llndk.txt",
        versions: ["29"],
        versions: ["29"],
    },
    },
    target: {
    target: {
        linux: {
        linux: {
            version_script: "libcgrouprc.map.txt",
            version_script: "libcgrouprc.llndk.txt",
        },
        },
    },
    },
}
}


llndk_library {
llndk_library {
    name: "libcgrouprc",
    name: "libcgrouprc",
    symbol_file: "libcgrouprc.map.txt",
    symbol_file: "libcgrouprc.llndk.txt",
    export_include_dirs: [
    export_include_dirs: [
        "include",
        "include",
    ],
    ],
+5 −0
Original line number Original line Diff line number Diff line
@@ -27,6 +27,11 @@ uint32_t ACgroupController_getVersion(const ACgroupController* controller) {
    return controller->version();
    return controller->version();
}
}


uint32_t ACgroupController_getFlags(const ACgroupController* controller) {
    CHECK(controller != nullptr);
    return controller->flags();
}

const char* ACgroupController_getName(const ACgroupController* controller) {
const char* ACgroupController_getName(const ACgroupController* controller) {
    CHECK(controller != nullptr);
    CHECK(controller != nullptr);
    return controller->name();
    return controller->name();
+12 −0
Original line number Original line Diff line number Diff line
@@ -65,6 +65,18 @@ __attribute__((warn_unused_result)) const ACgroupController* ACgroupFile_getCont
__attribute__((warn_unused_result)) uint32_t ACgroupController_getVersion(const ACgroupController*)
__attribute__((warn_unused_result)) uint32_t ACgroupController_getVersion(const ACgroupController*)
        __INTRODUCED_IN(29);
        __INTRODUCED_IN(29);


/**
 * Flag bitmask used in ACgroupController_getFlags
 */
#define CGROUPRC_CONTROLLER_FLAG_MOUNTED 0x1

/**
 * Returns the flags bitmask of the given controller.
 * If the given controller is null, return 0.
 */
__attribute__((warn_unused_result)) uint32_t ACgroupController_getFlags(const ACgroupController*)
        __INTRODUCED_IN(29);

/**
/**
 * Returns the name of the given controller.
 * Returns the name of the given controller.
 * If the given controller is null, return nullptr.
 * If the given controller is null, return nullptr.
Loading