| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
2009-04-17 David Smith <dsmith@redhat.com>
* tapset/utrace.stp: Cast the return value of
syscall_get_return_value() to an unsigned long to avoid sign
extension.
|
|
|
|
|
|
|
| |
The overlapping process.* tapsets are now separated. Those probe points
documented in stapprobes(3stap) remain the same. Those that were formerly
in stapprobes.process(3stap) have been renamed to kprocess, to reflect
their kernel perspective on processes.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds some basic functions to the IP and TCP tapsets.
Mainly, it's possible to get the iphdr and tcphdr from a sk_buff structure.
As a consequence, a TCP probe called tcp.receive() was created and
is probed every time a TCP packet is received, and a lot of
useful fields is available, as the TCP flags.
Also a small example that works like tcpdump for received TCP packets was
created.
This patch was tested on x86 and ppc machines, on 2.6.18 kernel and also on
mainline one.
Signed-off-by: Breno Leitao <leitao@linux.vnet.ibm.com>
Signed-off-by: Andre Detsch <adetsch@br.ibm.com>
Signed-off-by: Josh Stone <jistone@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2009-04-09 David Smith <dsmith@redhat.com>
* buildrun.cxx (compile_pass): Compile autoconf test for
<asm/syscall.h>.
* runtime/autoconf-asm-syscall.c: New "autoconf" test the presence
of <asm/syscall.h>.
* runtime/syscall.h: If <asm/syscall.h> exists, use it.
Otherwise, use our private copy of the functions for each
architecture.
(syscall_get_nr): Renamed from __stp_user_syscall_nr().
(syscall_get_return_value): Renamed from
__stp_user_syscall_return_value().
(syscall_get_arguments): Renamed from __stp_user_syscall_arg().
* runtime/task_finder.c
(__stp_utrace_task_finder_target_syscall_exit): Uses new syscall.h
functions.
* tapset/utrace.stp: Ditto.
|
|
|
|
|
| |
* tapset/context.stp (uaddr): New sfunction.
* testsuite/buildok/uaddr.stp: New test.
|
|
|
|
|
|
|
|
|
| |
* tapset/context-symbols.stp (syname, symdata): Pass NULL for kernel address.
* tapset/ucontext-symbols.stp: New file defining usymname and usymdata.
* testsuite/systemtap.context/usymbols.exp: Use usymname, remove
STP_NEED_VMA_TRACKER hack.
* testsuite/buildok/usymdata.stp: New test.
* testsuite/buildok/usymname.stp: Likewise.
|
|
|
|
|
|
|
| |
This adds a new tapset for ANSI escape sequences. It is based on an
existing tapset that was written by Masami Hiramatsu for the stapgames
project. This also adds a version of ansi_color.stp script that displays
other attributes other than the bold effect.
|
|
|
|
|
|
| |
This adds an errno_p() function that will return an absolute errno if it
is valid, or zero if it is not. It also simplifies the if statement in
the errno_str() function.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This adds a couple of the suggested context/stack revamp functions
from PR6580. In particular it replaces the symbolname() function that
sneaked in with the pr6866 branch merge with the suggested symname().
* runtime/sym.c (_stp_mod_sec_lookup): Make section optional.
(_stp_symbol_snprint): Provide a way to get optional module info.
* tapset/context-symbols.stp: Replace symbolname() with symname(),
add modname() and symdata().
(probemod): Implement pc based fallback.
* tapset/context-unwind.stp (caller): Adjust for _stp_symbol_snprint
change.
* testsuite/systemtap.context/usymbols.exp: Use new symname.
* testsuite/buildok/modname.stp: New test.
* testsuite/buildok/symdata.stp: Likewise.
* testsuite/buildok/symname.stp: Likewise.
|
|\ |
|
| |
| |
| |
| |
| |
| | |
The new code uses a %( kernel_v < "2.6.29" %) conditional to look at
the passed pt_regs instead of named *bx parameters. A more general
solution will be needed at some point.
|
|\| |
|
| |
| |
| |
| | |
* tapsets/socket.stp: Add descriptions for proto, family and state.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* buildrun.cxx (compile_pass): Add autoconf-x86-gs.c.
* tapset/i686/registers.stp (_stp_register_regs): Update offsets.
(test_x86_gs): Auxiliary function.
* runtime/autoconf-x86-gs.c : New file.
* testsuite/systemtap.base/x86_gs.exp : New test case.
* testsuite/systemtap.base/x86_gs.stp : Ditto.
|
| | |
|
|\| |
|
| |
| |
| |
| |
| |
| |
| | |
functions to grab TCP source and destination port from a socket.
Also, used this function inside some TCP probe functions, as recvmsg,
to provide a richer set of fields.
|
|\| |
|
| | |
|
|\| |
|
| | |
|
|\|
| |
| |
| |
| | |
Resolved conflicts:
runtime/task_finder.c: name vs path.
|
| |
| |
| |
| | |
* tapset/scsi.stp: Remove 'g' at end of file.
|
| |\ |
|
| | |
| | |
| | |
| | | |
Two functions pid2task and pid2execname.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| |/ |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
tapsetdescription for man page generator (in development)
|
| |
| |
| |
| | |
tapsetdescription for man page generator (in development)
|
| |
| |
| |
| | |
tapsetdescription for man page generator (in development)
|
| |
| |
| |
| | |
tapsetdescription for man page generator (in development)
|
| |
| |
| |
| | |
tapsetdescription for man page generator (in development)
|
| |
| |
| |
| | |
tapsetdescription for man page generator (in development)
|
| |
| |
| |
| | |
tapsetdescription for man page generator (in development)
|
| |
| |
| |
| | |
tapsetdescription for man page generator (in development)
|
| |
| |
| |
| | |
tapsetdescription for man page generator (in development)
|
| |
| |
| |
| | |
tapsetdescription for man page generator (in development)
|
| |
| |
| |
| | |
tapsetdescription for man page generator (in development)
|
| |
| |
| |
| | |
tapsetdescription for man page generator (in development)
|
| |
| |
| |
| | |
tapsetdescription for man page generator (in development)
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A few places in this tapset were using a pattern like this:
i_sb = @cast(foo, "inode")->i_sb
return @cast(foo, "super_block")->bar
The type of i_sb is already known, so I just merged this to:
return @cast(foo, "inode")->i_sb->bar
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The nfs, rpc, and scsi tapsets use @cast on types that may be compiled
into a kernel module or into the main kernel binary. The @cast search
path separated with colons lets us search both the kernel and the module.
For a couple of cases, I also merged sequential @casts that work just
fine as a single cast with a multiple-level dereference.
|
| |
| |
| |
| |
| | |
This now checks that CONTEXT->regs actually exists, and that the
requested offset is in the correct range.
|