DTrace on BSD, future support

Andrew Hughes gnu.andrew at redhat.com
Fri Sep 6 20:22:42 PDT 2013


----- Original Message -----
> Hello all!
> 
> I'm working with a GSoC student adding dtrace probe support to JRuby,
> and ran into the issue that user-defined dtrace probes only work on
> Solaris. So I started poking around hotspot source and found that both
> the linux and bsd JSDT sources are empty and return false for
> isSupported. Only solaris has JSDT support.
> 

Linux doesn't use DTrace.  It uses SystemTap.

CCing Mark Wielaard who added this support:

http://hg.openjdk.java.net/jdk7u/jdk7u/hotspot/rev/c707a5af0d71

> (The student is developing on Solaris, but I am on OS X.)
> 
> Obviously my next step was to simply copy the solaris source into the
> BSD location and enable dtrace in the build. It didn't compile, but
> there were only a handful of errors.
> 
> So at this point I'm wondering a few things:
> 
> * Is there any good reason why BSD (and Linux) support for JSDT has
> not been ported or implemented?
> * What is the current thought on the future of DTrace support in OpenJDK?
> 
> Our steps going forward, if we want to support JRuby dtrace probes on
> platforms other than Solaris, will be to either implement or coerce
> someone into implementing BSD/Linux DTrace JSDT support in OpenJDK or
> to use a third-party library and our own JNI bindings. I'd prefer to
> just get it working in OpenJDK proper.
> 
> Thoughts?
> 
> - Charlie
> 
> P.S. The files in question are
> hotspot/src/os/bsd/vm/dtraceJSDT_bsd.cpp,
> hotspot/src/os/linux/vm/dtraceJSDT_linux.cpp, and
> hotspot/src/os/solaris/vm/dtraceJSDT_solaris.cpp.
> 

-- 
Andrew :)

Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)

PGP Key: 248BDC07 (https://keys.indymedia.org/)
Fingerprint = EC5A 1F5E C0AD 1D15 8F1F  8F91 3B96 A578 248B DC07



More information about the serviceability-dev mailing list