calcru: runtime went backwards, RELENG_6, SMP
Matthew Dillon
dillon at apollo.backplane.com
Sat Jun 9 08:09:32 UTC 2007
:Hmm, i'm not sure I understand you right: what do you mean by 'kgdb live
:kernel'? I send break over serial console, and in ddb got
:
:db> print cpu_ticks
:Symbol not found
:
:Sincerely,
:D.Marck [DM5020, MCK-RIPE, DM3-RIPN]
I think it works the same on FreeBSD, so it would be something like:
kgdb /kernel /dev/mem
^^^ NOTE! Dangerous! ^^^
But I looked at the cvs logs and the variable didn't exist in FreeBSD-6,
so it wouldn't have helped anyway.
It looks like it is using binuptime() in 6.x, and it also looks like
the tick calculations, e.g. rux_uticks, is based on the stat clock
interrupt, whereas the runtime calculation is using binuptime. There
is no way those two could possibly be synchronized. No chance
whatsoever. Your only solution may be to upgrade to FreeBSD-7 which
uses an entirely different mechanism for the calculation (though one
that also seems flawed in its own way).
Alternatively you could just remove the error message from the kernel
entirely and not worry about it. It's a printf around line 774
in /usr/src/sys/kern/kern_resource.c (in FreeBSD-6.x).
-Matt
Matthew Dillon
<dillon at backplane.com>
More information about the freebsd-stable
mailing list