On Mon, 17 Apr 2017, Matthias Kaehlcke wrote: > Besides reusing existing code this removes the special case handling > for 64-bit masks, which causes clang to raise a shift count overflow > warning due to https://bugs.llvm.org//show_bug.cgi?id=10030. > > Suggested-by: Dmitry Torokhov <d...@chromium.org> > Signed-off-by: Matthias Kaehlcke <m...@chromium.org> > --- > Changes in v2: > - Remove unnecessary cast to u64 > > include/linux/clocksource.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/include/linux/clocksource.h b/include/linux/clocksource.h > index cfc75848a35d..f2b10d9ebd04 100644 > --- a/include/linux/clocksource.h > +++ b/include/linux/clocksource.h > @@ -120,7 +120,7 @@ struct clocksource { > #define CLOCK_SOURCE_RESELECT 0x100 > > /* simplify initialization of mask field */ > -#define CLOCKSOURCE_MASK(bits) (u64)((bits) < 64 ? ((1ULL<<(bits))-1) : -1) > +#define CLOCKSOURCE_MASK(bits) GENMASK_ULL((bits) - 1, 0) > > static inline u32 clocksource_freq2mult(u32 freq, u32 shift_constant, u64 > from) > { > -- > 2.12.2.762.g0e3151a226-goog
Neither patch nor git-am can apply that patch. Please fix your tools. Thanks, tglx