summaryrefslogtreecommitdiff
path: root/src/basic
diff options
context:
space:
mode:
authorSusant Sahani <ssahani@gmail.com>2015-11-03 21:58:42 +0530
committerSusant Sahani <ssahani@gmail.com>2015-11-03 21:58:42 +0530
commit87b8ce69f6684f698b699ce662c72de78ed43343 (patch)
tree35da6dd41e1124b2dc1535f4e0e6bf8ae7bd5353 /src/basic
parent4084052911be74c992f74b0a693115128f2a24a7 (diff)
Time-util: introduce usec to jiffies
Diffstat (limited to 'src/basic')
-rw-r--r--src/basic/time-util.c14
-rw-r--r--src/basic/time-util.h2
2 files changed, 16 insertions, 0 deletions
diff --git a/src/basic/time-util.c b/src/basic/time-util.c
index 9dc280efc6..e629d91cb2 100644
--- a/src/basic/time-util.c
+++ b/src/basic/time-util.c
@@ -1122,3 +1122,17 @@ time_t mktime_or_timegm(struct tm *tm, bool utc) {
struct tm *localtime_or_gmtime_r(const time_t *t, struct tm *tm, bool utc) {
return utc ? gmtime_r(t, tm) : localtime_r(t, tm);
}
+
+unsigned long usec_to_jiffies(usec_t u) {
+ static thread_local unsigned long hz = 0;
+ long r;
+
+ if (hz == 0) {
+ r = sysconf(_SC_CLK_TCK);
+
+ assert(r > 0);
+ hz = (unsigned long) r;
+ }
+
+ return DIV_ROUND_UP(u , USEC_PER_SEC / hz);
+}
diff --git a/src/basic/time-util.h b/src/basic/time-util.h
index 417376ea96..925bf18eb2 100644
--- a/src/basic/time-util.h
+++ b/src/basic/time-util.h
@@ -121,3 +121,5 @@ int get_timezone(char **timezone);
time_t mktime_or_timegm(struct tm *tm, bool utc);
struct tm *localtime_or_gmtime_r(const time_t *t, struct tm *tm, bool utc);
+
+unsigned long usec_to_jiffies(usec_t usec);