resolve merge conflicts of cea1d04 to nyc-dev-plus-aosp
Change-Id: I41cdca717664a16f00fd1b28076dd752fa96653d
diff --git a/libprocessgroup/processgroup.cpp b/libprocessgroup/processgroup.cpp
index cfc9ae2..c4672c4 100644
--- a/libprocessgroup/processgroup.cpp
+++ b/libprocessgroup/processgroup.cpp
@@ -22,20 +22,19 @@
#include <errno.h>
#include <fcntl.h>
#include <inttypes.h>
-#include <mutex>
-#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/stat.h>
#include <sys/types.h>
+
+#include <chrono>
#include <memory>
+#include <mutex>
#include <log/log.h>
#include <private/android_filesystem_config.h>
-#include <utils/SystemClock.h>
-
#include <processgroup/processgroup.h>
// Uncomment line below use memory cgroups for keeping track of (forked) PIDs
@@ -290,25 +289,26 @@
int killProcessGroup(uid_t uid, int initialPid, int signal)
{
- int processes;
- const int sleep_us = 5 * 1000; // 5ms
- int64_t startTime = android::uptimeMillis();
- int retry = 40;
+ std::chrono::steady_clock::time_point start = std::chrono::steady_clock::now();
+ int retry = 40;
+ int processes;
while ((processes = killProcessGroupOnce(uid, initialPid, signal)) > 0) {
SLOGV("killed %d processes for processgroup %d\n", processes, initialPid);
if (retry > 0) {
- usleep(sleep_us);
+ usleep(5 * 1000); // 5ms
--retry;
} else {
- SLOGE("failed to kill %d processes for processgroup %d\n",
- processes, initialPid);
+ SLOGE("failed to kill %d processes for processgroup %d\n", processes, initialPid);
break;
}
}
- SLOGV("Killed process group uid %d pid %d in %" PRId64 "ms, %d procs remain", uid, initialPid,
- android::uptimeMillis()-startTime, processes);
+ std::chrono::steady_clock::time_point end = std::chrono::steady_clock::now();
+
+ SLOGV("Killed process group uid %d pid %d in %dms, %d procs remain", uid, initialPid,
+ static_cast<int>(std::chrono::duration_cast<std::chrono::milliseconds>(end - start).count()),
+ processes);
if (processes == 0) {
return removeProcessGroup(uid, initialPid);