]> sourceware.org Git - systemtap.git/log
systemtap.git
11 years agojava/byteman: add java/README explaining how to manually set up byteman & libHelperSDT
Serguei Makarov [Wed, 8 May 2013 19:40:03 +0000 (15:40 -0400)]
java/byteman: add java/README explaining how to manually set up byteman & libHelperSDT

11 years agojava/byteman: get rid of remnants of libHelperSDT_getarch kluge
Serguei Makarov [Wed, 8 May 2013 19:09:48 +0000 (15:09 -0400)]
java/byteman: get rid of remnants of libHelperSDT_getarch kluge

11 years agojava/byteman docs: man stap.1 stapprobes.3stap
Serguei Makarov [Wed, 8 May 2013 17:39:33 +0000 (13:39 -0400)]
java/byteman docs: man stap.1 stapprobes.3stap

11 years agoruntime perf.c: consistentify perf_event_create_kernel_counter context* use
Frank Ch. Eigler [Wed, 8 May 2013 15:46:35 +0000 (11:46 -0400)]
runtime perf.c: consistentify perf_event_create_kernel_counter context* use

Two runtime/linux/autoconf tests create a cartesian product of sorts
about the evolution of the $subject kernel API.  In one spot, the
runtime neglected to consider the modern combination, breaking perf.*
probes on recent kernels.

11 years agostapprobes.3stap: mention nd_syscall as a non-dwarf fallback
Frank Ch. Eigler [Wed, 8 May 2013 13:59:25 +0000 (09:59 -0400)]
stapprobes.3stap: mention nd_syscall as a non-dwarf fallback

11 years agosystemtap.spec: install java/byteman arch-specific libHelperSDT; handle multiple...
Serguei Makarov [Tue, 7 May 2013 20:12:40 +0000 (16:12 -0400)]
systemtap.spec: install java/byteman arch-specific libHelperSDT; handle multiple jdks

11 years agoSplit dyninst transport initialization into two parts.
David Smith [Wed, 8 May 2013 15:16:46 +0000 (10:16 -0500)]
Split dyninst transport initialization into two parts.

* runtime/dyninst/transport.c: Split the thread starting code out from
  _stp_dyninst_transport_session_init() into
  _stp_dyninst_transport_session_start().
* runtime/dyninst/transport.h: Add _stp_dyninst_transport_session_start()
  prototype.
* runtime/dyninst/common_session_state.h (stp_session_init): Calls
  _stp_dyninst_transport_sesion_init().
* runtime/dyninst/runtime.h (stp_dyninst_session_init_finished): Calls
  _stp_dyninst_transport_session_start().

11 years agowarning::debuginfo.7stap: note unnecessary-debuginfo cases
Frank Ch. Eigler [Wed, 8 May 2013 13:55:31 +0000 (09:55 -0400)]
warning::debuginfo.7stap: note unnecessary-debuginfo cases

11 years agoregex: fix =~ pretty-printer to generate round-trippable output
Frank Ch. Eigler [Wed, 8 May 2013 12:40:55 +0000 (08:40 -0400)]
regex: fix =~ pretty-printer to generate round-trippable output

11 years agoruntime compatibility: add some needed casts to slay compiler warnings
Frank Ch. Eigler [Wed, 8 May 2013 12:26:57 +0000 (08:26 -0400)]
runtime compatibility: add some needed casts to slay compiler warnings

Some 32-bit diagnostic messages were 64-bitically incorrect.

11 years agodyninst transport: don't send dummy \0 for error/warning messages
Frank Ch. Eigler [Wed, 8 May 2013 12:25:52 +0000 (08:25 -0400)]
dyninst transport: don't send dummy \0 for error/warning messages

The former code caused emission of \0's after each OOB message.  They
are lovely and round, but are worth zero, nilch, nada.

11 years agoruntime/linux: kernel 3.10 compatibility; need explicit #include linux/slab.h
Frank Ch. Eigler [Wed, 8 May 2013 02:49:35 +0000 (22:49 -0400)]
runtime/linux: kernel 3.10 compatibility; need explicit #include linux/slab.h

