summaryrefslogtreecommitdiff
path: root/usr/src/lib/libc
diff options
context:
space:
mode:
authorPatrick Mooney <pmooney@pfmooney.com>2016-09-07 01:03:12 +0000
committerPatrick Mooney <pmooney@pfmooney.com>2016-09-16 20:58:13 +0000
commit6a41e7224f5dce21547e07eced881016dac9e18a (patch)
tree0e7f267fe684093c5fd5ed53b9c35d6bdcef97e6 /usr/src/lib/libc
parentabec4d311852be6c35adee4906374de257d8fb64 (diff)
downloadillumos-joyent-6a41e7224f5dce21547e07eced881016dac9e18a.tar.gz
OS-5655 hrt2ts and friends are too clever for their own good
Reviewed by: Jerry Jelinek <jerry.jelinek@joyent.com> Approved by: Jerry Jelinek <jerry.jelinek@joyent.com>
Diffstat (limited to 'usr/src/lib/libc')
-rw-r--r--usr/src/lib/libc/port/sys/time_util.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/usr/src/lib/libc/port/sys/time_util.c b/usr/src/lib/libc/port/sys/time_util.c
index 93a07aaee0..b6ea0291e2 100644
--- a/usr/src/lib/libc/port/sys/time_util.c
+++ b/usr/src/lib/libc/port/sys/time_util.c
@@ -22,10 +22,9 @@
/*
* Copyright 2004 Sun Microsystems, Inc. All rights reserved.
* Use is subject to license terms.
+ * Copyright 2016 Joyent, Inc.
*/
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/types.h>
#include <time.h>
#include <errno.h>
@@ -39,6 +38,10 @@
void
hrt2ts(hrtime_t hrt, timespec_t *tsp)
{
+#if defined(__amd64)
+ tsp->tv_sec = hrt / NANOSEC;
+ tsp->tv_nsec = hrt % NANOSEC;
+#else
uint32_t sec, nsec, tmp;
tmp = (uint32_t)(hrt >> 30);
@@ -60,6 +63,7 @@ hrt2ts(hrtime_t hrt, timespec_t *tsp)
}
tsp->tv_sec = (time_t)sec;
tsp->tv_nsec = nsec;
+#endif /* defined(__amd64) */
}
/*
@@ -67,8 +71,8 @@ hrt2ts(hrtime_t hrt, timespec_t *tsp)
* All *timedwait() system call traps expect relative time.
*/
void
-abstime_to_reltime(clockid_t clock_id,
- const timespec_t *abstime, timespec_t *reltime)
+abstime_to_reltime(clockid_t clock_id, const timespec_t *abstime,
+ timespec_t *reltime)
{
extern int __clock_gettime(clockid_t, timespec_t *);
timespec_t now;