diff options
Diffstat (limited to 'arch/s390/kernel/time.c')
-rw-r--r-- | arch/s390/kernel/time.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/arch/s390/kernel/time.c b/arch/s390/kernel/time.c index 1981c6199fa2..abab42e9f5f8 100644 --- a/arch/s390/kernel/time.c +++ b/arch/s390/kernel/time.c | |||
@@ -166,7 +166,7 @@ EXPORT_SYMBOL(do_settimeofday); | |||
166 | void account_ticks(struct pt_regs *regs) | 166 | void account_ticks(struct pt_regs *regs) |
167 | { | 167 | { |
168 | __u64 tmp; | 168 | __u64 tmp; |
169 | __u32 ticks, xticks; | 169 | __u32 ticks; |
170 | 170 | ||
171 | /* Calculate how many ticks have passed. */ | 171 | /* Calculate how many ticks have passed. */ |
172 | if (S390_lowcore.int_clock < S390_lowcore.jiffy_timer) { | 172 | if (S390_lowcore.int_clock < S390_lowcore.jiffy_timer) { |
@@ -204,6 +204,7 @@ void account_ticks(struct pt_regs *regs) | |||
204 | */ | 204 | */ |
205 | write_seqlock(&xtime_lock); | 205 | write_seqlock(&xtime_lock); |
206 | if (S390_lowcore.jiffy_timer > xtime_cc) { | 206 | if (S390_lowcore.jiffy_timer > xtime_cc) { |
207 | __u32 xticks; | ||
207 | tmp = S390_lowcore.jiffy_timer - xtime_cc; | 208 | tmp = S390_lowcore.jiffy_timer - xtime_cc; |
208 | if (tmp >= 2*CLK_TICKS_PER_JIFFY) { | 209 | if (tmp >= 2*CLK_TICKS_PER_JIFFY) { |
209 | xticks = __div(tmp, CLK_TICKS_PER_JIFFY); | 210 | xticks = __div(tmp, CLK_TICKS_PER_JIFFY); |
@@ -212,13 +213,11 @@ void account_ticks(struct pt_regs *regs) | |||
212 | xticks = 1; | 213 | xticks = 1; |
213 | xtime_cc += CLK_TICKS_PER_JIFFY; | 214 | xtime_cc += CLK_TICKS_PER_JIFFY; |
214 | } | 215 | } |
215 | while (xticks--) | 216 | do_timer(xticks); |
216 | do_timer(regs); | ||
217 | } | 217 | } |
218 | write_sequnlock(&xtime_lock); | 218 | write_sequnlock(&xtime_lock); |
219 | #else | 219 | #else |
220 | for (xticks = ticks; xticks > 0; xticks--) | 220 | do_timer(ticks); |
221 | do_timer(regs); | ||
222 | #endif | 221 | #endif |
223 | 222 | ||
224 | #ifdef CONFIG_VIRT_CPU_ACCOUNTING | 223 | #ifdef CONFIG_VIRT_CPU_ACCOUNTING |