Re: [PATCH] clocksource_cyc2ns: avoid overflowing 64 bits

From: John Stultz
Date: Wed Nov 16 2016 - 14:45:21 EST


On Wed, Nov 16, 2016 at 11:30 AM, Chris Metcalf <cmetcalf@xxxxxxxxxxxx> wrote:
> diff --git a/include/linux/clocksource.h b/include/linux/clocksource.h
> index 08398182f56e..5444429884b8 100644
> --- a/include/linux/clocksource.h
> +++ b/include/linux/clocksource.h
> @@ -171,6 +171,10 @@ static inline u32 clocksource_hz2mult(u32 hz, u32
> shift_constant)
> *
> * Converts cycles to nanoseconds, using the given mult and shift.
> *
> + * The code is optimized for performance and not intended to work
> + * with absolute clocksource cycles, as it will easily overflow,
> + * but just intended for relative (delta) clocksource cycles.
> + *
> * XXX - This could use some mult_lxl_ll() asm optimization

Just as a heads up, it seems your working against an older kernel, as
this didn't apply. Its simple enough to fix up, so I'll do so, but in
the future, please submit patches against something close to Linus
HEAD.

thanks
-john