Quoting from kernel commit 9f3a90e89...:

    Caused by commit 30c05350c39d ("powerpc/pseries: Use stop machine to
    update cpu maps") from the powerpc tree interacting with (probably)
    commit ff794dea52ea ("cpuset: remove include of cgroup.h from cpuset.h")
    from the cgroup tree.  Removing includes from header files is fraught
    with danger ...

11 years agoPR15445: fix kernel panic due to hardware-breakpoint callback abi incompatibility
Frank Ch. Eigler [Wed, 8 May 2013 01:58:07 +0000 (21:58 -0400)]
PR15445: fix kernel panic due to hardware-breakpoint callback abi incompatibility

* tapsets.cxx (hwbkpt_derived_probe_group::emit_module_decls): Add support for
  non-STAPCONF_PERF_HANDLER_NMI kernels.
* testsuite/systemtap.examples/memory/hw_watch*.meta: Use a more likely-to-trigger
  target variable, to make it more likely that this problem doesn't reoccur.

11 years agoFix PR15408. Create top-level procfs directory in init_module, where we're root.
David Smith [Tue, 7 May 2013 21:21:03 +0000 (16:21 -0500)]
Fix PR15408. Create top-level procfs directory in init_module, where we're root.

* translate.cxx (emit_kernel_module_init): New function.
  (emit_kernel_module_exit): Ditto.
  (translate_pass): Call emit_kernel_module_init() and
  emit_kernel_module_exit().
* translate.h: Add prototypes for emit_kernel_module_init() and
  emit_kernel_module_exit().
* runtime/linux/runtime.h (init_module): Calls generated
  systemtap_kernel_module_init().
  (cleanup_module): Calls generated systemtap_kernel_module_exit().
* tapset-procfs.cxx (emit_module_decls): New function.
  (emit_kernel_module_exit): Ditto.
* runtime/procfs.c (_stp_rmdir_proc_module): Improve error messages. No
  longer use _stp_warn(), since transport won't be available.
  (_stp_mkdir_prpoc_module): Improve error messages. Invert return code so
  that 0 is success.
  (_stp_create_procfs): No longer call _stp_mkdir_proc_module(), which now
  gets called from generated systemtap_kernel_module_init().
  (_stp_close_procfs): No longer call _stp_rmdir_proc_module(), which now
  gets called from generated systemtap_kernel_module_exit().
* elaborate.h (struct derived_probe_group): Added
  emit_kernel_module_init() and emit_kernel_module_exit() prototypes.

11 years agojava/byteman configury: rename libHelperSDT.so --> libHelperSDT_{arch}.so for multiar...
Serguei Makarov [Tue, 7 May 2013 18:47:01 +0000 (14:47 -0400)]
java/byteman configury: rename libHelperSDT.so --> libHelperSDT_{arch}.so for multiarch purposes

11 years agojava/byteman configury: fix permissions on libHelperSDT.so
Serguei Makarov [Tue, 7 May 2013 18:35:36 +0000 (14:35 -0400)]
java/byteman configury: fix permissions on libHelperSDT.so

11 years agoMade two buildok tests executable.
David Smith [Mon, 6 May 2013 18:30:28 +0000 (13:30 -0500)]
Made two buildok tests executable.

* testsuite/buildok/fortyseven.stp: Made executable.
* testsuite/buildok/fortyeight.stp: Ditto.

11 years agoconfigury, systemtap.spec: remove amd64/ hardcoding for java
Serguei Makarov [Thu, 2 May 2013 18:00:45 +0000 (14:00 -0400)]
configury, systemtap.spec: remove amd64/ hardcoding for java

11 years agoregenerate java/Makefile.in
Serguei Makarov [Wed, 1 May 2013 18:25:23 +0000 (14:25 -0400)]
regenerate java/Makefile.in

11 years agoRemove $TMPSTAPDIR/java if empty when uninstalling a byteman rule
Lukas Berk [Wed, 1 May 2013 20:49:37 +0000 (16:49 -0400)]
Remove $TMPSTAPDIR/java if empty when uninstalling a byteman rule

*java/stapbm: uninstall the $TMPSTAPDIR/java directory when we're
      done probing

11 years agoAllow wiser Fedora versions to run byteman operations
Lukas Berk [Wed, 1 May 2013 19:21:32 +0000 (15:21 -0400)]
Allow wiser Fedora versions to run byteman operations

*java/stapbm: exec java operations directly

11 years agojava/byteman: fix configury to only check for build-necessary things (jar & javac)
Serguei Makarov [Wed, 1 May 2013 18:11:13 +0000 (14:11 -0400)]
java/byteman: fix configury to only check for build-necessary things (jar & javac)

11 years agoMove stapbm to libexec
Lukas Berk [Wed, 1 May 2013 17:54:48 +0000 (13:54 -0400)]
Move stapbm to libexec

*java/Makefile.am: change where stapbm is installed
*tapset-method.cxx: alter the string specified to call stapbm

11 years agoconfigury: regenerate with f18 autoconf 2.69, automake 2.12.2
Frank Ch. Eigler [Wed, 1 May 2013 15:29:29 +0000 (11:29 -0400)]
configury: regenerate with f18 autoconf 2.69, automake 2.12.2

11 years agoAdd multiple new testcases
Lukas Berk [Tue, 30 Apr 2013 21:44:40 +0000 (17:44 -0400)]
Add multiple new testcases

*java.exp: add new testcases, fix existing
*java.stp: add error,end probe
*multiparams.java: multiparameter java program
*multiparams.stp: multiparameter stap script
*returnstatement.java: return testcase
*returnstatement.stp: return stap sript
*singleparam.java: adjust single parameter java program

11 years agoCorrect argument number off by one error
Lukas Berk [Tue, 30 Apr 2013 21:41:08 +0000 (17:41 -0400)]
Correct argument number off by one error

*tapset-method.cxx: increment method_params_count even if it wasn't 0

11 years agoMerge branch 'java' of git://sourceware.org/git/systemtap into java
Lukas Berk [Tue, 30 Apr 2013 20:48:29 +0000 (16:48 -0400)]
Merge branch 'java' of git://sourceware.org/git/systemtap into java

11 years agoremove spaces in rule names and their files for bmsubmit and bminstall
Lukas Berk [Tue, 30 Apr 2013 20:46:23 +0000 (16:46 -0400)]
remove spaces in rule names and their files for bmsubmit and bminstall

*java/stapbm: surround all variables in quotes to manage spaces
*tapset-method.cxx: add new_no_method (standing for no spaces),
    this will be the rule name which is used to pass
    to bmsubmit and actually name the file

11 years agodocument -j and -J in stap --help
Serguei Makarov [Mon, 29 Apr 2013 20:18:13 +0000 (16:18 -0400)]
document -j and -J in stap --help

11 years agosupport -j (-Dorg.jboss.byteman.compile.to.bytecode) and multiple -J options to bminstall
Serguei Makarov [Mon, 29 Apr 2013 19:49:05 +0000 (15:49 -0400)]
support -j (-Dorg.jboss.byteman.compile.to.bytecode) and multiple -J options to bminstall

11 years agofix -J error message (--with-jdk is not the only way to configure Java now)
Serguei Makarov [Mon, 29 Apr 2013 17:12:29 +0000 (13:12 -0400)]
fix -J error message (--with-jdk is not the only way to configure Java now)

11 years agoAdd check for '.sh' suffix on byteman specific commands
Lukas Berk [Mon, 29 Apr 2013 14:47:58 +0000 (10:47 -0400)]
Add check for '.sh' suffix on byteman specific commands

*java/stapbm: When installed from rpm, byteman scripts do not have the
      '.sh' suffix.  However, they do if byteman is installed from
      source.  We need to be flexible on which we accept.

11 years agoRemove debug statement and unused systemtap_session variable
Lukas Berk [Mon, 29 Apr 2013 14:46:43 +0000 (10:46 -0400)]
Remove debug statement and unused systemtap_session variable

*session.cxx: remove debug statement and unused variable

11 years agoRemove compile_byteman_rule artifacts
Lukas Berk [Sat, 27 Apr 2013 20:08:41 +0000 (16:08 -0400)]
Remove compile_byteman_rule artifacts

*session.cxx: remove artifacts
*session.h: same as above

11 years agoAdd passable -J<BYTEMAN_INSTALL_OPTIONS> to stap
Lukas Berk [Sat, 27 Apr 2013 19:13:57 +0000 (15:13 -0400)]
Add passable -J<BYTEMAN_INSTALL_OPTIONS> to stap

This will allow systemtap to pass options to bminstall.  This can include
an option such as -Jorg.jboss.byteman.compile.to.bytecode which will then
be passed as -Dorg.jboss.byteman.compile.to.bytecode and directly compile
the byteman rule to bytecode, allowing for faster rule execution

*cmdline.h: add the J case
*java/stapbm: add the new (optional) parameter to be passed
*session.cxx: add the new -J case statement
*session.h: compilation variable
*tapset-method.cxx: append the passed command

11 years agoAdd java.exp testcase
Lukas Berk [Sat, 27 Apr 2013 18:27:19 +0000 (14:27 -0400)]
Add java.exp testcase

*testsuite/systemtap.apps/java.exp: expect file for testcase
*testsuite/systemtap.apps/java.stp: script to use for java testing
*testsuite/systemtap.apps/singleparam.java: java file to compile and test

11 years agoAdd a locking file while writing the rule in stapbm script
Lukas Berk [Sat, 27 Apr 2013 17:39:36 +0000 (13:39 -0400)]
Add a locking file while writing the rule in stapbm script

*java/stapbm: at times there are several rules being written so quickly
      that the script overlaps the rules, resulting in an errnous
      script, add a lock file to ensure this doesn't happen

11 years agoFix number of method arguments error for 0 args
Lukas Berk [Sat, 27 Apr 2013 17:38:02 +0000 (13:38 -0400)]
Fix number of method arguments error for 0 args

*tapset-method.cxx: number of args was reporting 1 even if there was no space
    between the ()'s of the method name

11 years agoChange java_pid_str type from char* to string
Lukas Berk [Sat, 27 Apr 2013 16:35:58 +0000 (12:35 -0400)]
Change java_pid_str type from char* to string

*tapset-method.cxx: change java_pid_str type to string, this way
    it is still persistent after the new probe definition

11 years agoAdd extra check for lock file before trying to call bmsubmit
Lukas Berk [Fri, 26 Apr 2013 21:20:54 +0000 (17:20 -0400)]
Add extra check for lock file before trying to call bmsubmit

*java/stapbm: add extra check for the lock file before submitting the check,
      change sdterr redirect (wasn't actually redirecting)

11 years agoconfigure.ac: fix default --with-helper
Serguei Makarov [Fri, 26 Apr 2013 19:50:04 +0000 (15:50 -0400)]
configure.ac: fix default --with-helper

11 years agoconfigure.ac: fix spurious test -n
Serguei Makarov [Fri, 26 Apr 2013 18:44:42 +0000 (14:44 -0400)]
configure.ac: fix spurious test -n

11 years agofix java_pid_str in absence of HAVE_JAVA_HELPER
Serguei Makarov [Fri, 26 Apr 2013 18:22:32 +0000 (14:22 -0400)]
fix java_pid_str in absence of HAVE_JAVA_HELPER

11 years agosystemtap.spec: install libHelperSDT as appropriate
Serguei Makarov [Fri, 26 Apr 2013 18:07:34 +0000 (14:07 -0400)]
systemtap.spec: install libHelperSDT as appropriate

11 years agoconfigure.ac: rework configury to support --with-helper and --with-jdk options
Serguei Makarov [Wed, 24 Apr 2013 20:05:55 +0000 (16:05 -0400)]
configure.ac: rework configury to support --with-helper and --with-jdk options

The different options control where libHelperSDT.so and HelperSDT.jar end up.
Use --with-helper to install to a folder like libexec for subsequent symlinking
Use --with-jdk to install a jdk folder under ...ext/ and ...amd64/ directories

11 years agoAllow java(foo).class(bar).method(foobazz:LINE) {} style syntax
Lukas Berk [Thu, 25 Apr 2013 21:26:01 +0000 (17:26 -0400)]
Allow java(foo).class(bar).method(foobazz:LINE) {} style syntax

*tapset-method.cxx: parse for the line number and edit the system function
    accordingly

11 years agoAdjust stapbm to allow more than one rule per process
Lukas Berk [Thu, 25 Apr 2013 19:07:11 +0000 (15:07 -0400)]
Adjust stapbm to allow more than one rule per process

*java/stapbm: Relax script to allow more than one rule per process
      This required file locks to be used to ensure bminstall
      was only called once, as well as only allowing one
      rule to be submitted at a time.
*java/tapset-method.cxx: stapbm script always needs all parameters to be
 passed to ensure properly running behaviour

11 years agoRemove stapbm.sh, renamed as stapbm
Lukas Berk [Wed, 24 Apr 2013 14:56:28 +0000 (10:56 -0400)]
Remove stapbm.sh, renamed as stapbm

*java/stapbm.sh has been renamed to stapbm

11 years agoFurther remove unneeded functions
Lukas Berk [Wed, 24 Apr 2013 14:53:18 +0000 (10:53 -0400)]
Further remove unneeded functions

*tapset-method.cxx: Remove bminstall function and debug line

11 years agoAdd stapbm to autoconf and remove exact paths
Lukas Berk [Tue, 23 Apr 2013 18:40:55 +0000 (14:40 -0400)]
Add stapbm to autoconf and remove exact paths

*Makefile.in: remove rebase fragments
*configure: updated configure
*java/Makefile.am: add stapbm
*java/Makefile.in: resulting makefile
*tapset-method.cxx: updated script paths and helper location

11 years agoMoved bm{install,submit} operations to pass 5
Lukas Berk [Tue, 23 Apr 2013 16:34:46 +0000 (12:34 -0400)]
Moved bm{install,submit} operations to pass 5

*java/stapbm: removed unneeded suffix from file name
*session.cxx: remove byteman operations/variables
*session.h: remove byteman operations/variables
*tapset-method.cxx: add new add new probe points and ensure that
    the main probe body isn't copied to all new
    probe points

11 years agomerge changes (Makefiles: automatically install libHelperSDT)
Lukas Berk [Fri, 19 Apr 2013 22:09:34 +0000 (18:09 -0400)]
merge changes (Makefiles: automatically install libHelperSDT)

11 years agoincremental commit
Lukas Berk [Fri, 19 Apr 2013 21:28:18 +0000 (17:28 -0400)]
incremental commit

11 years agoMakefiles: automatically install libHelperSDT
Serguei Makarov [Wed, 17 Apr 2013 19:31:55 +0000 (15:31 -0400)]
Makefiles: automatically install libHelperSDT

11 years agoMoving byteman operations to pass 5
Lukas Berk [Fri, 19 Apr 2013 21:25:12 +0000 (17:25 -0400)]
Moving byteman operations to pass 5

11 years agoInitial commit of stapbm.sh script
Lukas Berk [Tue, 9 Apr 2013 20:00:20 +0000 (16:00 -0400)]
Initial commit of stapbm.sh script

*java/stapbm.sh: script to build a byteman rule

11 years agoAdd .return style probes for java methods
Lukas Berk [Mon, 8 Apr 2013 19:34:26 +0000 (15:34 -0400)]
Add .return style probes for java methods

11 years agoOptimize the specific mark("X") probe actually specified
Lukas Berk [Fri, 5 Apr 2013 15:50:46 +0000 (11:50 -0400)]
Optimize the specific mark("X") probe actually specified

*java/HelperSDT.c: alter mark names to be more simple/predictable
*tapset-method.cxx: add function call to determine which mark name
    to return

11 years agoMove stap_system for bminstall into its own function
Lukas Berk [Fri, 5 Apr 2013 15:10:47 +0000 (11:10 -0400)]
Move stap_system for bminstall into its own function

*tapset-method.cxx: move the duplicate code into its own function

11 years agoOnly run bminstall.sh per specified java process once
Lukas Berk [Fri, 5 Apr 2013 14:13:21 +0000 (10:13 -0400)]
Only run bminstall.sh per specified java process once

*tapset-method.cxx: compare the script to see if it's already been installed
    if it has, don't install it again just let bmsubmit.sh
    redefine the probe

11 years agoOnly install rules once per java process
Lukas Berk [Thu, 4 Apr 2013 15:24:51 +0000 (11:24 -0400)]
Only install rules once per java process

*session.cxx: re-enable the check before executing java_detach
*tapset-method.cxx: only bminstall.sh the process if its not already been recorded
    and check to see if we've installed any java procs already

11 years agoInternationalize tapset-method strings
Lukas Berk [Thu, 4 Apr 2013 13:55:45 +0000 (09:55 -0400)]
Internationalize tapset-method strings

*tapset-method.cxx: add macros to internationalize strings

11 years agoAllow more than one java probe point per script
Lukas Berk [Wed, 3 Apr 2013 21:26:40 +0000 (17:26 -0400)]
Allow more than one java probe point per script

*tapset-method.cxx: add filter to match probe against the class
    and method, if it doesn't match, then skip
    the probe point
*session.cxx: change how rules are uninstalled

11 years agoTweak how log file is specified for bmsubmit.sh commands
Lukas Berk [Thu, 21 Mar 2013 13:45:24 +0000 (09:45 -0400)]
Tweak how log file is specified for bmsubmit.sh commands

*session.cxx: alter bmcommand ordering and include explicit " -o"
*tapset-method.cxx: alter assignment of log file and ordering in
    bmsubmit.sh command

11 years agoAllow java("fully qualified class") style syntax
Lukas Berk [Wed, 20 Mar 2013 23:31:49 +0000 (19:31 -0400)]
Allow java("fully qualified class") style syntax

*session.cxx: add class string member variable
*session.h: add member variable
*tapset-method.cxx: add class specification functionality

11 years agoCleanup and use stap_system() to launch commands
Lukas Berk [Tue, 19 Mar 2013 14:39:59 +0000 (10:39 -0400)]
Cleanup and use stap_system() to launch commands

*tapset-method.cxx: use stap_system() to launch bmsubmit and bminstall
    commands instead of forking and managing it ourselves.
    Also, a small cleanup of commented out vars and varnames

11 years agoUninstall the specific byteman rule we generated
Lukas Berk [Mon, 18 Mar 2013 23:11:29 +0000 (19:11 -0400)]
Uninstall the specific byteman rule we generated

*session.cxx: add systemtap_session member variables and use
      stap_system to launch bmsubmit.sh uninstall command
*session.h: added member variable declarations
*tapset-method.cx: use member variables so we know which rule to uninstall
*tapsets.cxx: reorder which tapsets to register so normal process probes
      are registered first

11 years agoExit gracefully from a java process (uninstall rules)
Lukas Berk [Thu, 14 Mar 2013 20:44:06 +0000 (16:44 -0400)]
Exit gracefully from a java process (uninstall rules)

*session.cxx: add java_detach() function, exec bmsubmit.sh -u
*session.h: declaration of java_detach
*tapset-method: change some local variables to systemtap_session
variables for java_detach

11 years agoAdd basic java/ Makefile.am to compile libHelperSDT.so
Lukas Berk [Thu, 7 Mar 2013 19:29:43 +0000 (14:29 -0500)]
Add basic java/ Makefile.am to compile libHelperSDT.so

*Makefile.in's: autoreconf changes
*java/HelperSDT.c: fixed some warnings
*java/HelperSDT.h: removed several uneeded functions
*java/HelperSDT.java: removed several uneeded methods

11 years agoPipe output of bmsubmit.sh command to log file instead of System.out
Lukas Berk [Tue, 5 Mar 2013 14:02:28 +0000 (09:02 -0500)]
Pipe output of bmsubmit.sh command to log file instead of System.out

*tapset-method.cxx: pipe output of bmsubmit.sh command to log file
*java/TODO: update the todo list

11 years agoChange syntax from process(JAVAPID). to java(PID)
Lukas Berk [Tue, 5 Mar 2013 13:48:33 +0000 (08:48 -0500)]
Change syntax from process(JAVAPID). to java(PID)

*tapset-method.cxx: change syntax keywords
*java/TODO: update todo file

11 years agoRe-add HAVE_HELPER variable from merge, add conditional
Lukas Berk [Tue, 5 Mar 2013 13:28:10 +0000 (08:28 -0500)]
Re-add HAVE_HELPER variable from merge, add conditional

*configure.ac: re-add HAVE_HELPER, undef HAVE_HELPER if bmsubmit.sh,
       bminstall.sh and java aren't found.

11 years agoAdd correct check for byteman (bmsubmit.sh & bminstall.sh)
Lukas Berk [Mon, 4 Mar 2013 22:41:46 +0000 (17:41 -0500)]
Add correct check for byteman (bmsubmit.sh & bminstall.sh)

*configure: autoconf generated
*configure.ac: added bminstall.sh and bmsubmit.sh check

11 years agoAdd java specific helper files
Lukas Berk [Mon, 4 Mar 2013 20:38:58 +0000 (15:38 -0500)]
Add java specific helper files

*java/HelperSDT.c: the actual value extraction and passing to stap
*java/HelperSDT.h: the jni header file
*java/HelperSDT.java: the java jni file
*java/README: how to manually compile and add the .jar and .so
*java/TODO: the TODO for automation
*tapset-method.cxx: fix the helper name

11 years agoAdded java/TODO file
Lukas Berk [Mon, 4 Mar 2013 19:36:08 +0000 (14:36 -0500)]
Added java/TODO file

*java/TODO: listed more todo items to keep track of

11 years agoMake use of HAVE_HELPER config variable
Lukas Berk [Mon, 4 Mar 2013 18:50:34 +0000 (13:50 -0500)]
Make use of HAVE_HELPER config variable

*tapset-method.cxx: only create new probe point and exec byteman
                    if HAVE_HELPER / --with-helper was defined
                    and use the specified variable in the new
                    process("libHelperSDT.so").mark("*") probe

11 years agoProperly define variable if --with-helper is defined
Lukas Berk [Mon, 4 Mar 2013 16:39:04 +0000 (11:39 -0500)]
Properly define variable if --with-helper is defined

11 years agoAdd have_java configuration variable
Lukas Berk [Mon, 4 Mar 2013 14:45:19 +0000 (09:45 -0500)]
Add have_java configuration variable

Adding this variable will allow us to check if per-method probes
are even possible and at the same time define where the jni
library we need is.

11 years agoAdd more log messages and fix various formatting
Lukas Berk [Sun, 3 Mar 2013 00:35:06 +0000 (19:35 -0500)]
Add more log messages and fix various formatting

*tapset-method.cxx: fix various formatting and add verbosity messages

11 years agoActually error out if more than 10 method parameters are specified
Lukas Berk [Sat, 2 Mar 2013 20:46:54 +0000 (15:46 -0500)]
Actually error out if more than 10 method parameters are specified

*tapset-method.cxx: if more than 10 method parameters are specified
    we need to error out due to the max parameters
    in the static marker

11 years agoFix method argument amount calculation
Lukas Berk [Sat, 2 Mar 2013 20:41:59 +0000 (15:41 -0500)]
Fix method argument amount calculation

*tapset-method.cxx: previously the number of arguments in a method
    was determined by counting the number of ','s.
    Fix this by checking for distance between ()'s

11 years agoCorrect method name specified in generated byteman rule
Lukas Berk [Sat, 2 Mar 2013 19:48:45 +0000 (14:48 -0500)]
Correct method name specified in generated byteman rule

*tapset-method.cxx: fix the method name passed to the stap probe

11 years agoInitial java per method probing functionality
Lukas Berk [Sat, 2 Mar 2013 17:42:12 +0000 (12:42 -0500)]
Initial java per method probing functionality

* Makefile.{am,in}: add tapset-method.cxx to file list
* session.cxx: add java_derived_probes to systemtap_session class
* session.h: likewise
* tapsets.cxx: add new token strings, call java probe point builder
* tapset-method.cxx: actual byteman exec and probe redefinition/builder

11 years agolinux tapset: adapt to 3.9 movement of MAX_RT_PRIO to new linux/sched/rt.h
Frank Ch. Eigler [Wed, 1 May 2013 02:12:58 +0000 (22:12 -0400)]
linux tapset: adapt to 3.9 movement of MAX_RT_PRIO to new linux/sched/rt.h

11 years agostapdyn: add a one-second timeout to the mutatee state-change ppoll
Frank Ch. Eigler [Wed, 1 May 2013 00:37:56 +0000 (20:37 -0400)]
stapdyn: add a one-second timeout to the mutatee state-change ppoll

Intermittently, the filehandle-based notification hangs (with rawhide
dyninst 8.1.1 x86-64), but subsequent event polling works.  So let's
not let stapdyn block indefinitely on the former.

* stapdyn/mutator.cxx (mutator::run): Add a 10-second timeout.

11 years agoPR15422: fix compiler warning when --runtime=dyninst loc2c's 32-on-64 binary
Frank Ch. Eigler [Tue, 30 Apr 2013 20:28:47 +0000 (16:28 -0400)]
PR15422: fix compiler warning when --runtime=dyninst loc2c's 32-on-64 binary

* runtime/dyninst/loc2c-runtime.h (*deref, *_user_asm): Explicitly
  widen incoming address to uintptr_t.

11 years agoBZ915247: remove i18n stub support from python dtrace.in script
Frank Ch. Eigler [Mon, 29 Apr 2013 20:11:45 +0000 (16:11 -0400)]
BZ915247: remove i18n stub support from python dtrace.in script

* Makefile.am (update-po): Drop dtrace.in from POTFILES.in.
* Makefile.in, po/*: Regenerate.
* dtrace.in: Remove gettext calls.

11 years agoHandle an allocation failure in _stp_vsnprintf().
David Smith [Mon, 29 Apr 2013 19:52:26 +0000 (14:52 -0500)]
Handle an allocation failure in _stp_vsnprintf().

* runtime/vsprintf.c (_stp_vsnprintf): If _stp_reserve_bytes() fails,
  print an error and exit.

11 years agoFixed PR14491 by adding a real transport layer for dyninst.
David Smith [Fri, 26 Apr 2013 16:25:24 +0000 (11:25 -0500)]
Fixed PR14491 by adding a real transport layer for dyninst.

* runtime/dyninst/transport.c: New file.
* runtime/dyninst/transport.h: New file.
* translate.cxx (c_unparser::emit_module_init): Emit a call to
  stp_session_init_finished() before probe registrations.
  (c_unparser::emit_module_exit): In dyninst mode, delay
  releasing the context.
* tapsets.cxx (common_probe_entryfn_epilogue): In dyninst mode, delay
  releasing the context.
* runtime/dyninst/stapdyn.h: Add stp_dyninst_session_init_finished()
  prototype.
* runtime/dyninst/shm.c (_stp_shm_destroy): Right before unmapping the
  shared memory, tear down the contexts.
* runtime/dyninst/runtime_context.h (__stp_runtime_contexts_free): New
  function.
* runtime/dyninst/runtime.h (stp_pthread_rwlock_init_shared): New function.
  (stp_dyninst_shm_connect): Initialize the transport by calling
  _stp_dyninst_transport_init().
  (stp_dyninst_session_init): Ditto.
  (stp_dyninst_session_init_finished): New function.
  (stp_dyninst_dtor): Shutdown the transport by calling
  _stp_dyninst_transport_shutdown().
* runtime/dyninst/print.c (_stp_print_flush): Now just calls
  _stp_dyninst_transport_write().
  (_stp_reserve_bytes): Now just calls
  _stp_dyninst_transport_reserve_bytes().
  (_stp_unreserve_bytes): Now just calls
  _stp_dyninst_transport_unreserve_bytes().
* runtime/dyninst/common_session_state.h: Add transport data to session
  data structure.
* runtime/common_probe_context.h: Add transport data to context structure.
* runtime/dyninst/io.c (_stp_vlog): New function.
  (_stp_warn): Now uses _stp_vlog().
  (_stp_error): Ditto.
  (_stp_softerror): Ditto.
  (_stp_dbug): Ditto.

11 years agoExpand the SDT benchmark locations
Josh Stone [Tue, 23 Apr 2013 22:10:51 +0000 (15:10 -0700)]
Expand the SDT benchmark locations

- Add the loop index as an argument to stap:benchmark.
- Add stap:benchmark-thread-begin/end around each thread.
- Add stap:benchmark-begin/end around the whole thing.

11 years agoSupport "pid" interface of perf (for per-process case)
Torsten Polle [Wed, 10 Apr 2013 18:20:41 +0000 (20:20 +0200)]
Support "pid" interface of perf (for per-process case)

The interface of perf_event_create_kernel_counter() in kernel versions prior
2.6.37 takes the process id instead of a pointer to the task struct.

Signed-off-by: Torsten Polle <Torsten.Polle@gmx.de>
11 years agomutex-contention sample: drop compulsory NNNN argument used for array sizing
Frank Ch. Eigler [Fri, 12 Apr 2013 19:49:05 +0000 (15:49 -0400)]
mutex-contention sample: drop compulsory NNNN argument used for array sizing

11 years agoPR15363: tweak registration-warning message to print inode-offset
Frank Ch. Eigler [Fri, 12 Apr 2013 18:20:01 +0000 (14:20 -0400)]
PR15363: tweak registration-warning message to print inode-offset

Sadly, virtual address to feed/decode objdump -d is not available.

11 years agoPR15363 warn but don't error-abort, on inode-uprobes registration error
Frank Ch. Eigler [Fri, 12 Apr 2013 17:02:36 +0000 (13:02 -0400)]
PR15363 warn but don't error-abort, on inode-uprobes registration error

11 years agoFix weekdays in the rpm spec %changelog (per rpmlint)
Josh Stone [Tue, 9 Apr 2013 13:28:30 +0000 (09:28 -0400)]
Fix weekdays in the rpm spec %changelog (per rpmlint)

11 years agouretprobes: Update for aarapov's v1 (posted April 3)
Josh Stone [Tue, 9 Apr 2013 02:33:07 +0000 (22:33 -0400)]
uretprobes: Update for aarapov's v1 (posted April 3)

The uretprobes handler is now called ".ret_handler", with a new "func"
parameter for the breakpoint vaddr (which we don't use for now).

11 years agoextend error::pass2 man page
Frank Ch. Eigler [Sun, 7 Apr 2013 22:49:27 +0000 (18:49 -0400)]
extend error::pass2 man page

11 years agoEnable process.plt probes for ARM.
Torsten Polle [Fri, 5 Apr 2013 16:20:05 +0000 (12:20 -0400)]
Enable process.plt probes for ARM.

(Confirmed in binutils bfd/elf32-arm.c, elf32_arm_plt0_entry / elf32_arm_plt_entry.)

11 years agostapdyn runtime: don't use mktemp to create a file name
Frank Ch. Eigler [Fri, 5 Apr 2013 13:26:16 +0000 (09:26 -0400)]
stapdyn runtime: don't use mktemp to create a file name

* runtime/dyninst/shm.c (_stp_shm_init): Just use a pid-based name; we only
  need mild uniqueness to avoid accidental collision.

11 years agoBZ855981: Further tweak getcpu compatibility
Josh Stone [Thu, 4 Apr 2013 18:11:36 +0000 (11:11 -0700)]
BZ855981: Further tweak getcpu compatibility

- Keep using sched_getcpu() where possible - it's sometimes faster.
- Pass the correct parameters to syscall(getcpu).
- Direct the tapset cpu() through this compat code too.

This page took 0.068435 seconds and 5 git commands to generate.