Hey Steve, Great to see your name pop up on DTrace discuss!
>> Very interesting, but it looks like Apple is doing something cagey >> with kernel symbols: >> > Oh my, I can see the headlines now "Apple cages DTrace" :-} Someday I'll make it up to you ;-) > This appears to be a *BUG* in the shipping MacOS X 10.6.n. > Please file a bug report through your usual channels. Good to know it's a bug. My usual channels are to mail you and James... what's channel that you'd like DTrace community members to use? > N.B., this is fixed in the WWDC build of Mac OS X 10.7: > > $ sudo dtrace -n BEGIN'{ trace(`dtrace_probe); }' > Password: > dtrace: description 'BEGIN' matched 1 probe > CPU ID FUNCTION:NAME > 1 1 :BEGIN 6215344901283465301 Awesome. Steve, while we have you, can you explain why the dtrace_probes and dtrace_nprobes variables aren't visible? Or are they also available on 10.7? I tried to write a version of the script that inferred the location of dtrace_probes from disassembly of dtrace_probe(). Will that work on 10.7? ---8<--- #!/usr/sbin/dtrace -s #pragma D option quiet int i; tick-100 { /* this->p = `dtrace_probes */ this->p = (dtrace_probe_t **)((uintptr_t)`dtrace_probe + 0x38 + 0x003ba004); printf("%4d %10s %20s %20s %10s %s\n", i, stringof(this->p[i]->dtpr_provider->dtpv_name), stringof(this->p[i]->dtpr_mod), stringof(this->p[i]->dtpr_func), stringof(this->p[i]->dtpr_name), this->p[i]->dtpr_ecb != NULL ? "enabled" : "disabled"); i++ } ---8<--- As always, thanks for your help. Glad to see that DTrace is still kicking at Apple. Adam -- Adam Leventhal, Delphix http://dtrace.org/blogs/ahl 275 Middlefield Road, Suite 50 Menlo Park, CA 94025 http://www.delphix.com _______________________________________________ dtrace-discuss mailing list dtrace-discuss@opensolaris.org