summaryrefslogtreecommitdiffstats
path: root/tapsets.cxx
Commit message (Collapse)AuthorAgeFilesLines
...
* PR6739: speed up decl-alias cache by avoiding its recomputation; move to ↵Frank Ch. Eigler2008-07-111-19/+26
| | | | per-module/cu
* PR6703: gcc4.1 build compatibilityFrank Ch. Eigler2008-07-101-2/+1
|
* Merge commit 'origin/master' into pr6429-comp-unwindsymsFrank Ch. Eigler2008-07-091-0/+93
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'origin/master': fix shutdown race condition for scripts that might exit during begin probes Fix PR 6732: Add runtime/autoconf-real-parent.c check for task_struct field. clarify dejagnu test case name for empty-struct changes add changelog entries for last two changes Add test suite for declaration resolution Fix semantic error: empty struct Add hack to support git 1.6 in git_version.sh Sync latest fix for git_version.sh from RadeonHD's tree Slightly cleanup code of translate.cxx PR2111: add general blurbage to stapprobes.5 on syscalls tapset Use `uname -rvm` for checking system compatibility. Generate Add section to stapex manual page on how installed examples are documented. Install examples, demos and samples. Install tutorial and langref manuals.
| * Fix semantic error: empty structJames Bottomley2008-07-091-0/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Tue, 2008-07-08 at 14:57 -0400, Frank Ch. Eigler wrote: > Hi - > > > you need a global cache for resolution ... it's not tied to any local > > class instance. For class dwflpp it probably doesn't matter, since that > > class is effectively static (by its survival for a session) but > > logically because the DW_AT_declaration resolution is global, so should > > the cache that does it. > > .. except it's not actually global, in that the kernel is not the only > code that will go through the dwarf family of probe processors - > user-space dwarf files are coming its way soon. Plus, if in the > future the systemtap frontend attempts distributed probing of multiple > target systems concurrently, "global" will be even more local. In that context its as global as a lot of the other static data in that structure (like this_session) which would also have to be fixed to do a multiple target system. Regardless, it can become per instance: it will only screw up if dwflpp moves to being short lived. James
* | Merge commit 'origin/master' into pr6429-comp-unwindsymsFrank Ch. Eigler2008-07-041-2/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'origin/master': ubuntu (2.6.24-16-server) kernel compatibility fix client/server take 2. See bz6565. Add functioncallcount.meta and functioncallcount.stp. Add para-callgraph.stp and para-callgraph.meta. Fixed __stp_get_mm_path() error return code. diagnostics improvement: print arch/mach at top if -vv Make _vfs.generic_commit_write only for kernel<=2.6.25 Handles "mortally wounded" threads correctly when detaching. further clarify that elfutils need not be absolutely freshest, nor rebuilt every time point out releases/ directory; clarify optionality of elfutils bundling Add auto_free_ref to auto_free stuff; bug 6694
| * Add auto_free_ref to auto_free stuff; bug 6694Tim Moore2008-06-291-2/+2
| | | | | | | | Also add auto_free.h to EXTRA_DIST.
* | Merge commit 'origin/master' into pr6429-comp-unwindsymsFrank Ch. Eigler2008-06-271-91/+84
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'origin/master': Always include libdw using link groups. Fix bug in handling process(PID) probes. Added tests for 'process(PID)' variants. This commit makes changes to the VFS tapset. The changes include deprecation of syscalls2.stp: Add sys_renameat. Only probe lines once for the :* wildcard line pattern. Revert checking address in runtime bz451707: fix conversions.exp test $name Cleanup in tapsets.cxx Added powerpc support to runtime/syscall.h. Remove validating _stext due to many aliased symbols PR6646: Add checking address in runtime Fixed offset argument to vm_callback.
| * Fix bug in handling process(PID) probes.David Smith2008-06-271-1/+1
| | | | | | | | | | | | | | 2008-06-27 David Smith <dsmith@redhat.com> * tapsets.cxx (utrace_derived_probe_group::emit_module_decls): Fix bug in handling process(PID) probes.
| * Only probe lines once for the :* wildcard line pattern.Stan Cox2008-06-251-1/+4
| |
| * Cleanup in tapsets.cxxTim Moore2008-06-241-89/+79
| |
* | utrace process("PATH") also populate session unwindsym_modulesFrank Ch. Eigler2008-06-231-0/+5
| |
* | populate sess.unwindsym_modules set from dwarf probesFrank Ch. Eigler2008-06-231-1/+2
|/
* make module_cache a session field rather than plain staticFrank Ch. Eigler2008-06-231-21/+34
|
* Major update to memory map change notification code.David Smith2008-06-231-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-06-23 David Smith <dsmith@redhat.com> * tapsets.cxx (utrace_derived_probe_group::emit_probe_decl): Handles UDPF_NONE value. (utrace_derived_probe_group::emit_vm_callback_probe_decl): New function. (utrace_derived_probe_group::emit_module_decls): Calls emit_vm_callback_probe_decl() to set up vm_callbacks. 2008-06-23 David Smith <dsmith@redhat.com> * task_finder.c (__stp_tf_vm_cb): New function. (stap_register_task_finder_target): Sets up syscall entry and syscall exit handlers. (__stp_find_file_based_vma): New function. (__stp_utrace_task_finder_target_syscall_entry): New function. Saves vma information off at syscall entry. (__stp_target_call_vm_callback): New function. (__stp_utrace_task_finder_target_syscall_exit): New function. Handles changes to memory maps based on information saved at syscall entry. * syscall.h: New file containing syscall function. * task_finder_vma.c: New file containing saved vma information handling functions.
* Add kernel.statement("Func@File:*) and kernel.statement("Func@File:X-Y)Stan Cox2008-06-231-86/+108
|
* more warning/error consistency for alternatives listingFrank Ch. Eigler2008-06-161-7/+1
|
* Fix bug in dwfl_assert call.Tim Moore2008-06-111-1/+1
| | | | | The problem was caused by ptrdiff_t being a long on x86_64 and not matching any of the overloaded definitions of dwfl_assert.
* Fix some logic inversions with dwfl_assert.Tim Moore2008-06-111-3/+3
|
* PR 2608 plus some refactoring in tapsets.cxxTim Moore2008-06-111-95/+85
| | | | | New dwarf_wrappers.h, dwarf_wrappers.cxx for for idiomatic access to libdwarf and refactoring somethings out of the giant classes in tapsets.cxx.
* Very early beginnings of memory map notification support.David Smith2008-06-101-0/+1
| | | | | | | | | | | | | | | 2008-06-10 David Smith <dsmith@redhat.com> * tapsets.cxx (utrace_derived_probe_group::emit_probe_decl): Initializes .vm_callback. 2008-06-10 David Smith <dsmith@redhat.com> * task_finder.c (struct stap_task_finder_target): Added vm_callback public field. (stap_register_task_finder_target): Sets up .report_quiesce handler. (__stp_utrace_task_finder_target_quiesce): New function.
* Fixed utrace probe '$syscall' handling.David Smith2008-06-091-16/+3
| | | | | | | | | | | | | 2008-06-09 David Smith <dsmith@redhat.com> * tapsets.cxx (utrace_var_expanding_copy_visitor::visit_target_symbol): Calls 'syscall_nr' to get the value of '$syscall'. 2008-06-09 David Smith <dsmith@redhat.com> * x86_64/registers.stp (syscall_nr): Added syscall_nr function. * i686/registers.stp (syscall_nr): Ditto.
* Fix powerpc PR 6601.Jim Keniston2008-06-091-1/+57
|
* Made 2.6.25 kernel updates.David Smith2008-06-091-28/+18
| | | | | | | | | | | | | | 2008-06-09 David Smith <dsmith@redhat.com> * tapsets.cxx (utrace_derived_probe::join_group): Removed generated inclusion of tracehook.h. (utrace_var_expanding_copy_visitor::visit_target_symbol): Uses '_stp_arg(0)' to get value of '$syscall'. 2008-06-09 David Smith <dsmith@redhat.com> * task_finder.c (__stp_utrace_task_finder_report_exec): Handles 2.6.25 kernels.
* Add .statement("function@file.c+N")Stan Cox2008-06-061-3/+24
|
* Changed/renamed utrace probes.David Smith2008-06-061-111/+182
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-06-06 David Smith <dsmith@redhat.com> * tapsets.cxx (enum utrace_derived_probe_flags): Redefined in terms of probe types instead of utrace events. (utrace_var_expanding_copy_visitor::visit_target_symbol): Uses new utrace_derived_probes_flags values. (utrace_builder::build): Handles new probe types and new utrace_derived_probes_flags values. (utrace_derived_probe_group::emit_probe_decl): Updated to handle new utrace_derived_probe_flags values. (utrace_derived_probe_group::emit_module_decls): Ditto. Also correctly handles 'begin' events correctly by installing a quiesce handler (instead of running the probe directly). (register_standard_tapsets): Registers updated utrace probe types. 2008-06-06 David Smith <dsmith@redhat.com> * task_finder.c: Added some debug logic. Use '-DDEBUG_TASK_FINDER' to enable. (stap_utrace_attach): Renamed from '__stp_utrace_attach'. (__stp_utrace_attach_match_filename): Calls callback with notification that this is a process or thread event. (__stp_utrace_attach_match_tsk): Ditto. (__stp_utrace_task_finder_report_clone): Ditto. (__stp_utrace_task_finder_report_exec): Ditto. (stap_utrace_task_finder_report_death): Ditto. (stap_start_task_finder): Ditto. (stap_stop_task_finder): Added debug logic. 2008-06-06 David Smith <dsmith@redhat.com> * systemtap.base/utrace_p4.exp: Updated for utrace probe changes. * systemtap.base/utrace_p5.exp: Ditto.
* Added string tokens for most probe types.David Smith2008-06-031-32/+52
| | | | | | | | 2008-06-03 David Smith <dsmith@redhat.com> * tapsets.cxx: Added several string tokens that are used instead of hard-coded strings. (register_standard_tapsets): Uses new string tokens.
* PR 6562, Modify SYSTEMTAP_DEBUGINFO_PATH behaviour.Srikar Dronamraju2008-05-301-1/+3
|
* Removed debug print.David Smith2008-05-281-1/+0
| | | | | | | 2008-05-28 David Smith <dsmith@redhat.com> * tapsets.cxx (utrace_derived_probe_group::emit_module_decls): Removed debug print.
* Handle bug #6500 fallout.David Smith2008-05-281-33/+51
| | | | | | | | | | | | | | | | | | | | | | | 2008-05-28 David Smith <dsmith@redhat.com> * tapsets.cxx (utrace_derived_probe_group::emit_probe_decl): Instead of adding clone handlers, just call the probes directly. (utrace_derived_probe_group::emit_module_decls): For syscall probes, on exec detach the parent's utrace engine from the child. 2008-05-28 David Smith <dsmith@redhat.com> * task_finder.c (__stp_utrace_attach_match_filename): Added register_p parameter, which is passed on to the callback. Only adds death notification if register_p is 1. If register_p is 0, removes death notification. (__stp_utrace_attach_match_tsk): Moved code from __stp_utrace_task_finder_report_clone that handles the details of grabbing a task's path. (__stp_utrace_task_finder_report_clone): Calls new __stp_utrace_attach_match_tsk(). (__stp_utrace_task_finder_report_exec): Notifies upper layer that it might need to detach from newly exec'ed process.`
* Minor improvement to multi-threaded support.David Smith2008-05-281-2/+5
| | | | | | | | | | | | | | | | | | | 2008-05-21 David Smith <dsmith@redhat.com> * tapsets.cxx (utrace_derived_probe_group::emit_module_decls): Added new 'event_flag' parameter to task_finder callback. Only calls probe handlers if we received the correct event. 2008-05-21 David Smith <dsmith@redhat.com> * task_finder.c (__stp_utrace_attach_match_filename): Added event_flag parameter of event to pass to callback. (__stp_utrace_task_finder_target_death): Ditto. (__stp_utrace_task_finder_report_clone): Calls __stp_utrace_attach_match_filename() with new argument. (__stp_utrace_task_finder_report_exec): Ditto. (stap_start_task_finder): Calls callback with an invalid event_flag since this callback call isn't related to an event.
* Address powerpc dwarfless test failures.Jim Keniston2008-05-251-9/+50
|
* PR5643: fix .statement(NUM) regressionWenji Huang2008-05-221-0/+9
|
* Use tr1/unordered_map instead of the deprecated ext/hash_map.Tim Moore2008-05-201-0/+9
|
* make the mod_cu_function_cache a hash_map instead of map for more go-goFrank Ch. Eigler2008-05-171-3/+9
|
* PR5643: function caching for much faster syscall.* pass-2 processingFrank Ch. Eigler2008-05-161-38/+72
|
* Merge branch 'master' of ssh://sources.redhat.com/git/systemtapFrank Ch. Eigler2008-05-121-134/+782
|\ | | | | | | | | | | | | | | | | | | * 'master' of ssh://sources.redhat.com/git/systemtap: The beginnings of a no-dwarf version of syscalls.stp. Selected Added CPU REGISTERS and NUMBERED FUNCTION ARGUMENTS sections to Replaced [u_]arg() with [u]int_arg(), [u]long_arg(), {s|u}32_arg(), Added support for register(), u_register(), arg(), and u_arg() functions. * testsuite/{semok,semko}/nodwf*.stp PR 4311 - Function boundary tracing without debuginfo: Phase I
| * PR 4311 - Function boundary tracing without debuginfo: Phases I and IIJim Keniston2008-05-121-2/+10
| |\
| * \ Merge commit 'origin/dwarfless'Jim Keniston2008-05-121-134/+782
| |\ \ | | | | | | | | | | | | PR 4311 - Function boundary tracing without debuginfo: Phases 1 and 2
| | * | Replaced [u_]arg() with [u]int_arg(), [u]long_arg(), {s|u}32_arg(),Jim Keniston2008-05-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | {s|u}64_arg(), etc. Added asmlinkage(), fastcall(), regparm(). Dealt with some surprises -- e.g., rax is ZERO-extended eax. Seems to work well with -m32 and -m64 user apps, and with a (small) dwarfless subset of syscall.stp.
| | * | PR 4311 - Function boundary tracing without debuginfo: Phase IJim Keniston2008-04-181-134/+781
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * tapsets.cxx: Major rework of dwflpp, dwarf_query, and related code to make do with elf info if dwarf info is absent, or (in the case of vmlinux) make do with a System.map-style symbol table if even the elf file is absent. * main.cxx: Use getopt_long instead of getopt. Added --kelf, --kmap, --ignore-vmlinux, and --ignore-dwarf. * hash.cxx, session.h, stap.1.in: Added --kelf, --kmap, --ignore-vmlinux, and --ignore-dwarf.
* | | | Revert "PR6487: extend blacklist with relay/timer subsystem"Frank Ch. Eigler2008-05-121-10/+2
| |_|/ |/| | | | | | | | | | | | | | This reverts commit e0d0dcf974e2d0898a7f5a05a2a3fdc93ba51fea. It seems that blacklisting kernel/timer.c is overbroad.
* | | PR6487: extend blacklist with relay/timer subsystemFrank Ch. Eigler2008-05-091-2/+10
|/ /
* | PR444886: add .../build/... to default debuginfo search pathFrank Ch. Eigler2008-05-051-1/+1
| |
* | PR6466: broad side-effect free statement elisionFrank Ch. Eigler2008-04-291-8/+8
| |
* | Made utrace probes more robust.David Smith2008-04-291-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2008-04-29 David Smith <dsmith@redhat.com> * tapsets.cxx (utrace_derived_probe_group::emit_probe_decl): Added death event handlers to ensure that for every utrace_attach there is a corresponding utrace_detach. (utrace_derived_probe_group::emit_module_decls): Ditto. 2008-04-29 David Smith <dsmith@redhat.com> * task_finder.c: Made more robust by ensuring that all utrace attaches have a corresponding utrace detach.
* | revert commit f0e6dc6304; overload detection logic was fine alreadyFrank Ch. Eigler2008-04-261-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | btw, here's a test script to monitor the persistent context values: function cycles(which:long) %{ THIS->__retvalue = (THIS->which == 0) ? CONTEXT->cycles_base : CONTEXT->cycles_sum; %} probe timer.profile { /* just for */ backtrace() /* load generation */ printf("%d %d\n", cycles(0), cycles(1)) } probe timer.s(1) { exit() }
* | Handles markers with no format string.David Smith2008-04-251-0/+5
| | | | | | | | | | | | | | | | 2008-04-25 David Smith <dsmith@redhat.com> PR 6455. * tapsets.cxx (mark_builder::build): Handles markers with no format string.
* | PR6416: extend probing blacklist with more init/exit sectionsSrinivasa DS2008-04-231-1/+7
| |
* | fix overload-detection uninitialized variable bugFrank Ch. Eigler2008-04-231-0/+4
| | | | | | | | Reported-By: Peter Teoh <htmldeveloper@gmail.com>
* | Removed debug statements.David Smith2008-04-221-3/+0
| | | | | | | | | | | | | | 2008-04-22 David Smith <dsmith@redhat.com> * tapsets.cxx (utrace_derived_probe_group::emit_module_decls): Removed debug statements.