dtrace toolkit: scripts broken
By JS on Jan 15, 2009
I recently got some inquires from a customer. They reported that some scripts in the DTraceToolkit do work. I tried the latest version, 0.99. It's true, at least for tcpsnoop and tcptop, these 2 dtrace scripts are failed during compilation. The dtrace client gives us error messages like "conn_tcp is not a member of conn_s" etc.
If we look at these failed scripts, we'll find they are using fbt provider to trace kernel functions. The Name stability and Data stability of fbt provider are Evolving, means it might be changed (and it \*is\* changed in our cases) in the future version of the OS. In our case, it seems the data structure is change since the scripts were written. We have to change the scripts to make them work, and we may need to do this on every specific version of Solaris/OpenSolaris. That's the tradeoff to use unstable providers. So make sure you check the stability of providers(in the dtrace Guide) when using them.
Let me see if I can find some time to fix this on osol 2008.11…