]> sourceware.org Git - systemtap.git/log
systemtap.git
11 years agoAdd options to help benchmark SDT
Josh Stone [Tue, 12 Mar 2013 02:08:49 +0000 (19:08 -0700)]
Add options to help benchmark SDT

These are secret, undocumented, for developer use only.  Use stap
inception-style as the -c CMD of a stap which probes the SDT mark
process.provider("stap").mark("benchmark").

  --benchmark-sdt-loops=N
        Loop over the SDT probe point N times.

  --benchmark-sdt-threads=N
        Run the loop simultaneously in N threads.

11 years agostapdyn: fix the context->data_index
Josh Stone [Tue, 12 Mar 2013 02:01:27 +0000 (19:01 -0700)]
stapdyn: fix the context->data_index

This regressed in commit c08bf9de, which lost the initialization of that
field.  Thus there was a data race in pmaps, stats, etc. in writing to
data_index 0, rather than the true index of the currently-owned context.

11 years agoDo module cleanup in testsuite/systemtap.base/pr10854.exp.
David Smith [Mon, 11 Mar 2013 20:16:39 +0000 (15:16 -0500)]
Do module cleanup in testsuite/systemtap.base/pr10854.exp.

11 years agoBetter process cleanup in testsuite/systemtap.server/client.exp.
David Smith [Mon, 11 Mar 2013 19:04:20 +0000 (14:04 -0500)]
Better process cleanup in testsuite/systemtap.server/client.exp.

11 years agoMerge branch 'master' of git://sourceware.org/git/systemtap
Lukas Berk [Mon, 11 Mar 2013 16:30:24 +0000 (12:30 -0400)]
Merge branch 'master' of git://sourceware.org/git/systemtap

11 years agoChange directories regardless if the patch was applied or or not
Lukas Berk [Mon, 11 Mar 2013 16:29:23 +0000 (12:29 -0400)]
Change directories regardless if the patch was applied or or not

*scripts/spine-rawhide: if the patch wasn't applied, then we wouldn't
change directories, breaking the rest of the script

11 years agoBetter process/module cleanup in rename_module.exp.
David Smith [Mon, 11 Mar 2013 16:23:02 +0000 (11:23 -0500)]
Better process/module cleanup in rename_module.exp.

11 years agoFix sed command and some whitespace
Lukas Berk [Mon, 11 Mar 2013 16:21:14 +0000 (12:21 -0400)]
Fix sed command and some whitespace

*scripts/spin-rawhide: sed command fix and whitespace

11 years agodocs: adapt to publican 3.0's more picky revnumber rules
Frank Ch. Eigler [Mon, 11 Mar 2013 15:42:43 +0000 (11:42 -0400)]
docs: adapt to publican 3.0's more picky revnumber rules

* doc/SystemTap_Beginners_Guide/en-US/Revision_History.xml
  Add a couple of -1's, just because.

11 years agoAvoid tcl errors on systems without uprobes in labels.exp.
David Smith [Mon, 11 Mar 2013 15:29:23 +0000 (10:29 -0500)]
Avoid tcl errors on systems without uprobes in labels.exp.

11 years agoBackport some spec file changes from fedora-git
Lukas Berk [Mon, 11 Mar 2013 14:24:29 +0000 (10:24 -0400)]
Backport some spec file changes from fedora-git

*systemtap.spec: some architecture specific conditions would be clobbered in
 fedora with the spin-rawhide script was run, lets avoid that

11 years agoAllow spin-rawhide to update systemtap.spec with upstream changes
Lukas Berk [Fri, 8 Mar 2013 20:47:27 +0000 (15:47 -0500)]
Allow spin-rawhide to update systemtap.spec with upstream changes

*scripts/spin-rawhide: add diff between spec files and prompt if
       there are changes and if the user would like
       to patch the sytemtap.spec file.  Alter
       changelog entry accordingly

11 years agoTweak the hash_add_buildid.exp/perf.exp testcases to avoid zombie processes.
David Smith [Fri, 8 Mar 2013 20:28:52 +0000 (14:28 -0600)]
Tweak the hash_add_buildid.exp/perf.exp testcases to avoid zombie processes.

11 years agosystemtap.spec: move some -server install scripting to %post
Frank Ch. Eigler [Fri, 8 Mar 2013 17:23:15 +0000 (12:23 -0500)]
systemtap.spec: move some -server install scripting to %post

Specifically, the creation of the ~stap-server/.systemtap/rc file
should be attempted only after the files/directories have been created
and the stap-server account made.  Also, rpm-visibly create the
~stap-server/.systemtap subdirectory.

11 years agotestsuite: impose stap --rlimit-cpu=300 throughout
Frank Ch. Eigler [Fri, 8 Mar 2013 04:27:39 +0000 (23:27 -0500)]
testsuite: impose stap --rlimit-cpu=300 throughout

Use the testsuite/.systemtap-*/rc file to impose cpu limits on stap
processes, considering PR15144 (which results in a spinning/hung
stapdyn child process).

11 years agostapdyn: Use the notification FD with Dyninst 8.1
Josh Stone [Thu, 7 Mar 2013 02:37:01 +0000 (18:37 -0800)]
stapdyn: Use the notification FD with Dyninst 8.1

11 years agoBZ863832 systemtap.spec, for useradd stap-server, don't use -m
Frank Ch. Eigler [Wed, 6 Mar 2013 21:02:15 +0000 (16:02 -0500)]
BZ863832 systemtap.spec, for useradd stap-server, don't use -m

The spec file now contains the %dir for %{_localstatedir}/stap-server,
so useradd need not attempt the mkdir at all.

