]> sourceware.org Git - systemtap.git/log
systemtap.git
10 years agolisting_mode.exp: new testcase
Jonathan Lebon [Mon, 12 May 2014 21:01:20 +0000 (17:01 -0400)]
listing_mode.exp: new testcase

10 years agolisting_mode.exp: rename to listing_mode_sanity.exp
Jonathan Lebon [Mon, 12 May 2014 20:59:28 +0000 (16:59 -0400)]
listing_mode.exp: rename to listing_mode_sanity.exp

10 years agond_syscall.exp: fix SYSTEMTAP_DEBUGINFO_PATH override
Jonathan Lebon [Mon, 26 May 2014 21:34:27 +0000 (17:34 -0400)]
nd_syscall.exp: fix SYSTEMTAP_DEBUGINFO_PATH override

This is a follow-up to commit 27ce133. Tcl's exec proc can't handle env
var setting as part of its args:

couldn't execute "SYSTEMTAP_DEBUGINFO_PATH=/dev/null": no such file or
directory
FAIL: testsuite/systemtap.syscall/nd_sys.stp compilation

We need to explicitly manipulate the env array to set the
SYSTEMTAP_DEBUGINFO_PATH and then restore it afterwards if needed.

10 years agoImprove BZ16956 by testing nd_syscall tapset without debuginfo.
David Smith [Wed, 21 May 2014 20:21:41 +0000 (15:21 -0500)]
Improve BZ16956 by testing nd_syscall tapset without debuginfo.

* testsuite/systemtap.syscall/nd_syscall.exp: Make sure the nd_syscall
  tapset isn't using debuginfo by setting SYSTEMTAP_DEBUGINFO_PATH to
  /dev/null.

10 years agoFix BZ16960 by handling !CONFIG_USER_NS better.
David Smith [Wed, 21 May 2014 19:09:41 +0000 (14:09 -0500)]
Fix BZ16960 by handling !CONFIG_USER_NS better.

* buildrun.cxx (compile_pass): Convert the from_kuid_munged() test to a
  compile test, instead of an export test.
* runtime/linux/runtime.h: Restore original CONFIG_USER_NS support.
* runtime/linux/autoconf-from_kuid_munged.c: New autoconf test.

10 years agolinux runtime: switch to vmalloc for context[] element allocation
Frank Ch. Eigler [Wed, 21 May 2014 17:43:48 +0000 (13:43 -0400)]
linux runtime: switch to vmalloc for context[] element allocation

The new eventcount.stp changes can result in relatively large context
structures (33712 bytes each on f19/x86-64), which the stp_kmalloc
widget can sometimes fail to allocate.  Switching to the numa-aware
vmalloc front-end lets these allocations succeed.

TBD: those contexts shouldn't be that large.

10 years agoeventcount.stp sample: add some more sorting options, config disclosure
Frank Ch. Eigler [Wed, 21 May 2014 17:11:26 +0000 (13:11 -0400)]
eventcount.stp sample: add some more sorting options, config disclosure

10 years agostapprobes.3stap: highlight obsolete nature of kernel.mark probes
Frank Ch. Eigler [Wed, 21 May 2014 13:20:28 +0000 (09:20 -0400)]
stapprobes.3stap: highlight obsolete nature of kernel.mark probes

10 years agoPR16955: adapt testsuite
Jonathan Lebon [Sun, 18 May 2014 19:29:03 +0000 (15:29 -0400)]
PR16955: adapt testsuite

- pr10854.exp: use -w to suppress warnings re. blacklisted functions
- rlimit.exp: ditto

10 years agoPR16955: improve blacklisting diagnostics
Jonathan Lebon [Fri, 16 May 2014 20:48:26 +0000 (16:48 -0400)]
PR16955: improve blacklisting diagnostics

Create a new enum to describe the reason why the function was
blacklisted. In dwarf_query::add_probe_point(), emit a warning if
blacklisted.

10 years agolinux/runtime.h: more CONFIG_USER_NS fallout
Frank Ch. Eigler [Sat, 17 May 2014 20:15:01 +0000 (16:15 -0400)]
linux/runtime.h: more CONFIG_USER_NS fallout

Partially unrolling commit 7d35a948401, because on modern kernels
(3.14+), the from_k?id_munged functions are defined as inlines, and
should be used regardless of CONFIG_USER_NS etc.  The buildrun.cxx
exportedness test for from_kuid_munged would fail, triggering our
runtime to use a do-nothing macro instead.

Until a more programmatic way is found for those unidentified older
kernels that have CONFIG_USER_NS but no from_k?id_munged inlines,
for now a user will have to work around the build problem with

  % stap -DSTAP_FAKE_KID_MUNGED

10 years agoMore linux 3.14 porting, sans CONFIG_USER_NS
Frank Ch. Eigler [Sat, 17 May 2014 19:36:46 +0000 (15:36 -0400)]
More linux 3.14 porting, sans CONFIG_USER_NS

This time, cover the remaining tapset/runtime stuff.

