Merge "storaged: fix check_time logic"
diff --git a/storaged/storaged.cpp b/storaged/storaged.cpp
index d3fa2b9..73df6d0 100644
--- a/storaged/storaged.cpp
+++ b/storaged/storaged.cpp
@@ -22,6 +22,7 @@
 
 #include <android-base/logging.h>
 #include <cutils/properties.h>
+#include <log/log.h>
 
 #include <storaged.h>
 #include <storaged_utils.h>
@@ -217,14 +218,20 @@
     if (mConfig.event_time_check_usec &&
         clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &start_ts) < 0) {
         check_time = false;
-        PLOG_TO(SYSTEM, ERROR) << "clock_gettime() failed";
+        static time_t state_a;
+        IF_ALOG_RATELIMIT_LOCAL(300, &state_a) {
+            PLOG_TO(SYSTEM, ERROR) << "clock_gettime() failed";
+        }
     }
 
     event();
 
-    if (mConfig.event_time_check_usec) {
+    if (mConfig.event_time_check_usec && check_time) {
         if (clock_gettime(CLOCK_PROCESS_CPUTIME_ID, &end_ts) < 0) {
-            PLOG_TO(SYSTEM, ERROR) << "clock_gettime() failed";
+            static time_t state_b;
+            IF_ALOG_RATELIMIT_LOCAL(300, &state_b) {
+                PLOG_TO(SYSTEM, ERROR) << "clock_gettime() failed";
+            }
             return;
         }
         int64_t cost = (end_ts.tv_sec - start_ts.tv_sec) * SEC_TO_USEC +