]> sourceware.org Git - systemtap.git/log
systemtap.git
14 years agoPR10877: Fix coveragedb.cxx to account for new components/token structure
Charley Wang [Tue, 10 Nov 2009 19:04:57 +0000 (14:04 -0500)]
PR10877: Fix coveragedb.cxx to account for new components/token structure

14 years agoPR10927: undocument nonexistent do/while construct
Frank Ch. Eigler [Tue, 10 Nov 2009 18:11:10 +0000 (13:11 -0500)]
PR10927: undocument nonexistent do/while construct

14 years agoPR10877: Give token* to each component instead of each probe_point
Charley Wang [Tue, 10 Nov 2009 17:22:18 +0000 (12:22 -0500)]
PR10877: Give token* to each component instead of each probe_point

14 years agoReplace the use of the global variable 'modpath' in diagnostic
Dave Brolley [Tue, 10 Nov 2009 17:12:54 +0000 (12:12 -0500)]
Replace the use of the global variable 'modpath' in diagnostic
messages within verify_it with the use of a 'module_name'
parameter passed in.

Add a comment in insert_module explaining why it's ok to
overwrite the 'path' parameter with the canonicalized path.

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/systemtap
Dave Brolley [Tue, 10 Nov 2009 15:45:29 +0000 (10:45 -0500)]
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap

14 years agoAdd blank lines for formatting stapprobes.irq
Josh Stone [Tue, 10 Nov 2009 10:36:56 +0000 (02:36 -0800)]
Add blank lines for formatting stapprobes.irq

The line spacing is significant to the way the output is rendered.

14 years agoFix stapprobes.irq title and add to install list
Josh Stone [Tue, 10 Nov 2009 10:29:22 +0000 (02:29 -0800)]
Fix stapprobes.irq title and add to install list

(And incidentally re-enable quiet builds at the same time...)

14 years agoOnly .3stap.in files should be committed
Josh Stone [Tue, 10 Nov 2009 10:05:22 +0000 (02:05 -0800)]
Only .3stap.in files should be committed

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/systemtap
Dave Brolley [Mon, 9 Nov 2009 19:59:45 +0000 (14:59 -0500)]
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap

14 years agoDon't reference global variable modpath in insert_module and its helpers.
Dave Brolley [Mon, 9 Nov 2009 19:50:52 +0000 (14:50 -0500)]
Don't reference global variable modpath in insert_module and its helpers.
This allows insert_module to to be used for loading the signed uprobes.ko
module.

Allow the use of $$parms and $$return in uprobes based probes for
unprivileged users.

Re-add management of module signatures in the cache. Don't know why
it was removed.

14 years agoNormalized whitespace and comments.
David Smith [Mon, 9 Nov 2009 16:29:10 +0000 (10:29 -0600)]
Normalized whitespace and comments.

14 years agoIRQ tapset, sample script, testsuite, man page updates, etc
Prerna Saxena [Mon, 9 Nov 2009 06:06:11 +0000 (11:36 +0530)]
IRQ tapset, sample script, testsuite, man page updates, etc

14 years agoPR10923 Handle AT_frame_base given by DW_OP_call_frame_cfa in .debug_frame.
Mark Wielaard [Sun, 8 Nov 2009 21:03:31 +0000 (22:03 +0100)]
PR10923 Handle AT_frame_base given by DW_OP_call_frame_cfa in .debug_frame.

dwarf_cfi_addrframe should not be called with pc adjusted to the bias
of the dwfl_module_dwarf_cfi or dwfl_module_eh_cfi. This just happened to
work in the .eh_frame case because bias was always zero.

* dwflpp.cxx (get_cfa_ops): Don't adjust pc for bias.

14 years agoFix a comment typo
Josh Stone [Sat, 7 Nov 2009 02:17:19 +0000 (18:17 -0800)]
Fix a comment typo

14 years agoexpand comment on has_return=0 treatment of -L foo.return probes
Frank Ch. Eigler [Sat, 7 Nov 2009 01:57:55 +0000 (20:57 -0500)]
expand comment on has_return=0 treatment of -L foo.return probes

14 years agoConstrain $var-checking for -L of .return probes
Josh Stone [Sat, 7 Nov 2009 00:01:10 +0000 (16:01 -0800)]
Constrain $var-checking for -L of .return probes

Normally, using a $var in a return probe create a matching entry probe
to save the value.  We don't want all this machinery though when we're
just checking the accessibility of a $var for -L mode.

