SPARC64: Fix serious bug in sched_clock() on sparc64
commit6fc9b9e7213beba2dfe21d71100efa79afd51f99
authorDavid S. Miller <davem@davemloft.net>
Sun, 24 Sep 2006 01:26:24 +0000 (23 18:26 -0700)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 13 Oct 2006 20:23:26 +0000 (13 13:23 -0700)
tree5eff74e7367451f68d701c727abb23848b1b6529
parentd3d1445e23803ea576aa8b77beb8dfa6066bb6dc
SPARC64: Fix serious bug in sched_clock() on sparc64

Unfortunately, sparc64 doesn't have an easy way to do a "64 X 64 -->
128" bit multiply like PowerPC and IA64 do.  We were doing a
"64 X 64 --> 64" bit multiple which causes overflow very quickly with
a 30-bit quotient shift.

So use a quotientshift count of 10 instead of 30, just like x86 and
ARM do.

This also fixes the wrapping of printk timestamp values every ~17
seconds.

Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/sparc64/kernel/time.c