too short/too long (sys/kern_tc.c)

Eric Anderson anderson at freebsd.org
Tue Feb 27 18:16:49 UTC 2007


On 02/27/07 11:34, Poul-Henning Kamp wrote:
> In message <45E43984.4020809 at freebsd.org>, Eric Anderson writes:
> 
>> When I boot a -CURRENT box with boot verbose enabled inside qemu, I see
>> one of these messages about every second:
>>
>> 15.f68c5ee76faebe10 too short
>> 16.0f822e13092c5580 too long
> 
> This is a symptom of lousy scheduling or even worse interrupt
> latency.
> 
> In your case +0.060/-0.036 sec per 16 seconds or a couple of percent
> in relative terms.  (The printf is counter intuitive: the integer
> part is in decimal).
> 
> I will readily admit that the 1/256 of a second limit is chosen
> pretty much at random, but with an eye to allowing a division
> by 16 to get close the right result.
> 
> All of this futz is of course to avoid floating point in the kernel.
> 
> As to why:  My main suspect would be the BIOS/ACPI/SMM code, with
> a keen eye to the new interrupt filtering code and what it might
> do to the clock/scheduling interrupts.
> 

Thanks for the reply and info.  It turns out that enabling acpi in the 
kernel makes it go away, so I'm happy.  I'm not certain if anyone should 
care much about it, besides the fact that it might be pointing to 
something else more important.


Are these at all related to the calcru messages people have been seeing? 
  I have to admit, I haven't looked much in the archives on the calcru 
history.  I'm mostly asking for the others who have responded to me 
privately after sending this message.


Eric



More information about the freebsd-current mailing list