Messages in this thread Patch in this message | | | From | Barry Song <> | Subject | [PATCH] Fix half-Y2K38 problem in timecompare_update while calculating offset | Date | Mon, 28 Sep 2009 18:16:44 +0800 |
| |
ktime will overflow from 03:14:07 UTC on Tuesday, 19 January 2038, ktime_add() in timecompare_update() will overflow a half earlier. As a result, wrong offset will be gotten, then cause some strange problems. --- kernel/time/timecompare.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/kernel/time/timecompare.c b/kernel/time/timecompare.c index 71e7f1a..d2d893e 100644 --- a/kernel/time/timecompare.c +++ b/kernel/time/timecompare.c @@ -89,7 +89,7 @@ int timecompare_offset(struct timecompare *sync, * source time */ sample.offset = - ktime_to_ns(ktime_add(end, start)) / 2 - + (ktime_to_ns(end) + ktime_to_ns(start)) / 2 - ts; /* simple insertion sort based on duration */ -- 1.5.6.3
| |