Module Name: src Committed By: riz Date: Fri Jan 7 01:01:44 UTC 2011
Modified Files: src/sys/arch/vax/include [netbsd-5]: clock.h src/sys/arch/vax/vax [netbsd-5]: clock.c Log Message: Pull up following revision(s) (requested by uwe in ticket #1500): sys/arch/vax/vax/clock.c: revision 1.54 sys/arch/vax/include/clock.h: revision 1.8 Correct definition of leap year. Make yeartonum and numtoyear use full years so that year 2000 is correctly counted as a leap year. Now NetBSD under SIMH picks up correct time-of-day clock value. It used to be a day behind, since 2000 - 1900 = 100 and naive leap year test wouldn't count it as a leap year. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.6.70.1 src/sys/arch/vax/include/clock.h cvs rdiff -u -r1.49.20.1 -r1.49.20.2 src/sys/arch/vax/vax/clock.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/vax/include/clock.h diff -u src/sys/arch/vax/include/clock.h:1.6 src/sys/arch/vax/include/clock.h:1.6.70.1 --- src/sys/arch/vax/include/clock.h:1.6 Tue Sep 5 19:32:57 2006 +++ src/sys/arch/vax/include/clock.h Fri Jan 7 01:01:44 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: clock.h,v 1.6 2006/09/05 19:32:57 matt Exp $ */ +/* $NetBSD: clock.h,v 1.6.70.1 2011/01/07 01:01:44 riz Exp $ */ /* * Copyright (c) 1996 Ludd, University of Lule}, Sweden. * All rights reserved. @@ -37,7 +37,7 @@ /* * Time constants. These are unlikely to change. */ -#define IS_LEAPYEAR(y) (((y % 4) == 0) && (y % 100)) +#define IS_LEAPYEAR(y) ((((y % 4) == 0) && ((y % 100) != 0)) || ((y % 400) == 0)) #define SEC_PER_MIN (60) #define SEC_PER_HOUR (SEC_PER_MIN * 60) Index: src/sys/arch/vax/vax/clock.c diff -u src/sys/arch/vax/vax/clock.c:1.49.20.1 src/sys/arch/vax/vax/clock.c:1.49.20.2 --- src/sys/arch/vax/vax/clock.c:1.49.20.1 Wed Sep 16 04:46:14 2009 +++ src/sys/arch/vax/vax/clock.c Fri Jan 7 01:01:44 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: clock.c,v 1.49.20.1 2009/09/16 04:46:14 snj Exp $ */ +/* $NetBSD: clock.c,v 1.49.20.2 2011/01/07 01:01:44 riz Exp $ */ /* * Copyright (c) 1995 Ludd, University of Lule}, Sweden. * All rights reserved. @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: clock.c,v 1.49.20.1 2009/09/16 04:46:14 snj Exp $"); +__KERNEL_RCSID(0, "$NetBSD: clock.c,v 1.49.20.2 2011/01/07 01:01:44 riz Exp $"); #include <sys/param.h> #include <sys/kernel.h> @@ -194,18 +194,18 @@ { int n; - for (n = 0, y -= 1; y > 69; y--) + for (n = 0, y -= 1; y > 1969; y--) n += SECPERYEAR(y); return n; } /* - * Converts tick number to a year 70 -> + * Converts tick number to a year 1970 -> */ int numtoyear(int num) { - int y = 70, j; + int y = 1970, j; while(num >= (j = SECPERYEAR(y))) { y++; num -= j;