diff options
-rw-r--r-- | arch/powerpc/sysdev/mpic_timer.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/powerpc/sysdev/mpic_timer.c b/arch/powerpc/sysdev/mpic_timer.c index 70dcf9c5b8fb..9d9b06217f8b 100644 --- a/arch/powerpc/sysdev/mpic_timer.c +++ b/arch/powerpc/sysdev/mpic_timer.c | |||
@@ -97,8 +97,11 @@ static void convert_ticks_to_time(struct timer_group_priv *priv, | |||
97 | time->tv_sec = (__kernel_time_t)div_u64(ticks, priv->timerfreq); | 97 | time->tv_sec = (__kernel_time_t)div_u64(ticks, priv->timerfreq); |
98 | tmp_sec = (u64)time->tv_sec * (u64)priv->timerfreq; | 98 | tmp_sec = (u64)time->tv_sec * (u64)priv->timerfreq; |
99 | 99 | ||
100 | time->tv_usec = (__kernel_suseconds_t) | 100 | time->tv_usec = 0; |
101 | div_u64((ticks - tmp_sec) * 1000000, priv->timerfreq); | 101 | |
102 | if (tmp_sec <= ticks) | ||
103 | time->tv_usec = (__kernel_suseconds_t) | ||
104 | div_u64((ticks - tmp_sec) * 1000000, priv->timerfreq); | ||
102 | 105 | ||
103 | return; | 106 | return; |
104 | } | 107 | } |