10 years agoPR16956: add "kernel<linux/types.h>" to all nd_syscall.* @cast ops
Frank Ch. Eigler [Sat, 17 May 2014 16:54:37 +0000 (12:54 -0400)]
PR16956: add "kernel<linux/types.h>" to all nd_syscall.* @cast ops

We can't take blood from stone - dwarf from a kernel whom we are
targeting for non-dwarf processing.  So generate dwarf from the
headers if necessary.

10 years agowarn about missing kernel symbol table
Frank Ch. Eigler [Sat, 17 May 2014 16:31:46 +0000 (12:31 -0400)]
warn about missing kernel symbol table

On some distros (e.g., arch linux), no System.map* file survives the
build process, but there may be ways to fabricate doppelgangers.

* session.cxx (systemtap_session::parse_kernel_functions): Warn if
  none found.
* warning::symbols: new man page
* warning::debuginfo: xref.

10 years agosession: don't suppress warnings in dump mode if -vv
Jonathan Lebon [Fri, 16 May 2014 21:11:16 +0000 (17:11 -0400)]
session: don't suppress warnings in dump mode if -vv

Just like how derive_probes() still prints errors in dump mode if -vv is
supplied, we do the same for warnings.

10 years agowhitespace tweak for examples html index
Frank Ch. Eigler [Fri, 16 May 2014 16:06:49 +0000 (12:06 -0400)]
whitespace tweak for examples html index

10 years agoAdd some popularity numbers for examples/category links.
Frank Ch. Eigler [Fri, 16 May 2014 16:05:17 +0000 (12:05 -0400)]
Add some popularity numbers for examples/category links.

10 years agoregenerate examples index
Frank Ch. Eigler [Fri, 16 May 2014 15:52:30 +0000 (11:52 -0400)]
regenerate examples index

10 years agopublican docs: define a BZURL
Frank Ch. Eigler [Thu, 15 May 2014 19:00:48 +0000 (15:00 -0400)]
publican docs: define a BZURL

10 years agoAdd pyparsing dependency for sdt-devel
Lukas Berk [Thu, 15 May 2014 18:36:11 +0000 (14:36 -0400)]
Add pyparsing dependency for sdt-devel

*systemtap.spec - add dependency for new dtrace functionality

10 years agoFix probes with no args for --no-pyparsing mode.
Stan Cox [Thu, 15 May 2014 17:26:39 +0000 (13:26 -0400)]
Fix probes with no args for --no-pyparsing mode.

* dtrace.in (_ReProvider): Check for no args.
* dtrace.exp: Fix test for probe with no args.

10 years agosdt_varname.exp: small tweaks
Jonathan Lebon [Mon, 12 May 2014 13:50:20 +0000 (09:50 -0400)]
sdt_varname.exp: small tweaks

1. Only run testcase if installtest
2. Uncomment the (mistakenly commented out) code that cleans up the
   testing directory upon exit
3. Enable -fPIC when compiling library, which can yield different forms
   of operands, thus improving the testing range

10 years agocallee.exp: simplify shlib testing further using -shared
Jonathan Lebon [Fri, 9 May 2014 20:34:41 +0000 (16:34 -0400)]
callee.exp: simplify shlib testing further using -shared

This is a follow-up to commit 72ad110. We can skip the library's
intermediate object file by directly using -shared in the first
invocation.

10 years agoMerge branch 'jlebon/pr13296'
Jonathan Lebon [Fri, 9 May 2014 19:57:28 +0000 (15:57 -0400)]
Merge branch 'jlebon/pr13296'

This merge gives SystemTap the ability to decode SDT operands that refer
to symbols. There are also a few code cleanups, such as:
   - Removal of SDT probing code that supports a hypothetical kernel
     mode.
   - Removal of old unused symbol table code for reading in symbols by
     reading output from nm or from a file.
   - Major refactoring of the sdt_uprobe_var_expanding_visitor::
     visit_target_symbo_arg() function to make it easier to understand
     the overall structure.
   - Strengthening of sections/note entry checks before parsing probe
     information.

10 years agoNEWS: add blurb about pr13296
Jonathan Lebon [Fri, 9 May 2014 19:49:36 +0000 (15:49 -0400)]
NEWS: add blurb about pr13296

10 years agosdt_varname.exp: new testcase for varname SDT probing
Jonathan Lebon [Fri, 9 May 2014 18:10:25 +0000 (14:10 -0400)]
sdt_varname.exp: new testcase for varname SDT probing

This new testcase verifies that SDT operands of the form
[off+]varname[+off][(reg)] are properly parsed by stap.

10 years agoSDT probes: remove kernel-specific handling
Jonathan Lebon [Tue, 6 May 2014 19:16:50 +0000 (15:16 -0400)]
SDT probes: remove kernel-specific handling

10 years agofactor out precision_to_function
Jonathan Lebon [Tue, 6 May 2014 18:35:13 +0000 (14:35 -0400)]
factor out precision_to_function

10 years agofactor out try_parse_arg_varname
Jonathan Lebon [Tue, 6 May 2014 18:27:54 +0000 (14:27 -0400)]
factor out try_parse_arg_varname

