summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapFrank Ch. Eigler2010-02-2315-58/+392
|\ | | | | | | | | | | | | | | | | | | | | | | * 'master' of ssh://sources.redhat.com/git/systemtap: PR10719 part 1: Partial constant folding Simplify null_statement construction Fixed PR 11269 by properly handling mmap syscall 'fd' argument. Removed rvalue operator check. PR 10690 (partial fix). Handle '.=' operator in procfs probes. Conflicts: tapsets.h
| * PR10719 part 1: Partial constant foldingJosh Stone2010-02-231-0/+227
| | | | | | | | | | | | | | | | | | This implements constant folding for if/for/foreach, unary expressions, and ternary expressions. Binary expressions are TODO... * elaborate.cxx (const_folder): New visitor to collapse constants. (semantic_pass_const_fold): Drive everything through const_folder. (semantic_pass_optimize1): Call it.
| * Simplify null_statement constructionJosh Stone2010-02-234-11/+18
| | | | | | | | It only needs a token*, so build that into the constructor.
| * Fixed PR 11269 by properly handling mmap syscall 'fd' argument.David Smith2010-02-238-26/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * testsuite/systemtap.syscall/mmap.c (main): Added mprotect and mremap testing (along with testing of anonymous maps). * tapset/i386/syscalls.stp: In mmap probes, handle the fact that the kernel gets an unsigned long 'fd', but the user-side passes a signed int. * tapset/i386/nd_syscalls.stp: Ditto. * tapset/ia64/syscalls.stp: Ditto. * tapset/powerpc/nd_syscalls.stp: Ditto. * tapset/powerpc/syscalls.stp: Ditto. * tapset/x86_64/nd_syscalls.stp: Ditto. * tapset/x86_64/syscalls.stp: Ditto.
| * Removed rvalue operator check.David Smith2010-02-231-12/+4
| | | | | | | | | | * tapset-procfs.cxx (procfs_var_expanding_visitor::visit_target_symbol): Removed unneeded rvalue operator check.
| * PR 10690 (partial fix). Handle '.=' operator in procfs probes.David Smith2010-02-233-21/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tapsets.h (var_expanding_visitor): Add 'valid_ops' and 'op' member variables. * tapsets.cxx (var_expanding_visitor::var_expanding_visitor): Set 'valid_ops' to '='. By default, var_expanding_visitor classes only handle the '=' operator. (var_expanding_visitor::visit_assignment): Remember what operator we're handling. When an operator is found that isn't in the 'valid_ops' set, error. * tapset-procfs.cxx (procfs_var_expanding_visitor::procfs_var_expanding_visitor): Add '.=' to the 'valid_ops' set. (procfs_var_expanding_visitor::visit_target_symbol): Handle the '.=' operator when the target variable is an lvalue.
* | PR11005: @defined($tvar) predicate, part 1Frank Ch. Eigler2010-02-2312-64/+302
|/ | | | | | | | | | | | | | | | | | * staptree.h (defined_op): New class. * all files: Extend all visitors as appropriate, mostly dummy/pass-through implementation. * parse.cxx (parse_target_symbol): New function, factored out of parse_symbol(). (parse_define_op): New function. * NEWS: Mention it. * parse.h: Corresponding changes. * tapsets.cxx (var_expanding_visitor::visit_defined_op): Implement @defined() semantics. (dwarf_var_expanding_visitor::visit_target_symbol): Adjust. * tapset-utrace.c (visit_target_symbol_arg): Avoid crashes on $argZZZ. * tapsets.cxx (sdt_var_expanding_visitor): Ditto. * semok/thirtysix.stp: New test.
* hashing: add in the -Werror-defeating flagFrank Ch. Eigler2010-02-221-0/+1
|
* Check for/build elfutils iff translator is enabled.Przemyslaw Pawelczyk2010-02-222-26/+30
| | | | * configure.ac: Don't bother with elfutils if $enable_translator = no.
* Prevent accidental global cleanup triggering for syscall test.tcl.Mark Wielaard2010-02-222-34/+34
| | | | | | | | | | | Later tests might trigger a cleanup and might set the global dir variable leading to the syscall test.tcl trying to do an exec rm -rf on whatever dir was set. So rename proc cleanup and global dir in syscall test.tcl to something a bit less likely to clash. * testsuite/systemtap.syscall/test.tcl: Rename proc cleanup to syscall_cleanup and global dir to syscall_dir. * testsuite/systemtap.syscall/test-debug.tcl: Likewise.
* Tweak shared attach sdt test.Stan Cox2010-02-211-40/+70
| | | | * sdt_misc.exp: Make all semaphore references from the .so
* hwbkpt: simplify diagnostics and codeFrank Ch. Eigler2010-02-212-104/+84
| | | | | | | | | | | * tapsets.cxx (hwbkpt_derivedc_probe_group): Lose max_... field. Rename hwbkpt_probes_vector -> hwbkpt_probes. (enroll): Instead set it here, emit normal suppressible warning if exceeded. (emit_*): Use newline(NN) etc. for proper indentation of generated code. (emit_module_init): Defer most potential problems to register_wide_hw_breakpoint() instead of preemptive errors. * translate.cxx (emit_module_init): Assert 0 indentation more frequently.
* Make unprivilegedok/one.stp compatible with vanilla kernelWenji Huang2010-02-211-1/+1
|
* Add explicit timeout to overflow_error testWenji Huang2010-02-211-0/+1
|
* Translator enablement of Hardware breakpoints for s390Prerna Saxena2010-02-211-2/+16
|
* hardware breakpoints: improve error messages for unsupported configurationsFrank Ch. Eigler2010-02-191-17/+22
| | | | | | * tapsets.cxx (hwbkpt_builder::build): Assert needed kernel_configs here, instead of.. (register_standard_tapsets): ... here.
* PR11208: glue adjacent string literals together.Frank Ch. Eigler2010-02-194-2/+37
| | | | | * parse.cxx (lexer::scan): Glue adjacent strings together. * testsuite/parseko/twentyseven.stp, semok/thirtyfive.stp: New tests.
* PR11275: be less verbose in case of command line option parsingFrank Ch. Eigler2010-02-191-18/+23
| | | | | * main.cxx (main): exit() instead of printing usage for most errors. Also support --help.
* Allow CONFIG_foo COMPARISON-OP CONFIG_bar in preprocessor conditionals.Mark Wielaard2010-02-192-2/+43
| | | | | | | * parse.cxx (eval_pp_conditional): If rhs and lhs are both CONFIG_... identifiers try to convert them both to numbers or otherwise threat them both as strings for eval_comparison. * testsuite/semok/config_config.stp: New test.
* Allow CONFIG_foo COMPARISON-OP number in preprocessor conditionals.Mark Wielaard2010-02-192-12/+51
| | | | | | * parse.cxx (eval_pp_conditional): Handle r->type == tok_number when l->type == tok_identifier. * testsuite/semok/config_number.stp: New test.
* PR11296: switch to "sys/sdt.h" in test casesFrank Ch. Eigler2010-02-1814-18/+18
|
* Restore redirection of the stdout of stap-serverd to /dev/nullDave Brolley2010-02-171-1/+1
|
* Improved server certificate management. ulimit for stap-server only.Dave Brolley2010-02-175-47/+85
| | | | | | | - Server now generates a new certificate when old one expires. - Certificates now valid for 1 year. - ulimit for stap-server-connect now only set for stap-server user and only when override variable is not set.
* Use clamping to more easily normalize input valuesJosh Stone2010-02-165-20/+25
| | | | | | The kernel has min/max/clamp macros to make range comparisons easier. Clamp is a newer invention, but we can define it for older kernels in terms of min and max.
* PR11282: Keep the md4 state in the hash copy constructorJosh Stone2010-02-161-1/+1
| | | | | | | | We were getting new hash collisions, because the new hash copy constructor was restarting the md4 computation. Everything from get_base_hash was thus lost. * hash.h (hash::hash): Keep the md4 state when copying.
* PR11277: Use consistent octal in quoted stringsJosh Stone2010-02-163-33/+26
| | | | | | | | | | Previously, our octal escapes used variable lengths, which can lead to ambiguities. Also, 8-bit characters would only output the least digit. * runtime/string.c (_stp_text_str): Always output 3-digit octal escapes, and handle 8-bit chars more gracefully. * testsuite/systemtap.string/text_str.stp: Include an 8-bit character. * testsuite/systemtap.string/text_str.exp: Above + expect 3-digit octal.
* Don't try to parallel install partial build-elfutils build in lib-elfutils.Mark Wielaard2010-02-1613-2663/+4845
| | | | | | | | | | | | | | | | | | | The parallel install into lib-elfutils during the build seems to be fragile, so explicitly install the libs with -j1. * Makefile.am (stamp-elfutils): Add -j1 in for dir loop sub make. * Makefile.in: Regenerated. * aclocal.m4: Likewise. * compile: Likewise. * config.in: Likewise. * configure: Likewise. * doc/Makefile.in: Likewise. * doc/SystemTap_Tapset_Reference/Makefile.in: Likewise. * doc/beginners/Makefile.in: Likewise. * grapher/Makefile.in: Likewise. * testsuite/Makefile.in: Likewise. * testsuite/aclocal.m4: Likewise. * testsuite/configure: Likewise.
* Add documentation for task.stp tapset.Mark Wielaard2010-02-152-34/+105
|
* elaborate.cxx: Point to the location of the error when rejectingDave Brolley2010-02-151-1/+2
| | | | probe points.
* Don't pass client-only options to the server.Dave Brolley2010-02-151-6/+12
| | | | Also correct parsing of the --server option.
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapDave Brolley2010-02-1516-84/+252
|\
| * PR11281 Allow negative values for -D argument.Mark Wielaard2010-02-141-1/+1
| | | | | | | | | | | | | | Change regexp match to "^[a-z_][a-z_0-9]*(=-?[a-z_0-9]+)?$". * main.cxx (main): case 'D' allow optional single minus sign after equal in assert_regexp_match().
| * Test for sendfile syscall can handle non-socket fds now.Mark Wielaard2010-02-131-4/+4
| | | | | | | | | | | | | | | | Since 2.6.33 sendfile can handle non-socket fds, so make the test handle both success and failure. * testsuite/systemtap.syscall/sendfile.c (main): Make buffer 22 bytes, since 22 == EINVAL, test for 22 bytes send or -22 failure.
| * PR11105 part 2a, fix buggy \\. in -r option regexpFrank Ch. Eigler2010-02-121-1/+1
| |
| * PR11105 part 2: tighten constraints on stap-server parameters passed to makeFrank Ch. Eigler2010-02-126-56/+101
| | | | | | | | | | | | | | * util.h, util.cxx (assert_match_regexp): New function. * main.cxx (main): Constrain -R, -r, -a, -D, -S, -q, -B flags. * stap-serverd (listen): Harden stap-server-connect with ulimit/loop. * testsuite/systemtap.server/{client,server}_args.exp: Revised.
| * Add simple test for PR10257 (sprint(@hist_linear)).Przemysław Pawełczyk2010-02-112-0/+18
| | | | | | | | | | | | | | | | | | | | Test is simple, because print and sprint uses the same code for handling @hist_* and it is not intended for playing with MAXSTRINGLEN, which is required anyway for bigger histograms (the one generated here consists of only 127 characters). When PR10690 (need way to produce bigger procfs output) will be fixed, then we should add another test for both PRs with normal histogram.
| * Fixed PR 11270 by adding nd_syscall testcase.David Smith2010-02-104-2/+99
| | | | | | | | | | | | | | | | | | | | * testsuite/systemtap.syscall/test.tcl: Now uses global variable 'test_script' to find test script to run. * testsuite/systemtap.syscall/syscall.exp: Sets test_script. * testsuite/systemtap.syscall/nd_sys.stp: New test script. Copy of sys.stp, but uses nd_syscall probes. * testsuite/systemtap.syscall/nd_syscall.exp: New testcase. Copy of syscall.exp, but uses nd_sys.stp test script.
| * Merge branch 'master' of ssh://sourceware.org/git/systemtapStan Cox2010-02-091-5/+3
| |\
| | * rhbz#563114 Make syscall.pipe sys32_pipe probe alias optional on x86_64.Mark Wielaard2010-02-091-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Some distributions might have backported the pipe fd leak patch and removed the sys32_pipe kernel function even before 2.6.32. So make the probe alias optional instead of relying on a version check. * tapset/x86_64/syscalls.stp (syscall.pipe): Make alias optional. (syscall.pipe.return): Likewise.
| * | Fix tcl.exp initialization bugStan Cox2010-02-091-0/+1
| |/ | | | | | | tcl.exp: Initialize xok
| * Fixed BZ559643 by doing 'spawn;expect;wait' instead of 'spawn;wait;expect'.David Smith2010-02-081-17/+26
| | | | | | | | | | | | * testsuite/systemtap.base/labels.exp: Corrected order of 'spawn;expect;wait' calls. Added 'wait' calls when needed. Also, doesn't run the "labels exe .label" test if uprobes isn't supported.
* | Rework identification of probes allowed for unprivileged users.Dave Brolley2010-02-1517-96/+205
|/ | | | | | | - Bind unprivileged permission at probe registration time. - Remove check_unprivileged filter from derived_probe_builder and its children. - Add test suites for unprivilegedok and unprivilegedko.
* Define empty function for tcpmib testWenji Huang2010-02-081-0/+8
|
* Fix test case tcpmib-all-probes.stpWenji Huang2010-02-081-6/+1
|
* undocumented, obfuscated, *evil* option to suppress -Werror during module ↵Przemysław Pawełczyk2010-02-063-4/+17
| | | | | | | | building * session.h (omit_werror): New flag. * buildrun.cxx (compile_pass): Use it. * main.cxx (main): Set it.
* Added backports required for 2.6.18 kernel for RHEL 5.David J. Wilder2010-02-054-25/+89
| | | | | | | Files changed: tapset/ipmib.stp, tapset.tcpmib.stp, testsuite/systemtap.examples/network/tcpipstat.stp, testsuite/systemtap.examples/network/tcp_trace.stp Signed-of-by: David Wilder <dwilder@us.ibm.com>
* Use SYSTEMTAP_INCLUDES for systemtap.apps tests.Stan Cox2010-02-052-2/+2
| | | | | * mysql.exp: Use SYSTEM_INCLUDES. * postgres.exp: Likewise.
* PR11256: harden --unprivileged modeFrank Ch. Eigler2010-02-053-26/+17
| | | | | | | | * tapsets-mark.cxx, tapsets.cxx: Don't even publish probe point families that are inappropriate for use in --unprivileged mode. (dwarf_derived_probe_*unprivileged*): Remove, to default to blanket no-permission rather than emit_process_owner_permission mode. * testsuite/semko/fortyeight.stp: New test.
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapDave Brolley2010-02-0513-353/+814
|\
| * excise obsolete description of process-capabilities usage in staprunFrank Ch. Eigler2010-02-051-23/+7
| |