* tapsets.cxx (dwarf_derived_probe::saveargs): Save/restore has_return
  while the $var accesses are attempted.

14 years agoPR10849: Support MAXSKIPPED handling on RHEL4 through implementation of atomic_cmpxchg
Roland Grunberg [Fri, 6 Nov 2009 19:09:06 +0000 (14:09 -0500)]
PR10849: Support MAXSKIPPED handling on RHEL4 through implementation of atomic_cmpxchg

14 years agoPR10820-cont': initialize the fields of empty token
Wenji Huang [Fri, 6 Nov 2009 02:03:32 +0000 (10:03 +0800)]
PR10820-cont': initialize the fields of empty token

* tapsets.cxx (dwarf_derived_probe::saveargs): fill fields.

14 years agoRevert change which loads uprobes.ko using insert_module.
Dave Brolley [Thu, 5 Nov 2009 23:17:50 +0000 (18:17 -0500)]
Revert change which loads uprobes.ko using insert_module.

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/systemtap
Dave Brolley [Thu, 5 Nov 2009 20:23:35 +0000 (15:23 -0500)]
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap

14 years agoRevert previous change re: home directory og stap-server. Ensure it has 755 privileges.
Dave Brolley [Thu, 5 Nov 2009 20:07:37 +0000 (15:07 -0500)]
Revert previous change re: home directory og stap-server. Ensure it has 755 privileges.

14 years agoPR 9973: Sign uprobes.ko when it is created and load it using insert_module.
Dave Brolley [Thu, 5 Nov 2009 19:52:56 +0000 (14:52 -0500)]
PR 9973: Sign uprobes.ko when it is created and load it using insert_module.
Create home directory manually for stap-server.

14 years agoPR10466: print the set-intersection of variables retrieved from each branch
Wenji Huang [Wed, 4 Nov 2009 02:58:58 +0000 (10:58 +0800)]
PR10466: print the set-intersection of variables retrieved from each branch

* elaborate.h: Remove printargs and add getargs.
* tapset-mark.cxx (mark_derived_probe): Ditto.
* tapsets.cxx (dwarf_derived_probe,tracepoint_derived_probe): Ditto.
* main.cxx (printscript): Make intersection before printing.

14 years agoAdd NEWS entry for stap-server initscript.
Dave Brolley [Tue, 3 Nov 2009 21:29:06 +0000 (16:29 -0500)]
Add NEWS entry for stap-server initscript.

14 years agoMerge branch 'master' of ssh://sources.redhat.com/git/systemtap
Dave Brolley [Tue, 3 Nov 2009 21:22:36 +0000 (16:22 -0500)]
Merge branch 'master' of ssh://sources.redhat.com/git/systemtap

Conflicts:

Makefile.in
configure
doc/Makefile.in
doc/SystemTap_Tapset_Reference/Makefile.in
grapher/Makefile.in
testsuite/configure

14 years agoRedirect stap-serverd output to /dev/null.
Dave Brolley [Tue, 3 Nov 2009 19:27:12 +0000 (14:27 -0500)]
Redirect stap-serverd output to /dev/null.

14 years agoPR 10706 fixed by switching to unbuffered output.
David Smith [Tue, 3 Nov 2009 17:04:35 +0000 (11:04 -0600)]
PR 10706 fixed by switching to unbuffered output.
* runtime/staprun/mainloop.c (stp_main_loop): Switched to unbuffered
  output (instead of line buffered output).

14 years agoI forgot to change the NEWS file when commiting
Breno Leitao [Tue, 3 Nov 2009 16:24:03 +0000 (14:24 -0200)]
I forgot to change the NEWS file when commiting
249534c041971db5e9f89cb11b6d38d311e91f57, and this commit
just adds a line in the NEWS file explaining the commmit above

14 years agoFix for bug 10866 (exit with rc != 0 on script ERRORs).
Breno Leitao [Tue, 3 Nov 2009 15:38:32 +0000 (13:38 -0200)]
Fix for bug 10866 (exit with rc != 0 on script ERRORs).
This patch just make the RC=1 when any output line starts with ERROR:.

Also some minors error that was returning 0 instead of 1 were fixed.

14 years agoMore logging for stap-server initscript.
Dave Brolley [Mon, 2 Nov 2009 21:38:41 +0000 (16:38 -0500)]
More logging for stap-server initscript.

