diff --git a/init/Android.mk b/init/Android.mk index b52c9493f..1ca88d7c5 100644 --- a/init/Android.mk +++ b/init/Android.mk @@ -16,6 +16,14 @@ init_options += \ -DREBOOT_BOOTLOADER_ON_PANIC=0 endif +ifneq (,$(filter eng,$(TARGET_BUILD_VARIANT))) +init_options += \ + -DSHUTDOWN_ZERO_TIMEOUT=1 +else +init_options += \ + -DSHUTDOWN_ZERO_TIMEOUT=0 +endif + init_options += -DLOG_UEVENTS=0 init_cflags += \ diff --git a/init/reboot.cpp b/init/reboot.cpp index 2844d78bb..e34abdbbf 100644 --- a/init/reboot.cpp +++ b/init/reboot.cpp @@ -341,7 +341,14 @@ void DoReboot(unsigned int cmd, const std::string& reason, const std::string& re } /* TODO update default waiting time based on usage data */ - unsigned int shutdownTimeout = android::base::GetUintProperty("ro.build.shutdown_timeout", 10u); + constexpr unsigned int shutdownTimeoutDefault = 10; + unsigned int shutdownTimeout = shutdownTimeoutDefault; + if (SHUTDOWN_ZERO_TIMEOUT) { // eng build + shutdownTimeout = 0; + } else { + shutdownTimeout = + android::base::GetUintProperty("ro.build.shutdown_timeout", shutdownTimeoutDefault); + } LOG(INFO) << "Shutdown timeout: " << shutdownTimeout; static const constexpr char* shutdown_critical_services[] = {"vold", "watchdogd"};