From 87b8ce69f6684f698b699ce662c72de78ed43343 Mon Sep 17 00:00:00 2001 From: Susant Sahani Date: Tue, 3 Nov 2015 21:58:42 +0530 Subject: Time-util: introduce usec to jiffies --- src/basic/time-util.c | 14 ++++++++++++++ src/basic/time-util.h | 2 ++ 2 files changed, 16 insertions(+) (limited to 'src') 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); -- cgit v1.2.3-54-g00ecf