14 years agoFinal cleanup of stap-server initscript and packaging.
Dave Brolley [Mon, 2 Nov 2009 20:15:09 +0000 (15:15 -0500)]
Final cleanup of stap-server initscript and packaging.

14 years agoPR 6691 fixed by adding support for sys_accept4.
David Smith [Mon, 2 Nov 2009 18:51:12 +0000 (12:51 -0600)]
PR 6691 fixed by adding support for sys_accept4.
* tapset/aux_syscalls.stp(_sock_type_str): Rewrote in embedded-C and added
  socket flags support.
  (_sock_flags_str): New function.
* tapset/syscalls.stp: syscall.accept prefers to use sys_accept4 when it
  exists.  Added support for sys_accept4's 'flag' parameter.
* testsuite/systemtap.syscall/net1.c (main): Updated regular expression to
  handle the new 'flags' argument.

14 years agoPR10849: make MAXSKIPPED overflow trigger an error message
Charley Wang [Mon, 2 Nov 2009 15:18:34 +0000 (10:18 -0500)]
PR10849: make MAXSKIPPED overflow trigger an error message

14 years agoreorganize app tests; rewrite tcl as sample of improvements
Frank Ch. Eigler [Sat, 31 Oct 2009 17:54:41 +0000 (13:54 -0400)]
reorganize app tests; rewrite tcl as sample of improvements

* testsuite/configure.ac (--enable-testapps): New option.
* testsuite/Makefile.am (TESTAPPS): Pass to dejagnu.

* testsuite/systemtap.base/{xulrunner,tcl,mysql,postgres}:
  Moved under new systemtap.apps/ subdirectory.

* testsuite/systemtap.apps/stap-tcl.sh: New file to build tcl.
* testsuite/systemtap.apps/stap-tcl.stp: New file to test tcl.
* testsuite/systemtap.apps/tcl.exp: New simplified test driver.

* dtrace.in: Disable STAP_HAS_SEMAPHORES as they don't work on shlibs yet.
* includes/sys/sdt.h (STAP_SEMAPHORE): Include __builtin_expect for unlikely.

14 years agoregen sample indexes with plimit.stp
Frank Ch. Eigler [Fri, 30 Oct 2009 23:53:03 +0000 (19:53 -0400)]
regen sample indexes with plimit.stp

14 years agoplimit: Add plimit.stp sample script
Eugene Teo [Fri, 30 Oct 2009 23:52:23 +0000 (19:52 -0400)]
plimit: Add plimit.stp sample script

14 years agoUse /dev/urandom (non-blocking) instead of /dev/random.
Dave Brolley [Fri, 30 Oct 2009 16:32:01 +0000 (12:32 -0400)]
Use /dev/urandom (non-blocking) instead of /dev/random.

14 years agoNever ask the user for a password in stap-gen-cert. Read from /dev/random as
Dave Brolley [Fri, 30 Oct 2009 16:17:06 +0000 (12:17 -0400)]
Never ask the user for a password in stap-gen-cert. Read from /dev/random as
a last resort. Cert db passwords will be going away soon(tm).

14 years agocontext.exp test improvements.
David Smith [Fri, 30 Oct 2009 15:03:52 +0000 (10:03 -0500)]
context.exp test improvements.
* testsuite/systemtap.context/args.tcl: Increased timeout.  If tests do
  timeout, fail (instead of silently failing).
* testsuite/systemtap.context/num_args.tcl: Ditto.
* testsuite/systemtap.context/backtrace.tcl: Increase timeout.
* testsuite/systemtap.context/pid.tcl: Ditto.

14 years agoPR10839: compute default KRETACTIVE from num_possible_cpus() instead of NR_CPUS
Frank Ch. Eigler [Fri, 30 Oct 2009 12:10:04 +0000 (08:10 -0400)]
PR10839: compute default KRETACTIVE from num_possible_cpus() instead of NR_CPUS

* tapsets.cxx (dwarf_ and kprobe_derived_probe_group): Redefine KRETACTIVE.

14 years agoFix syscall testsuite bugs.
David Smith [Thu, 29 Oct 2009 21:12:18 +0000 (16:12 -0500)]
Fix syscall testsuite bugs.
* testsuite/systemtap.syscall/test.tcl: Substitute '[[[[' and ']]]]' for
  '(' and ')'.  This allows us to get unquoted parens.
