On Sun, Jan 06, 2008 at 08:37:32PM -0500, Chad Mynhier wrote:
> I've been looking at this bug.  What I think needs to be done is the 
> following:

[snip]

I think you've got most of that right. There are some issues such as the fact
that the stop() action will result in the thread being stopped on the
subsequent instruction. But I think you're mostly there.

> (There's still the question of what to do with dt_proc_bpdestroy(),
> dt_proc_bpenable() and dt_proc_disable().)

It should no longer be necessary to enable and disable breakpoints since
this was really only done to get out of the way of the disassembler -- this
will all be taken care of by the existing mechanism.

> I've tried the above, and I see the probes being created, but these
> probes never fire.  What's more, the probes in the D script I'm
> running are never created, although I believe that's just because the
> RD_DLACTIVITY probe is never firing, thus
> dt_pid_create_probes_module() is never called.

Is the instruction getting modified?

> Any ideas?  I've put a copy of dt_proc.[ch] and DTRACE_DEBUG output at
> http://cr.opensolaris.org/~cmynhier/6593259/ if you want to look at
> it.

I think you're missing a call to dtrace_go() at the very least. You could
probably do this at the end of dt_proc_attach().

Adam

-- 
Adam Leventhal, FishWorks                        http://blogs.sun.com/ahl
_______________________________________________
dtrace-discuss mailing list
[email protected]

Reply via email to