calcru: negative time ... followed by freeze

Robert Watson rwatson at
Mon Jun 21 00:12:46 GMT 2004

I've now seen the following scenario happen several times in the last few
days while doing testing and benchmarking: I run a multi-threaded test,
such as super-smack, that causes a moderately high system load.  I then
hit Ctrl-T or run top, or some other activity that forces calcru() to
execute.  I will not infrequently get an extremely hard hang -- can't get
to DDB using serial break, etc.  I don't remember it happening when using
non-threaded apps, so I'm wondering if there's a poor interaction with
KSE/scheduler/who knows what.

 7:55PM  up 6 mins, 2 users, load averages: 1.37, 0.91, 0.43
USER             TTY      FROM              LOGIN@  IDLE WHAT
root             d0       -                 7:55PM     - w
rwatson          p0       cboss             7:50PM     2 super-smack
hippy# top
calcru: negative time of 1834075 usec for pid 654 (super-smack)

In this case, I ran super-smack with the following parameters:

hippy:/usr/tmp/super-smack> super-smack select-key.smack 15 1000

This generates 15 workers, which should cause mysql to spawn off threads
as well.  I'm running with stock libpthread on this system (slightly old)
but an up-to-date kernel from CVS, GENERIC.

Has anyone else seen this?

Robert N M Watson             FreeBSD Core Team, TrustedBSD Projects
robert at      Senior Research Scientist, McAfee Research

More information about the freebsd-current mailing list