*BSD News Article 16475


Return to BSD News archive

Path: sserve!nschq!runxtsa!bde
From: bde@runx.oz.au (Bruce Evans)
Newsgroups: comp.os.386bsd.bugs
Subject: Re: Fix to clock probs [was Re: CMOS clock is incorrectly handled]
Message-ID: <1993May25.111304.7774@runx.oz.au>
Date: Tue, 25 May 93 11:13:04 GMT
References: <1993May18.165711.3527@alw.nih.gov> <1tk1bfINN383@escargot.xx.rmit.OZ.AU> <davidb.738069780@otto>
Organization: RUNX Un*x Timeshare.  Sydney, Australia.

In article <davidb.738069780@otto> davidb@otto.bf.rmit.oz.au (David Burren [Athos]) writes:
>In <1tk1bfINN383@escargot.xx.rmit.OZ.AU> s902113@minyos.xx.rmit.OZ.AU (Luke Mewburn) writes:
>
>> You have to 
>> a) calculate the offset to gmt to where you are in hours. This is the
>>    value you use in the 'timezone xxx' line in /sys/i386/conf/WHATEVER.
>>    (e.g, 'timezone 10')
>
>Luke, the "correct" definition for the East coast of Australia is
>	timezone	-10 dst 2
>
>Note that the timezone field can have a fractional part.  The figure is
>multiplied by 60 before being used in the kernel compile.

Actually the dst value is ignored by the (0-1 to 0.1.2.3) kernel.  The
0.1 kernel just uses the timezone adjustment.  The 0.1.2.3 adds a dst
adjustment based on the day of the year.  This only (almost) works for
the Northern hemisphere.  You can fix it for the Southern hemisphere
by fudging the timeone or by deleting the bogus dst adjustment from
/sys/i386/isda/clock.c.  The fudging to be changed whenever the local
dst changes AND whenever the bogus dst adjustment is made (days 119 and
303).  You can edit the kernel binary to change the timezone if you
don't have space to recompile it.  This all assumes that the clock is
on local time.
-- 
Bruce Evans  bde@runx.oz.au