From f7c2bfee083e9c9477255feb62d9307f97199f85 Mon Sep 17 00:00:00 2001 From: Wei Wang Date: Wed, 31 Jul 2019 11:35:18 -0700 Subject: [PATCH] init: add timing log for oneshot and exec_background services Bug: 136523746 Bug: 138732985 Test: boot Change-Id: I713edd2ba8a391d5afbea796c6d58ffac9477436 --- init/sigchld_handler.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/init/sigchld_handler.cpp b/init/sigchld_handler.cpp index c9a09cd89..984235de0 100644 --- a/init/sigchld_handler.cpp +++ b/init/sigchld_handler.cpp @@ -73,6 +73,13 @@ static bool ReapOneProcess() { auto exec_duration_ms = std::chrono::duration_cast(exec_duration).count(); wait_string = StringPrintf(" waiting took %f seconds", exec_duration_ms / 1000.0f); + } else if (service->flags() & SVC_ONESHOT) { + auto exec_duration = boot_clock::now() - service->time_started(); + auto exec_duration_ms = + std::chrono::duration_cast(exec_duration) + .count(); + wait_string = StringPrintf(" oneshot service took %f seconds in background", + exec_duration_ms / 1000.0f); } } else { name = StringPrintf("Untracked pid %d", pid);