Flavio Cruz, le ven. 13 janv. 2023 03:27:05 -0500, a ecrit:
>  #define time_value64_assert(val)                     \
> -  assert(0 <= (val)->nanoseconds && (val)->nanoseconds < TIME_NANOS_MAX);
> +  assert(0 <= (val).nanoseconds && (val).nanoseconds < TIME_NANOS_MAX);
[...]
> +#define      time_value64_add_nanos(val, nanos)      {       \
> +     time_value64_assert(*val);                      \
[...]

Macros such as TIMEVAL_TO_TIMESPEC etc. do always take pointers, so
better keep coherent with them.

> -record_time_stamp (time_value_t *stamp)
> +record_time_stamp(time_value_t *stamp)
>  {
> -     read_mapped_time(stamp);
> -     time_value_add(stamp, &clock_boottime_offset);
> +     time_value64_t stamp64;
> +     read_mapped_time(&stamp64);
> +     time_value64_add(&stamp64, clock_boottime_offset);
> +     stamp->seconds = stamp64.seconds;
> +     stamp->microseconds = stamp64.nanoseconds / 1000;

There are quite a few such conversions, perhaps introduce a macro to
convert between time_value_t and time_value64_t?

Samuel

Reply via email to