11 years agoPR15237: adapt to hlist_* changes in linux 3.9
Frank Ch. Eigler [Wed, 6 Mar 2013 18:28:44 +0000 (13:28 -0500)]
PR15237: adapt to hlist_* changes in linux 3.9

* runtime/linux/autoconf-hlist-4args.c: New test.
* buildrun.cxx (compile_pass): Run it to set STAPCONF_HLIST_4ARGS.
* runtime/linux/runtime.h: Use it to define stap_hlist_* the old way
  or the new.
* runtime/*: Adapt by going through new stap_hlist* iterators.
* runtime/uprobes*/*: Don't bother adapting this old-kernel-only code base.

11 years agoregex testcase: run only if installtest_p
Frank Ch. Eigler [Wed, 6 Mar 2013 17:37:41 +0000 (12:37 -0500)]
regex testcase: run only if installtest_p

11 years agoAdd '-std=c++11' compile flag to stapdyn, required by latest dyninst.
David Smith [Mon, 4 Mar 2013 22:40:20 +0000 (16:40 -0600)]
Add '-std=c++11' compile flag to stapdyn, required by latest dyninst.

* stapdyn/Makefile.am: Added '-std=c++11' compile flag, required by dyninst.
* stapdyn/Makefile.in: Regenerated.
* stapdyn/dynsdt.cxx: C++11 mode requires spaces between concatenated
  strings.
* stapdyn/dynprobe.cxx: Change 'typeof' to '__typeof__', since 'typeof'
  doesn't exist in '-std=c++11' mode.
* stapdyn/mutator.cxx: Ditto.
* stapdyn/mutator.h: Ditto.
* testsuite/configure: Regenerated.

11 years agoblacklist more unsafe functions
Timo Juhani Lindfors [Thu, 28 Feb 2013 16:24:40 +0000 (18:24 +0200)]
blacklist more unsafe functions

These were found empirically. Some of the functions look innocent but
they are called from functions marked with __kprobes so they still
cause crashes. Further analysis is available at
https://lkml.org/lkml/2013/2/27/82 ("kprobing "hash_64.constprop.26"
crashes the system, recursion through get_kprobe?").

11 years agomanpager: fix warnings by adding breaks between SEE ALSO references
Timo Juhani Lindfors [Thu, 28 Feb 2013 11:19:13 +0000 (13:19 +0200)]
manpager: fix warnings by adding breaks between SEE ALSO references

This patch fixes the following warnings from man:

usr/share/man/man3/tapset::ansi.3stap.gz 99: warning [p 2, 1.8i]: cannot adjust line
usr/share/man/man3/tapset::context-unwind.3stap.gz 48: warning [p 1, 7.0i]: cannot adjust line
usr/share/man/man3/tapset::conversions-guru.3stap.gz 67: warning [p 1, 8.8i]: cannot adjust line
usr/share/man/man3/tapset::conversions.3stap.gz 109: warning [p 2, 3.5i]: cannot adjust line
usr/share/man/man3/tapset::inet_sock.3stap.gz 27: warning [p 1, 3.8i]: cannot adjust line
usr/share/man/man3/tapset::ioblock.3stap.gz 53: warning [p 1, 7.3i]: cannot adjust line
usr/share/man/man3/tapset::ioscheduler.3stap.gz 118: warning [p 2, 4.8i]: cannot adjust line
usr/share/man/man3/tapset::ipmib.3stap.gz 139: warning [p 2, 6.8i]: cannot adjust line
usr/share/man/man3/tapset::irq.3stap.gz 77: warning [p 1, 10.0i]: cannot adjust line
usr/share/man/man3/tapset::kprocess.3stap.gz 64: warning [p 1, 9.0i]: cannot adjust line
usr/share/man/man3/tapset::linuxmib.3stap.gz 43: warning [p 1, 5.8i]: cannot adjust line
usr/share/man/man3/tapset::memory.3stap.gz 142: warning [p 2, 7.7i]: cannot adjust line
usr/share/man/man3/tapset::netfilter.3stap.gz 75: warning [p 1, 10.7i]: cannot adjust line
usr/share/man/man3/tapset::networking.3stap.gz 134: warning [p 2, 6.2i]: cannot adjust line
usr/share/man/man3/tapset::nfs.3stap.gz 191: warning [p 3, 1.8i]: cannot adjust line
usr/share/man/man3/tapset::nfs_proc.3stap.gz 143: warning [p 2, 7.2i]: cannot adjust line
usr/share/man/man3/tapset::proc_mem.3stap.gz 139: warning [p 2, 7.3i]: cannot adjust line
usr/share/man/man3/tapset::queue_stats.3stap.gz 105: warning [p 2, 2.3i]: cannot adjust line
usr/share/man/man3/tapset::rpc.3stap.gz 163: warning [p 2, 9.8i]: cannot adjust line
usr/share/man/man3/tapset::scheduler.3stap.gz 143: warning [p 2, 7.2i]: cannot adjust line
usr/share/man/man3/tapset::signal.3stap.gz 290: warning [p 4, 4.2i]: cannot adjust line
usr/share/man/man3/tapset::socket.3stap.gz 206: warning [p 3, 5.2i]: cannot adjust line
usr/share/man/man3/tapset::stap_staticmarkers.3stap.gz 243: warning [p 3, 8.2i]: cannot adjust line
usr/share/man/man3/tapset::stopwatch.3stap.gz 67: warning [p 1, 8.8i]: cannot adjust line
usr/share/man/man3/tapset::target_set.3stap.gz 27: warning [p 1, 3.8i]: cannot adjust line
usr/share/man/man3/tapset::task.3stap.gz 161: warning [p 2, 9.0i]: cannot adjust line
usr/share/man/man3/tapset::task_time.3stap.gz 98: warning [p 2, 2.2i]: cannot adjust line
usr/share/man/man3/tapset::tcp.3stap.gz 90: warning [p 2, 0.8i]: cannot adjust line
usr/share/man/man3/tapset::tcpmib.3stap.gz 123: warning [p 2, 4.8i]: cannot adjust line
usr/share/man/man3/tapset::timestamp_gtod.3stap.gz 43: warning [p 1, 5.8i]: cannot adjust line
usr/share/man/man3/tapset::timestamp_monotonic.3stap.gz 79: warning [p 1, 10.2i]: cannot adjust line
usr/share/man/man3/tapset::ucontext-unwind.3stap.gz 35: warning [p 1, 5.0i]: cannot adjust line
usr/share/man/man3/tapset::uconversions.3stap.gz 253: warning [p 3, 10.7i]: cannot adjust line
usr/share/man/man3/tapset::udp.3stap.gz 66: warning [p 1, 9.3i]: cannot adjust line