* testsuite/systemtap.syscall/test-debug.tcl: Matches substitute logic of
  test.tcl.
* testsuite/systemtap.syscall/README: Document '[[[[' and ']]]]'.
* testsuite/systemtap.syscall/chmod.c: Handle optional O_LARGEFILE flag in
  open calls.
* testsuite/systemtap.syscall/dir.c: Ditto.
* testsuite/systemtap.syscall/mmap.c: Ditto.
* testsuite/systemtap.syscall/openclose.c: Ditto.
* testsuite/systemtap.syscall/readwrite.c: Ditto.
* testsuite/systemtap.syscall/stat.c: Ditto.

14 years agoRemoved extra declarations.
David Smith [Thu, 29 Oct 2009 20:54:58 +0000 (15:54 -0500)]
Removed extra declarations.
* runtime/transport/transport.h: Removed extra declarations of
  _stp_transport_init() and _stp_transport_close().

14 years agoRework for bugs found during testing.
Dave Brolley [Thu, 29 Oct 2009 20:24:33 +0000 (16:24 -0400)]
Rework for bugs found during testing.

14 years agoNormalize Breno Leitao's name without an accent
Josh Stone [Thu, 29 Oct 2009 17:50:14 +0000 (10:50 -0700)]
Normalize Breno Leitao's name without an accent

Per Breno's guidance, I'm removing the accent from the 'a' in Leitao.
We can normalize it either way -- I just want it to be consistent.

This only has an effect on git shortlog and git blame, but we do use
shortlog in our AUTHORS queries.

14 years agotty: Adding tty.stp to the documentation
Breno Leitão [Tue, 20 Oct 2009 17:34:18 +0000 (13:34 -0400)]
tty: Adding tty.stp to the documentation

Adding the TTY tapset to the .tmpl Reference documentation

14 years agoA new testcase for tty tapset
Breno Leitão [Fri, 2 Oct 2009 20:38:46 +0000 (16:38 -0400)]
A new testcase for tty tapset

This is a basic test to assure that the tty tapset is working
compiling and working properly

14 years agoA new tapset that adds support for tty and serial devices
Breno Leitão [Fri, 2 Oct 2009 20:37:15 +0000 (16:37 -0400)]
A new tapset that adds support for tty and serial devices

A new tapset that supports tty devices and consequently serial
devices. It is just a basic implementation that can be extended
as demands appears

14 years agoinit.d/rc.d -> rc.d/init.d
Dave Brolley [Thu, 29 Oct 2009 15:34:24 +0000 (11:34 -0400)]
init.d/rc.d -> rc.d/init.d

14 years agoCreate /etc/sysconfig in %install.
Dave Brolley [Thu, 29 Oct 2009 15:29:52 +0000 (11:29 -0400)]
Create /etc/sysconfig in %install.

14 years agostap-server initscript cleanup and follow fedora initscript requirements.
Dave Brolley [Thu, 29 Oct 2009 15:22:40 +0000 (11:22 -0400)]
stap-server initscript cleanup and follow fedora initscript requirements.

14 years agoMerge branch 'master' of ssh://sourceware.org/git/systemtap
Tim Moore [Thu, 29 Oct 2009 11:30:55 +0000 (12:30 +0100)]
Merge branch 'master' of ssh://sourceware.org/git/systemtap

14 years agoPR10820: stap -L ignores any variable that isn't accessible
Wenji Huang [Thu, 29 Oct 2009 00:26:32 +0000 (08:26 +0800)]
PR10820: stap -L ignores any variable that isn't accessible

* tapsets.cxx (saveargs): check the accessibility.

14 years ago* grapher/GraphData.hxx (GraphDataBase, GraphData): Use
Tim Moore [Wed, 28 Oct 2009 21:13:50 +0000 (22:13 +0100)]
* grapher/GraphData.hxx (GraphDataBase, GraphData): Use
  boost::circular_buffer for time and data storage.

14 years agoFix regression of parsing grapher options
Tim Moore [Wed, 28 Oct 2009 17:57:50 +0000 (18:57 +0100)]
Fix regression of parsing grapher options

* grapher/StapParser.hxx (ioCallback): Test return value from findTaggedValue
  properly.

14 years agoChange permissions and ownership of /var/log/systemtap.log after installation.
Dave Brolley [Wed, 28 Oct 2009 15:01:26 +0000 (11:01 -0400)]
Change permissions and ownership of /var/log/systemtap.log after installation.

