[PATCH 02/12] trace: Make trace_hwlat timestamp y2038 safe
Deepa Dinamani
deepa.kernel at gmail.com
Fri Apr 7 19:16:54 PDT 2017
>> - trace_seq_printf(s, "#%-5u inner/outer(us): %4llu/%-5llu ts:%ld.%09ld",
>> + trace_seq_printf(s, "#%-5u inner/outer(us): %4llu/%-5llu ts:%lld.%09ld",
>> field->seqnum,
>> field->duration,
>> field->outer_duration,
>> - field->timestamp.tv_sec,
>> + (long long)field->timestamp.tv_sec,
>
> Refresh my memory. We need the cast because on 64 bit boxes
> timestamp.tv_sec is just a long?
This is only required until we change the definition of timespec64.
Right now it is defined as
#if __BITS_PER_LONG == 64
# define timespec64 timespec
#else
struct timespec64 {
time64_t tv_sec;
long tv_nsec;
};
#endif
And timespec.tv_sec is just long int on 64 bit machines.
This is why we need the cast now.
We will probably change this and only define __kernel_timespec instead
of timespec, leaving only one definition of timespec64.
At that time, we will not need this.
-Deepa
More information about the linux-mtd
mailing list