Date: Sat, 9 Jun 2007 01:09:22 -0700 (PDT) From: Matthew Dillon <dillon@apollo.backplane.com> To: Dmitry Morozovsky <marck@rinet.ru> Cc: freebsd-stable@freebsd.org, Ivan Voras <ivoras@fer.hr> Subject: Re: calcru: runtime went backwards, RELENG_6, SMP Message-ID: <200706090809.l5989Mkj020033@apollo.backplane.com> References: <20070606153542.Y76617@woozle.rinet.ru> <f46tmc$rgb$2@sea.gmane.org> <20070606231940.T91939@woozle.rinet.ru> <200706062127.l56LRYTe090137@apollo.backplane.com> <20070608111809.U97287@woozle.rinet.ru>
next in thread | previous in thread | raw e-mail | index | archive | help
: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@backplane.com>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200706090809.l5989Mkj020033>