Subject: Re: kern/10699
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: Erik E. Fair <fair@netbsd.org>
List: netbsd-bugs
Date: 06/23/2005 01:02:02
The following reply was made to PR kern/10699; it has been noted by GNATS.

From: "Erik E. Fair" <fair@netbsd.org>
To: gnats-bugs@netbsd.org
Cc: joff@netbsd.org
Subject: Re: kern/10699
Date: Wed, 22 Jun 2005 18:01:16 -0700

 I think the analysis of this problem is wrong. I don't know how old NetBSD's
 CPU cycle counter interface is, but in -current and NetBSD 2.0, the TSC is
 used for microtime instead of the i8254 if it is present, and if CPU_I586 or
 CPU_I586 are defined in the kernel config.
 
 There is a comment to the effect that the TSC is broken in some Cyrix CPUs
 in sys/arch/i386/include/cpu_counter.h
 
 These CPUs need to be identified and code added to
 sys/arch/i386/i386/identcpu.c to turn off TSC for them, similar to the Winchip
 C6.
 
 In the mean time, this PR can be worked around by recompiling your kernel
 with
 
 options         NO_TSC_MICROTIME
 
 I have been running a system which exhibited the bug you described, and this
 fixed it; I have been testing with your program for about 10 minutes so far
 (previously, the bad behavior manifested immediately).
 
 	Erik <fair@netbsd.org>