10 years agofactor out try_parse_arg_effective_addr
Jonathan Lebon [Tue, 6 May 2014 18:11:56 +0000 (14:11 -0400)]
factor out try_parse_arg_effective_addr

10 years agofactor out try_parse_arg_offset_register
Jonathan Lebon [Tue, 6 May 2014 18:01:47 +0000 (14:01 -0400)]
factor out try_parse_arg_offset_register

10 years agofactor out try_parse_arg_register
Jonathan Lebon [Tue, 6 May 2014 16:37:25 +0000 (12:37 -0400)]
factor out try_parse_arg_register

10 years agofactor out build_dwarf_registers
Jonathan Lebon [Tue, 6 May 2014 16:29:59 +0000 (12:29 -0400)]
factor out build_dwarf_registers

10 years agofactor out try_parse_arg_literal
Jonathan Lebon [Tue, 6 May 2014 16:06:46 +0000 (12:06 -0400)]
factor out try_parse_arg_literal

10 years agofactor out parse_out_arg_precision
Jonathan Lebon [Fri, 9 May 2014 19:28:10 +0000 (15:28 -0400)]
factor out parse_out_arg_precision

10 years agofactor out get_target_symbol_argno_and_validate
Jonathan Lebon [Tue, 6 May 2014 15:44:05 +0000 (11:44 -0400)]
factor out get_target_symbol_argno_and_validate

10 years agoupdate table of possible operand syntax
Jonathan Lebon [Tue, 6 May 2014 15:28:42 +0000 (11:28 -0400)]
update table of possible operand syntax

10 years agoPR13296: allow SDT operands using VARNAME
Jonathan Lebon [Thu, 1 May 2014 15:59:15 +0000 (11:59 -0400)]
PR13296: allow SDT operands using VARNAME

We may encounter SDT operands of the form [OFF+]VARNAME[+OFF][(REG)]
which refers to the address of a object in the symtab. On x86_64, the
REG can be '%rip' to denote RIP-relative addressing.

To do this, we also pass the current dwflpp object to
sdt_uprobe_var_expanding_visitor, which then tries symbol resolution
using the symbol table if it meets upon such an SDT operand.

10 years agosymbol_table::read_from_elf(): also pick up globals and locals
Jonathan Lebon [Thu, 1 May 2014 15:57:23 +0000 (11:57 -0400)]
symbol_table::read_from_elf(): also pick up globals and locals

These will be needed in upcoming patches.

10 years agosymbol_table: remove read_* methods
Jonathan Lebon [Thu, 1 May 2014 15:18:22 +0000 (11:18 -0400)]
symbol_table: remove read_* methods

These methods of retrieving symbols haven't been in use since 2008 (at
least according to the date of the comment mentioning its abandonment).
Rather than having it slowly rot away, let's remove it. Git will
remember it for us if we ever need it back.

10 years agotapsets.cxx: remove unneeded forward decls
Jonathan Lebon [Thu, 1 May 2014 15:08:22 +0000 (11:08 -0400)]
tapsets.cxx: remove unneeded forward decls

10 years agomodule_info::get_symtab(): don't require base_query
Jonathan Lebon [Thu, 1 May 2014 14:50:32 +0000 (10:50 -0400)]
module_info::get_symtab(): don't require base_query

The get_symtab() function originally required the 'sess' and 'dw'
members of dwarf_query (see commit 5f0a03a6). Nowadays, this is no
longer required.

10 years agosetup_note_probe_entry(): strengthen note checks
Jonathan Lebon [Wed, 23 Apr 2014 15:45:12 +0000 (11:45 -0400)]
setup_note_probe_entry(): strengthen note checks

In dwflpp::iterate_over_notes(), we call back to
sdt_query::setup_note_probe_entry() for every note entry found,
regardless of section name or note name, which is fine.

However, on the callback side in setup_note_probe_entry(), we never
actually check that the section name or note name is correct; we only
check that the note entry type was what we expected.

This means that it could have been possible for setup_note_probe_entry()
to try to blindly parse data from a note entry which was not even a
stapsdt note, which could be dangerous.

This patch adds explicit checks that the section name and the note name
are what we expect.

10 years agoCorrectly return task pointers by making them unsigned longs.
Tetsuo Handa [Fri, 9 May 2014 14:35:26 +0000 (09:35 -0500)]
Correctly return task pointers by making them unsigned longs.

* tapset/linux/task.stp (task_current): Return task strucct pointer as an
  unsigned long.
  (pid2task): Ditto.

10 years agocallee.exp: simplify shlib testing by using -rpath
Jonathan Lebon [Thu, 8 May 2014 19:16:36 +0000 (15:16 -0400)]
callee.exp: simplify shlib testing by using -rpath

We previously started stap separately from the target process because we
needed to set the LD_LIBRARY_PATH variable for it to run properly.

However, if we use the linker option -rpath to add the current directory
to the library path (as is done also in unprivileged_myproc.exp), this
is no longer necessary, thus greatly simplifying the testcase.