11 years agoMakefile.in: regenerate
Timo Juhani Lindfors [Thu, 28 Feb 2013 11:19:12 +0000 (13:19 +0200)]
Makefile.in: regenerate

11 years agoMakefile.am: don't install html *.tmpl files
Timo Juhani Lindfors [Thu, 28 Feb 2013 11:19:11 +0000 (13:19 +0200)]
Makefile.am: don't install html *.tmpl files

The files

/usr/share/doc/systemtap-client-2.2/examples/html/html_header.tmpl
/usr/share/doc/systemtap-client-2.2/examples/html/html_footer.tmpl

are completely unnecessary to the end-user.

11 years agostapdyn: add LDADD=-lpthread
Frank Ch. Eigler [Mon, 4 Mar 2013 15:39:18 +0000 (10:39 -0500)]
stapdyn: add LDADD=-lpthread

It seems some stapdyn-* objects make mysterious refs to pthreads
(due to __GTHREADS coming to be defined in std::string<> somehow).

11 years agoPR 15193: assigned_user_credentials = pr_stapdev
Dave Brolley [Thu, 28 Feb 2013 19:12:00 +0000 (14:12 -0500)]
PR 15193: assigned_user_credentials = pr_stapdev

Assign a privilege level of pr_all (was pr_stapdev) to the user
when loading a module from /lib/modules/`uname -r`/systemtap.

11 years agoFix PR15211 by updating the testsuite for kernel 3.8.
David Smith [Thu, 28 Feb 2013 16:50:18 +0000 (10:50 -0600)]
Fix PR15211 by updating the testsuite for kernel 3.8.

* testsuite/systemtap.syscall/openclose.c: Handle 'creat()' being mapped
  to 'creat()' or 'open(FILE, O_CREAT)' in the kernel.
* testsuite/systemtap.syscall/stat.c: Ditto.
* testsuite/systemtap.syscall/test.tcl: Map '!!!!' to '|'.
* testsuite/systemtap.syscall/README: Document the new '!!!!' substitute
  for '|'.

11 years agodoc/tutorial.tex: Use ppfunc() instead of probefunc() in examples.
Mark Wielaard [Thu, 28 Feb 2013 15:45:06 +0000 (16:45 +0100)]
doc/tutorial.tex: Use ppfunc() instead of probefunc() in examples.

11 years agoadieu runtime/bench2
Frank Ch. Eigler [Wed, 27 Feb 2013 21:16:11 +0000 (16:16 -0500)]
adieu runtime/bench2

This was a runtime performance benchmarking suite, not needed/used in years.

11 years agotapset/test, adieu
Frank Ch. Eigler [Wed, 27 Feb 2013 21:14:53 +0000 (16:14 -0500)]
tapset/test, adieu

This was a very old testsuite, not needed nor used in years.

11 years agostap-report: also look for vmlinux under /lib/modules/.../build
Frank Ch. Eigler [Wed, 27 Feb 2013 19:58:05 +0000 (14:58 -0500)]
stap-report: also look for vmlinux under /lib/modules/.../build

11 years agoFix PR15197 by updating syscall.fork/nd_syscall.fork to handle the 3.8 kernel.
David Smith [Wed, 27 Feb 2013 17:40:07 +0000 (11:40 -0600)]
Fix PR15197 by updating syscall.fork/nd_syscall.fork to handle the 3.8 kernel.

* tapset/linux/syscalls.stp: Handle removal of the 'regs' argument to
  do_fork() in kernel 3.8.0. Deprecate the 'regs' variable.
* tapset/linux/nd_syscalls.stp: Ditto.
* testsuite/buildok/syscalls-detailed.stp: Handle 'regs' variable deprecation.
* testsuite/buildok/nd_syscalls-detailed.stp: Ditto.
* NEWS: Mention deprecations.

11 years agoPR15177 fix: RHEL4 doesn't define SEEK_{SET,CUR,END} in kernel headers.
David Smith [Wed, 27 Feb 2013 16:05:30 +0000 (10:05 -0600)]
PR15177 fix:  RHEL4 doesn't define SEEK_{SET,CUR,END} in kernel headers.

* tapset/linux/aux_syscalls.stp: Define SEEK_{SET,CUR,END} if not defined.

11 years agoconfigure/Makefile: regenerate
Timo Juhani Lindfors [Mon, 25 Feb 2013 13:41:18 +0000 (15:41 +0200)]
configure/Makefile: regenerate

