diff options
author | Anton Altaparmakov <aia21@cantab.net> | 2005-10-30 21:00:04 +0000 |
---|---|---|
committer | Anton Altaparmakov <aia21@cantab.net> | 2005-10-30 21:00:04 +0000 |
commit | 07b188ab773e183871e57b33ae37bf635c9f12ba (patch) | |
tree | 311df8a0dd12fb7bd3e9b5b1a5ca500f0428d679 /kernel/timer.c | |
parent | 47c564e10f219f867bdb49225972749a43485a47 (diff) | |
parent | 9f75e1eff3edb2bb07349b94c28f4f2a6c66ca43 (diff) | |
download | kernel_samsung_smdk4412-07b188ab773e183871e57b33ae37bf635c9f12ba.zip kernel_samsung_smdk4412-07b188ab773e183871e57b33ae37bf635c9f12ba.tar.gz kernel_samsung_smdk4412-07b188ab773e183871e57b33ae37bf635c9f12ba.tar.bz2 |
Merge branch 'master' of /usr/src/ntfs-2.6/
Diffstat (limited to 'kernel/timer.c')
-rw-r--r-- | kernel/timer.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/kernel/timer.c b/kernel/timer.c index 3ba10fa..6a2e5f8 100644 --- a/kernel/timer.c +++ b/kernel/timer.c @@ -752,6 +752,15 @@ static void second_overflow(void) else time_adj += (time_adj >> 2) + (time_adj >> 5); #endif +#if HZ == 250 + /* Compensate for (HZ==250) != (1 << SHIFT_HZ). + * Add 1.5625% and 0.78125% to get 255.85938; => only 0.05% error (p. 14) + */ + if (time_adj < 0) + time_adj -= (-time_adj >> 6) + (-time_adj >> 7); + else + time_adj += (time_adj >> 6) + (time_adj >> 7); +#endif #if HZ == 1000 /* Compensate for (HZ==1000) != (1 << SHIFT_HZ). * Add 1.5625% and 0.78125% to get 1023.4375; => only 0.05% error (p. 14) |