summaryrefslogtreecommitdiffstats
path: root/tapset
Commit message (Collapse)AuthorAgeFilesLines
...
* PR 10981. Fixed buildok/netdev.stp for RHEL5.David Smith2009-11-181-2/+2
| | | | | | | * tapset/networking.stp: Made 'netdev.change_rx_flag' and 'netdev.get_stats' optional, since those functions don't exist on RHEL5. * testsuite/buildok/netdev.stp: Ditto.
* PR 5150. Fixed nfs tapset by making probes optional.David Smith2009-11-181-22/+30
| | | | | | | * tapset/nfs_proc.stp: Made 'nfs.proc.read', 'nfs.proc.write', and 'nfs.proc.commit' optional for newer kernels without those functions. * testsuite/systemtap.pass1-4/buildok.exp: Expect nfs-all-probes.stp to pass.
* Document is_return(), module_name() and stp_pid() context tapset functions.Mark Wielaard2009-11-171-15/+18
|
* Fixed aux_syscalls.stp for RHEL4.David Smith2009-11-171-0/+12
| | | | | * tapset/aux_syscalls.stp: Only define entries for IRQF_* flags if they exist.
* PR 10974 fix. Fixed aux_syscalls.stp for RHEL5.David Smith2009-11-171-0/+4
| | | | | * tapset/aux_syscalls.stp: Only define entries for IRQF_NOBALANCING/IRQF_IRQPOLL if they exist.
* PR 5150 partial fixes. Added support for nfs_file_fsync.David Smith2009-11-161-37/+40
| | | | | | | | | | | | | | | * tapset/nfs.stp(nfs.fop.fsync): Added support for nfs_file_fsync. (nfs.fop.fsync.return): Ditto. (nfs.aop.readpages.return): Fixed 'size' bug. (nfs.aop.write_begin): Renamed to make 'nfs.*.*' probes work correctly. (nfs.aop.write_end): Ditto. (__nfs.aop.write_begin): Ditto. (__nfs.aop.write_end): Ditto. (__nfs.aop.prepare_write): Ditto. (__nfs.aop.commit_write): Ditto. (nfs.fop.aio_read.return): Always sets 'units'. (nfs.fop.aio_write.return): Ditto. (nfs.fop.sendfile.return): Ditto.
* PR 5150 partial fix. Support nfs_write_begin()/nfs_write_end().David Smith2009-11-161-4/+76
| | | | | * tapset/nfs.stp: Added support for nfs_write_begin()/nfs_write_end(), which replaced nfs_prepare_write()/nfs_commit_write().
* Add documentation for ansi.stp tapset.Mark Wielaard2009-11-161-15/+79
| | | | | * tapset/ansi.stp: Add documentation for every function. * doc/SystemTap_Tapset_Reference/tapsets.tmpl: Add chapter on ansi.
* Define IRQF_ONESHOT for older kernels.Mark Wielaard2009-11-161-0/+3
| | | | | | | IRQF_ONESHOT was only introduced in 2.6.32. It doesn't hurt defining it if it isn't already there. It will just never show up on older kernels. * tapset/aux_syscalls.stp: Define IRQF_ONESHOT if not already defined.
* add definition of function irqflags_str()Prerna Saxena2009-11-161-0/+27
|
* Turn ctime.stp documentation into proper Tapset Reference markup.Mark Wielaard2009-11-131-12/+15
| | | | | * doc/SystemTap_Tapset_Reference/tapsets.tmpl: Add chapter on ctime.stp. * tapset/ctime.stp: Turn documentation into proper reference markup.
* Add documentation for conversions.stp tapset functions.Mark Wielaard2009-11-121-7/+179
| | | | | * doc/SystemTap_Tapset_Reference/tapsets.tmpl: Add conversions.stp chapter. * tapset/conversions.stp: Add documentation for all functions.
* Mark usymname as unprivileged.Mark Wielaard2009-11-121-1/+2
| | | | | * tapset/ucontext-symbols.stp (usymname): Add assert_is_myproc() and mark as unprivileged, just like usymdata().
* A very simple patch that fix the networking tapset documentation.Breno Leitao2009-11-111-1/+1
| | | | | It references the file include/linux/if_ether.h as the one that contains the protocol numbers and types.
* PR5916: Exploit kretprobe data storage areaJosh Stone2009-11-101-0/+56
| | | | | | | | | | | | | | | | | | | | Since 2.6.25, kretprobes can carry a data packet to be filled in an entry_handler. This patch lets us store our implicitly-saved $target variables in .return probes in that data area. * tapset/kretprobe.stp: New get/set functions for kretprobe data. * translate.cxx (c_unparser::emit_common_header): Add context->pi_longs. * tapsets.cxx (dwarf_var_expanding_visitor::visit_target_symbol_saved_return): Switch between the old and new methods of saving $vars in .return probes. (dwarf_var_expanding_visitor::gen_mapped_saved_return): The old way. (dwarf_var_expanding_visitor::gen_kretprobe_saved_return): The new way. (dwarf_derived_probe::join_group): Don't register paired entry-handlers. (dwarf_derived_probe::dwarf_derived_probe): Remember saved-var details. (dwarf_derived_probe_group::emit_module_decls): Output saved-var details. Also split the kretprobe handler whether we're on entry or return. (dwarf_derived_probe_group::emit_module_init): Prepare the entry handler. * testsuite/systemtap.base/kretprobe-vars.stp: Test implicit $var saving.
* Normalized whitespace and comments.David Smith2009-11-091-146/+153
|
* IRQ tapset, sample script, testsuite, man page updates, etcPrerna Saxena2009-11-091-0/+172
|
* PR 6691 fixed by adding support for sys_accept4.David Smith2009-11-022-15/+87
| | | | | | | | | | * 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.
* A new tapset that adds support for tty and serial devicesBreno Leitão2009-10-291-0/+189
| | | | | | A new tapset that supports tty devices and consequently serial devices. It is just a basic implementation that can be extended as demands appears
* RHBZ519314: define task_struct cast to operate without debuginfoFrank Ch. Eigler2009-10-201-7/+7
| | | | | * tapset/task.stp: Use @cast(...,"task_struct","kernel<linux/sched.h") throughout to operate dwarf-free.
* PR5434: Fix syscall.nfsservctl.Przemyslaw Pawelczyk2009-10-131-0/+8
| | | | | | | | Use proper $vars according to CONFIG_NFSD and CONFIG_COMPAT in syscall.nfsservctl and mask it out along with return probe if CONFIG_NFSD != "[ym]" && CONFIG_COMPAT != "y". * tapset/syscalls2.stp (syscall.nfsservctl): Fix it.
* Add the .call modifier to syscall entry probes.Przemyslaw Pawelczyk2009-10-122-704/+704
| | | | | | | | | | | | | | | | | | | | Inline functions do not have an indentifiable return point and require kernel built using VTA-enabled gcc to get tracking of variables. OTOH syscall functions are very rarely inlined (depending on the compiler mood), therefore filtering probes to include only non-inlined functions ensures consistent behavior between different kernels. This removes the problem of inaccessible variables in inlined syscalls that is described in comments #6-9 to PR5890 and gives us the status quo w.r.t. syscall probing, because before the commit solving PR10572 (b7478964) inline instances were masked anyway by non-inline ones. You can check whether you have inlined syscalls using following command: $ stap -l 'kernel.function("sys_*"),kernel.function("compat_sys_*")' \ 2>&1 -vvv | awk '/^selected inline/{print $5}' * tapset/syscalls.stp: Add .call to all entry probes. * tapset/syscalls2.stp: Ditto.
* Add task_time tapset, functions to query time resource usage of current task.Mark Wielaard2009-10-091-0/+101
| | | | | | | * tapset/task_time.stp: New tapset. * testsuite/buildok/task_test.stp: Add new task_time functions. * doc/SystemTap_Tapset_Reference/tapsets.tmpl: Add new section on Task Time Tapset. Include tapset/task_time.stp.
* tapset/proc_mem.stp: Document function parameters.Mark Wielaard2009-10-091-0/+2
|
* Add proc_mem tapset, functions to query memory usage of the current process.Mark Wielaard2009-10-061-0/+194
| | | | | | | * tapset/proc_mem.stp: New tapset. * testsuite/buildok/proc_mem.stp * doc/SystemTap_Tapset_Reference/tapsets.tmpl (memory_stp): Include tapset/proc_mem.stp.
* Scheduler Tapset based on kernel tracepointsKiran Prakesh2009-10-021-51/+302
| | | | | | | | | This patch adds kernel tracepoints based probes to the scheduler tapset along with the testcase, scheduler-test-tracepoints.stp and an example script, sched_switch.stp. Signed-off-by: Kiran Prakash <kiran@linux.vnet.ibm.com> Signed-off-by: Josh Stone <jistone@redhat.com>
* indent tapset: make O(1) rather than O(n)Frank Ch. Eigler2009-10-021-5/+1
| | | | | * tapset/indent.stp (_generic_indent): Use "%-*s" instead of string concatenation loop.
* Actually indent_thread() is a very useful function, butBreno Leitao2009-10-011-4/+16
| | | | | | | | | | | | | | | | | | | | | | sometimes you're probing something that is not related to any task, as an interrupt function, and if the application changes during the interrupt, the indentation gets confused. For example: 0 swapper(0): -> neo_copy_data_from_queue_to_uart 69 a.out(7659): -> neo_parse_modem 74 a.out(7659): -> neo_param 14 swapper(0): <- neo_copy_data_from_queue_to_uart 83 a.out(7659): -> jsm_carrier 86 a.out(7659): <- jsm_carrier 0 swapper(0): -> neo_parse_modem 94 a.out(7659): <- jsm_tty_set_termios 8 swapper(0): <- neo_parse_modem So, I decided to create a simpler function that doesn't consider the task. Much of the idea of this implementation came from Frank(Thanks)
* tapset docs cleanupFrank Ch. Eigler2009-09-299-80/+75
| | | | | | | | | | | | | | Several problems: some invalid <command> etc. directives in the tapset embedded docs; some analysis about the non-generation of the pdf; some cleanup of the generated man pages. * configure.ac (BUILD_PDFREFDOCS): Correct condition typo, but still leave disabled. * doc/SystemTap_Tapset_Reference/Makefile.am (XMLTOMANPARMS): Add, to disable noise "AUTHORS" / "COPYRIGHT" sections. * tapset/*.stp: Removed several docbook-y markup that is not valid in kerneldoc.
* Make sys32_pipe probe available only before 2.6.32Wenji Huang2009-09-292-0/+4
| | | | | * tapset/x86_64/nd_syscalls.stp: Switch by kernel version. * tapset/x86_64/syscalls.stp: Ditto.
* PR10700 Add newline after log() message.Mark Wielaard2009-09-281-1/+1
| | | | * tapset/logging.stp (log): Use _stp_printf "%s\n".
* Removing support for InMcastPkts, OutMcastPkts, InBcastPkts andDavid J. Wilder2009-09-251-82/+4
| | | | | OutBcastPkts. As they are not needed for tcpipstat and tend to break easily with kernel changes.
* PR10632: make randint() unprivilegedFrank Ch. Eigler2009-09-231-1/+1
|
* PR10632: simplify randint() implementationFrank Ch. Eigler2009-09-231-16/+12
| | | | | | | | | * tapset/random.stp (randint): Make it 1-arity (imply min=0). Document with kerneldoc. * doc/Systemtap_Tapset_Reference/tapsets.tmpl: Extract the docs. * runtime/arith.c (_stp_random_pm_u): Rename without _pm. (_stp_random_pm): Rewrite in terms of ..._u. * testsuite/random.stp: Adapt & simplify.
* PR10632: tapset: randint() function + testsRoland Grunberg2009-09-231-0/+18
|
* PR10390: ftrace() tapset functionFrank Ch. Eigler2009-09-231-4/+59
| | | | | | | | | | | * tapset/logging.stp (ftrace): New function. (*): Add kerneldoc to other functions. * doc/SystemTap_Tapset_Reference/tapsets.tmpl: Process logging.stp. * stapfuncs.3stap.in: Remove "LOGGING" section, now redundant. * runtime/autoconf-trace-printk.c: New autoconf test. * buildrun.cxx (compile_pass): Build it. * NEWS: Mention it. * testsuite/buildok/logging.stp: Test it.
* Don't mark print_ustack() as pure, it has side effects (printing the stack).Mark Wielaard2009-09-181-1/+1
| | | | * tapset/ucontext-symbols.stp (print_ustack): Remove /* pure */
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapWilliam Cohen2009-09-171-14/+6
|\
| * Remove temporaries in netdev.change_macJosh Stone2009-09-171-14/+6
| | | | | | | | | | | | | | | | | | As reported by dsmith, reusing temporary locals will prevent our limited optimizer from eliminating code. I'm getting rid of these particular locals altogether. * tapset/networking.stp (netdev.change_mac): Don't write mac intermediates into locals; just pass them directly to sprintf.
* | Add task_backtrace systemtap function.William Cohen2009-09-171-0/+13
|/
* PR10650: markup some unprivileged-safe tapset functionsFrank Ch. Eigler2009-09-168-61/+113
| | | | | | | | | | | | | | | | | Add /* unprivileged */ to a variety of tapset embedded-c functions, together with uid-assertion-checking code as needed. This is only an initial set, and may need to grow or shrink after further testing. Prototyped-By: Dave Brolley <brolley@redhat.com> * runtime/runtime.h (is_myproc, assert_is_myproc): New macros. * runtime/addr-map.c (lookup_bad_addr): Reject if !is_myproc in unprivileged mode. * runtime/print.c (_stp_print_kernel_info): Add unprivileged mode info. * tapset/DEVGUIDE: Document /* pure */ and /* unprivileged */. * tapset/*.stp: Add /* unprivileged */ here and there, in questionable cases along with an assert_is_myproc().
* Spelling fixes in the tapsetsJosh Stone2009-09-167-31/+30
|
* Adding a some new probes to the networking.stp tapsetBreno Leitao2009-09-161-0/+177
| | | | | | | | A tapset that helps those who are working with network devices. These new fnctions try to cover almost all functions related to these network devices. Signed-off-by: Josh Stone <jistone@redhat.com>
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapDave Brolley2009-09-163-5/+28
|\
| * Use the sched_switch tracepoint if available.William Cohen2009-09-141-3/+3
| |
| * PR10613 sys32_ustat is renamed compat_sys_ustat in 2.6.30 kernel.Mark Wielaard2009-09-072-2/+25
| | | | | | | | | | | | | | | | | | | | Note that the new compat_sys_ustat is asmlinkage and has a differently named argument for the user struct. * tapset/syscalls2.stp (syscall.ustat32): Add compat_sys_ustat variant. (syscall.ustat.return): Likewise. * tapset/nd_syscalls2.stp (nd_syscall.ustat32): Likewise. (nd_syscall.ustat.return): Likewise.
* | Create is_myproc helper function.Dave Brolley2009-09-161-0/+14
|/
* Use a header-cast in nd_syscall.sigaltstackJosh Stone2009-08-311-1/+2
| | | | | | | | | The nd_syscalls tapset is meant to run with no debuginfo, so using a @cast into a module type defeats the purpose. We should use a @cast with a header name instead, so debuginfo is generated. * tapset/i386/nd_syscalls.stp (nd_syscall.sigaltstack): Get the pt_regs type definition from "kernel<asm/ptrace.h>".
* Mirror the sys_sigaltstack fix in nd_syscallsJosh Stone2009-08-311-2/+2
| | | | | | | The argument fix in commit 77c26b4 needs to be made in nd_syscalls too, where the conditional kernel should be 2.6.30 instead of 2.6.29. * tapset/i386/nd_syscalls.stp (nd_syscall.sigaltstack): Check 2.6.30.
* Fix sys_sigaltstack ussp conditional.Mark Wielaard2009-08-291-1/+1
| | | | | | | | For i386 sys_sigaltstack changed argument params starting with kernel commit b12bda which was only included in 2.6.30, not in any 2.6.29 kernel. * tapset/i386/syscalls.stp (sys_sigaltstack): ussp conditional should be kernel_v < "2.6.30" for param change (from bx to regs).