11 years agoMakefile.am: remove temporary symlinks in distclean
Timo Juhani Lindfors [Mon, 25 Feb 2013 13:41:20 +0000 (15:41 +0200)]
Makefile.am: remove temporary symlinks in distclean

11 years agoconfigure.ac: remove temporary file after test
Timo Juhani Lindfors [Mon, 25 Feb 2013 13:41:18 +0000 (15:41 +0200)]
configure.ac: remove temporary file after test

11 years agoFix PR15198 by handling new kernel option CONFIG_GENERIC_SIGALTSTACK.
David Smith [Tue, 26 Feb 2013 20:21:00 +0000 (14:21 -0600)]
Fix PR15198 by handling new kernel option CONFIG_GENERIC_SIGALTSTACK.

* tapset/linux/syscalls2.stp: Added generic 'sigaltstack' probe alias for
  when CONFIG_GENERIC_SIGALTSTACK is set.
* tapset/linux/nd_syscalls2.stp: Ditto.
* tapset/linux/s390/nd_syscalls.stp: Added 'nd_syscall.sigaltstack',
  'nd_syscall.sigaltstack.return', 'nd_syscall.sys32_sigaltstack', and
  'nd_syscall.sys32_sigaltstack.return' probe aliases.
* tapset/linux/i386/syscalls.stp: Only use arch-specific 'sigaltstack'
  probe alias if CONFIG_GENERIC_SIGALTSTACK isn't set. Deprecate 'regs'
  variable.
* tapset/linux/ia64/syscalls.stp: Ditto.
* tapset/linux/powerpc/nd_syscalls.stp: Ditto.
* tapset/linux/powerpc/syscalls.stp: Ditto.
* tapset/linux/s390/syscalls.stp: Ditto.
* tapset/linux/x86_64/nd_syscalls.stp: Ditto.
* tapset/linux/x86_64/syscalls.stp: Ditto.
* tapset/linux/i386/nd_syscalls.stp: Only use arch-specific 'sigaltstack'
  probe alias if CONFIG_GENERIC_SIGALTSTACK isn't set.
* tapset/linux/ia64/nd_syscalls.stp: Ditto.
* testsuite/buildok/syscalls-arch-detailed.stp: Only test
  the arch-specific 'sigaltstack' probe alias if
  CONFIG_GENERIC_SIGALTSTACK is not set. Handle 'regs' deprecation.
* testsuite/buildok/syscalls-arch-detailed.stp: Ditto.
* testsuite/buildok/syscalls2-detailed.stp: Added generic 'sigaltstack'
  probe alias test for when CONFIG_GENERIC_SIGALTSTACK is set.
* testsuite/buildok/nd_syscalls2-detailed.stp: Ditto.
* NEWS: Mention 'regs' deprecation.

11 years agoFix cp option in update-docs
Lukas Berk [Tue, 26 Feb 2013 17:09:00 +0000 (12:09 -0500)]
Fix cp option in update-docs

*scripts/update-docs - cp -R not cp -r

11 years agoFix PR15177 by handling new 'whence' values SEEK_DATA and SEEK_HOLE.
David Smith [Mon, 25 Feb 2013 17:19:15 +0000 (11:19 -0600)]
Fix PR15177 by handling new 'whence' values SEEK_DATA and SEEK_HOLE.

* tapset/linux/aux_syscalls.stp (_seek_whence_str): Updated to handle
  SEEK_DATA and SEEK_HOLE.
* tapset/linux/nfs.stp (nfs.fop.llseek): Changed comment to remove
  description of individual 'whence' values.

11 years agoloc2c-test - prepending '@' before a function name returns breakpoint entry
Lukas Berk [Mon, 25 Feb 2013 15:20:40 +0000 (10:20 -0500)]
loc2c-test - prepending '@' before a function name returns breakpoint entry

*loc2c-test.c - check for '@' character, and alter which entry point address
        is used.

11 years agostappaths.7: eschew spaced-out period
Frank Ch. Eigler [Sat, 23 Feb 2013 22:55:49 +0000 (00:55 +0200)]
stappaths.7: eschew spaced-out period

11 years agoAdd missing "#!/usr/bin/env stap" to some examples
Timo Juhani Lindfors [Sat, 23 Feb 2013 22:55:49 +0000 (00:55 +0200)]
Add missing "#!/usr/bin/env stap" to some examples

11 years agoman stappaths.7: properly escape dot in the beginning of the line
Timo Juhani Lindfors [Sat, 23 Feb 2013 22:55:50 +0000 (00:55 +0200)]
man stappaths.7: properly escape dot in the beginning of the line

The zero-width control character ensures that the dot is not treated
as a control character. This fixes the following Debian lintian
warning:

W: systemtap-doc: manpage-has-errors-from-man usr/share/man/man7/stappaths.7.gz 61: warning: macro `Elfutils' not defined

11 years agoAdd missing executable bit to example scripts
Timo Juhani Lindfors [Sat, 23 Feb 2013 22:55:51 +0000 (00:55 +0200)]
Add missing executable bit to example scripts

11 years agoman: escape quote properly in header
Timo Juhani Lindfors [Sat, 23 Feb 2013 22:55:52 +0000 (00:55 +0200)]
man: escape quote properly in header

Without this patch

LC_ALL=en_US.UTF-8 MANROFFSEQ='' MANWIDTH=80 man --warnings -E UTF-8 -l -Tutf8 -Z /usr/share/man/man3/tapset::ansi.3stap.gz >/dev/null

prints

<standard input>:1: warning: macro `"' not defined