10 years agoNormalize "aarch64" to "arm64" to match SystemTap's idea of arch
William Cohen [Wed, 7 May 2014 15:48:17 +0000 (11:48 -0400)]
Normalize "aarch64" to "arm64" to match SystemTap's idea of arch

10 years agoerror::pass2 - note --poison-cache as possible caching bug workaround
Frank Ch. Eigler [Wed, 7 May 2014 14:29:36 +0000 (10:29 -0400)]
error::pass2 - note --poison-cache as possible caching bug workaround

10 years agomodule cache hashing: add systemtap version string
Frank Ch. Eigler [Wed, 7 May 2014 13:52:57 +0000 (09:52 -0400)]
module cache hashing: add systemtap version string

* session.cxx (version_string): New method.
  (version): Call it.
* hash.cxx (get_base_hash): Ditto.

10 years agoFix tcl error in testsuite/systemtap.base/target_set.exp
David Smith [Tue, 6 May 2014 20:50:11 +0000 (15:50 -0500)]
Fix tcl error in testsuite/systemtap.base/target_set.exp

* testsuite/systemtap.base/target_set.exp: Fix tcl error on script compile
  failure by providing fail reason.

10 years agoFix PR16914 by adding more aarch64 defines.
David Smith [Tue, 6 May 2014 20:42:11 +0000 (15:42 -0500)]
Fix PR16914 by adding more aarch64 defines.

* runtime/linux/compat_unistd.h: Add '__NR_open' and '__NR_futimesat'
  defines for aarch64.

10 years agoFlip condition so proper default picked for STAP_NOP in testsuite/sys/sdt.h
William Cohen [Tue, 6 May 2014 20:01:54 +0000 (16:01 -0400)]
Flip condition so proper default picked for STAP_NOP in testsuite/sys/sdt.h

A number of the uprobes code failed to build on aarch64 because the
define for STAP_NOP would default to the unusual "nop 0".  The test
has been flipped around so the default is usual "nop" if there is
not something explict.

10 years agoFix PR16914 by adding aarch64 support to runtime/linux/compat_unistd.h.
David Smith [Tue, 6 May 2014 18:34:18 +0000 (13:34 -0500)]
Fix PR16914 by adding aarch64 support to runtime/linux/compat_unistd.h.

10 years agoFix nd_syscall ustat32 probes.
David Smith [Tue, 6 May 2014 17:26:31 +0000 (12:26 -0500)]
Fix nd_syscall ustat32 probes.

* tapset/linux/nd_syscalls2.stp: Combine the 2 nd_syscall.ustat32 probes
  into one.

10 years agoPR16913: aarch64: don't require prelink
Martin Cermak [Tue, 6 May 2014 13:53:05 +0000 (09:53 -0400)]
PR16913: aarch64: don't require prelink

10 years agoMake syscall.sendfile optional.
David Smith [Mon, 5 May 2014 21:33:19 +0000 (16:33 -0500)]
Make syscall.sendfile optional.

10 years agoFix more compile error when we don't have a dwarf unwinder.
David Smith [Mon, 5 May 2014 21:25:25 +0000 (16:25 -0500)]
Fix more compile error when we don't have a dwarf unwinder.

* runtime/linux/runtime.h: Fix compilation on systems without
  STP_USE_DWARF_UNWINDER defined.
* runtime/unwind/unwind.h: For systems without STP_USE_DWARF_UNWINDER
  defined, just define a dummy unwind_context structure along with the
  real unwind_cache structure.

10 years agoFix compile error when we don't have a dwarf unwinder in _stp_tack_kernel_print
David Smith [Mon, 5 May 2014 20:46:40 +0000 (15:46 -0500)]
Fix compile error when we don't have a dwarf unwinder in _stp_tack_kernel_print

* runtime/stack.c (_stp_stack_kernel_print): Use 'c->kregs' instead of
  nonexistent 'regs' variable. This code is only compiled when
  STP_USE_DWARF_UNWINDER isn't defined.

10 years agosystemtap.spec: make java/emacs conditional on usual >=f19-rhel7
Frank Ch. Eigler [Mon, 5 May 2014 16:59:15 +0000 (12:59 -0400)]
systemtap.spec: make java/emacs conditional on usual >=f19-rhel7

10 years agobeginnner's guide configury: compatibility with older publican
Frank Ch. Eigler [Mon, 5 May 2014 16:49:10 +0000 (12:49 -0400)]
beginnner's guide configury: compatibility with older publican

Older publican doesn't support the --pdftool=fop option.  It's too
much hassle to autoautoconf this (considering the existing fop-related
conditionals at the top level configure.ac), so instead here we try
publican with and then without the --pdftool=fop option.

10 years agoFixed PR6791 by adding ia64 dwarfless register access.
David Smith [Mon, 5 May 2014 15:20:14 +0000 (10:20 -0500)]
Fixed PR6791 by adding ia64 dwarfless register access.

* tapset/ia64/registers.stp: Add dwarfless register access.
* runtime/regs.c (__stp_sign_extend32): Ensure it is present for ia64
  compiles.
