[Spice-devel] [PATCH v3 1/3] stat: fix portability problem in stat_time_t declaration
Jonathon Jongsma
jjongsma at redhat.com
Wed Dec 9 08:27:52 PST 2015
On Wed, 2015-12-09 at 15:58 +0000, Frediano Ziglio wrote:
> Assure stat_time_t is 64 bit on all architectures.
> long is not 64 bit on 32 bit systems so use uint64_t intead.
> Also avoid 32 bit overflows for such architectures.
>
> Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
> ---
> server/stat.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/server/stat.h b/server/stat.h
> index 77bfc69..5e8fc32 100644
> --- a/server/stat.h
> +++ b/server/stat.h
> @@ -43,14 +43,14 @@ void stat_remove_counter(uint64_t *counter);
> #define stat_inc_counter(c, v)
> #endif /* RED_STATISTICS */
>
> -typedef unsigned long stat_time_t;
> +typedef uint64_t stat_time_t;
>
> static inline stat_time_t stat_now(clockid_t clock_id)
> {
> struct timespec ts;
>
> clock_gettime(clock_id, &ts);
> - return ts.tv_nsec + ts.tv_sec * 1000 * 1000 * 1000;
> + return ts.tv_nsec + (uint64_t) ts.tv_sec * (1000 * 1000 * 1000);
> }
>
> static inline double stat_cpu_time_to_sec(stat_time_t time)
Acked-by: Jonathon Jongsma <jjongsma at redhat.com>
More information about the Spice-devel
mailing list