From 3692879cc82e12c56c011d2bf97d1c02bd3d66c5 Mon Sep 17 00:00:00 2001 From: phk Date: Mon, 3 Feb 2003 19:49:35 +0000 Subject: Split the global timezone structure into two integer fields to prevent the compiler from optimizing assignments into byte-copy operations which might make access to the individual fields non-atomic. Use the individual fields throughout, and don't bother locking them with Giant: it is no longer needed. Inspired by: tjr --- sys/fs/nwfs/nwfs_subr.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'sys/fs/nwfs') diff --git a/sys/fs/nwfs/nwfs_subr.c b/sys/fs/nwfs/nwfs_subr.c index ad6009c..10d9647 100644 --- a/sys/fs/nwfs/nwfs_subr.c +++ b/sys/fs/nwfs/nwfs_subr.c @@ -596,7 +596,7 @@ ncp_unix2dostime(tsp, tzoff, ddp, dtp, dhp) * If the time from the last conversion is the same as now, then * skip the computations and use the saved result. */ - t = tsp->tv_sec - tzoff * 60 - tz.tz_minuteswest * 60 - + t = tsp->tv_sec - tzoff * 60 - tz_minuteswest * 60 - (wall_cmos_clock ? adjkerntz : 0); t &= ~1; if (lasttime != t) { @@ -706,7 +706,7 @@ ncp_dos2unixtime(dd, dt, dh, tzoff, tsp) days += ((dd & DD_DAY_MASK) >> DD_DAY_SHIFT) - 1; lastseconds = (days * 24 * 60 * 60) + SECONDSTO1980; } - tsp->tv_sec = seconds + lastseconds + tz.tz_minuteswest * 60 + + tsp->tv_sec = seconds + lastseconds + tz_minuteswest * 60 + tzoff * 60 + (wall_cmos_clock ? adjkerntz : 0); tsp->tv_nsec = (dh % 100) * 10000000; } -- cgit v1.1