* tapset/linux/nd_syscalls2.stp: Add ia64 support.
* testsuite/systemtap.syscall/nd_syscall.exp: Remove kfail for ia64.
* testsuite/buildok/nd_syscalls-detailed.stp: Make accept4 and fork tests
  optional.
* testsuite/systemtap.examples/process/strace.tcl: Removed file that
  kfailed ia64 for lack of dwarfless register access.
* testsuite/systemtap.examples/process/thread-business.tcl: Ditto.

10 years agoAdd pyparsing to dtrace
Stan Cox [Mon, 5 May 2014 14:24:20 +0000 (10:24 -0400)]
Add pyparsing to dtrace

* dtrace.in: pylint cleanups.
  (_HeaderCreator): Moved from _provider.
  (_PypProvider):  New.  The pyparsing parser.
  (_ReProvider): Moved from _provider.  The regexp parser.
  (main): Add pyparsing awareness.

10 years agoAdd test coverage for rhbz1027459
Martin Cermak [Fri, 2 May 2014 16:39:35 +0000 (18:39 +0200)]
Add test coverage for rhbz1027459

10 years agoMake the syscall.accept4 buildok test optional.
David Smith [Fri, 2 May 2014 14:49:36 +0000 (09:49 -0500)]
Make the syscall.accept4 buildok test optional.

10 years agoPR16894: new wordexp.exp to check -c COMMAND handling
Jonathan Lebon [Fri, 2 May 2014 14:19:06 +0000 (10:19 -0400)]
PR16894: new wordexp.exp to check -c COMMAND handling

This simple testcase checks that invalid -c COMMANDs for unspecified
process probes are properly handled (e.g. prior to commit eb94071, we
segfaulted).

10 years agoPR16894: give better errors re. -c commands
Jonathan Lebon [Fri, 2 May 2014 13:43:07 +0000 (09:43 -0400)]
PR16894: give better errors re. -c commands

This patch allows SystemTap to make the distinction when reporting an
error between no -c command given, and a given but invalid -c command.

- man/stapprobes.3stap: introduce 'unspecified' verbiage and clear up
  restrictions on unspecified process probes
- session.cxx: cmd_file() now throws errors upon wordexp() failures
- tapsets.cxx: (1) handle possibility of error from cmd_file() and chain
                   with own error if it occurs
               (2) separately handle no -c command / empty file
               (3) introduce 'unspecified' verbiage in error messages
                   and point to [man stapprobes]
- tapset-perfmon.cxx: ditto

10 years agoPR16716 partial fix: Fix types in syscall.clock_{getres,gettime,nanosleep}.
David Smith [Fri, 2 May 2014 13:20:21 +0000 (08:20 -0500)]
PR16716 partial fix: Fix types in syscall.clock_{getres,gettime,nanosleep}.

* tapset/linux/syscalls.stp (syscall.clock_getres): Fix compat support and
  types.
  (syscall.clock_gettime): Fix compat support and add 'tp_uaddr' variable.
  (syscall.clock_nanosleep): Fix types. Add 'clk_id', 'clk_id_str',
  'req_uaddr', and 'rem_uaddr' variables. Deprecate 'flag_str' in favor of
  'flags_str'.
  (syscall.compat_clock_nanosleep): Ditto.
  (syscall.clock_settime): Fix types.
* tapset/linux/nd_syscalls.stp (nd_syscall.clock_getres): Fix compat support.
  (nd_syscall.clock_gettime): Fix compat support and add 'tp_uaddr' variable.
  (nd_syscall.clock_nanosleep): Add 'clk_id', 'clk_id_str', 'req_uaddr',
  and 'rem_uaddr' variables. Deprecate 'flag_str' in favor of 'flags_str'.
  (nd_syscall.compat_clock_nanosleep): Ditto.
* tapset/linux/aux_syscalls.stp (_struct_timeval_u): Instead of "UNKNOWN",
  print the failing address.
  (_struct_compat_timeval_u): Ditto.
  (_struct_timezone_u): Ditto.
  (_struct_timespec_u): Ditto.
  (_struct_compat_timespec_u): Ditto.
  (_stp_clock_nanosleep_flags_str): New function.
  (_get_wc_str): Convert to use _stp_lookup_str().
* testsuite/buildok/aux_syscalls-embedded.stp: Add test for
  _stp_clock_nanosleep_flags_str().
* testsuite/buildok/syscalls-detailed.stp: Add tests for new variables.
* testsuite/buildok/nd_syscalls-detailed.stp: Ditto.
* testsuite/systemtap.syscall/clock.c: Add more error testing.
* testsuite/systemtap.syscall/futimes.c: Update expected output.
* testsuite/systemtap.syscall/net1.c: Ditto.
* testsuite/systemtap.syscall/recvmmsg.c: Ditto.
* testsuite/systemtap.syscall/select.c: Ditto.
* testsuite/systemtap.syscall/inotify.c: Fix "COVERAGE" comment formatting.

10 years agocmd_file(): properly free the words array
Jonathan Lebon [Thu, 1 May 2014 20:43:09 +0000 (16:43 -0400)]
cmd_file(): properly free the words array

We should free it regardless if rc > 0.

