diff options
author | Steven Laver <lavers@google.com> | 2019-12-03 20:58:23 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2019-12-03 20:58:23 +0000 |
commit | 46537f99bbc760316ef4e3d45979d8dd323bebbb (patch) | |
tree | 6392282522c8d5e18e2374696d3ac6316e9ec71b /init/builtins.cpp | |
parent | 62aa74c4e62da5269598ad57de191b327814ae9c (diff) | |
parent | 5fb83ab5045c5607a55848d13e44fe462d17763a (diff) |
Merge "Merge RP1A.191120.001" into r-keystone-qcom-dev
Diffstat (limited to 'init/builtins.cpp')
-rw-r--r-- | init/builtins.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/init/builtins.cpp b/init/builtins.cpp index cd269807a..8ab1d44c9 100644 --- a/init/builtins.cpp +++ b/init/builtins.cpp @@ -65,6 +65,7 @@ #include "action_manager.h" #include "bootchart.h" +#include "builtin_arguments.h" #include "fscrypt_init_extensions.h" #include "init.h" #include "mount_namespace.h" @@ -1238,6 +1239,15 @@ static Result<void> do_enter_default_mount_ns(const BuiltinArguments& args) { } } +static Result<void> do_finish_userspace_reboot(const BuiltinArguments&) { + LOG(INFO) << "Userspace reboot successfully finished"; + boot_clock::time_point now = boot_clock::now(); + property_set("sys.init.userspace_reboot.last_finished", + std::to_string(now.time_since_epoch().count())); + property_set(kUserspaceRebootInProgress, "0"); + return {}; +} + // Builtin-function-map start const BuiltinFunctionMap& GetBuiltinFunctionMap() { constexpr std::size_t kMax = std::numeric_limits<std::size_t>::max(); @@ -1259,6 +1269,7 @@ const BuiltinFunctionMap& GetBuiltinFunctionMap() { {"exec_background", {1, kMax, {false, do_exec_background}}}, {"exec_start", {1, 1, {false, do_exec_start}}}, {"export", {2, 2, {false, do_export}}}, + {"finish_userspace_reboot", {0, 0, {false, do_finish_userspace_reboot}}}, {"hostname", {1, 1, {true, do_hostname}}}, {"ifup", {1, 1, {true, do_ifup}}}, {"init_user0", {0, 0, {false, do_init_user0}}}, |