On Wed, Sep 17, 2008 at 9:43 PM, Aubrey Li <aubreylee at gmail.com> wrote:
> On Thu, Sep 18, 2008 at 2:32 AM, Chad Mynhier <cmynhier at gmail.com> wrote:
>>
>> http://cr.opensolaris.org/~cmynhier/powertop/
>>
>
> Thanks for the patch, :-)
>
> sorry if I didn't read the latest code, all the collection could be
> successful and "reinit"
> will be used without initialization. right?

Yes, if the data collection is successful, the dtrace stuff won't be
reinitialized.  During normal use, the dtrace stuff will be
initialized once and never again.  It's only if something happens to
terminate the dtrace stuff that it will get restarted.

>
> Others look good.
>
> I didn't dig into the dtrace problem, just wonder is this expected?
> Or Is the patch just a workaround temporarily and dtrace problem
> will be fixed eventually?

This is actually tickling a safety feature of dtrace, the deadman
timer.  There's more information here:
http://blogs.sun.com/jonh/entry/the_dtrace_deadman_mechanism, but it's
basically a mechanism to prevent dtrace from rendering the system
unresponsive.  It's possible that the mechanism could be modified to
handle cases like this, but I don't know that it would be a high
priority to fix it.

I wouldn't say that the patch is just a workaround, though.  The basic
problem is that it's ignoring the return value of dtrace_status(), and
it really shouldn't be doing that, anyway.

Thanks,
Chad

Reply via email to