10 years agocmd_file(): only free words if succeeded
Jonathan Lebon [Thu, 1 May 2014 20:31:59 +0000 (16:31 -0400)]
cmd_file(): only free words if succeeded

Otherwise, we may accidentally summon Cthulhu.

10 years agofix typo in changelog (bad date)
Martin Cermak [Thu, 1 May 2014 06:42:41 +0000 (08:42 +0200)]
fix typo in changelog (bad date)

10 years agoversion bump and autoreconf
Jonathan Lebon [Wed, 30 Apr 2014 18:56:22 +0000 (14:56 -0400)]
version bump and autoreconf

10 years agoAdd MMPAP_SYSCALL_NO and other defines in runtime/syscall.h for aarch64
William Cohen [Wed, 30 Apr 2014 18:52:42 +0000 (14:52 -0400)]
Add MMPAP_SYSCALL_NO and other defines in runtime/syscall.h for aarch64

10 years agoPR16716 partial fix: Fix types in syscall.{compat_select,unlinkat}
David Smith [Wed, 30 Apr 2014 18:44:51 +0000 (13:44 -0500)]
PR16716 partial fix: Fix types in syscall.{compat_select,unlinkat}

* tapset/linux/syscalls2.stp: Fix types in syscall.{compat_select,unlinkat}.
* tapset/linux/nd_syscalls2.stp: Fix types in nd_syscall.unlinkat.

10 years agosystemtap.spec: pre-release log and bump release-2.5
Jonathan Lebon [Wed, 30 Apr 2014 18:16:20 +0000 (14:16 -0400)]
systemtap.spec: pre-release log and bump

10 years agoPR16716 partial fix: Fix types in syscall.{linkat,readlink,readlinkat}.
David Smith [Wed, 30 Apr 2014 15:06:39 +0000 (10:06 -0500)]
PR16716 partial fix: Fix types in syscall.{linkat,readlink,readlinkat}.

* tapset/linux/syscalls.stp: Fixed types in syscall.linkat.
* tapset/linux/syscalls2.stp: Fixed types in
  syscall.{readlink,readlinkat).
* testsuite/systemtap.syscall/link.c: Added tests.

10 years agoPR16716 partial fix: Fix types in syscall.{open,openat}.
David Smith [Tue, 29 Apr 2014 20:56:12 +0000 (15:56 -0500)]
PR16716 partial fix: Fix types in syscall.{open,openat}.

* tapset/linux/syscalls2.stp: Fixed types in syscall.{open,openat}.
* tapset/linux/nd_syscalls2.stp: Ditto.
* testsuite/systemtap.syscall/openclose.c: Added tests.

10 years agopyexample.stp: split into py2example.stp and py3example.stp
Jonathan Lebon [Tue, 29 Apr 2014 18:32:48 +0000 (14:32 -0400)]
pyexample.stp: split into py2example.stp and py3example.stp

In order to be compatible on systems with only python2 installed (or
only python3 installed), we split the pyexample.stp script into two
versions.

We also add a test_support line in the meta files so that check.exp
marks them as untested if either/both python versions are not present.

In the tapsets, we make py2/3 aliases that the scripts then use, but
also create general ones that refer to both the 2 and 3 variants.

The python3 version requires -g --suppress-time-limits, otherwise it's
very likely that a 'overhead exceeded' ERROR.

- py2example.stp: python 2 version of the script
- py2example.meta: meta file for python 2 version, with test_support
  check for python 2 specific SDT markers
- py3example.stp: python 3 version of the script
- py3example.meta: meta file for python 3 version, with test_support
  check for python 3 specific SDT markers
- tapset/python2.stp: make python2 specific aliases and alias the
  general ones to that
- tapset/python3.stp: make python3 specific aliases and alias the
  general ones to that

10 years agofix --suppress-time-limits usage typo too
Frank Ch. Eigler [Tue, 29 Apr 2014 20:25:04 +0000 (16:25 -0400)]
fix --suppress-time-limits usage typo too

10 years agoFix typo for suppress-time-limits in runtime headers
Lukas Berk [Tue, 29 Apr 2014 20:17:36 +0000 (16:17 -0400)]
Fix typo for suppress-time-limits in runtime headers

*man/stap.1   - update man page to properly list macro's
  and polarity of statement
*runtime/common_probe_context.h - fix STAP_SUPPRESS_TIME_LIMITS_ENABLE typo
*runtime/runtime_defines.h  - ditto

10 years agoFix PR16884 by updating [nd_]syscall.compat_sys_shmctl.
David Smith [Tue, 29 Apr 2014 19:31:09 +0000 (14:31 -0500)]
Fix PR16884 by updating [nd_]syscall.compat_sys_shmctl.

* tapset/linux/syscalls2.stp (syscall.compat_sys_shmctl): Make supported
  variables match up with syscall.shmctl.
* tapset/linux/nd_syscalls2.stp (nd_syscall.compat_sys_shmctl): Ditto.
* testsuite/buildok/syscalls2-detailed.stp: Updated
  syscall.compat_sys_shmctl test.
