summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libs/utils/SystemClock.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/libs/utils/SystemClock.cpp b/libs/utils/SystemClock.cpp
index fe4ae91..ec2d82e 100644
--- a/libs/utils/SystemClock.cpp
+++ b/libs/utils/SystemClock.cpp
@@ -153,17 +153,25 @@ int64_t elapsedRealtimeNano()
{
#ifdef HAVE_ANDROID_OS
struct timespec ts;
- int result = clock_gettime(CLOCK_BOOTTIME, &ts);
+ int result;
int64_t timestamp;
static volatile int64_t prevTimestamp;
static volatile int prevMethod;
+#if 0
+ /*
+ * b/7100774
+ * clock_gettime appears to have clock skews and can sometimes return
+ * backwards values. Disable its use until we find out what's wrong.
+ */
+ result = clock_gettime(CLOCK_BOOTTIME, &ts);
if (result == 0) {
timestamp = seconds_to_nanoseconds(ts.tv_sec) + ts.tv_nsec;
checkTimeStamps(timestamp, &prevTimestamp, &prevMethod,
METHOD_CLOCK_GETTIME);
return timestamp;
}
+#endif
// CLOCK_BOOTTIME doesn't exist, fallback to /dev/alarm
static int s_fd = -1;