diff options
author | john stultz <johnstul@us.ibm.com> | 2005-09-06 18:17:46 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-09-07 19:57:34 -0400 |
commit | b149ee2233edf08fb59b11e879a2c5941929bcb8 (patch) | |
tree | 4ee8e066c4d69ac98afc37ab0ab62ae54271ce02 /arch/ppc/kernel/time.c | |
parent | 6c231b7bab0aa6860cd9da2de8a064eddc34c146 (diff) |
[PATCH] NTP: ntp-helper functions
This patch cleans up a commonly repeated set of changes to the NTP state
variables by adding two helper inline functions:
ntp_clear(): Clears the ntp state variables
ntp_synced(): Returns 1 if the system is synced with a time server.
This was compile tested for alpha, arm, i386, x86-64, ppc64, s390, sparc,
sparc64.
Signed-off-by: John Stultz <johnstul@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/ppc/kernel/time.c')
-rw-r--r-- | arch/ppc/kernel/time.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/arch/ppc/kernel/time.c b/arch/ppc/kernel/time.c index bf4ddca5e853..a3c5281a5d2d 100644 --- a/arch/ppc/kernel/time.c +++ b/arch/ppc/kernel/time.c | |||
@@ -169,7 +169,7 @@ void timer_interrupt(struct pt_regs * regs) | |||
169 | * We should have an rtc call that only sets the minutes and | 169 | * We should have an rtc call that only sets the minutes and |
170 | * seconds like on Intel to avoid problems with non UTC clocks. | 170 | * seconds like on Intel to avoid problems with non UTC clocks. |
171 | */ | 171 | */ |
172 | if ( ppc_md.set_rtc_time && (time_status & STA_UNSYNC) == 0 && | 172 | if ( ppc_md.set_rtc_time && ntp_synced() && |
173 | xtime.tv_sec - last_rtc_update >= 659 && | 173 | xtime.tv_sec - last_rtc_update >= 659 && |
174 | abs((xtime.tv_nsec / 1000) - (1000000-1000000/HZ)) < 500000/HZ && | 174 | abs((xtime.tv_nsec / 1000) - (1000000-1000000/HZ)) < 500000/HZ && |
175 | jiffies - wall_jiffies == 1) { | 175 | jiffies - wall_jiffies == 1) { |
@@ -271,10 +271,7 @@ int do_settimeofday(struct timespec *tv) | |||
271 | */ | 271 | */ |
272 | last_rtc_update = new_sec - 658; | 272 | last_rtc_update = new_sec - 658; |
273 | 273 | ||
274 | time_adjust = 0; /* stop active adjtime() */ | 274 | ntp_clear(); |
275 | time_status |= STA_UNSYNC; | ||
276 | time_maxerror = NTP_PHASE_LIMIT; | ||
277 | time_esterror = NTP_PHASE_LIMIT; | ||
278 | write_sequnlock_irqrestore(&xtime_lock, flags); | 275 | write_sequnlock_irqrestore(&xtime_lock, flags); |
279 | clock_was_set(); | 276 | clock_was_set(); |
280 | return 0; | 277 | return 0; |