2021-03-16 11:59 (UTC-0700), Stephen Hemminger:
> On Sun, 14 Feb 2021 05:16:11 +0300
> Dmitry Kozlyuk <dmitry.kozl...@gmail.com> wrote:
> 
> > +rte_time_get_us(struct rte_time_us *now)
> > +{
> > +   struct timeval sys;
> > +
> > +   gettimeofday(&sys, NULL);
> > +   now->sec = sys.tv_sec;
> > +   now->usec = sys.tv_usec;
> > +}  
> 
> Why would drivers want the default (wall clock) time instead
> of using monotonic clock. The wall clock gets changed by NTP
> and that is rarely what you want except for the case of log messages.

* gettimeofday() is mostly used to measure time (tests, hns3 PMD), so you're
right, monotonic clock is what that code really needs.

* ena PMD uses gettimeofday() with pthread_cond_timedwait() without calling
pthread_cond_setclock(), which is a bug, I believe.

* hns3 PMD actually uses gettimeofday() for logs.

For wall clock time there is C11 timespec_get(), so I agree this API should
be changed to monotonic, thanks.

Reply via email to