In the last episode (Jul 18), Doug Barton said:
> On 07/18/10 12:41, Kostik Belousov wrote:
> > When intr time starts accumulating again, try to do
> > "procstat -kk <intr process pid>" and correlate the clock thread tid
> > with the backtrace. Might be, it helps to guess what callouts are eating
> > the CPU.
> 
> Will do, thanks!

You can also use dtrace to get a count of callouts and their time spent. 
Run this for a few seconds then hit ^C:

#! /usr/sbin/dtrace -s
/* #pragma D option quiet */

callout_execute:::callout_start
{
        this->start = timestamp;
}

callout_execute:::callout_end
{
        this->end = timestamp;
/*      printf("%a %d\n",args[0]->c_func, this->end - this->start); */
        @times[args[0]->c_func] = quantize(this->end - this->start);
/*      @times[args[0]->c_func] = lquantize(this->end - 
this->start,0,300000,10000); */
        @counts[args[0]->c_func] = count();
}

END
{
        printa("%a %...@u\n",@times);
        printa("%a %...@u\n",@counts);
}


-- 
        Dan Nelson
        dnel...@allantgroup.com
_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to