14 years agoAdd stap-server userid to the stap-server group when it is created.
Dave Brolley [Tue, 27 Oct 2009 21:47:52 +0000 (17:47 -0400)]
Add stap-server userid to the stap-server group when it is created.

14 years agoAdd /var/log/stap-server.log to the files for the systemtap-server sub rpm.
Dave Brolley [Tue, 27 Oct 2009 21:36:16 +0000 (17:36 -0400)]
Add /var/log/stap-server.log to the files for the systemtap-server sub rpm.

14 years agoIn systemtap.spec create $RPM_BUILD_ROOT%{_localstatedir}/log before working in it.
Dave Brolley [Tue, 27 Oct 2009 21:28:55 +0000 (17:28 -0400)]
In systemtap.spec create $RPM_BUILD_ROOT%{_localstatedir}/log before working in it.

14 years agoSpecialized user to run stap-server and improved logging.
Dave Brolley [Tue, 27 Oct 2009 21:23:24 +0000 (17:23 -0400)]
Specialized user to run stap-server and improved logging.

14 years agoProperly close the spawn of the pr10854 testcase
Josh Stone [Tue, 27 Oct 2009 21:06:06 +0000 (14:06 -0700)]
Properly close the spawn of the pr10854 testcase

14 years agoPR10854 cont'd: Add a testcase for the reproducer
Josh Stone [Tue, 27 Oct 2009 20:52:34 +0000 (13:52 -0700)]
PR10854 cont'd: Add a testcase for the reproducer

14 years agoPR10854: Use a mutex around transport startup/shutdown
Josh Stone [Tue, 27 Oct 2009 19:15:29 +0000 (12:15 -0700)]
PR10854: Use a mutex around transport startup/shutdown

We had a race where the probe setup could be called during/after the
probe shutdown in abnormal circumstances, which leads to kernel
callbacks still registered after module unload.  (BOOM)

Now the setup/shutdown activities and related flags are guarded by a
mutex, so we should have strict ordering.

* runtime/transport/transport.c (_stp_transport_mutex): New.
  (_stp_handle_start): Grab the mutex, and make sure we're not exiting.
  (_stp_cleanup_and_exit): Grab the mutex.
  (_stp_lock_inode, _stp_unlock_inode): Use kernel version for checking
  inode locking type.

14 years agoMerge branch 'master' of ssh://sourceware.org/git/systemtap
Tim Moore [Tue, 27 Oct 2009 18:50:06 +0000 (19:50 +0100)]
Merge branch 'master' of ssh://sourceware.org/git/systemtap

14 years agoKill off child processes correctly on exit.
Tim Moore [Tue, 27 Oct 2009 11:50:25 +0000 (12:50 +0100)]
Kill off child processes correctly on exit.

* grapher/grapher.cxx (ChildDeathReader::reap): New function.
  (StapLauncher): Keep a list of instantiated parsers.
  (StapLauncher::cleanup): Kill off all launched stap processes.

14 years agoChange temporary paths to their proper values.
Dave Brolley [Tue, 27 Oct 2009 16:15:42 +0000 (12:15 -0400)]
Change temporary paths to their proper values.

14 years agoMore refactoring for multiple stap processes.
Tim Moore [Wed, 21 Oct 2009 15:05:59 +0000 (17:05 +0200)]
More refactoring for multiple stap processes.

* grapher/StapParser.hxx (StapParser): Change _win and _widget from
  references to pointers.
* grapher/StapParser.cxx (ioCallback): Ditto.
* grapher/grapher.cxx (StapLauncher, GraphicalStapLauncher): Rewrite
  to make GraphicalStapLauncher a derived class of StapLauncher.
  (main): Accept graphing data from stdin with a "-" argument.

14 years agoChange stap parser to use an input file descriptor other than stdin
Tim Moore [Tue, 20 Oct 2009 20:14:00 +0000 (22:14 +0200)]
Change stap parser to use an input file descriptor other than stdin

* grapher/StapParser.hxx (_inFd, getInFd, setInFd): new member and fuctions
* grapher/StapParser.cxx (ioCallback): Use _inFd variable
  instead of stdin.
* grapher/grapher.cxx (StapLauncher::launch): Don't read input from stap on
  stdin; use the the read end of the pipe.

