Bug #7585

DTrace probes are inconsistent

Added by Vit Ondruch over 1 year ago. Updated 9 months ago.

Assignee:Aaron Patterson
Target version:-
ruby -v:ruby 2.0.0dev (2012-12-17 trunk 38422) [x86_64-linux] Backport:


These are DTrace probes available in Ruby:

process("./libruby.so").mark("findrequireentry") $arg1:long $arg2:long $arg3:long
process("./libruby.so").mark("findrequirereturn") $arg1:long $arg2:long $arg3:long
process("./libruby.so").mark("loadentry") $arg1:long $arg2:long $arg3:long
return") $arg1:long
process("./libruby.so").mark("requireentry") $arg1:long $arg2:long $arg3:long
return") $arg1:long

I am wondering, why findrequirereturn probe accepts more parameters then the loadreturn and requirereturn. They should all accept the same parameters IMO. No matter if they provide the source informations or not.

Also the remaining pair probes should be probably revisited and made consistent with the probes above:

process("./libruby.so").mark("cmethodentry") $arg1:long $arg2:long $arg3:long $arg4:long
return") $arg1:long $arg2:long $arg3:long $arg4:long
process("./libruby.so").mark("methodentry") $arg1:long $arg2:long $arg3:long $arg4:long
return") $arg1:long $arg2:long $arg3:long $arg4:long
process("./libruby.so").mark("parsebegin") $arg1:long $arg2:long
end") $arg1:long $arg2:long


#1 Updated by Usaku NAKAMURA over 1 year ago

  • Status changed from Open to Assigned

#2 Updated by Aaron Patterson 9 months ago

  • Status changed from Assigned to Closed
  • % Done changed from 0 to 100

Hi, I made the inconsistent probes you mentioned have consistent parameters. I'm not totally sure about the utility of making the method entry and return probes match the require entry / return probes. The method probes have different data, and I don't think the "common" data should come first in those cases since most people care about classes / method names on the method probes (rather than file name and line number).

Also available in: Atom PDF