[dtrace-discuss] dependency attributes for User Statically Defined Probes

Adam Leventhal
2008-03-11T20:42:42Z

That''s right. Since USDT instrumentation is highly ISA-dependant,
providers
dependency attributes may be no greater than ISA.

Adam

On Tue, Mar 11, 2008 at 07:14:54PM +0300, Nikita Zinoviev
wrote:
> I''d like to report the following issue:
> it seems that user is unable to set dependency attributes
> to COMMON, it looks like ISA is the maximum for USDT probes.
> This kind of contradics corresponding chapter in the user guide,
> because it uses COMMON a lot, and doesn''t mention anything about
ISA.
>
> Also I found that corresponding attribute pragmas should be placed
> *after* provider declarations not before as the guide suggests.
>
> this looks like holes in the documentation.
> BTW: the error which dtrace -G reports is not very helpful either.
>
> So, the following provider definition script:
>
> provider myserv {
>    probe myprobe(int i);
> };
>
> #pragma D attributes Standard/Standard/Common provider myserv provider
> #pragma D attributes Standard/Standard/Common provider myserv module
> #pragma D attributes Standard/Standard/Common provider myserv function
> #pragma D attributes Standard/Standard/Common provider myserv name
> #pragma D attributes Standard/Standard/Common provider myserv args
>
>
> here is the dtrace output:
>
>
> bash-3.2$ dtrace -n "myserv\$target:::" -c myserv -v -l
>     ID   PROVIDER            MODULE                          FUNCTION NAME
>   1692 myserv14919            myserv                              main
> myprobe
>
>          Probe Description Attributes
>                  Identifier Names: Standard
>                  Data Semantics:   Standard
>                  Dependency Class: ISA
>
>          Argument Attributes
>                  Identifier Names: Standard
>                  Data Semantics:   Standard
>                  Dependency Class: ISA
>
>          Argument Types
>                  args[0]: int
>
>
> or
>
>
> bash-3.2$ dtrace -n "myserv\$target:::" -c myserv -v
> dtrace: description ''myserv$target:::'' matched 1 probe
>
> Stability attributes for description myserv$target::::
>
>          Minimum Probe Description Attributes
>                  Identifier Names: Standard
>                  Data Semantics:   Standard
>                  Dependency Class: ISA
>
>          Minimum Statement Attributes
>                  Identifier Names: Stable
>                  Data Semantics:   Stable
>                  Dependency Class: Common
>
> Hello!
> dtrace: pid 14917 has exited
> CPU     ID                    FUNCTION:NAME
>    1   1692                     main:myprobe
>
>
> Regards,
>
> Nikita Zinoviev
> _______________________________________________
> dtrace-discuss mailing list
> dtrace-discuss at opensolaris.org

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