Rip out getProcessAgeMs.
A certain system crash has pointed to this at least 7.9M times, and it's
not important.
Bug: 173264759
Test: boot
Change-Id: Ice3dddee6d62c443d3fd88e1082e5af7a58b4255
diff --git a/transport/ServiceManagement.cpp b/transport/ServiceManagement.cpp
index 8122324..e0813e1 100644
--- a/transport/ServiceManagement.cpp
+++ b/transport/ServiceManagement.cpp
@@ -183,70 +183,8 @@
return *getTrebleTestingOverridePtr();
}
-/*
- * Returns the age of the current process by reading /proc/self/stat and comparing starttime to the
- * current time. This is useful for measuring how long it took a HAL to register itself.
- */
-__attribute__((noinline)) static long getProcessAgeMs() {
- constexpr const int PROCFS_STAT_STARTTIME_INDEX = 21;
- std::string content;
- if (!android::base::ReadFileToString("/proc/self/stat", &content, false)) {
- LOG(ERROR) << "Process age: Could not read /proc/self/stat";
- return -1;
- }
-
- std::vector<std::string> stats = android::base::Split(content, " ");
- if (PROCFS_STAT_STARTTIME_INDEX >= stats.size()) {
- LOG(ERROR) << "Process age: Could not read starttime from /proc/self/stat";
- return -1;
- }
-
- const std::string& startTimeString = stats.at(PROCFS_STAT_STARTTIME_INDEX);
- unsigned long long startTimeInClockTicks = 0;
- if (!android::base::ParseUint(startTimeString, &startTimeInClockTicks)) {
- LOG(ERROR) << "Process age: Could not parse start time: " << startTimeString;
- return -1;
- }
-
- const int64_t ticksPerSecond = sysconf(_SC_CLK_TCK);
- if (ticksPerSecond <= 0) {
- LOG(ERROR) << "Process age: Invalid _SC_CLK_TCK: " << ticksPerSecond;
- return -1;
- }
-
- const int64_t uptime = android::uptimeMillis();
- if (uptime < 0) {
- LOG(ERROR) << "Process age: Invalid uptime: " << uptime;
- return -1;
- }
-
- unsigned long long startTimeTicks;
- if (__builtin_umulll_overflow(1000ULL, startTimeInClockTicks, &startTimeTicks)) {
- LOG(ERROR) << "Process age: Too many ticks, overflow: " << startTimeInClockTicks;
- return -1;
- }
-
- long startTimeMs = startTimeTicks / ticksPerSecond;
- if (startTimeMs >= uptime) {
- LOG(ERROR) << "Process age: process started in future: " << startTimeMs << " after "
- << uptime;
- return -1;
- }
-
- return uptime - startTimeMs;
-}
-
static void onRegistrationImpl(const std::string& descriptor, const std::string& instanceName) {
- long halStartDelay = getProcessAgeMs();
- if (halStartDelay >= 0) {
- // The "start delay" printed here is an estimate of how long it took the HAL to go from
- // process creation to registering itself as a HAL. Actual start time could be longer
- // because the process might not have joined the threadpool yet, so it might not be ready to
- // process transactions.
- LOG(INFO) << "Registered " << descriptor << "/" << instanceName << " (start delay of "
- << halStartDelay << "ms)";
- }
-
+ LOG(INFO) << "Registered " << descriptor << "/" << instanceName;
tryShortenProcessName(descriptor);
}