aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2019-11-07 09:52:11 +0100
committerFlorian Weimer <fweimer@redhat.com>2019-11-07 09:54:33 +0100
commita673c07af3bcfa24432c3fd8a1dea12f931ee903 (patch)
treecf93e6dae43f5ff17f961a584b90f3bd224c42fc
parent50471a8613dc487dce8b7cabc35a01b4b5b242ea (diff)
downloadglibc-a673c07af3bcfa24432c3fd8a1dea12f931ee903.zip
glibc-a673c07af3bcfa24432c3fd8a1dea12f931ee903.tar.gz
glibc-a673c07af3bcfa24432c3fd8a1dea12f931ee903.tar.bz2
hurd: Use __clock_gettime in _hurd_select
The __gettimeofday references caused check-localplt failures after commit 5e46749c64d5. Fixes: 5e46749c64d51f50f8511ed99c1266d7c13e182b Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org> Change-Id: Ia6da4045157a5bbccc67d79e881d7592e6f8a890
-rw-r--r--hurd/hurdselect.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/hurd/hurdselect.c b/hurd/hurdselect.c
index 79cd20b..6a174bc 100644
--- a/hurd/hurdselect.c
+++ b/hurd/hurdselect.c
@@ -88,7 +88,7 @@ _hurd_select (int nfds,
reply_msgid = IO_SELECT_REPLY_MSGID;
else
{
- struct timeval now;
+ struct timespec now;
if (timeout->tv_sec < 0 || ! valid_nanoseconds (timeout->tv_nsec))
{
@@ -96,12 +96,12 @@ _hurd_select (int nfds,
return -1;
}
- err = __gettimeofday(&now, NULL);
+ err = __clock_gettime (CLOCK_REALTIME, &now);
if (err)
return -1;
ts.tv_sec = now.tv_sec + timeout->tv_sec;
- ts.tv_nsec = now.tv_usec * 1000 + timeout->tv_nsec;
+ ts.tv_nsec = now.tv_nsec + timeout->tv_nsec;
if (ts.tv_nsec >= 1000000000)
{
@@ -175,8 +175,7 @@ _hurd_select (int nfds,
if (error)
{
/* Set timeout to 0. */
- struct timeval now;
- err = __gettimeofday(&now, NULL);
+ err = __clock_gettime (CLOCK_REALTIME, &ts);
if (err)
{
/* Really bad luck. */
@@ -192,8 +191,6 @@ _hurd_select (int nfds,
errno = err;
return -1;
}
- ts.tv_sec = now.tv_sec;
- ts.tv_nsec = now.tv_usec * 1000;
reply_msgid = IO_SELECT_TIMEOUT_REPLY_MSGID;
}