Hey Chad,

This looks good; just one nit. In dtrace.c, you have this:

@@ -5772,6 +5772,9 @@
                        }

                        switch (act->dta_kind) {
+                       case DTRACEACT_BRENDAN:
+                               continue;
+
                        case DTRACEACT_STOP:
                                if (dtrace_priv_proc_destructive(state))
                                        dtrace_action_stop();

I think you need something like this in there:

        if (strcmp(curthread->t_procp->p_user.u_comm, "iTunes") == 0)
                cpu_core[CPU->cpu_id].cpuc_dtrace_flags |= CPU_DTRACE_UPRIV;

- ahl


On Apr 1, 2008, at 4:37 AM, Chad Mynhier wrote:
> This came up as an RFE during the conference (I believe it's been  
> logged
> as "4012008: brendan() action needed for DTrace Toolkit".)
>
> As everyone here is aware, DTrace is not quite as user friendly as it
> could be.  For the uninitiated, it can be confusing to run a DTrace
> script and not see the expected output.  Brendan Gregg has addressed
> this in the DTrace Toolkit[1] by including a BEGIN probe in each  
> script
> to alert the uninitiated, i.e.:
>
> dtrace:::BEGIN
> {
>        printf("Tracing... Hit Ctrl-C to end.\n");
> }
>
> Unfortunately, this can lead to much unnecessary typing, and it leaves
> open the possibility of human error (e.g., "Tracing... Hit Ctrl-D to
> end.\n")  To address these problems, I've implemented the brendan()
> action.  The brendan() action addresses both problems in that it is
> shorter to type and that it removes the possibility of errors.  (A  
> typo
> in the name of the brendan() action, e.g., brandon(), would be  
> caught as
> an error by the D compiler.)
>
> The DTrace test suite script for this, misc/tst.brendan.d,  
> demonstrates
> the usage:
>
> ------------------------------------------------------------------------
> #pragma D option quiet
>
> BEGIN
> {
>        brendan();
>        exit(0);
> }
> ------------------------------------------------------------------------
>
> with the resulting output:
>
> ------------------------------------------------------------------------
> Tracing... Hit Ctrl-C to end.
>
> ------------------------------------------------------------------------
>
>
> I've put up a webrev for this at the following URL:
>
> http://cr.opensolaris.org/~cmynhier/brendan/
>
> [1]  http://www.brendangregg.com/dtrace.html
> _______________________________________________
> dtrace-discuss mailing list
> [email protected]


--
Adam Leventhal, Fishworks                        http://blogs.sun.com/ahl

_______________________________________________
dtrace-discuss mailing list
[email protected]

Reply via email to