Commit-ID:  fa3aa7a54fe6d3abf128f13cd4bbd40eaa48fed2
Gitweb:     http://git.kernel.org/tip/fa3aa7a54fe6d3abf128f13cd4bbd40eaa48fed2
Author:     Frederic Weisbecker <fweis...@gmail.com>
AuthorDate: Tue, 7 Mar 2017 10:55:34 +0100
Committer:  Thomas Gleixner <t...@linutronix.de>
CommitDate: Tue, 7 Mar 2017 11:03:28 +0100

jiffies: Revert bogus conversion of NSEC_PER_SEC to TICK_NSEC

commit 93825f2ec736 converted NSEC_PER_SEC to TICK_NSEC because the author
confused NSEC_PER_JIFFY with NSEC_PER_SEC.

As a result, the calculation of refined jiffies got broken, triggering
lockups.

Fixes: 93825f2ec736 ("jiffies: Reuse TICK_NSEC instead of NSEC_PER_JIFFY")
Reported-and-tested-by: Meelis Roos <mr...@linux.ee>
Signed-off-by: Frederic Weisbecker <fweis...@gmail.com>
Cc: Peter Zijlstra <pet...@infradead.org>
Link: 
http://lkml.kernel.org/r/1488880534-3777-1-git-send-email-fweis...@gmail.com
Signed-off-by: Thomas Gleixner <t...@linutronix.de>

---
 kernel/time/jiffies.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/kernel/time/jiffies.c b/kernel/time/jiffies.c
index 7906b3f..4977191 100644
--- a/kernel/time/jiffies.c
+++ b/kernel/time/jiffies.c
@@ -125,7 +125,7 @@ int register_refined_jiffies(long cycles_per_second)
        shift_hz += cycles_per_tick/2;
        do_div(shift_hz, cycles_per_tick);
        /* Calculate nsec_per_tick using shift_hz */
-       nsec_per_tick = (u64)TICK_NSEC << 8;
+       nsec_per_tick = (u64)NSEC_PER_SEC << 8;
        nsec_per_tick += (u32)shift_hz/2;
        do_div(nsec_per_tick, (u32)shift_hz);
 

Reply via email to