14 years agostap-server initscript fully functional.
Dave Brolley [Mon, 26 Oct 2009 19:20:06 +0000 (15:20 -0400)]
stap-server initscript fully functional.

15 years agoEnable Kbuild-like quiet builds
Josh Stone [Thu, 22 Oct 2009 21:37:05 +0000 (14:37 -0700)]
Enable Kbuild-like quiet builds

This enables much cleaner build output from automake.  To re-enable the
verbose commands, pass --disable-silent-rules to configure, or use V=1
at make time.

* configure.ac: Enable AM_SILENT_RULES by default.

15 years agoPR 10822 fixed by waiting for the procfs file.
David Smith [Thu, 22 Oct 2009 14:03:44 +0000 (09:03 -0500)]
PR 10822 fixed by waiting for the procfs file.
* testsuite/systemtap.base/onoffprobe.exp: Wait for up to 10 seconds for
  the procfs file to be created.

15 years agoCorrect the safety-net escape WRT locking
Josh Stone [Thu, 22 Oct 2009 02:27:17 +0000 (19:27 -0700)]
Correct the safety-net escape WRT locking

Within a probe body, the "out" label starts the normal exit path,
including unlocking whatever globals are used in that probe.  Since the
unprivileged safety-net checks are before the locks are ever grabbed, we
should bypass the unlock on the way out.

* elaborate.cxx (derived_probe::emit_process_owner_assertion): Use
  "return" instead of "goto out".

15 years agoRefactor probe locking into shared functions
Josh Stone [Wed, 21 Oct 2009 23:15:58 +0000 (16:15 -0700)]
Refactor probe locking into shared functions

For scripts with thousands of probes, we save a fair amount of code-gen
time in pass-4 by having the common locking code extracted into shared
functions.

* runtime/probe_lock.h (stp_lock_probe, stp_unlock_probe): New.
* translate.cxx (c_unparser::emit_lock_decls): New, emits a static
  const array of locks needed for each probe.
  (c_unparser::emit_locks): Just call stp_lock_probe.
  (c_unparser::emit_unlocks): Just call stp_unlock_probe.

15 years agoRelax the -Wframe-larger-than check
Josh Stone [Wed, 21 Oct 2009 16:07:14 +0000 (09:07 -0700)]
Relax the -Wframe-larger-than check

This is just a workaround for PR10821, and should be reverted when that
bug is fixed.

15 years agoEnsure that DWARF keeps loc2c to a reasonable stack depth
Josh Stone [Sat, 17 Oct 2009 01:32:12 +0000 (18:32 -0700)]
Ensure that DWARF keeps loc2c to a reasonable stack depth

* dwflpp.cxx (dwflpp::express_as_string): Limit stack depth to 32.

15 years agoPR10750 cont'd: Build with -Wframe-larger-than=512
Josh Stone [Wed, 14 Oct 2009 20:30:44 +0000 (13:30 -0700)]
PR10750 cont'd: Build with -Wframe-larger-than=512

* buildrun.cxx (compile_pass): Add the warning to limit the frame size
  even lower than the Kbuild default (only works for gcc 4.4+).

15 years agoPR10750: Enforce a reasonable limit on # of varargs
Josh Stone [Sat, 10 Oct 2009 00:32:26 +0000 (17:32 -0700)]
PR10750: Enforce a reasonable limit on # of varargs

If we leave the number of args unbounded, then an excessively-sized
printf could cause a kernel stack overflow.  I've arbitrarily chosen 32
as our new maximum.

* translate.cxx (c_unparser::visit_print_format): Throw if >32 args.
* testsuite/transko/varargs.stp: Assert that 33 args aren't allowed.
* testsuite/transok/varargs.stp: Assert that 32 args are ok.

15 years agoMerge branch 'unwind_robust'
Mark Wielaard [Wed, 21 Oct 2009 09:47:47 +0000 (11:47 +0200)]
Merge branch 'unwind_robust'

15 years agostap-server initscript is now part of the systemtap-server package.
Dave Brolley [Tue, 20 Oct 2009 20:11:56 +0000 (16:11 -0400)]
stap-server initscript is now part of the systemtap-server package.

15 years agoNo stap-server/config file yet.
Dave Brolley [Tue, 20 Oct 2009 19:22:36 +0000 (15:22 -0400)]
No stap-server/config file yet.

15 years agoInfrastructure for new stap-server initscript.
Dave Brolley [Tue, 20 Oct 2009 19:18:36 +0000 (15:18 -0400)]
Infrastructure for new stap-server initscript.

