X7ROOT File Manager
Current Path:
/usr/share/systemtap/tapset
usr
/
share
/
systemtap
/
tapset
/
📁
..
📄
README
(371 B)
📄
ansi.stp
(4.08 KB)
📄
argv.stp
(2.66 KB)
📁
arm
📁
arm64
📁
bpf
📄
choose_defined.stpm
(208 B)
📄
container_of.stpm
(235 B)
📄
context.stp
(4.95 KB)
📁
dyninst
📄
errno.stp
(8.9 KB)
📁
i386
📁
ia64
📄
indent-default.stp
(59 B)
📄
indent.stp
(4.48 KB)
📄
init.stp
(269 B)
📄
input.stp
(263 B)
📄
java.stp
(1.31 KB)
📄
libperl5.16.3-64.stp
(799 B)
📄
libpython2.7-64.stp
(522 B)
📄
libruby.so.2.0.0.stp
(8.27 KB)
📄
libvirt_functions.stp
(36.66 KB)
📄
libvirt_probes-64.stp
(8.13 KB)
📄
libvirt_qemu_probes-64.stp
(2.13 KB)
📁
linux
📄
logging.stp
(4.91 KB)
📄
macros.stpm
(143 B)
📁
mips
📄
null.stp
(17 B)
📄
offsetof.stpm
(173 B)
📄
oneshot.stp
(38 B)
📄
pn.stp
(1.55 KB)
📁
powerpc
📄
print_stats.stpm
(1.68 KB)
📄
private30.stpm
(80 B)
📄
prometheus.stp
(68 B)
📄
prometheus.stpm
(4.97 KB)
📄
python2.stp
(30.29 KB)
📄
python3.stp
(29.69 KB)
📄
qemu-kvm-simpletrace.stp
(183.4 KB)
📄
qemu-kvm.stp
(128.77 KB)
📄
queue_stats.stp
(9.26 KB)
📄
random.stp
(432 B)
📄
regex.stp
(4.01 KB)
📄
registers.stp
(7.4 KB)
📁
s390
📄
sizeof.stpm
(212 B)
📄
speculative.stp
(1.71 KB)
📄
stap_staticmarkers.stp
(9.44 KB)
📄
stopwatch.stp
(2.99 KB)
📄
string.stp
(6.91 KB)
📄
switchfile.stp
(612 B)
📄
system.stp
(593 B)
📄
timers.stp
(924 B)
📄
tokenize.stp
(2.07 KB)
📄
try_assign.stpm
(768 B)
📄
type_defined.stpm
(363 B)
📄
tzinfo.stp
(930 B)
📄
uconversions-guru.stp
(5.38 KB)
📄
uconversions.stp
(34.19 KB)
📁
x86_64
Editing: logging.stp
// logging tapset // Copyright (C) 2005-2018 Red Hat Inc. // // This file is part of systemtap, and is free software. You can // redistribute it and/or modify it under the terms of the GNU General // Public License (GPL); either version 2, or (at your option) any // later version. /** * sfunction log - Send a line to the common trace buffer * * @msg: The formatted message string * * Description: This function logs data. log sends the * message immediately to staprun and to the bulk transport * (relayfs) if it is being used. If the last character given * is not a newline, then one is added. This function is not * as efficient as printf and should be used only for urgent * messages. */ function log (msg:string) %( runtime != "bpf" %? %{ /* unprivileged */ /* unmodified-fnargs */ STAP_PRINTF ("%s\n", STAP_ARG_msg); %} %: { /* unprivileged */ /* bpf */ printf("%s\n", msg) } %) /** * sfunction warn - Send a line to the warning stream * * @msg: The formatted message string * * Description: This function sends a warning message immediately to * staprun. It is also sent over the bulk transport (relayfs) if it is * being used. If the last characater is not a newline, the one is added. */ function warn (msg:string) %( runtime != "bpf" %? %{ /* unprivileged */ /* unmodified-fnargs */ _stp_warn ("%s", STAP_ARG_msg); %} %: { /* unprivileged */ /* bpf */ // TODO: _stp_warn intelligently determines whether msg has a newline printf("WARNING: %s\n", msg) } %) /** * sfunction exit - Start shutting down probing script. * * Description: This only enqueues a request to start * shutting down the script. New probes will not fire * (except "end" probes), but all currently * running ones may complete their work. */ function exit () %( runtime != "bpf" %? %{ /* unprivileged */ atomic_set (session_state(), STAP_SESSION_STOPPING); _stp_exit (); %} %: { /* unprivileged */ /* bpf */ _set_exit_status() printf("") } %) %(systemtap_v >= "4.0" %? /** * sfunction abort - Immediately shutting down probing script. * * Description: This is similar to exit() but immediately aborts * the current probe handler instead of waiting for its * completion. Probe handlers already running on *other* CPU cores, * however, will still continue to their completion. Unlike error(), * this function call cannot be caught by 'try ... catch'. */ function abort () %( runtime != "bpf" %? %{ /* unprivileged */ atomic_set (session_state(), STAP_SESSION_STOPPING); _stp_exit (); CONTEXT->aborted = 1; CONTEXT->last_stmt = NULL; %} %: { /* unprivileged */ /* bpf */ _set_exit_status() printf("ERROR: abort() not supported in eBPF backend\n") exit() /* TODO: need to abort the execution flow immediately -- could be handled with a special assembly operation */ } %) %) /** * sfunction error - Send an error message * * @msg: The formatted message string * * Description: An implicit end-of-line is added. staprun prepends * the string "ERROR:". Sending an error message aborts the currently * running probe. Depending on the MAXERRORS parameter, it may * trigger an exit(). */ function error (msg:string) %( runtime != "bpf" %? %{ /* unprivileged */ /* unmodified-fnargs */ /* NB: we used to reuse msg[] for an assignment to last_error; this is clearer & safer. */ strlcpy (CONTEXT->error_buffer, STAP_ARG_msg, MAXSTRINGLEN); CONTEXT->last_error = CONTEXT->error_buffer; CONTEXT->last_stmt = NULL; %} %: { /* unprivileged */ /* bpf */ // TODO: should communicate an 'error' exit status printf("ERROR: %s\n", msg) exit() // TODO: should support MAXERRORS, probe error {} } %) // NOTE: The 'error' statement in the eBPF assembler in bpf-translate.cxx // should be kept up-to-date with the behaviour of this function. /** * sfunction assert - evaluate assertion * * @expression: The expression to evaluate * * Description: This function checks the expression and aborts the * current running probe if expression evaluates to zero. Uses error() * and may be caught by try{} catch{}. A default message will be * displayed. */ function assert(expression:long) { /* bpf */ /* unprivileged */ if (!expression) { error("Assertion failed") } } /** * sfunction assert - evaluate assertion * * @expression: The expression to evaluate * @msg: The formatted message string * * Description: This function checks the expression and aborts the * current running probe if expression evaluates to zero. Uses error() * and may be caught by try{} catch{}. The specified message will be * displayed. */ function assert(expression:long, msg:string) { /* bpf */ /* unprivileged */ if (!expression) { error(msg) } } function stp_print_binary(n:long, arg1:long, arg2:long, arg3:long, arg4:long) %{ _stp_print_binary (STAP_ARG_n, STAP_ARG_arg1, STAP_ARG_arg2, STAP_ARG_arg3, STAP_ARG_arg4); %}
Upload File
Create Folder