Mask the cycle values before subtraction. So we can use this validation while the clocksource mask is not 64-bits.
Signed-off-by: Yang Yingliang <yangyingli...@huawei.com> Cc: Thomas Gleixner <t...@linutronix.de> --- kernel/time/timekeeping_internal.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/time/timekeeping_internal.h b/kernel/time/timekeeping_internal.h index 4ea005a..984f02e 100644 --- a/kernel/time/timekeeping_internal.h +++ b/kernel/time/timekeeping_internal.h @@ -15,7 +15,7 @@ extern void tk_debug_account_sleep_time(struct timespec64 *t); #ifdef CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE static inline cycle_t clocksource_delta(cycle_t now, cycle_t last, cycle_t mask) { - cycle_t ret = (now - last) & mask; + cycle_t ret = (now & mask) - (last & mask); return (s64) ret > 0 ? ret : 0; } -- 2.5.0 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/