[alsa-devel] [PATCH] alsa-libs: use CLOCK_REALTIME for non-monotonic ts

Takashi Iwai tiwai at suse.de
Fri Jan 24 13:55:57 CET 2014


At Thu, 23 Jan 2014 19:03:00 -0500,
Olivier Langlois wrote:
> 
> gettimeofday() is the same than clock_gettime(CLOCK_REALTIME)
> except for the loss of precision and the double unnecessary
> conversion timespec <-> timeval.
> 
> Signed-off-by: Olivier Langlois <olivier at trillion01.com>

Thanks, applied.


Takashi

> ---
>  src/pcm/pcm_local.h | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/src/pcm/pcm_local.h b/src/pcm/pcm_local.h
> index e1c0baa..8a6c743 100644
> --- a/src/pcm/pcm_local.h
> +++ b/src/pcm/pcm_local.h
> @@ -961,17 +961,21 @@ typedef union snd_tmp_double {
>  /* get the current timestamp */
>  static inline void gettimestamp(snd_htimestamp_t *tstamp, int monotonic)
>  {
> -#if defined(HAVE_CLOCK_GETTIME) && defined(CLOCK_MONOTONIC)
> +#if defined(HAVE_CLOCK_GETTIME)
> +#if defined(CLOCK_MONOTONIC)
>  	if (monotonic) {
>  		clock_gettime(CLOCK_MONOTONIC, tstamp);
>  	} else {
>  #endif
> +		clock_gettime(CLOCK_REALTIME, tstamp);
> +#else
>  		struct timeval tv;
>  
>  		gettimeofday(&tv, 0);
>  		tstamp->tv_sec = tv.tv_sec;
>  		tstamp->tv_nsec = tv.tv_usec * 1000L;
> -#if defined(HAVE_CLOCK_GETTIME) && defined(CLOCK_MONOTONIC)
> +#endif
> +#if defined(HAVE_CLOCK_GETTIME)
>  	}
>  #endif
>  }
> -- 
> 1.8.5.3
> 
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
> 


More information about the Alsa-devel mailing list