summaryrefslogtreecommitdiff
path: root/src/basic
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2015-11-03 17:38:22 +0100
committerLennart Poettering <lennart@poettering.net>2015-11-03 17:38:22 +0100
commit5703176d6e9680c32caac1de2d6bdb84cdc72c96 (patch)
treefbd82ede58241407326bde3fff0648610b4d058b /src/basic
parente37c57106eabfda8c2dfb8a2605514ab5cf8f904 (diff)
parent1a14863e7e88a4694105071987dbafed27a263b2 (diff)
Merge pull request #1764 from ssahani/jiffies-1
(V2) networkd: bridge convert 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);