Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 Sep 2004 15:24:43 -0400
From:      Ken Smith <kensmith@cse.Buffalo.EDU>
To:        Poul-Henning Kamp <phk@phk.freebsd.dk>
Cc:        Ken Smith <kensmith@FreeBSD.org>
Subject:   Re: cvs commit: src/sys/sparc64/sparc64 machdep.c
Message-ID:  <20040930192443.GE19077@electra.cse.Buffalo.EDU>
In-Reply-To: <48971.1096571367@critter.freebsd.dk>
References:  <200409301438.i8UEcx89022771@repoman.freebsd.org> <48971.1096571367@critter.freebsd.dk>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Sep 30, 2004 at 09:09:27PM +0200, Poul-Henning Kamp wrote:
> In message <200409301438.i8UEcx89022771@repoman.freebsd.org>, Ken Smith writes:
> >kensmith    2004-09-30 14:38:59 UTC
> >
> >  FreeBSD src repository
> >
> >  Modified files:
> >    sys/sparc64/sparc64  machdep.c 
> >  Log:
> >  This along with v1.6 of counter.c fixes some timecounter issues on
> >  MP machines (hopefully).  CPU timers are OK on UP machines but we
> >  don't keep the timers in sync on MP machines so if the CPU's timer
> >  is chosen as the primary timecounter it's possible for time to
> >  not be monotonically increasing because different CPU's counters
> >  may be used at different times.  But the CPU's counters are otherwise
> >  one of the higher quality counters available.  So, on UP machines
> >  we'll use a relatively high quality value but on MP machines we'll
> >  use a quality that should prevent the CPU's counters from being chosen.
> 
> The 'microsecond clock' is present in all suns so we don't leave any
> machines without timecounters, right ?
> 

Funny you should ask.  Testing the first version of this patch was how
we found the bug in counter.c - the machine I booted the test kernel
with happened to decide the counter-timer wasn't suitable either due
to the bug and it came up with no timecounters.  You should see what
happens to a machine that's not keeping time.  :-)

Marius has device maps for virtually all known Sparc hardware and
he said all of the MP machines do have the counter-timer available
in them.  Only the IIi and IIe processor based systems don't and
they're only UP machines.

We are drastically low on timecounter-capable devices on sparc64
though, it seems the counter-timer and the CPU are about all there
is.

If this makes you nervous and if you have any suggestions I'm all
ears.

-- 
						Ken Smith
- From there to here, from here to      |       kensmith@cse.buffalo.edu
  there, funny things are everywhere.   |
                      - Theodore Geisel |



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040930192443.GE19077>