]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#8952 use msec for epoll / devpoll event wait
authorHoward Chu <hyc@openldap.org>
Wed, 2 Jan 2019 21:51:48 +0000 (21:51 +0000)
committerQuanah Gibson-Mount <quanah@openldap.org>
Thu, 31 Jan 2019 23:43:34 +0000 (23:43 +0000)
servers/slapd/daemon.c

index 063ba1d829152e5d36f3e13d9df10f4c7a0e6cfe..bffde22e5e736372b9b969c4884820334cfd8014 100644 (file)
@@ -304,7 +304,7 @@ static slap_daemon_st slap_daemon[SLAPD_MAX_DAEMON_THREADS];
 
 # define SLAP_EVENT_WAIT(t, tvp, nsp)  do { \
        *(nsp) = epoll_wait( slap_daemon[t].sd_epfd, revents, \
-               dtblsize, (tvp) ? (tvp)->tv_sec * 1000 : -1 ); \
+               dtblsize, (tvp) ? ((tvp)->tv_sec * 1000 + (tvp)->tv_usec / 1000) : -1 ); \
 } while (0)
 
 #elif defined(SLAP_X_DEVPOLL) && defined(HAVE_DEVPOLL)
@@ -480,7 +480,7 @@ static slap_daemon_st slap_daemon[SLAPD_MAX_DAEMON_THREADS];
 
 # define SLAP_EVENT_WAIT(t, tvp, nsp)  do { \
        struct dvpoll           sd_dvpoll; \
-       sd_dvpoll.dp_timeout = (tvp) ? (tvp)->tv_sec * 1000 : -1; \
+       sd_dvpoll.dp_timeout = (tvp) ? ((tvp)->tv_sec * 1000 + (tvp)->tv_usec / 1000) : -1; \
        sd_dvpoll.dp_nfds = dtblsize; \
        sd_dvpoll.dp_fds = revents; \
        *(nsp) = ioctl( slap_daemon[t].sd_dpfd, DP_POLL, &sd_dvpoll ); \