Explain why clock(3) isn't broken.
Bug: 17441123
Change-Id: I6ee9b7f54bab55b1a8760ce9bcaaa6eab1dcc492
diff --git a/libc/bionic/clock.cpp b/libc/bionic/clock.cpp
index 98f71af..a2636c6 100644
--- a/libc/bionic/clock.cpp
+++ b/libc/bionic/clock.cpp
@@ -34,5 +34,8 @@
clock_t clock() {
tms t;
times(&t);
+ // Although times(2) and clock(3) both use the type clock_t, the units are
+ // different. For times(2) it's pure clock ticks, but for clock(3) the unit
+ // is CLOCKS_PER_SEC, so we need to scale appropriately.
return (t.tms_utime + t.tms_stime) * (CLOCKS_PER_SEC / sysconf(_SC_CLK_TCK));
}