<p dir="ltr">Dear, All</p>
<p dir="ltr">In project, use both gettimeofday() and clock_gettime(). It's needless.<br>
I think to use clock_gettime() better than gettimeofday(). becaues, gettimeofday() function will be obsoletecent. (<a href="http://pubs.opengroup.org/stage7tc1/functions/gettimeofday.html">http://pubs.opengroup.org/stage7tc1/functions/gettimeofday.html</a>)<br>
and "time.h" is used only (Now, using "sys/time.h", "time.h")</p>
<p dir="ltr">also, clock_gettime() use to timespec structrue.<br>
If function use to timeval structure, timespec structure also support to function. But, different slightly name of function. such as, select() and pselect ()</p>
<p dir="ltr">int select(int nfds, fd_set *readfds, fd_set *writefds,<br>
fd_set *exceptfds, struct timeval *timeout);</p>
<p dir="ltr">int pselect(int nfds, fd_set *readfds, fd_set *writefds,<br>
fd_set *exceptfds, const struct timespec *timeout,<br>
const sigset_t *sigmask<br></p>
<p dir="ltr">Signed-off-by: GyeongminKim <<a href="mailto:gyeongmintwo@gmail.com">gyeongmintwo@gmail.com</a>></p>
<p dir="ltr"># On branch master<br>
# Changes to be committed:<br>
# (use "git reset HEAD <file>..." to unstage)<br>
#<br>
# modified: src/lxc/conf.c<br>
# modified: src/lxc/confile.c<br>
# modified: src/lxc/log.c<br>
# modified: src/lxc/log.h<br>
# modified: src/lxc/lxc_stop.c<br>
# modified: src/lxc/lxclock.h<br>
# modified: src/lxc/monitor.c<br>
# modified: src/lxc/state.c<br>
#</p>
<p dir="ltr">diff --git a/src/lxc/conf.c b/src/lxc/conf.c<br>
index d4855fd..d47907d 100644<br>
--- a/src/lxc/conf.c<br>
+++ b/src/lxc/conf.c<br>
@@ -35,7 +35,6 @@<br>
#include <sys/types.h><br>
#include <pwd.h><br>
#include <grp.h><br>
-#include <time.h><br>
#ifdef HAVE_STATVFS<br>
#include <sys/statvfs.h><br>
#endif<br>
diff --git a/src/lxc/confile.c b/src/lxc/confile.c<br>
index e3be6a6..dc12edf 100644<br>
--- a/src/lxc/confile.c<br>
+++ b/src/lxc/confile.c<br>
@@ -36,7 +36,6 @@<br>
#include <arpa/inet.h><br>
#include <netinet/in.h><br>
#include <net/if.h><br>
-#include <time.h><br>
#include <dirent.h><br>
<br>
#include "parse.h"<br>
diff --git a/src/lxc/log.c b/src/lxc/log.c<br>
index 6633e62..0230724 100644<br>
--- a/src/lxc/log.c<br>
+++ b/src/lxc/log.c<br>
@@ -89,7 +89,7 @@ static int log_append_logfile(const struct lxc_log_appender *appender,<br>
if (lxc_log_fd == -1)<br>
return 0;<br>
<br>
- ms = event->timestamp.tv_usec / 1000;<br>
+ ms = event->timestamp.tv_nsec / 1000000;<br>
n = snprintf(buffer, sizeof(buffer),<br>
"%15s %10ld.%03d %-8s %s - %s:%s:%d - ",<br>
log_prefix,<br>
diff --git a/src/lxc/log.h b/src/lxc/log.h<br>
index b47f120..bccdf5f 100644<br>
--- a/src/lxc/log.h<br>
+++ b/src/lxc/log.h<br>
@@ -28,7 +28,7 @@<br>
<br>
#include <stdarg.h><br>
#include <stdio.h><br>
-#include <sys/time.h><br>
+#include <time.h><br>
#include <string.h><br>
#include <strings.h><br>
#include <stdbool.h><br>
@@ -79,7 +79,7 @@ struct lxc_log_locinfo {<br>
struct lxc_log_event {<br>
const char* category;<br>
int priority;<br>
- struct timeval timestamp;<br>
+ struct timespec timestamp;<br>
struct lxc_log_locinfo *locinfo;<br>
const char *fmt;<br>
va_list *vap;<br>
@@ -203,7 +203,7 @@ ATTR_UNUSED static inline void LXC_##PRIORITY(struct lxc_log_locinfo* locinfo, \<br>
}; \<br>
va_list va_ref; \<br>
\<br>
- gettimeofday(&evt.timestamp, NULL); \<br>
+ clock_gettime(CLOCK_REALTIME, &evt.timestamp); \<br>
\<br>
va_start(va_ref, format); \<br>
evt.vap = &va_ref; \<br>
diff --git a/src/lxc/lxc_stop.c b/src/lxc/lxc_stop.c<br>
index 7054532..3b891a6 100644<br>
--- a/src/lxc/lxc_stop.c<br>
+++ b/src/lxc/lxc_stop.c<br>
@@ -104,14 +104,14 @@ static int do_reboot_and_check(struct lxc_arguments *a, struct lxc_container *c)<br>
/* can we use c-> wait for this, assuming it will<br>
* re-enter RUNNING? For now just sleep */<br>
int elapsed_time, curtime = 0;<br>
- struct timeval tv;<br>
+ struct timespec tv;<br>
<br>
newpid = c->init_pid(c);<br>
if (newpid != -1 && newpid != pid)<br>
return 0;<br>
<br>
if (timeout != -1) {<br>
- ret = gettimeofday(&tv, NULL);<br>
+ ret = clock_gettime(CLOCK_REALTIME, &tv);<br>
if (ret)<br>
break;<br>
curtime = tv.tv_sec;<br>
@@ -119,7 +119,7 @@ static int do_reboot_and_check(struct lxc_arguments *a, struct lxc_container *c)<br>
<br>
sleep(1);<br>
if (timeout != -1) {<br>
- ret = gettimeofday(&tv, NULL);<br>
+ ret = clock_gettime(CLOCK_REALTIME, &tv);<br>
if (ret)<br>
break;<br>
elapsed_time = tv.tv_sec - curtime;<br>
diff --git a/src/lxc/lxclock.h b/src/lxc/lxclock.h<br>
index e00dd8a..74ea83f 100644<br>
--- a/src/lxc/lxclock.h<br>
+++ b/src/lxc/lxclock.h<br>
@@ -28,7 +28,6 @@<br>
#include <sys/file.h><br>
#include <semaphore.h><br>
#include <string.h><br>
-#include <time.h><br>
<br>
#define LXC_LOCK_ANON_SEM 1 /*!< Anonymous semaphore lock */<br>
#define LXC_LOCK_FLOCK 2 /*!< flock(2) lock */<br>
diff --git a/src/lxc/monitor.c b/src/lxc/monitor.c<br>
index 1e1c094..9f68af8 100644<br>
--- a/src/lxc/monitor.c<br>
+++ b/src/lxc/monitor.c<br>
@@ -222,16 +222,16 @@ err1:<br>
int lxc_monitor_read_fdset(fd_set *rfds, int nfds, struct lxc_msg *msg,<br>
int timeout)<br>
{<br>
- struct timeval tval,*tv = NULL;<br>
+ struct timespec tspec,*tv = NULL;<br>
int ret,i;<br>
<br>
if (timeout != -1) {<br>
- tv = &tval;<br>
+ tv = &tspec;<br>
tv->tv_sec = timeout;<br>
- tv->tv_usec = 0;<br>
+ tv->tv_nsec = 0;<br>
}<br>
<br>
- ret = select(nfds, rfds, NULL, NULL, tv);<br>
+ ret = pselect(nfds, rfds, NULL, NULL, tv, NULL);<br>
if (ret == -1)<br>
return -1;<br>
else if (ret == 0)<br>
diff --git a/src/lxc/state.c b/src/lxc/state.c<br>
index db833b0..a5e9d6f 100644<br>
--- a/src/lxc/state.c<br>
+++ b/src/lxc/state.c<br>
@@ -134,12 +134,12 @@ extern int lxc_wait(const char *lxcname, const char *states, int timeout, const<br>
<br>
for (;;) {<br>
int elapsed_time, curtime = 0;<br>
- struct timeval tv;<br>
+ struct timespec tv;<br>
int stop = 0;<br>
int retval;<br>
<br>
if (timeout != -1) {<br>
- retval = gettimeofday(&tv, NULL);<br>
+ retval = clock_gettime(CLOCK_REALTIME, &tv);<br>
if (retval)<br>
goto out_close;<br>
curtime = tv.tv_sec;<br>
@@ -151,7 +151,7 @@ extern int lxc_wait(const char *lxcname, const char *states, int timeout, const<br>
}<br>
<br>
if (timeout != -1) {<br>
- retval = gettimeofday(&tv, NULL);<br>
+ retval = clock_gettime(CLOCK_REALTIME, &tv);<br>
if (retval)<br>
goto out_close;<br>
elapsed_time = tv.tv_sec - curtime;</p>