Subject: Re: timecounters using broken TSC - PC-engines WRAP time problem
To: None <tech-kern@NetBSD.org>
From: theo borm <theo4490@borm.org>
List: tech-kern
Date: 11/29/2007 15:24:19
Joerg Sonnenberger wrote:

>On Thu, Nov 29, 2007 at 02:42:04PM +0100, theo borm wrote:
>  
>
>>Using a kernel with "options    NO_TSC_TIME" does NOT have the effect I 
>>thought it would have. IF "options    NO_TSC_TIME" is NOT intended to 
>>disable the use of the TSC, then it would be nice to have another kernel 
>>compilation option to do so.
>>    
>>
>
>The option seems to be a left-over from other things.
>  
>
It mentions VMware, and my /guess/ was that timecounters can get 
confused when the TSC is modified outside the netbsd scope (and that 
would suggest potential problems with XEN too).

>  
>
>>I'm not quite sure if any of this would be considered a bug, but as Soekris 
>>(NET4501) users /may/ also be affected, it thought it prudent to drop a 
>>note here.
>>    
>>
>
>Does your system have an AMD Geode SC1100 or similiar? I found a
>discussion for Linux that mentioned that the TSC is broken as it is not
>incremented during halt.
>
>  
>
Yes. The fact that the TSC is broken is also mentioned in the dmsg, but 
despite this it /is/ used.

Now I know what to look for, I find numerous posts with other people 
seeing similar problems on a range of hardware. The TSC apparently is 
coupled to the processor clock, and on some machines external processes 
can modify this.

I'm wondering if using the TSC rather than the i8254 by default is such 
a good idea. It may be more accurate than the i8254 /when/ it is 
working, but if the i8254 clock is more reliable, I would prefer that.

Cheers, Theo.

>Joerg
>  
>