11 years agoman stapprobes.3stap: escape minus sign properly
Timo Juhani Lindfors [Sat, 23 Feb 2013 22:55:47 +0000 (00:55 +0200)]
man stapprobes.3stap: escape minus sign properly

11 years agoremove executable bit from stapgames tapset
Timo Juhani Lindfors [Sat, 23 Feb 2013 22:55:48 +0000 (00:55 +0200)]
remove executable bit from stapgames tapset

Files in a tapset can not be executed so the bit serves no purpose.

11 years agoman stap.1: fix typo
Timo Juhani Lindfors [Sat, 23 Feb 2013 22:55:46 +0000 (00:55 +0200)]
man stap.1: fix typo

11 years agoman stap.1: escape minus sign properly
Timo Juhani Lindfors [Sat, 23 Feb 2013 22:55:45 +0000 (00:55 +0200)]
man stap.1: escape minus sign properly

11 years agoActually deprecate items marked as deprecated in vfs.stp.
David Smith [Fri, 22 Feb 2013 20:34:48 +0000 (14:34 -0600)]
Actually deprecate items marked as deprecated in vfs.stp.

* tapset/linux/vfs.stp: Several items in vfs.stp had a comment saying they
  were deprecated. Acutally make it happen. Deprecate the 'ppos_pos',
  '_dev_minor', and '_dev_major' functions. Deprecate the 'page_index'
  variable in the 'vfs.block_sync_page' and 'vfs.buffer_migrate_page'
  probe aliases. Deprecate the 'write_from' and 'write_upto' variables in
  the '_vfs.block_prepare_write' and '_vfs.block_prepare_write.return'
  probe aliases.
* testsuite/buildok/vfs-embedded.stp: Handle 'ppos_pos' deprecation.
* testsuite/systemtap.examples/io/iodevstats.stp: Switch from deprecated
  '_dev_minor' and '_dev_major' functions to supported 'MINOR' and 'MAJOR'
  functions.
* NEWS: Mention deprecations.

11 years agoFix PR15173 by handling 'origin' change to 'whence'.
David Smith [Fri, 22 Feb 2013 20:14:45 +0000 (14:14 -0600)]
Fix PR15173 by handling 'origin' change to 'whence'.

* tapset/linux/syscalls.stp (syscall.lseek): Handles new kernels where
  'origin' has been renamed to 'whence'.
  (syscall.llseek): Ditto.
* tapset/linux/nfs.stp (nfs.fop.llseek): Deprecated 'origin' and added
  'whence' and 'whence_str'. Updated comment.
* tapset/linux/;vfs.stp (generic.fop.llseek): Ditto.
  (generic.fop.llseek.return): Ditto.
* tapset/linux/nd_syscalls.stp: Updated comment.
* testsuite/buildok/nfs-detailed.stp: Updated.
* testsuite/buildok/vfs-detailed.stp: Ditto.
* NEWS: Mention deprecations.

11 years agoFix PR15171 by updating the inet_get_local_port() tapset function.
David Smith [Thu, 21 Feb 2013 21:53:23 +0000 (15:53 -0600)]
Fix PR15171 by updating the inet_get_local_port() tapset function.

* tapset/linux/inet_sock.stp (inet_get_local_port): Handle kernel changes.

11 years agoKfail fortyseven.stp in testsuite/systemtap.pass1-4/buildok.exp (PR15065).
David Smith [Thu, 21 Feb 2013 21:40:01 +0000 (15:40 -0600)]
Kfail fortyseven.stp in testsuite/systemtap.pass1-4/buildok.exp (PR15065).

11 years agoFixed PR15170 by updating nfsd.stp.
David Smith [Thu, 21 Feb 2013 20:36:53 +0000 (14:36 -0600)]
Fixed PR15170 by updating nfsd.stp.

* tapset/linux/nfsd.stp (nfsd.proc4.write): When setting, 'vlen', if the
  'wr_vlen' field doesn't exist, just return 0.

11 years agopowerpc/aux_syscalls.stp: Define old/deprecated PPC_PTRACE_GET/SET[FP]REGS.
Mark Wielaard [Thu, 21 Feb 2013 13:05:22 +0000 (14:05 +0100)]
powerpc/aux_syscalls.stp: Define old/deprecated PPC_PTRACE_GET/SET[FP]REGS.

kernel commit v3.4-rc5-40-gec34a68 removed them.

Signed-off-by: Mark Wielaard <mjw@redhat.com>
11 years agonsscommon: Include config.h before all else
Josh Stone [Wed, 20 Feb 2013 18:52:56 +0000 (10:52 -0800)]
nsscommon: Include config.h before all else

On 32-bit systems, we need to ensure _FILE_OFFSET_BITS is set to 64
before any system headers are included.

11 years agotestsuite: suppress libloop.c unused-results warning
Frank Ch. Eigler [Wed, 20 Feb 2013 16:12:56 +0000 (11:12 -0500)]
testsuite: suppress libloop.c unused-results warning

11 years agotestsuite: plt.exp should add -Wno-format since it uses printf("%W")
Frank Ch. Eigler [Wed, 20 Feb 2013 15:58:29 +0000 (10:58 -0500)]
testsuite: plt.exp should add -Wno-format since it uses printf("%W")

11 years agotestsuite: move semko/fiftyone.stp to parseko/, where it belongs
Frank Ch. Eigler [Wed, 20 Feb 2013 15:57:59 +0000 (10:57 -0500)]
testsuite: move semko/fiftyone.stp to parseko/, where it belongs

