Subject: CVS commit: src/sys/arch/i386/i386
To: None <source-changes@NetBSD.org>
From: Erik E. Fair <fair@netbsd.org>
List: source-changes
Date: 07/06/2005 18:35:39
Module Name:	src
Committed By:	fair
Date:		Wed Jul  6 18:35:39 UTC 2005

Modified Files:
	src/sys/arch/i386/i386: cpu.c identcpu.c

Log Message:
move
	microtime_func = cc_microtime;

to a point after the CPU-specific setup routine is called because some of them
"turn off" the TSC because it's broken on those platforms, or not suitable
for use as an interval timer.

One such platform is the Cyrix/NSC Geode processor; when powersave mode is
enabled, the "hlt" instruction stops the TSC too. It continues to be perfectly
reasonable for program profiling as a cycle counter in this mode, but it is
unsuitable for interval time keeping (time doesn't stop just because you're
asleep or napping), and, for now, we don't have a separate flag to make this
distinction - we just test for the presence of TSC to enable cc_microtime().


To generate a diff of this commit:
cvs rdiff -r1.22 -r1.23 src/sys/arch/i386/i386/cpu.c
cvs rdiff -r1.19 -r1.20 src/sys/arch/i386/i386/identcpu.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.