* testsuite/buildok/nd_syscalls2-detailed.stp: Ditto.
* NEWS: Mention variable deprecations.

10 years agoPR16716 partial fix: Fix types in syscall.{chmod,fchmodat}.
David Smith [Tue, 29 Apr 2014 18:24:33 +0000 (13:24 -0500)]
PR16716 partial fix: Fix types in syscall.{chmod,fchmodat}.

* tapset/linux/syscalls.stp: Fixed types in syscall.{chmod,fchmodat}.
* tapset/linux/nd_syscalls.stp: Removed old comment.

10 years agoPR16716 partial fix: Fix types in syscall.sysfs.
David Smith [Tue, 29 Apr 2014 17:25:51 +0000 (12:25 -0500)]
PR16716 partial fix: Fix types in syscall.sysfs.

* tapset/linux/syscalls2.stp: Fixed types in syscall.sysfs. Improved
  output formatting.
* tapset/linux/syscalls2.stp: Improved output formatting in
  nd_syscall.sysfs.
* testsuite/systemtap.syscall/sysfs.c: New test case.

10 years agoNEWS: typos in --dump-functions blurb
Jonathan Lebon [Tue, 29 Apr 2014 16:15:59 +0000 (12:15 -0400)]
NEWS: typos in --dump-functions blurb

10 years agoPR16716 partial fix: Fix types in syscall.{dup,dup2,dup3}.
David Smith [Tue, 29 Apr 2014 15:54:27 +0000 (10:54 -0500)]
PR16716 partial fix: Fix types in syscall.{dup,dup2,dup3}.

* tapset/linux/syscalls.stp: Fixed types in syscall.{dup,dup2,dup3}.
* tapset/linux/aux_syscalls.stp (_dup3_flag_str): Just use the open mode
  flags list.
* testsuite/systemtap.syscall/dup.c: Add more tests.

10 years agoupdate copyrights
Jonathan Lebon [Tue, 29 Apr 2014 15:42:41 +0000 (11:42 -0400)]
update copyrights

Update the Red Hat copyrights using:

scripts/update-copyright "Red Hat" redhat.com

10 years agonew helper script scripts/update-copyrights
Jonathan Lebon [Thu, 24 Apr 2014 16:53:06 +0000 (12:53 -0400)]
new helper script scripts/update-copyrights

This script looks at all the tracked files in the tree that are
copyrighted by <company> and updates the copyright year if they've been
modified this year by a user at <domain>.

Usage example: scripts/update-copyrights "Red Hat" redhat.com

10 years agoBZ1092147: ppc64le: don't require prelink
Brent Baude [Mon, 28 Apr 2014 20:39:19 +0000 (16:39 -0400)]
BZ1092147: ppc64le: don't require prelink

10 years agoPR16406: fix build-id false mismatch for userspace-program vs. kernel-module
Frank Ch. Eigler [Mon, 28 Apr 2014 19:55:56 +0000 (15:55 -0400)]
PR16406: fix build-id false mismatch for userspace-program vs. kernel-module

The translate.cxx-emitted _stp_module array has two name fields, .name
and .path, which were ambiguous as to whether each was a kernel module
or a userspace executable.  The .name string was just the basename,
and it was used in the near-startup-time _stp_module_check().  If the
userspace program matched a kernel module, bangorama (a false build-id
mismatch error at startup) .. unless --all-modules was given, in
which case the kernel modules won the duplication race.

The correction has a couple of parts.  First, the _stp_module .name is
made the same as the fully-/-qualified .path for userspace programs.
Second, _stp_module_check checks all kernel+module bits it knows
about, not just the first one.  Hand-tested with a variety of runs,
and with the *myproc.exp test, which is now forced to try to conflict.

* translate.cxx (dump_unwindsym_ctx): Make userspace _stp_module->name's
  fully-/-qualified.
* runtime/sym.c (_stp_module_check): Check all and only kernel-space
  build-ids.  Filter by _stp_module->name.
  (stp_kmodule_check, stp_usermodule_check): WARN_ON wrong-polarity
  incoming module/path name.
* testsuite/.../unprivileged_myproc.exp: Run 'modprobe loop'

10 years agounprivileged_myproc.exp: only KFAIL .callee(string)
Jonathan Lebon [Mon, 28 Apr 2014 21:00:39 +0000 (17:00 -0400)]
unprivileged_myproc.exp: only KFAIL .callee(string)

This is a followup to the followup commit 9d4241d. The .callees and
.callees(number) probes will always work because they will match ibar().
Only the .callee(string), which is turned to .callee("tbar"), should be
KFAILed, since it will definitely fail for GCC < 4.7.

10 years agounprivileged_myproc.exp: adjust loop.c
Jonathan Lebon [Mon, 28 Apr 2014 20:24:32 +0000 (16:24 -0400)]
unprivileged_myproc.exp: adjust loop.c

The process("./loop").function("ibar").inline probe was failing in this
test because of a bug in GCC (RHBZ1092144). In a nutshell, GCC unrolls
the loop once, resulting in ibar() being called twice: once outside the
loop and once inside. However, only the former gets a corresponding
inlined_subroutine DIE. As a result, the SystemTap probe only fires once
at startup rather than at every iteration.