11 years agotranslator: tolerate unavailable System.map
Frank Ch. Eigler [Wed, 20 Feb 2013 02:00:04 +0000 (21:00 -0500)]
translator: tolerate unavailable System.map

On some linux distros, the System.map file is unreadable to unprivileged
users.  systemtap should not overreact to this and assume that the whole
kernel-devel/header world is uninstalled.  Just print a warning and move on.

* session.cxx (systemtap_session::parse_kernel_functions): Tolerate missing
  info.

11 years agostap-report: add some ubuntu-specific data, plus a WARNING for non-root
Frank Ch. Eigler [Wed, 20 Feb 2013 01:52:55 +0000 (20:52 -0500)]
stap-report: add some ubuntu-specific data, plus a WARNING for non-root

11 years agoPR15162: Bump MAX_UNWIND_TABLE_SIZE to 16MB
Josh Stone [Tue, 19 Feb 2013 17:46:14 +0000 (09:46 -0800)]
PR15162: Bump MAX_UNWIND_TABLE_SIZE to 16MB

11 years agoPR15155 partial fix: Added more sendmmsg syscall support.
David Smith [Tue, 19 Feb 2013 17:21:38 +0000 (11:21 -0600)]
PR15155 partial fix: Added more sendmmsg syscall support.

* tapset/linux/syscalls2.stp: Fixed typo in syscall.sendmmsg.
* tapset/linux/nd_syscalls2.stp: Added nd_syscall.sendmmsg and
  nd_syscall.sendmmsg.return probe aliases.
* testsuite/buildok/nd_syscalls2-detailed.stp: Added nd_syscall.sendmmsg
  and nd_syscall.sendmmsg.return tests.
* testsuite/buildok/syscalls2-detailed.stp: Added syscall.sendmmsg and
  syscall.sendmmsg.return tests.

11 years agoPR15162: Don't output anything at all for skipped unwind tables
Josh Stone [Tue, 19 Feb 2013 01:55:46 +0000 (17:55 -0800)]
PR15162: Don't output anything at all for skipped unwind tables

* translate.cxx (dump_unwindsym_cxt_table): New common function to
  output an unwind table.  It checks against MAX_UNWIND_TABLE_SIZE and
  nulls out those that are skipped, so they're truly skipped everywhere.
  (dump_unwindsym_cxt): Use dump_unwindsym_cxt_table for all four unwind
  tables: debug_frame, debug_frame_hdr, eh_frame, and eh_frame_hdr.

11 years agoPR15155 Add syscall.sendmmsg and syscall.sendmmsg.return
Mark Wielaard [Tue, 19 Feb 2013 16:06:37 +0000 (17:06 +0100)]
PR15155 Add syscall.sendmmsg and syscall.sendmmsg.return

11 years agoPR11341: Fix two improper update_visitor assignments
Josh Stone [Sat, 16 Feb 2013 20:26:04 +0000 (12:26 -0800)]
PR11341: Fix two improper update_visitor assignments

Both are cases where a too-specific require<target_symbol> was used,
inferred by the parameter type.  The result is immediately saved as a
generic expression pointer, so require<expression> is appropriate.

I believe this case is such that there was actually no harm caused here
by the formerly blithe static_cast, but it's still nice to see that such
improprieties are now detected.

11 years agoPR11341: Add type safety to update_visitor::require()
Josh Stone [Sat, 16 Feb 2013 03:05:25 +0000 (19:05 -0800)]
PR11341: Add type safety to update_visitor::require()

This uses dynamic_cast<T*> to make a runtime check that the pointer that
was given to update_visitor::provide() is compatible with what the
caller required.  Such a cast can't be used on void*, so the ::stack is
now composed of 'visitable' pointers - a new base class for expressions
and statements.

In the process, 'indexable' is now also brought into the expression
hierarchy.  This looks a little odd since hist_op isn't really an
expression on its own, but otherwise this change untangles a lot of code
trying to deal with hist_op as an outlier, especially visit and print.

* staptree.h (update_visitor::require): Use dynamic_cast<> instead of a
  dangerous static_cast<>, and throw exceptions for bad cases.
  (struct visitable): New base class for expression and statement.
  (struct indexable): Use expression as a base class, and get rid of the
  now-unnecessary visit/print/tok middleman methods.
* staptree.cxx: Use direct indexable->visit/print/tok throughout.
* elaborate.cxx, parse.cxx: Ditto.

11 years agosystemtap.spec: hard-code systemtap instead of most usese of %{name}
Frank Ch. Eigler [Fri, 15 Feb 2013 21:41:19 +0000 (16:41 -0500)]
systemtap.spec: hard-code systemtap instead of most usese of %{name}

