mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] Fix half-Y2K38 problem in timecompare_update while calculating offset
@ 2009-09-28 10:16 Barry Song
  2009-09-30  2:44 ` Mike Frysinger
  2009-09-30  5:35 ` Américo Wang
  0 siblings, 2 replies; 5+ messages in thread
From: Barry Song @ 2009-09-28 10:16 UTC (permalink / raw)
  To: akpm, davem, patrick.ohly; +Cc: uclinux-dist-devel, linux-kernel, Barry Song

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


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2010-01-06  3:24 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-09-28 10:16 [PATCH] Fix half-Y2K38 problem in timecompare_update while calculating offset Barry Song
2009-09-30  2:44 ` Mike Frysinger
2010-01-05 19:28   ` Mike Frysinger
2010-01-06  3:18     ` Barry Song
2009-09-30  5:35 ` Américo Wang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®