Hi everyone, and thank you for the very prompt responses. I did indeed compile world with CFLAGS+=-fno-omit-frame-poiner in my make.conf. I will file the PR shortly. Thank You Ryan G On Jun 14, 2012, at 9:00 AM, George Neville-Neil <gnn_at_neville-neil.com> wrote: > Top post. > > File a PR and assign it to me (gnn) please. > > I'm on vacation until Sunday but I am actively working on DTrace when I'm not > on vacation. > > Best, > Geo > On Jun 14, 2012, at 02:53 , Fabian Keil wrote: > >> Ryan Goodfellow <rgoodfel_at_eecs.wsu.edu> wrote: >> >>> Today I downloaded and installed FreeBSD 9.0-RELEASE and followed the >>> directions from <http://wiki.freebsd.org/DTrace> to get DTrace up and >>> running. The output of DTrace instrumenting a simple program, however, >>> is not correct. The program is as follows: >>> >>> // test.cc >>> #include<cstdlib> >>> >>> int main(void) { >>> for(int i = 0; i < 5; i++) { >>> malloc(47); >>> } >>> } >>> >>> then compiling and running DTrace as follows: >>> >>> g++ test.cc -o test >>> >>> dtrace -n 'pid$target::malloc:entry{ }' -c ./test >>> >>> >>> The correct output for this example is something to the tune of: >>> >>> dtrace: description 'pid$target::malloc:entry' matched 2 probes >>> dtrace: pid 95236 has exited >>> CPU ID FUNCTION:NAME >>> 0 188748 malloc:entry >>> 0 188748 malloc:entry >>> 0 188748 malloc:entry >>> 0 188748 malloc:entry >>> 0 188748 malloc:entry >>> >>> (this from a machine with the same code running DTrace) >>> >>> The DTrace session should also make an immediate exit on completion. On >>> FreeBSD I have the following CPU ID FUNCTION:NAME >>> 2 42213 malloc:entry >>> >>> and the execution does either not exit on it's own or hangs, it requires >>> a ctrl-c. >> >> Doesn't work for me either on 10-CURRENT amd64. >> Converting it to C doesn't make a difference, it works if >> one changes the loop to "for (;;)", though. >> >>> I followed the instructions from the FreeBSD site exactly, compiling and >>> installing the custom kernel. I used both clang++ and g++ for >>> compilation with the same result. The system has even completely hung >>> on other attempts. >>> >>> Is DTrace not something that should be relied upon in FreeBSD? I have >>> also tried this on the latest 10-CURRENT build with the same result. >> >> In my opinion the problem with DTrace on FreeBSD is that while it's >> known to be incomplete, there doesn't seem to be documentation >> available about which parts are supposed to work already and which >> aren't. >> >> For example the trivial example program at: >> http://wiki.freebsd.org/DTrace/userland (which works for me) doesn't >> actually use a counting loop, so maybe dtracing your example program >> isn't supposed to work yet and never did on FreeBSD. >> >> Without documentation it's hard to tell. >> >> Fabian >Received on Thu Jun 14 2012 - 17:53:15 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:28 UTC