This patch takes out the if-expression in the loop so that GCC doesn't
need to do any unrolling and we end up with two inlined_subroutine DIEs.

10 years agotask.stp: fix typo in task_rlimit() description
Jonathan Lebon [Mon, 28 Apr 2014 14:52:58 +0000 (10:52 -0400)]
task.stp: fix typo in task_rlimit() description

10 years agoPR16716 partial fix: Fix types in syscall.{inotify_add_watch,inotify_rm_watch}
David Smith [Mon, 28 Apr 2014 20:32:32 +0000 (15:32 -0500)]
PR16716 partial fix: Fix types in syscall.{inotify_add_watch,inotify_rm_watch}

* tapset/linux/syscalls.stp: Fix types in
  syscall.{inotify_add_watch,inotify_rm_watch}.
* tapset/linux/nd_syscalls.stp: Fix types in nd_syscall.inotify_rm_watch.
* tapset/linux/aux_syscalls.stp (_inotify_watch_mask_str): Updated and
  improved to display unknown values.
  (_inotify_init1_flag_str): Ditto.
* testsuite/systemtap.syscall/inotify.c: Add more tests.

10 years agoPR16716 partial fix: Fix types in syscall.{close,creat}.
David Smith [Mon, 28 Apr 2014 18:22:26 +0000 (13:22 -0500)]
PR16716 partial fix: Fix types in syscall.{close,creat}.

* tapset/linux/syscalls.stp: Fixed types in syscall.{close,creat}.
* tapset/linux/syscalls.stp: Fixed types in syscall.creat.
* tapset/linux/aux_syscalls.stp (_sys_open_flag_str): Updated and improved
  to display unknown values.
* testsuite/systemtap.syscall/openclose.c: Added more tests.

10 years agoAdd java backtracing and self unwinding to NEWS
Lukas Berk [Mon, 28 Apr 2014 15:26:24 +0000 (11:26 -0400)]
Add java backtracing and self unwinding to NEWS

*NEWS - add news blurbs

10 years agosyscall testsuite: accept4 SOCK_CLOEXEC
Frank Ch. Eigler [Mon, 28 Apr 2014 14:55:19 +0000 (10:55 -0400)]
syscall testsuite: accept4 SOCK_CLOEXEC

Add a conditional #define for RHEL5 era kernels.

10 years agosyscall testsuite test.tcl: use staprun -R for reused module
Frank Ch. Eigler [Mon, 28 Apr 2014 14:53:30 +0000 (10:53 -0400)]
syscall testsuite test.tcl: use staprun -R for reused module

It's been occasionally observed that a single syscall test case can
leave the [nd_]syscall.ko module loaded, which blocks further testing.
staprun -R can rename the .ko, to avoid the chain failure.

10 years agounprivileged_myproc testsuite: mark .callees tests kfail for gcc < 4.7
Frank Ch. Eigler [Sun, 27 Apr 2014 22:20:26 +0000 (18:20 -0400)]
unprivileged_myproc testsuite: mark .callees tests kfail for gcc < 4.7

This is a followup to commit 081e9217c8d0, this time on rhel6.

10 years agoruntime rhel6: avoid kernel crash with buildid checks for process(PID#) probes
Frank Ch. Eigler [Sun, 27 Apr 2014 21:16:29 +0000 (17:16 -0400)]
runtime rhel6: avoid kernel crash with buildid checks for process(PID#) probes

Crash observed on rhel6 (utrace -> process(NUM).statement(ADDR).absolute probes)
in unprivileged_myproc.exp test case.

* runtime/linux/uprobes-common.c (stap_uprobe_change_plus): Don't try to check
  process against _stp_module entry, if we don't even have a process pathname.
* runtime/sym.c (_stp_usermodule_check): WARN_ON incoming null pathname.

10 years agotapset: Deal with missing fs in i386/register.stp
Josh Stone [Sat, 26 Apr 2014 00:17:03 +0000 (17:17 -0700)]
tapset: Deal with missing fs in i386/register.stp

Older kernels didn't have fs in pt_regs, so the following _reg_offsets
were incorrect.  Make fs conditional on stapconf, and use a counter to
more easily keep track of the differences.

10 years agoruntime: Fix synthesized regs on ix86
Josh Stone [Sat, 26 Apr 2014 00:12:18 +0000 (17:12 -0700)]
runtime: Fix synthesized regs on ix86

The ix86 register names and offsets in the inline asm of
arch_unw_init_frame_info are now fixed, including stapconf to deal with
fs/xfs/gs changes over time.

x86_64 is updated to match the same style of access.

10 years agobuildrun: Don't bother filtering -fno-asynchonous-unwind-tables
Josh Stone [Fri, 25 Apr 2014 23:05:50 +0000 (16:05 -0700)]
buildrun: Don't bother filtering -fno-asynchonous-unwind-tables

Our -fasynchronous-unwind-tables in EXTRA_CFLAGS takes precedence just
fine over kbuild's -fno-asynchonous-unwind-tables setting.

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