OSDN Git Service

ART: Decrease dex2oat watchdog timeout
authorAndreas Gampe <agampe@google.com>
Mon, 14 Sep 2015 22:34:38 +0000 (15:34 -0700)
committerAndreas Gampe <agampe@google.com>
Fri, 9 Oct 2015 03:46:33 +0000 (20:46 -0700)
Keep the dex2oat watchdog timeout lower than the package manager
timeout, so that dex2oat kills itself before the system server
watchdog kills the system because of the long installation.

Bug: 23629410

(cherry picked from commit 540138ae55ac1909606a436d7f52e20146c56657)

Change-Id: I425b19ab305cfaa43f6bddc3a892be892acaf513

dex2oat/dex2oat.cc

index 466f5e6..9d7e68a 100644 (file)
@@ -433,8 +433,10 @@ class WatchDog {
   // Debug builds are slower so they have larger timeouts.
   static constexpr int64_t kSlowdownFactor = kIsDebugBuild ? 5U : 1U;
 
-  // 10 minutes scaled by kSlowdownFactor.
-  static constexpr int64_t kWatchDogTimeoutSeconds = kSlowdownFactor * 10 * 60;
+  // 9.5 minutes scaled by kSlowdownFactor. This is slightly smaller than the Package Manager
+  // watchdog (PackageManagerService.WATCHDOG_TIMEOUT, 10 minutes), so that dex2oat will abort
+  // itself before that watchdog would take down the system server.
+  static constexpr int64_t kWatchDogTimeoutSeconds = kSlowdownFactor * (9 * 60 + 30);
 
   bool is_watch_dog_enabled_;
   bool shutting_down_;