Re: [PATCH v8 5/8] time: Add history to cross timestamp interface supporting slower devices

From: John Stultz
Date: Wed Feb 24 2016 - 18:07:41 EST


On Wed, Feb 24, 2016 at 2:56 AM, Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote:
> On Mon, 22 Feb 2016, Christopher S. Hall wrote:
>> +{
>> + struct timekeeper *tk = &tk_core.timekeeper;
>> + bool interp_forward;
>> + u64 corr_raw, corr_real;
>> + int ret;
>
> Once more:
>
> struct timekeeper *tk = &tk_core.timekeeper;
> u64 corr_raw, corr_real;
> bool interp_forward;
> int ret;
>
> Is way simpler to parse fast.

So I just went through and addressed these formatting issues in my tree.

but....

>> @@ -929,6 +1046,12 @@ int get_device_system_crosststamp(int (*get_time_fn)
>> ktime_t base_real;
>> s64 nsec_raw;
>> s64 nsec_real;
>> + cycles_t cycles;
>> + cycle_t now;

I just noticed this train-wreck: cycles_t and cycle_t are obnoxiously
different types. (One is an int on some arches and the other is a
u64).

You very much want to use cycle_t here. And I think that goes for the
introduced cycle_between() function.

So I'm fixing that up as well in this patch, but there's a few other
spots in this series too.

Sigh. Going to have to find some time to go through and try to zap
cycles_t in the kernel because having both is just asking for
trouble. :P

thanks
-john