| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
* NEWS: Note this change.
* hash.cxx (find_script_hash): Add s.skip_badvars into hash.
* translate.cxx (translate_pass): Emit STP_SKIP_BADVARS.
* runtime/loc2c-runtime.h (DEREF_FAULT, STORE_DEREF_FAULT): Provide
dummy implementation if STP_SKIP_BADVARS.
|
| |
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| | |
* testsuite/lib/systemtap.exp: Define here.
* testsuite/systemtap.*/*.exp: Use it here. Eliminate duplicated
utrace_support_present logic.
|
| |
| |
| |
| |
| |
| | |
As it was, the ATTENTION was causing expect mismatches even when the
test worked fine. The warning is served just as well from the expect
script before starting the test.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Earlier today, I posted a runtime patch for the insn.block probe point.
Once that patch is committed, the insn.block probe can be safely tested
on any architecture. The attached patch adds such a testcase to the
testsuite.
Regards,
-Maynard
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The attached patch is version 2 for the problem I reported earlier
today.
Frank, is this more what you had in mind? With this patch, there's no
need for the user to look at the system log. Error messages are sent to
stderr:
ERROR: insn probe init: arch does not support block step mode
ERROR: probe process("/test").function("doit1@/test.c:22").return registration error (rc -1)
-Maynard
|
| |
| |
| |
| |
| |
| | |
utrace_control"
This reverts commit 489afa702639fd10e9756795bd516d939766247d.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As Roland pointed out in his Mar 31 reply to a posting of mine (subject:
Re: Testing insn.block probe point uncovers possible utrace bug),
utrace_control() documents that the caller must ensure that
arch_has_single_step and arch_has_block_step are defined before trying
to use those step modes. The attached patch addresses that issue. I've
tested this patch on x86_64 arch, and a block step test runs
successfully, since block step is supported on that arch. Testing on
ppc64 arch, the test fails as expected (since block step is not
supported on ppc64 yet) with:
"ERROR: callback for <pid> failed: 1"
which is sent to stdderr and
"usr_itrace_init: arch does not support block step mode"
which is sent to the system log.
This isn't the most user-friendly way of surfacing an error. Perhaps
the stap runtime could have a set of defined return codes that would be
mapped to strings so the user can get an idea of what the error is
without looking in the system log. But that's a side issue, of course.
Regards,
-Maynard
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We hereby no longer try to manipulate process groups in any way. We
don't set a private process group, and we never kill() our entire group
either. Instead of using system(), we now have a stap_system() which
saves the child PID, so when we get a terminating signal we can pass it
along to the child.
Signals sent through the TTY have always worked, since the TTY sends it
to the entire pgrp. However, if we're running as part of a wrapper
script or GUI, which may not have a separate process group for stap, we
still would like to allow "kill -TERM $STAPPID" to terminate stap
nicely.
There's still a short window of failure in the time that staprun is
active, because we can't kill a setuid process from a user process.
Once staprun drops privileges and execs to stapio though, everything
should work fine.
|
| |\ |
|
| | |
| | |
| | |
| | |
| | |
| | | |
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.cxx (utrace_derived_probe_group::emit_module_init): Correct #endif.
|
| |\| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Will be defined by new ucontext symbol stapset.
* tapset.cxx: Wrap all vma callbacks in STP_NEED_VMA_TRACKER.
* testsuite/systemtap.context/usymbols.exp: Define STP_NEED_VMA_TRACKER
explicitly for now.
|
| |\ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* tapsets.cxx (uprobe_derived_probe_group::emit_module_decls): Emit vma
callbacks.
(uprobe_derived_probe_group::emit_module_init): Activate vma callbacks.
* testsuite/systemtap.context/usymbols.exp: Track through uprobes,
so as to make sure we have the symbols.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* tapsets.cxx (itrace_derived_probe_group::emit_module_decls): Emit vma
callbacks.
(itrace_derived_probe_group::emit_module_init): Activate vma callbacks.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* tapsets.cxx (utrace_derived_probe_group::emit_vm_callback_probe_decl):
Removed.
(emit_vma_callback_probe_decl): New static helper function.
(utrace_derived_probe_group::emit_module_decls): Emit vma callbacks.
(utrace_derived_probe_group::emit_module_init): Activate vma callbacks.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* tapsets.cxx (utrace_derived_probe_group::emit_module_decls):
Remove output task finder vma callback _stp_tf_vm_cb.
* runtime/sym.c (_stp_tf_vm_cb): And add it here.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
* tapsets.cxx (itrace_derived_probe_group::emit_module_decls): Don't emit
another include task_finder.c. Already done through runtime.h.
|
| |\ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* runtime/task_finder.c (__stp_tf_vm_cb): Removed.
* tapsets.cxx (utrace_derived_probe_group::emit_module_decls):
Output task finder vma callback and hook it.
|
| | | | |
| | | | |
| | | | |
| | | | | |
* runtime/sym.c (_stp_mod_sec_lookup): Initialize user and vm_start.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* runtime/task_finder_vma.c (__stp_tf_get_vma_entry_addr): Deleted.
(struct __stp_tf_vma_entry): Replace module by user void* field.
(stap_add_vma_map_info): Take a void *user arg.
(stap_find_vma_map_info): Take a void **user arg.
* runtime/sym.c (_stp_mod_sec_lookup): Use stap_find_vma_map_info.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
* runtime/task_finder_vma.c: Replace all mutex calls with appropriate
read or write (un)lock calls.
|
| |\ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
* testsuite/lib/stap_run.exp (tap_run): Add send_log of cmd.
|
| |\ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Resolved conflicts:
runtime/task_finder.c: name vs path.
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
* translate.cxx (dump_unwindsyms): Adjust sym_addr for ET_DYN always
against module base as workaround for buggy elfutils < 0.138.
|
| |\ \ \ \ \ \
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Conflicts:
ChangeLog: Removed
runtime/ChangeLog: Removed
runtime/sym.c: Merged
runtime/task_finder.c: Merged
tapset/ChangeLog: Removed
testsuite/ChangeLog: Removed
|
| |\ \ \ \ \ \ \ |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| | | | | | | | | |
|
| |_|_|_|_|_|_|/
|/| | | | | | | |
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
* includes/sys/sdt.h (STAP_UNINLINE): New.
(STAP_UNINLINE_LABEL): New.
static_uprobes.exp: Match using charset instead of .*
|
| | | | | | | | |
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
* runtime/map-gen.c, pmap-gen.c: Hand-expand arity 6..9 cases throughout.
* testsuite/buildok/thirty.stp: New test.
* testsuite/buildko/two.stp: New test.
An Alan Smithee patch.
|
| | | | | | | | |
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
* tapsets.cxx (dwarf_builder::build): Add .mark name wildcard check.
Customize -l handling.
* testsuite/systemtap.base/static_uprobes.exp: Test .mark name wildcard.
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
* doc/SystemTap_Tapset_Reference/tapsets.tmpl: Add authorblock.
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
* tapsets/socket.stp: Add descriptions for proto, family and state.
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
* main.cxx (runner): New main function.
(waiter_handler): Signal handler for waiter process.
(waiter): Waiter process waitpid function.
(main): Fork and run wait and runner in their own processes.
|