diff options
| author | Steve French <sfrench@us.ibm.com> | 2005-08-02 21:20:47 -0700 |
|---|---|---|
| committer | Steve French <sfrench@us.ibm.com> | 2005-08-02 21:20:47 -0700 |
| commit | bcf7e34a71afe24dc210b7825f6f139774cb905c (patch) | |
| tree | d81a8f89eb103290ae70008fde185c068d9f7a4f /kernel/posix-timers.c | |
| parent | eda3c029899cbf435d76fea43b7e1404439ccec9 (diff) | |
| parent | 688d191821de7893043f5a37970472627aaffa4e (diff) | |
Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Diffstat (limited to 'kernel/posix-timers.c')
| -rw-r--r-- | kernel/posix-timers.c | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c index 5b7b4736d82b..10b2ad749d14 100644 --- a/kernel/posix-timers.c +++ b/kernel/posix-timers.c @@ -896,21 +896,10 @@ static int adjust_abs_time(struct k_clock *clock, struct timespec *tp, jiffies_64_f = get_jiffies_64(); } /* - * Take away now to get delta + * Take away now to get delta and normalize */ - oc.tv_sec -= now.tv_sec; - oc.tv_nsec -= now.tv_nsec; - /* - * Normalize... - */ - while ((oc.tv_nsec - NSEC_PER_SEC) >= 0) { - oc.tv_nsec -= NSEC_PER_SEC; - oc.tv_sec++; - } - while ((oc.tv_nsec) < 0) { - oc.tv_nsec += NSEC_PER_SEC; - oc.tv_sec--; - } + set_normalized_timespec(&oc, oc.tv_sec - now.tv_sec, + oc.tv_nsec - now.tv_nsec); }else{ jiffies_64_f = get_jiffies_64(); } |
