Hi Aubrey

Thanks for your comments, see mine inline.

Li, Aubrey wrote:
> Rafael Vanoni wrote:
> 
>> Aubrey Li wrote:
>>
>> I'm working on figuring out what other kinds of events are causing
>> wake-ups. Hope to have something for you guys soon.
>>
> 
> Thanks for the so quick work, :-)
> 
> ["-C" option] is interesting:
> 
> 12.0% (58.5)  <kernel> genunix`cyclic_timer
> 8.5%   (41.6) <kernel> genunix`clock
> 0.2%   ( 1.2) <kernel> unix`cbe_hres_tick
> 
> the sum of these functions is ~100. That's the tick frequency.
> But take cbe_hres_tick as an example,
> it looks like cbe_hres_tick is called only one time per second.
> Actually it's called once per tick, every nsec_per_tick ns.
> So this is not correct, please remove this option, :-)

I agree it looks a bit strange, but it is an artifact of the cyclic 
subsystem batch processing cyclics. It just happens that 
unix`cbe_hres_tick is usually fired after `clock and `cyclic_timer. So 
the DTrace script is only reporting the first event per expire timestamp.

I think this is a good feature for developers interested in the cyclic 
subsystem, and the behavior could be explained in the manual. What do 
you think ?

> ["-c" option] keeps the current script, but I think help message is not
> okay.
> 
> "-c --cyclic  report cyclic subsystem activety\n"

Hmm.. did you import my patch? That's not what I'm seeing here, could 
you double check?

> It would be better to use this option to place powertop into the verbose
> mode,
> reporting more events in the kernel.
> 
> [default option], I'd like to do the following change, because clock
> event is missing.
> 
> static const char *g_prog_A =
> ----snip----
> +++ "sdt:::cyclic-start"
> +++ "/(caddr_t)((cyclic_t *)arg0)->cy_handler == (caddr_t)&`clock/"
> +++ "{"
> +++"          @events_k[(caddr_t)((cyclic_t *)arg0)->cy_handler] =
> count(); "
> +++"}";

That goes a little bit against your first option of not reporting 
cyclics at all :) But I agree with you.

thanks
Rafael


Reply via email to