Steven Reynolds
2006-Dec-03 22:29 UTC
[dtrace-discuss] compile error in jdk1.6 sample scripts
I am running the sample scripts included in java 1.6, and I am seeing errors. For example: # dtrace -s class_loading_stat.d -p 7341 dtrace: failed to compile script class_loading_stat.d: line 156: probe description syscall::exit:entry does not match any probes # dtrace -s gc_time_stat.d -p 7341 dtrace: failed to compile script gc_time_stat.d: line 202: probe description syscall::exit:entry does not match any probes Other sample scripts are showing errors too. Lines 155 to 160 from class_loading_stat.d look like this: syscall::rexit:entry, syscall::exit:entry /pid == $target/ { exit(0); } If I remove line 156, the script seems to run OK. Is this expected behavior? In other words, is "syscall::exit:entry" valid for some solaris versions? The details for my system are: # uname -a SunOS unknown 5.11 snv_52 i86pc i386 i86pc # java -version java version "1.6.0-rc" Java(TM) SE Runtime Environment (build 1.6.0-rc-b100) Java HotSpot(TM) Client VM (build 1.6.0-rc-b100, mixed mode, sharing) The sample scripts are located in ${JAVA_HOME}/sample/dtrace/hotspot thanks Steven This message posted from opensolaris.org -------------- next part -------------- A non-text attachment was scrubbed... Name: class_loading_stat.d Type: application/octet-stream Size: 4811 bytes Desc: not available URL: <http://mail.opensolaris.org/pipermail/dtrace-discuss/attachments/20061203/d3445571/attachment.obj> -------------- next part -------------- A non-text attachment was scrubbed... Name: gc_time_stat.d Type: application/octet-stream Size: 6717 bytes Desc: not available URL: <http://mail.opensolaris.org/pipermail/dtrace-discuss/attachments/20061203/d3445571/attachment-0001.obj>
Chip Bennett
2006-Dec-04 08:16 UTC
[dtrace-discuss] compile error in jdk1.6 sample scripts
Steven, There is no actual exit system call. "exit" is a library subroutine that eventually calls "rexit" which is actually the name of the system call, according to the switch table. As far as why the canned scripts are not working, I noticed the D script preambles specify the -Z option which allows for probe descriptions that don''t match any probes. However, in your E-mail, you invoke the scripts with the dtrace command, not using -Z. If you had made the D scripts executables, and run them directly from the command line, the -Z option in the script preamble would have prevented the lack of a match for probe description "syscall::exit:entry" from causing the script to fail. Chip Steven Reynolds wrote:> I am running the sample scripts included in java 1.6, and I am seeing errors. For example: > > # dtrace -s class_loading_stat.d -p 7341 > dtrace: failed to compile script class_loading_stat.d: line 156: probe description syscall::exit:entry does not match any probes > # dtrace -s gc_time_stat.d -p 7341 > dtrace: failed to compile script gc_time_stat.d: line 202: probe description syscall::exit:entry does not match any probes > > Other sample scripts are showing errors too. > > Lines 155 to 160 from class_loading_stat.d look like this: > > syscall::rexit:entry, > syscall::exit:entry > /pid == $target/ > { > exit(0); > } > > If I remove line 156, the script seems to run OK. Is this expected behavior? In other words, is "syscall::exit:entry" valid for some solaris versions? > > The details for my system are: > # uname -a > SunOS unknown 5.11 snv_52 i86pc i386 i86pc > # java -version > java version "1.6.0-rc" > Java(TM) SE Runtime Environment (build 1.6.0-rc-b100) > Java HotSpot(TM) Client VM (build 1.6.0-rc-b100, mixed mode, sharing) > > The sample scripts are located in > > ${JAVA_HOME}/sample/dtrace/hotspot > > thanks > Steven > > > This message posted from opensolaris.org > ------------------------------------------------------------------------ > > _______________________________________________ > dtrace-discuss mailing list > dtrace-discuss at opensolaris.org
Ekaterina Pavlova
2006-Dec-04 08:34 UTC
[dtrace-discuss] compile error in jdk1.6 sample scripts
Steven Reynolds wrote:>I am running the sample scripts included in java 1.6, and I am seeing errors. For example: > ># dtrace -s class_loading_stat.d -p 7341 >dtrace: failed to compile script class_loading_stat.d: line 156: probe description syscall::exit:entry does not match any probes ># dtrace -s gc_time_stat.d -p 7341 >dtrace: failed to compile script gc_time_stat.d: line 202: probe description syscall::exit:entry does not match any probes > >Other sample scripts are showing errors too. > >Lines 155 to 160 from class_loading_stat.d look like this: > >syscall::rexit:entry, >syscall::exit:entry >/pid == $target/ >{ > exit(0); >} > >If I remove line 156, the script seems to run OK. >Is this expected behavior? In other words, is "syscall::exit:entry" valid for some solaris versions? > >I do not think so. I believe syscall::exit:entry is artifact left in these samples. I''ll file bug to take care of it. As workaround you can either use ''dtrace -Zs ...'' or just delete the line "syscall::exit:entry". thanks, -katya>The details for my system are: ># uname -a >SunOS unknown 5.11 snv_52 i86pc i386 i86pc ># java -version >java version "1.6.0-rc" >Java(TM) SE Runtime Environment (build 1.6.0-rc-b100) >Java HotSpot(TM) Client VM (build 1.6.0-rc-b100, mixed mode, sharing) > >The sample scripts are located in > >${JAVA_HOME}/sample/dtrace/hotspot > >thanks >Steven > > >This message posted from opensolaris.org > > >------------------------------------------------------------------------ > >_______________________________________________ >dtrace-discuss mailing list >dtrace-discuss at opensolaris.org > >-- Ekaterina Pavlova, VMSQE Team, St. Petersburg. http://blogs.sun.com/roller/page/vmrobot http://blogs.sun.com/theaquarium_ru/
Steven Reynolds
2006-Dec-05 01:36 UTC
[dtrace-discuss] Re: compile error in jdk1.6 sample scripts
Thanks for the tip about -Z, I missed that one.> I''ll file bug to take care of itThanks. I noticed this description from the DTrace Guide itself: System Call Anachronisms In some cases, the name of the system call as provided by the syscall provider is actually a re?ection of an ancient implementation detail. For example, for reasons dating back to UNIX? antiquity, the name of exit(2) in /etc/name_to_sysnum is rexit. This message posted from opensolaris.org