... since we'll never change the project name, ever, ever, ever.
(And those special software-collection builds that do change %{name},
we don't want effecting these derived rpm strings, mostly.)

11 years agoStill install systemtap rc.d files when systemd is enabled
Lukas Berk [Fri, 15 Feb 2013 21:44:23 +0000 (16:44 -0500)]
Still install systemtap rc.d files when systemd is enabled

*systemtap.spec: remove systemtap portions from 'with_systemd'
 conditionals so they are still installed even if
 stap-server is using systemd.  They should not be
 combined.

11 years agoloc2c-test lists functions and associated addresses if no address given
Lukas Berk [Fri, 15 Feb 2013 20:04:40 +0000 (15:04 -0500)]
loc2c-test lists functions and associated addresses if no address given

*loc2c-test: if no address is given, list all functions with their
     dwarf_entrypc address along with any
             dwarf_entry_breakpoints

11 years agoregex: Declare the dfa static and its input const
Josh Stone [Thu, 14 Feb 2013 18:00:15 +0000 (10:00 -0800)]
regex: Declare the dfa static and its input const

11 years agoAbstract the synthesizing of deref functions
Josh Stone [Thu, 14 Feb 2013 03:54:13 +0000 (19:54 -0800)]
Abstract the synthesizing of deref functions

Frank first noted the duplication in how we synthesize functions for
derefs, and I found there were four sites doing nearly the same thing.
A quick bit of abstraction relieves this.

* tapsets.cxx (synthetic_embedded_deref_call): New common code to create
  a functiondecl for a code block and the functioncall to use it.
  (dwarf_pretty_print::deref, dwarf_cast_query::handle_query_module,
   tracepoint_var_expanding_visitor::visit_target_symbol_arg,
   dwarf_var_expanding_visitor::visit_target_symbol): Use it.

11 years agoPR15147: clarify comments about _stp_error internal runtime function
Frank Ch. Eigler [Wed, 13 Feb 2013 23:09:02 +0000 (18:09 -0500)]
PR15147: clarify comments about _stp_error internal runtime function

11 years agoPR15148, speculatively drop the PR15123-conflicting assert
Frank Ch. Eigler [Wed, 13 Feb 2013 22:56:52 +0000 (17:56 -0500)]
PR15148, speculatively drop the PR15123-conflicting assert

11 years agoPR15044 partial fix: Raise real errors instead of returning error texts.
David Smith [Wed, 13 Feb 2013 22:28:22 +0000 (16:28 -0600)]
PR15044 partial fix: Raise real errors instead of returning error texts.

* tapset/dyninst/ctime.stp: Instead of returning "cutesy" error texts,
  raise a real error.
* tapset/linux/context-symbols.stp: Ditto.
* tapset/linux/ctime.stp: Ditto.
* testsuite/systemtap.base/ctime.exp: Make test handle "cutesy" error
  tests or real errors.
* testsuite/systemtap.base/ctime.stp: Ditto.
* NEWS: Mention deprecations.

11 years agosystemtap.spec: cover up tracks of time travel
Frank Ch. Eigler [Wed, 13 Feb 2013 19:54:25 +0000 (14:54 -0500)]
systemtap.spec: cover up tracks of time travel

11 years agoversion bumps for SystemTap 2.2 development cycle
Serguei Makarov [Wed, 13 Feb 2013 18:15:59 +0000 (13:15 -0500)]
version bumps for SystemTap 2.2 development cycle

11 years agoMISSING FOR 2.1 -- %changelog entry for systemtap.spec
Serguei Makarov [Wed, 13 Feb 2013 17:47:09 +0000 (12:47 -0500)]
MISSING FOR 2.1 -- %changelog entry for systemtap.spec

11 years agorelease date in NEWS release-2.1
Serguei Makarov [Wed, 13 Feb 2013 16:36:11 +0000 (11:36 -0500)]
release date in NEWS

11 years agomake update-po for release-2.1
Serguei Makarov [Wed, 13 Feb 2013 15:47:08 +0000 (10:47 -0500)]
make update-po for release-2.1

11 years agoPR15101, dummy commit to correct authorship credit
Lukáš Hejtmánek [Wed, 13 Feb 2013 15:24:58 +0000 (10:24 -0500)]
PR15101, dummy commit to correct authorship credit

11 years agotestsuite: weaken pr10854.exp wildcards due to less stable 3.8.0-rc7 kprobes
Frank Ch. Eigler [Wed, 13 Feb 2013 06:28:26 +0000 (01:28 -0500)]
testsuite: weaken pr10854.exp wildcards due to less stable 3.8.0-rc7 kprobes

See also https://bugzilla.redhat.com/show_bug.cgi?id=910649

11 years agotcp tapset: adjust to inet_sock->dport move
Frank Ch. Eigler [Wed, 13 Feb 2013 05:25:52 +0000 (00:25 -0500)]
tcp tapset: adjust to inet_sock->dport move

As per linux commit ce43b03e88, ->inet_dport
was moved to                    ->sk->__sk_common->skc_dport

11 years agotestsuite: use /usr/bin/sleep instead of tcl [after NN] to sleep
Frank Ch. Eigler [Wed, 13 Feb 2013 04:36:34 +0000 (23:36 -0500)]
testsuite: use /usr/bin/sleep instead of tcl [after NN] to sleep

... for the former tolerates jumpy wall-clock time, the latter doesn't.

11 years agoscript examples: regen indexes
Frank Ch. Eigler [Wed, 13 Feb 2013 03:51:32 +0000 (22:51 -0500)]
script examples: regen indexes

11 years agoPR15123: work around broken gcc debuginfo for -mfentry functions
Frank Ch. Eigler [Wed, 13 Feb 2013 02:32:30 +0000 (21:32 -0500)]
PR15123: work around broken gcc debuginfo for -mfentry functions

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54793 interferes with the
calm zen-like state of probing function parameters in programs built
with CFLAGS=-mfentry, due to a dwarf location-list problem.  This
patch adds a heuristic function dwflpp::pr15123_retry_addr() that
offers callers a post-mfentry-address alternative for locating
variables.  Will they use it, or not?  Join us next week, as our
heroes encounter ... angry mr. dwarf, five steps away.

* dwflpp.cxx (pr15123_retry_addr): New function.
  (translate_location): Call it, in order to enable $var
  and $$parms resolution.
* tapsets.cxx (saveargs): Call it, in order to enable
  stap -L <probe> listings.

11 years agovim: Expand target matching
Josh Stone [Tue, 12 Feb 2013 22:33:49 +0000 (14:33 -0800)]
vim: Expand target matching

- Allow multiple '$' prefix characters for e.g. $$vars
- Allow '$' suffix characters for pretty-printing

11 years agoNEWS: Brag about more stapdyn improvements
Josh Stone [Tue, 12 Feb 2013 22:19:27 +0000 (14:19 -0800)]
NEWS: Brag about more stapdyn improvements

11 years agoAdd missing 'output' fields to couple of systemtap.examples.
Serguei Makarov [Tue, 12 Feb 2013 21:43:06 +0000 (16:43 -0500)]
Add missing 'output' fields to couple of systemtap.examples.

11 years agoRHBZ 906061, PR15112: Fix handling of scope specifiers/ids for IPv6 addresses.
Dave Brolley [Tue, 12 Feb 2013 19:33:26 +0000 (14:33 -0500)]
RHBZ 906061, PR15112: Fix handling of scope specifiers/ids for IPv6 addresses.

- Do not assume a scope specifier of "%eth0" when one is not specified.
- Copy the scope_id to addresses which don't have one when merging server
  information.
- Provide additional diagnostic when a link-local IPv6 address is used
  without a scope specifier.
- Don't reqauire a server specified by address and port to be previously known
  by avahi.
- Add informational messages tracing server resolution at various -v levels.

11 years agoData object (-d) cannot be empty.
Mark Wielaard [Tue, 12 Feb 2013 16:05:07 +0000 (17:05 +0100)]
Data object (-d) cannot be empty.

11 years agostap: Add shorthand option --dyninst for --runtime=dyninst
Josh Stone [Mon, 11 Feb 2013 22:30:48 +0000 (14:30 -0800)]
stap: Add shorthand option --dyninst for --runtime=dyninst

* cmdline.cxx: Define --dyninst as LONG_OPT_RUNTIME_DYNINST.
* session.cxx (systemtap_session::parse_cmdline_runtime): Pull out the
  code to set the runtime option.
  (systemtap_session::parse_cmdline): Use parse_cmdline_runtime for both
  LONG_OPT_RUNTIME and LONG_OPT_RUNTIME_DYNINST.
  (systemtap_session::usage): Document --dyninst.
* man/stap.1: Document --dyninst.

11 years agostapdyn documentation updates
Josh Stone [Mon, 11 Feb 2013 22:09:45 +0000 (14:09 -0800)]
stapdyn documentation updates

* stapdyn/README: Refresh with more current information.
* man/error::pass5.7stap: Add a note about Dyninst vs exceptions.

11 years agostapdyn: Initialize _stp_random_u from /dev/urandom
Josh Stone [Sat, 9 Feb 2013 01:59:53 +0000 (17:59 -0800)]
stapdyn: Initialize _stp_random_u from /dev/urandom

11 years agostapdyn: Validate that probe flags are known
Josh Stone [Fri, 8 Feb 2013 20:58:56 +0000 (12:58 -0800)]
stapdyn: Validate that probe flags are known

If we see unknown flags, we don't want to do the wrong thing with a
probe.  So just warn about it and move on without it.

* runtime/dyninst/stapdyn.h: Introduce STAPDYN_PROBE_ALL_FLAGS combining
  all the currently-known flags.  Also, shift the values of the utracey
  flags to leave some room for more uprobey flags.
* stapdyn/dynprobe.cxx (dynprobe_location::validate): New, make sanity
  check on the probe.  For now, this just means checking that the flags
  are within those we know about.

11 years agoPR11334: last-minute character class tweaks.
Serguei Makarov [Fri, 8 Feb 2013 19:24:22 +0000 (14:24 -0500)]
PR11334: last-minute character class tweaks.

These fix a couple of errors in how small inverted character classes were handled.
e.g. [^a] and such

11 years agostap-report: don't heartlessly destroy incoming $PATH
Frank Ch. Eigler [Fri, 8 Feb 2013 12:32:53 +0000 (07:32 -0500)]
stap-report: don't heartlessly destroy incoming $PATH

11 years agoerror::pass5, mention more permission-related causes for failure
Frank Ch. Eigler [Thu, 7 Feb 2013 20:37:57 +0000 (15:37 -0500)]
error::pass5, mention more permission-related causes for failure

11 years agostapdyn: Make sure interprocess maps share hash seeds
Josh Stone [Fri, 8 Feb 2013 00:43:21 +0000 (16:43 -0800)]
stapdyn: Make sure interprocess maps share hash seeds

We were using a random stap_hash_seed that was initialized separately in
each process.  This meant that different processes would compute
different hashes for the same keys.  Now the hash seed is stored in the
shared memory, so all participating processes can use maps together.

* runtime/dyninst/common_session_state.h: Add the hash seed to struct
  stp_runtime_session, and provide _stap_hash_seed() to read it.
  Initialize it one time only in stp_session_init().
* runtime/dyninst/runtime.h: Define the former stap_hash_seed to use
  _stap_hash_seed() from shared memory instead.
* testsuite/systemtap.maps/map_hash_interprocess.*: Test the specific
  interprocess, manually-keyed conditions that revealed the bug.

11 years agostapdyn: Seed _stp_random_u with more "precision"
Josh Stone [Thu, 7 Feb 2013 23:42:47 +0000 (15:42 -0800)]
stapdyn: Seed _stp_random_u with more "precision"

Use clock_gettime() rather than time().  It's still not necessarily
great to seed from a time-based source, but at least nanosecond
resolution is a little better.

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