Loading libprocessgroup/task_profiles.cpp +3 −0 Original line number Diff line number Diff line Loading @@ -150,6 +150,7 @@ SetCgroupAction::SetCgroupAction(const CgroupController& c, const std::string& p } void SetCgroupAction::EnableResourceCaching() { std::lock_guard<std::mutex> lock(fd_mutex_); if (fd_ != FDS_NOT_CACHED) { return; } Loading Loading @@ -191,6 +192,7 @@ bool SetCgroupAction::AddTidToCgroup(int tid, int fd) { } bool SetCgroupAction::ExecuteForProcess(uid_t uid, pid_t pid) const { std::lock_guard<std::mutex> lock(fd_mutex_); if (IsFdValid()) { // fd is cached, reuse it if (!AddTidToCgroup(pid, fd_)) { Loading Loading @@ -221,6 +223,7 @@ bool SetCgroupAction::ExecuteForProcess(uid_t uid, pid_t pid) const { } bool SetCgroupAction::ExecuteForTask(int tid) const { std::lock_guard<std::mutex> lock(fd_mutex_); if (IsFdValid()) { // fd is cached, reuse it if (!AddTidToCgroup(tid, fd_)) { Loading libprocessgroup/task_profiles.h +2 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ #include <sys/cdefs.h> #include <sys/types.h> #include <map> #include <mutex> #include <string> #include <vector> Loading Loading @@ -127,6 +128,7 @@ class SetCgroupAction : public ProfileAction { CgroupController controller_; std::string path_; android::base::unique_fd fd_; mutable std::mutex fd_mutex_; static bool IsAppDependentPath(const std::string& path); static bool AddTidToCgroup(int tid, int fd); Loading Loading
libprocessgroup/task_profiles.cpp +3 −0 Original line number Diff line number Diff line Loading @@ -150,6 +150,7 @@ SetCgroupAction::SetCgroupAction(const CgroupController& c, const std::string& p } void SetCgroupAction::EnableResourceCaching() { std::lock_guard<std::mutex> lock(fd_mutex_); if (fd_ != FDS_NOT_CACHED) { return; } Loading Loading @@ -191,6 +192,7 @@ bool SetCgroupAction::AddTidToCgroup(int tid, int fd) { } bool SetCgroupAction::ExecuteForProcess(uid_t uid, pid_t pid) const { std::lock_guard<std::mutex> lock(fd_mutex_); if (IsFdValid()) { // fd is cached, reuse it if (!AddTidToCgroup(pid, fd_)) { Loading Loading @@ -221,6 +223,7 @@ bool SetCgroupAction::ExecuteForProcess(uid_t uid, pid_t pid) const { } bool SetCgroupAction::ExecuteForTask(int tid) const { std::lock_guard<std::mutex> lock(fd_mutex_); if (IsFdValid()) { // fd is cached, reuse it if (!AddTidToCgroup(tid, fd_)) { Loading
libprocessgroup/task_profiles.h +2 −0 Original line number Diff line number Diff line Loading @@ -19,6 +19,7 @@ #include <sys/cdefs.h> #include <sys/types.h> #include <map> #include <mutex> #include <string> #include <vector> Loading Loading @@ -127,6 +128,7 @@ class SetCgroupAction : public ProfileAction { CgroupController controller_; std::string path_; android::base::unique_fd fd_; mutable std::mutex fd_mutex_; static bool IsAppDependentPath(const std::string& path); static bool AddTidToCgroup(int tid, int fd); Loading