summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fixed PR 11078. Changed code to avoided procfs race condition.David Smith2010-02-033-68/+265
| | | | | | | | | | | | | | | | | * runtime/procfs.c: Allow STP_MAX_PROCFS_FILES define to be overridden. (_stp_create_procfs): Calls proc_create() instead of create_proc_entry() to avoid a race condition. * runtime/procfs-probes.c: New file containing procfs probe support routines. * tapset-procfs.cxx (procfs_derived_probe::join_group): Update struct _stp_procfs_data definition. (procfs_derived_probe::emit_module_decls): Include procfs-probes.c, which is where the definition of struct stap_procfs_probe exists. Update generated routines to read/write procfs data. (procfs_derived_probe_group::emit_module_init): Pass file_operations argument to _stp_create_procfs(). Initialize mutex. (procfs_var_expanding_visitor::visit_target_symbol): Update generated code.
* PR9931: generate log to help diagnosing occasional cache hash collisionsWenji Huang2010-02-033-0/+58
| | | | | | | | | | | | | | | | | Ideas from Frank Ch. Eigler: - extending the hash.add() function to pass names along with the hash-mix values, so that class hash can internally track the hash-report string - storing the reports themselves in the cache, beside the .ko / .c files, and changing the cache-size-limit logic to delete these .txt files upon garbage collection * hash.h : New member parm_stream. * hash.cxx (get_parms): New function to convert parms stream to string. (hash::add): Aggregrate parms stream. (create_hash_log): New function to log hash operation. (find_*_hash): Log hash at the end of function. * cache.cxx (clean_cache): Remove log when cache reaches limitation.
* Fix procfs_write.exp so that it will pass under RHELl5.David Smith2010-02-022-2/+6
| | | | | | | * testsuite/systemtap.base/procfs_write.exp: Small changes for RHEL5 support. * testsuite/lib/stap_run.exp (stap_run): Increase maximum number of characters to match against.
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapWilliam Cohen2010-02-025-28/+60
|\
| * rhbz 560890: preserve -L/-l variable orderingNobuhiro Tachino2010-02-024-27/+57
| | | | | | | | | | | | Switch to list<string> from set<string> for collecting available $var lists. Use O(N**2) list-uniqueifier that preserves initial ordering.
| * Support building against elfutils < 0.142 again.Mark Wielaard2010-02-021-1/+3
| | | | | | | | * dwflpp.cxx (get_cfa_ops): Guard new cfi related code and variables.
* | Add nfs_func_log example.William Cohen2010-02-024-0/+24
| |
* | Add nfs_func_users example.William Cohen2010-02-026-0/+70
| |
* | Add iodevstats.stp exampleWilliam Cohen2010-02-026-0/+97
|/
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapDave Brolley2010-02-0233-68/+839
|\
| * buildok test doesn't need /usr/bin/envMark Wielaard2010-02-021-1/+1
| | | | | | | | * testsuite/buildok/hwbkpt.stp: Just use stap directly after #!.
| * Make sure cfa_ops are always retrieved through dwfl global address.Mark Wielaard2010-02-025-22/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dwflpp::translate_location() works on the dw address space, but get_cfa_ops() starts out with dwfl calls (only dwarf_cfi_addrframe() needs to be adjusted for bias). * dwflpp.cxx (translate_location): Pass pc plus module bias through to get_cfa_ops. (get_cfa_ops): Adjust for bias when calling dwarf_cfi_addrframe(), add frame start/end address when found if verbose logging. * testsuite/systemtap.exelib/lib.stp: Add $foo and $bar variables to process.function probes. * testsuite/systemtap.exelib/libmarkunamestack.stp: Likewise. * testsuite/systemtap.exelib/lib.tcl: Expect correct values for process.function probe variables. * testsuite/systemtap.exelib/libmarkunamestack.tcl: Likewise.
| * Remove unused variable argstreamWenji Huang2010-02-021-1/+0
| |
| * regen sample indexesFrank Ch. Eigler2010-02-014-0/+24
| |
| * new sample for sandeen@redhat.com: fntimes.stpFrank Ch. Eigler2010-02-012-0/+36
| |
| * Fix a incorrect UNKNOWN VALUE message creation in _sock_type_str functionPetr Muller2010-02-011-1/+1
| |
| * Make hwbkpt.stp compitable with old kernel and exectuableWenji Huang2010-02-011-3/+13
| | | | | | | | | | * testsuite/buildok/hwbkpt.stp: Switch by CONFIG_* and be executable.
| * Fix uninitialization error on gcc 4.1.xWenji Huang2010-02-011-1/+1
| | | | | | | | * testsuite/systemtap.base/overflow-get_argv.stp: Initialize var.
| * Hardware Breakpoints for x86 / x86_64, based on mainline kernel. [Changes : ↵Prerna Saxena2010-01-295-4/+413
| | | | | | | | Part 2]
| * Hardware Breakpoints for x86 / x86_64, based on mainline kernelPrerna Saxena2010-01-291-0/+4
| |
| * PR11234: Ensure __get_argv doesn't overflowJosh Stone2010-01-283-11/+82
| | | | | | | | | | | | | | That function was calling strlcpy as if the return value was the number of bytes copied, but strlcpy actually returns the length of the input string. We now use min() to handle the case when it's bigger than the buffer length, and drop out of the loop when that happens.
| * PR11197, blurbifyFrank Ch. Eigler2010-01-281-0/+5
| |
| * PR6954: make ++/-- operation trigger automatic global printingWenji Huang2010-01-283-8/+13
| | | | | | | | | | | | | | * staptree.cxx (varuse_collecting_visitor::visit_arrayindex): Regard operations as pure writes. * testsuite/systemtap.base/global_end.exp: Add test case. * testsuite/systemtap.base/global_end.stp: Ditto.
| * PR11197: prevent startup of stap-server as rootFrank Ch. Eigler2010-01-272-2/+13
| | | | | | | | | | | | | | * stap-serverd: Block startup if whoami=root, unless magic environment variable is set. * testsuite/lib/systemtap.exp: Set magic environment variable to override protection.
| * Fix PC arithmetic for CFI in loc2c-test.Roland McGrath2010-01-261-2/+2
| | | | | | | | * loc2c-test.c (main): Correctly bias PC passed to dwarf_cfi_addrframe.
| * Fixed PR 11223 by null terminating strings in procfs write probes.David Smith2010-01-262-3/+139
| | | | | | | | | | | | * tapset-procfs.cxx (procfs_var_expanding_visitor::visit_target_symbol): Correctly null terminate strings in procfs write probes. * testsuite/systemtap.base/procfs_write.exp: New test.
| * Fixed PR 11220 by setting MAP_STRING_LENGTH to MAXSTRINGLEN.David Smith2010-01-252-3/+50
| | | | | | | | | | | | * runtime/map.h: Set MAP_STRING_LENGTH to MAXSTRINGLEN so that large strings can be stored in arrays. * testsuite/systemtap.base/array_string.exp: New testcase.
| * Fix typos in several text filesWenji Huang2010-01-224-12/+12
| |
* | PR 11105: Remaining client-side problems:Dave Brolley2010-02-023-42/+54
|/ | | | | stap-client: Correct handling of embedded newlines in arguments. server_args.exp: Add additional cases discovered by fche and by fuzzing.
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapDave Brolley2010-01-2126-4980/+3033
|\
| * Run autoreconfEugeniy Meshcheryakov2010-01-2111-4912/+2746
| |
| * Use html-nochunks output instead of txt to test for stringparam support in xmltoEugeniy Meshcheryakov2010-01-211-2/+2
| | | | | | | | | | txt output requires additional build dependencies (w3m or similar browser).
| * Add shebangsEugeniy Meshcheryakov2010-01-212-0/+4
| |
| * use eh_frame_hdr table to speed up unwindingTim Moore2010-01-203-28/+105
| | | | | | | | | | | | | | | | | | | | | | | | * runtime/sym.h (_stp_module): add unwind_hdr_addr member. * runtime/unwind.c (read_ptr_sect): Modification of read_pointer that also handles offsets from text or "data" sections. (read_pointer): Use it. (_stp_search_unwind_hdr): Use read_ptr_sect to calculate values that are relative to the .eh_frame_hdr section. (unwind_frame): Search the frame header if this is an eh frame. * translate.cxx (get_unwind_data): Get the eh_frame_hdr too. (dump_unwindsyms): Write out eh_frame_hdr stuff.
| * Add dtrace.1 man page.Stan Cox2010-01-205-3/+97
| | | | | | | | | | | | | | | | * dtrace.1: New file. * Makefile.am (man_MANS): Add dtrace.1 * Makefile.in: Regenerate. * configure.ac (AC_CONFIG_FILES): Add dtrace.1 * configure: Regenerate.
| * chmod +x testsuite/parseko/conditional.stpJosh Stone2010-01-191-0/+0
| |
| * PR11195: Prevent all nested argument substitutionJosh Stone2010-01-193-31/+43
| | | | | | | | | | | | | | | | | | | | | | Our existing protection only made sure that the first token in a substitution wasn't a nested substitution. That's not sufficient when there could be multiple tokens involved. This patch makes sure that no nested tokens are ever allowed to be argument substitutions. This also adds a cursor_suspended_line/column and resets the main cursor_line/column to the beginning of the substitution, so errors will point a little closer to the right place.
| * security: list some prudent security practices for stap-serverFrank Ch. Eigler2010-01-191-0/+23
| |
| * Swap DW_OP_shr and DW_OP_shra.Roland McGrath2010-01-191-2/+2
| | | | | | | | * loc2c.c (translate): DW_OP_shr is unsigned, DW_OP_shra is signed.
| * Use signed division for DW_OP_div.Roland McGrath2010-01-191-1/+10
| | | | | | | | * loc2c.c (translate): Use signed division for DW_OP_div.
| * Fix the listing mode of process.library.markJosh Stone2010-01-181-1/+1
| | | | | | | | | | | | | | | | | | Our hack for producing nicer listing modes was to write the mark name in component index 1. That's fine for process.mark, but writes the wrong position for process.library.mark. It now munges the last probe component of any number of indexes. (A better fix is due in PR10831, preserving the derivation chain.)
* | PR 11201: From Eugeniy Meshcheryakov (eugen@debian.org):Dave Brolley2010-01-212-3/+2
| | | | | | | | Remove $(pkglibexec_SCRIPTS) from CLEANFILES.
* | Merge branch 'master' of ssh://sources.redhat.com/git/systemtapDave Brolley2010-01-186-49/+19
|\|
| * PR11173 Markers get a bad address in prelinked libraries.Mark Wielaard2010-01-183-43/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | Our literal_addr_to_sym_addr() function was just wrong. To compensate for raw addresses read from elf (either given by the user or through a mark transformation) we need to know what the elf_bias is (as returned by dwfl_module_getelf) before feeding them to any libdwfl functions. * tapsets.cxx (query_module_dwarf): Always add elf_bias to raw function or statement addresses before calling query_addr(). (query_addr): Don't call literal_addr_to_sym_addr(). * dwflpp.h (literal_addr_to_sym_addr): Removed. * dwflpp.cxx (literal_addr_to_sym_addr): Likewise.
| * PR11105: forget about packaging stap-server-requestFrank Ch. Eigler2010-01-151-1/+0
| |
| * Relax sdt address check for attach to running process case.Stan Cox2010-01-152-5/+10
| | | | | | | | * uprobes-common.c (stap_uprobe_change_plus): Relax VM_EXEC check.
* | Correct client-side quoting issues discovered by fche during the server-side ↵Dave Brolley2010-01-182-46/+70
| | | | | | | | | | | | reimplementation. Also add the test cases to the test suite.
* | Merge branch 'master' of ssh://sources.redhat.com/git/systemtapDave Brolley2010-01-152-3/+8
|\|
| * PR11105: support default unset --prefixFrank Ch. Eigler2010-01-152-3/+8
| | | | | | | | * configure.ac (STAP_PREFIX): Map NONE -> /usr/local.
* | Merge branch 'master' of ssh://sources.redhat.com/git/systemtapDave Brolley2010-01-1513-632/+456
|\| | | | | | | | | | | Conflicts: stap-client