15 years agoAdded testsuite to test xulrunner sdt markers.
Stan Cox [Tue, 20 Oct 2009 17:42:01 +0000 (13:42 -0400)]
Added testsuite to test xulrunner sdt markers.

xulrunner.exp:  New testsuite, modelled after mysql.exp.
mysql.exp (stap-mysql.sh): Use installed stap.
postgres.exp (stap-mysql.sh): Use installed stap.
tcl.exp (stap-mysql.sh): Use installed stap.

15 years agoRHBZ519314: define task_struct cast to operate without debuginfo
Frank Ch. Eigler [Tue, 20 Oct 2009 15:23:55 +0000 (11:23 -0400)]
RHBZ519314: define task_struct cast to operate without debuginfo

* tapset/task.stp: Use @cast(...,"task_struct","kernel<linux/sched.h")
  throughout to operate dwarf-free.

15 years agoLimit the number of call frame instructions we process in the unwinder.
Mark Wielaard [Tue, 20 Oct 2009 15:08:57 +0000 (17:08 +0200)]
Limit the number of call frame instructions we process in the unwinder.

* runtime/unwind.c (processCFI): Fail if the number of instructions is
  larger than MAX_CFI (currently 512).

15 years agoMake sure cie and fde end point to sane values in while doing unwind_frame.
Mark Wielaard [Tue, 20 Oct 2009 14:55:04 +0000 (16:55 +0200)]
Make sure cie and fde end point to sane values in while doing unwind_frame.

* runtime/unwind.c (unwind_frame): Check end read from cie or fde doesn't
  go passed end of unwind table.

15 years agoBe paranoid about table size resolving cie_for_fde and fde_pointer_type.
Mark Wielaard [Tue, 20 Oct 2009 11:55:15 +0000 (13:55 +0200)]
Be paranoid about table size resolving cie_for_fde and fde_pointer_type.

* runtime/unwind.c (cie_for_fde): Take table and table_len into account.
  (fde_pointer_type): Likewise.
* runtime/unwind/unwind.h: Adjust function prototypes.

15 years agotcl.exp path fix.
Stan Cox [Tue, 20 Oct 2009 10:56:31 +0000 (06:56 -0400)]
tcl.exp path fix.

tcl.exp (run_tests): Fix stap path.

15 years agoAdd limit on unwind table size we accept.
Mark Wielaard [Tue, 20 Oct 2009 10:38:55 +0000 (12:38 +0200)]
Add limit on unwind table size we accept.

* translate.cxx (MAX_UNWIND_TABLE_SIZE): New define.
  (dump_unwindsyms): Check debug_len and eh_len against new limit.

15 years agoAdd testsuite for tcl sdt markers.
Stan Cox [Mon, 19 Oct 2009 02:26:27 +0000 (22:26 -0400)]
Add testsuite for tcl sdt markers.

dtrace.in (provider::generate): Set enabled to true until .so is resolved.
tcl.exp:  New testsuite for tcl sdt markers modelled after mysql.

15 years agoImprove some runtime struct layouts
Josh Stone [Tue, 20 Oct 2009 01:11:58 +0000 (18:11 -0700)]
Improve some runtime struct layouts

Guided by pahole, I've shaved off a few padding bytes here and there.
New sizes on x86_64:

  stap_task_finder_target  192 -> 184
  stap_itrace_probe        216 -> 208
  stap_utrace_probe        328 -> 312
  stap_uprobe_tf           200 -> 192
  stap_uprobe_spec          48 ->  40

I only changed field layouts, not types or names, so this should be
perfectly safe. (FLW)

15 years agobemoan that _stp_*printf can't be protected with gcc attribute printf
Frank Ch. Eigler [Mon, 19 Oct 2009 17:53:33 +0000 (13:53 -0400)]
bemoan that _stp_*printf can't be protected with gcc attribute printf

15 years agofix 32-bit compatibility for @hist_log printing
Wenji Huang [Mon, 19 Oct 2009 17:49:23 +0000 (13:49 -0400)]
fix 32-bit compatibility for @hist_log printing

* stat-common.c (_stp_stat_print_histogram_buf): Fix HIST_PRINTF
  parameter passing.

15 years agoPR10799: warn on possibly uintended local-vs-global namespace collision
Frank Ch. Eigler [Mon, 19 Oct 2009 15:33:24 +0000 (11:33 -0400)]
PR10799: warn on possibly uintended local-vs-global namespace collision

