| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Josh Stone <jistone@redhat.com>
|
|
|
|
|
|
|
|
| |
Add probe points for faccessat, fchmodat, fchownat, linkat and mknodat.
Analogue of commits: a3d153e5, 335972be, 46e2c2c1, c815c982, dac6e242
and bad69f1d.
Signed-off-by: Josh Stone <jistone@redhat.com>
|
|
|
|
|
|
| |
Analogue of commit 39a8b0bc.
Signed-off-by: Josh Stone <jistone@redhat.com>
|
|
|
|
|
|
| |
Rules were already specified in commit c0c1ccc6.
Signed-off-by: Josh Stone <jistone@redhat.com>
|
|
|
|
|
| |
This is needed for run-stap so that stapio and all child processes can
run as the originally invoking user instead of root.
|
| |
|
| |
|
|\ |
|
| |
| |
| |
| | |
* translate.cxx (dump_unwindsyms): Initialize eh_frame to 0, not NULL.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, _stp_init_time and _stp_kill_time were being called from
begin/end/error probes, which will run with preemption disabled. The
BUG reported on RT kernels showed that cpufreq_unregister_notifier can
end up sleeping, which violates our preemption block.
This patch moves the init/kill into systemtap_module_init/exit, where it
is safe to sleep. The code maintains a new predicate with the define
STAP_NEED_GETTIMEOFDAY, so we don't still incur any timer overhead if
it's not used.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* runtime/unwind.c (adjustStartLoc): Add extra dbug_unwind.
(_stp_search_unwind_hdr): Always pass true for is_ehframe.
(unwind_frame): Properly pass through is_ehframe to adjustStartLoc().
(unwind): Add extra dbug_unwind.
* translate.cxx (dump_unwindsyms): Output and use correct eh_frame
and eh_len.
|
| |
| |
| |
| |
| |
| |
| | |
* runtime/unwind.c (unwind): Call new unwind_frame() first with debug_frame
data, then if that wasn't able to unwind again with eh_frame data.
(unwind_frame): Adapted version of old unwind() function that takes a
table, table length and whether it is an eh_frame table.
|
| |
| |
| |
| |
| |
| |
| | |
* runtime/unwind.c (adjustStartLoc): Add ptrType and is_ehframe as arguments.
Use these to adjust location when necessary.
(DEBUG_UNWIND): Move block before adjustStartLoc.
Pass false for is_ehframe throughout.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* runtime/sym.h (_stp_module): Remove unwind_data, unwind_data_len and
unwind_is_ehframe fields. Add debug_frame, eh_frame, debug_frame_len,
eh_frame_len and eh_frame_addr fields.
* runtime/unwind.c: Use debug_frame and debug_frame_len instead of
unwind_data and unwind_data_len throughout.
(cie_for_fde): Take unwind_data and is_ehframe as direct arguments.
* runtime/unwind/unwind.h (cie_for_fde): New function declaration.
* translate.cxx (get_unwind_data): Fetch and return both debug_frame
and eh_frame tables.
(dump_unwindsyms): Dump both debug_frame and eh_frame tables.
|
|/ |
|
|
|
|
|
|
| |
* includes/sys/sdt.h (STAP_NOP): __powerpc__ doesn't want an extra 0.
Tested-by: Mahesh Jagannath Salgaonkar <mahesh@linux.vnet.ibm.com>
|
| |
|
| |
|
|
|
|
|
|
|
| |
Align probe points in probe aliases to equal sign using spaces as it's
already done in nd_syscalls.stp.
Signed-off-by: Josh Stone <jistone@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rules:
- Specify probe points for aliases starting from the alias declaration
line and with one probe point per line.
- Use K&R indent style -- probe alias/point/function opening brace goes
to the line following the declaration, other opening braces are kept
on the same line as the control statements.
- Indent using tabs.
- Surround operators with spaces.
- Put spaces after commas.
- Avoid trailing whitespaces.
Signed-off-by: Josh Stone <jistone@redhat.com>
|
|
|
|
|
|
|
| |
Rename variables accordingly to argument names used in man pages in
syscall.(faccess|fchmod|fchown|link|mknod)at probe points.
Signed-off-by: Josh Stone <jistone@redhat.com>
|
|
|
|
| |
Fix: Enhance -x option checking to only accept valid pid
|
|
|
|
| |
Fix: Enhance -s option checking to only accept valid size number
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Replace in-scope variables references with *_arg functions. Use 'kprobe'
family of probes instead of 'kernel' family for dwarfless probing. Also
fix a few typos and unify formatting.
Signed-off-by: Josh Stone <jistone@redhat.com>
|
|
|
|
| |
* runtime/itrace.c: To avoid ia64 lockups, disable itrace on ia64.
|
|
|
|
|
|
|
|
| |
* runtime/itrace.c (usr_itrace_report_signal): Add a workaround for
ppc-specific problem.
* testsuite/systemtap.base/itrace.exp: Improved tests. Improved test
completeness. Will also no longer give fails for systems that don't
support single or block step (will give xfails instead).
|
|
|
|
| |
* tapset/syscalls.stp: Rename abs_timout_uaddr to abs_timeout_uaddr.
|
|\ |
|
| | |
|
| |\ |
|
| | |
| | |
| | |
| | |
| | | |
This helps make it more obvious which methods are accessed by external
classes, which should help in refactoring.
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The method query_cu_containing_global_address was only called by
query_cu_containing_module_address, and the latter was just doing a
simple argument transform. They are now merged into a single method,
query_cu_containing_address. The function module_address_to_global is
also merged here at its only call site.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
These three methods had no callers, and are thus obsolete:
dwflpp::focus_on_module_containing_global_address(Dwarf_Addr a)
dwflpp::global_address_to_module(Dwarf_Addr a)
dwflpp::cu_name_matches(string pattern)
|
| | |
| | |
| | |
| | |
| | | |
It's not a terribly clean split, but moving it helps reveals some of the
knots that need to be untangled.
|
| | | |
|
| | | |
|
|/ /
| |
| |
| |
| |
| |
| | |
* runtime/unwind.c (_stp_enc_hi_name): Include prefix for hi == 0.
(_stp_enc_lo_name): Don't include prefix.
(_stp_eh_enc_name): Always include hi_name.
(unwind): Always include newline in dbug_unwind() calls.
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Works around a make installcheck issue that resulted in skipped.exp failing
because of "ERROR: can't set "cpus": variable is array"
* testsuite/systemtap.base/skipped.exp: Renamed cpus variable to nr_cpus.
|
| |
| |
| |
| |
| |
| |
| |
| | |
In an make installcheck run this is the first script that goes through
the full kernel debuginfo which might take a bit.
* testsuite/systemtap.base/alternatives.exp: Set timeout to 60, verbose
log EOF or TIMEOUT when they occur.
|
| |
| |
| |
| | |
Reported-by: K.Prasad <prasad@linux.vnet.ibm.com>
|
| | |
|
| | |
|
| | |
|