• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
No Tags

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

system/core


Commit MetaInfo

Revisãofde5be585e9d01257aa484d2d36e932ad928da73 (tree)
Hora2019-06-13 12:05:27
Autorandroid-build-team Robot <android-build-team-robot@goog...>
Commiterandroid-build-team Robot

Mensagem de Log

Snap for 5656431 from 702981f54fd3a891f42f3282497b7e73b74b350a to qt-qpr1-release

Change-Id: I81a430910471eedd7b7f375d5d7c9dd88069d810

Mudança Sumário

Diff

--- a/libprocessgroup/task_profiles.cpp
+++ b/libprocessgroup/task_profiles.cpp
@@ -150,6 +150,7 @@ SetCgroupAction::SetCgroupAction(const CgroupController& c, const std::string& p
150150 }
151151
152152 void SetCgroupAction::EnableResourceCaching() {
153+ std::lock_guard<std::mutex> lock(fd_mutex_);
153154 if (fd_ != FDS_NOT_CACHED) {
154155 return;
155156 }
@@ -191,6 +192,7 @@ bool SetCgroupAction::AddTidToCgroup(int tid, int fd) {
191192 }
192193
193194 bool SetCgroupAction::ExecuteForProcess(uid_t uid, pid_t pid) const {
195+ std::lock_guard<std::mutex> lock(fd_mutex_);
194196 if (IsFdValid()) {
195197 // fd is cached, reuse it
196198 if (!AddTidToCgroup(pid, fd_)) {
@@ -221,6 +223,7 @@ bool SetCgroupAction::ExecuteForProcess(uid_t uid, pid_t pid) const {
221223 }
222224
223225 bool SetCgroupAction::ExecuteForTask(int tid) const {
226+ std::lock_guard<std::mutex> lock(fd_mutex_);
224227 if (IsFdValid()) {
225228 // fd is cached, reuse it
226229 if (!AddTidToCgroup(tid, fd_)) {
--- a/libprocessgroup/task_profiles.h
+++ b/libprocessgroup/task_profiles.h
@@ -19,6 +19,7 @@
1919 #include <sys/cdefs.h>
2020 #include <sys/types.h>
2121 #include <map>
22+#include <mutex>
2223 #include <string>
2324 #include <vector>
2425
@@ -127,6 +128,7 @@ class SetCgroupAction : public ProfileAction {
127128 CgroupController controller_;
128129 std::string path_;
129130 android::base::unique_fd fd_;
131+ mutable std::mutex fd_mutex_;
130132
131133 static bool IsAppDependentPath(const std::string& path);
132134 static bool AddTidToCgroup(int tid, int fd);
--- a/rootdir/etc/ld.config.txt
+++ b/rootdir/etc/ld.config.txt
@@ -183,6 +183,7 @@ namespace.media.asan.permitted.paths = /apex/com.android.media/${LIB}/extractors
183183 namespace.media.links = default
184184 namespace.media.link.default.shared_libs = %LLNDK_LIBRARIES%
185185 namespace.media.link.default.shared_libs += libbinder_ndk.so
186+namespace.media.link.default.shared_libs += libcgrouprc.so
186187 namespace.media.link.default.shared_libs += libmediametrics.so
187188 namespace.media.link.default.shared_libs += %SANITIZER_RUNTIME_LIBRARIES%
188189