* elaborate.cxx (find_var): Take extra token parameter.
  Look for cross-file global variable resolution, signal
  a warning.
* testsuite/systemtap.examples/io/traceio2.stp: Fix it.
* testsuite/systemtap.syscall/sys.stp: Fix it.
* NEWS: Document it.

15 years agoprovide error message token/context if loc2c doesn't
Frank Ch. Eigler [Mon, 19 Oct 2009 15:13:10 +0000 (11:13 -0400)]
provide error message token/context if loc2c doesn't

* tapsets.cxx (visit_target_symbol): When catching semantic_error,
  fill in token value if unset.  Can happen for loc2c DIE() msgs.

15 years agoAvoid lockdep warnings.
Srikar Dronamraju [Mon, 19 Oct 2009 08:14:21 +0000 (13:44 +0530)]
Avoid lockdep warnings.

uprobe_fork_uproc() runs with parent_uproc->rwsem locked.
However uprobe_mk_process() that gets called within uprobe_fork_uproc()
also locks child_uproc->rwsem after initializing it.

Lockdep report confuses this to acquiring a lock that already has been
acquired and suggests using sub-classes.

The alternatives we have are:
1. use classes level to distinguish different uproc structures.
2. unlock parent_uproc->rwsem before we call uprobe_fork_uproc().
3. dont try locking child_uproc->rwsem; since we are protected by
   uproc_mutex as well as parent_uproc->rwsem;

We use the last approach.

Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
---

15 years agoPR10331: build fix for older nss redux
Frank Ch. Eigler [Fri, 16 Oct 2009 12:05:14 +0000 (08:05 -0400)]
PR10331: build fix for older nss redux

Reported by Wenji, these SEC_* symbols were enums rather than macros,
so instead of individual #ifdefs ...

* stapsslerr.h: use NSS_{VMAJOR/VMINOR/VPATCH} to detect 3.12.4 or later
  for the two recent error symbols.

15 years agoFix transok/tval-opt.stp testcase. Pick diffent function and non-empty block.
Mark Wielaard [Thu, 15 Oct 2009 19:55:16 +0000 (21:55 +0200)]
Fix transok/tval-opt.stp testcase. Pick diffent function and non-empty block.

This testcase succeeded just because the value being set couldn't be
found. So the error message being compared was the same. Set -o pipefail
to catch that case. On vta compiled kernels it failed because the optimizer
turned { statement } into statement. So pick a function and argument which
location can always be found and add an extra 'next' statement so the
block isn't folded.

* testsuite/transok/tval-opt.stp: Set -o pipefail. Add 'next' to make
  sure block isn't empty. Use "do_filp_open" and "mode".

15 years agoUpdated checking for grapher dependencies.
David Smith [Thu, 15 Oct 2009 17:39:15 +0000 (12:39 -0500)]
Updated checking for grapher dependencies.
* configure.ac: Made sure nss includes will error even if only 1 header
  isn't usable.  Added grapher dependencies gtkmm and boost headers.
* Makefile.in: Regenerated.
* config.in: Ditto.
* configure: Ditto.
* doc/Makefile.in: Ditto.
* doc/SystemTap_Tapset_Reference/Makefile.in: Ditto.
* grapher/Makefile.am: Use libglade CFLAGS/LIBS.
* grapher/Makefile.in: Regenerated.

15 years agoPR10331: build fix for older nss
Frank Ch. Eigler [Thu, 15 Oct 2009 15:25:06 +0000 (11:25 -0400)]
PR10331: build fix for older nss

* stapsslerr.h: #ifdef-conditionalize a few of the error codes,
  apparently defined some time after NSS 3.12.2.

Reported-By: Wenji Huang <wenji.huang@oracle.com>
15 years agoAdd boost-devel build requirement for the grapher.
David Smith [Thu, 15 Oct 2009 15:09:19 +0000 (10:09 -0500)]
Add boost-devel build requirement for the grapher.

15 years agoFix $$targets in dwarf probes
Josh Stone [Wed, 14 Oct 2009 23:12:49 +0000 (16:12 -0700)]
Fix $$targets in dwarf probes

My print_format refactoring in d5e178c1 missed an improperly-named
token, an sprint that should be sprintf.  Since the token value is now
significant, that name needs to be correct.

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