diff options
Diffstat (limited to 'init/sigchld_handler.cpp')
-rw-r--r-- | init/sigchld_handler.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
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<std::chrono::milliseconds>(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<std::chrono::milliseconds>(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); |