[patch 0/6] timekeeping: Cure the signed/unsigned wreckage

From: Thomas Gleixner
Date: Thu Dec 08 2016 - 15:53:01 EST

This series addresses the recently reintroduced signed vs. unsigned
wreckage by cleaning up the whole call chain instead of just making a
simple s64 -> u64 'fix' at one point and keeping the rest signed, which
eventually led to the unintended signed conversion and brought back an
issue that was fixed a year ago already.

Here is the queue:

timekeeping: Force unsigned clocksource to nanoseconds conversions
timekeeping: Make the conversion call chain consistently unsigned
timekeeping: Get rid of pointless typecasts

These three patches are definitely urgent material

timekeeping: Use mul_u64_u32_shr() instead of open coding it

Can wait for 4.11, but for sanity reasons it should go into 4.10

[RFD] timekeeping: Provide optional 128bit math

This is material for discussion. I'm not sure if we want to do that at
all, but it addresses the insanities of long time scheduled out VMs.

[RFD] timekeeping: Get rid of cycle_t

This one cannot be merged right away as there are further cycles_t users in
next. I merily added it for reference and it can be done around rc1 time by
running a coccinelle script.