From 5fab6ce01025d1f4f106f5bb8f45e2c7d75f6e63 Mon Sep 17 00:00:00 2001 From: fche Date: Tue, 2 Mar 2021 01:27:24 +0000 Subject: [PATCH] removed man pages --- SystemTap_Beginners_Guide.pdf | Bin 492434 -> 493966 bytes .../SystemTap_Beginners_Guide-Preface.html | 8 +- SystemTap_Beginners_Guide/arrayoperators.html | 4 +- .../arrayops-aggregates.html | 12 +- .../arrayops-conditionals.html | 4 +- .../arrayops-deleting.html | 4 +- .../arrayops-foreach.html | 4 +- .../arrayops-increment.html | 2 +- .../arrayops-readvalues.html | 6 +- .../associativearrays.html | 2 +- .../commandlineargssect.html | 4 +- .../cross-compiling.html | 24 +- SystemTap_Beginners_Guide/errors.html | 50 +- .../futexcontentionsect.html | 6 +- .../handlerconditionalstatements.html | 10 +- SystemTap_Beginners_Guide/index.html | 6 +- .../inodewatch2sect.html | 2 +- SystemTap_Beginners_Guide/inodewatchsect.html | 4 +- .../intro-systemtap-limitations.html | 2 +- .../intro-systemtap-vs-others.html | 2 +- SystemTap_Beginners_Guide/introduction.html | 4 +- SystemTap_Beginners_Guide/ioblktimesect.html | 2 +- SystemTap_Beginners_Guide/iotimesect.html | 4 +- SystemTap_Beginners_Guide/ix01.html | 4 +- SystemTap_Beginners_Guide/mainsect-disk.html | 4 +- .../mainsect-profiling.html | 4 +- SystemTap_Beginners_Guide/paracallgraph.html | 6 +- SystemTap_Beginners_Guide/pr01s02.html | 4 +- SystemTap_Beginners_Guide/runtimeerror.html | 34 +- .../scriptconstructions.html | 8 +- SystemTap_Beginners_Guide/scripts.html | 34 +- .../syscallsbyprocpidsect.html | 2 +- .../systemtapscript-handler.html | 22 +- .../targetavailable.html | 2 +- .../targetvariables.html | 8 +- .../threadtimessect.html | 4 +- SystemTap_Beginners_Guide/timeoutssect.html | 4 +- SystemTap_Beginners_Guide/topsyssect.html | 4 +- SystemTap_Beginners_Guide/traceio2sect.html | 4 +- SystemTap_Beginners_Guide/traceiosect.html | 4 +- SystemTap_Beginners_Guide/typecasting.html | 2 +- .../understanding-how-systemtap-works.html | 10 +- .../understanding-tapsets.html | 2 +- .../useful-systemtap-scripts.html | 21 +- .../userspace-probing.html | 2 +- .../using-systemtap.html | 12 +- SystemTap_Beginners_Guide/using-usage.html | 16 +- SystemTap_Beginners_Guide/ustack.html | 2 +- .../utargetvariable.html | 2 +- man/dtrace.1.html | 220 - man/error::dwarf.7stap.html | 160 - man/error::fault.7stap.html | 70 - man/error::inode-uprobes.7stap.html | 65 - man/error::pass1.7stap.html | 93 - man/error::pass2.7stap.html | 155 - man/error::pass3.7stap.html | 62 - man/error::pass4.7stap.html | 129 - man/error::pass5.7stap.html | 154 - man/error::process-tracking.7stap.html | 128 - man/error::reporting.7stap.html | 77 - man/error::sdt.7stap.html | 120 - man/function::-.3stap.html | 5 - man/function::HZ.3stap.html | 74 - man/function::MAJOR.3stap.html | 71 - man/function::MINOR.3stap.html | 71 - man/function::MKDEF.3stap.html | 5 - man/function::MKDEV.3stap.html | 72 - man/function::abort.3stap.html | 77 - man/function::addr.3stap.html | 77 - man/function::addr_to_node.3stap.html | 78 - man/function::ansi_clear_screen.3stap.html | 74 - man/function::ansi_cursor_hide.3stap.html | 74 - man/function::ansi_cursor_move.3stap.html | 85 - man/function::ansi_cursor_restore.3stap.html | 75 - man/function::ansi_cursor_save.3stap.html | 74 - man/function::ansi_cursor_show.3stap.html | 74 - man/function::ansi_new_line.3stap.html | 74 - man/function::ansi_reset_color.3stap.html | 74 - man/function::ansi_set_color.3stap.html | 108 - man/function::asmlinkage.3stap.html | 74 - man/function::assert.3stap.html | 95 - man/function::atomic_long_read.3stap.html | 78 - man/function::atomic_read.3stap.html | 78 - man/function::backtrace.3stap.html | 76 - man/function::bytes_to_string.3stap.html | 78 - man/function::caller.3stap.html | 76 - man/function::caller_addr.3stap.html | 74 - man/function::callers.3stap.html | 78 - man/function::cmdline_arg.3stap.html | 78 - man/function::cmdline_args.3stap.html | 92 - man/function::cmdline_str.3stap.html | 74 - man/function::commit.3stap.html | 81 - man/function::cpu.3stap.html | 74 - man/function::cpu_clock_ms.3stap.html | 78 - man/function::cpu_clock_ns.3stap.html | 78 - man/function::cpu_clock_s.3stap.html | 78 - man/function::cpu_clock_us.3stap.html | 78 - man/function::cpuid.3stap.html | 74 - man/function::cputime_to_msecs.3stap.html | 71 - man/function::cputime_to_string.3stap.html | 78 - man/function::cputime_to_usecs.3stap.html | 71 - man/function::ctime.3stap.html | 113 - man/function::current_exe_file.3stap.html | 70 - man/function::d_name.3stap.html | 74 - man/function::d_path.3stap.html | 74 - man/function::delete_stopwatch.3stap.html | 79 - man/function::discard.3stap.html | 71 - man/function::dump_stack.3stap.html | 74 - man/function::egid.3stap.html | 74 - man/function::env_var.3stap.html | 78 - man/function::errno_str.3stap.html | 78 - man/function::error.3stap.html | 80 - man/function::euid.3stap.html | 74 - man/function::execname.3stap.html | 74 - man/function::exit.3stap.html | 76 - man/function::fastcall.3stap.html | 74 - man/function::format_ipaddr.3stap.html | 78 - man/function::ftrace.3stap.html | 78 - man/function::fullpath_struct_file.3stap.html | 82 - ...tion::fullpath_struct_nameidata.3stap.html | 76 - man/function::fullpath_struct_path.3stap.html | 75 - man/function::get_cycles.3stap.html | 74 - man/function::get_loadavg_index.3stap.html | 78 - man/function::get_sa_flags.3stap.html | 71 - man/function::get_sa_handler.3stap.html | 71 - man/function::gettimeofday_ms.3stap.html | 74 - man/function::gettimeofday_ns.3stap.html | 74 - man/function::gettimeofday_s.3stap.html | 74 - man/function::gettimeofday_us.3stap.html | 74 - man/function::gid.3stap.html | 74 - man/function::htonl.3stap.html | 71 - man/function::htonll.3stap.html | 71 - man/function::htons.3stap.html | 71 - man/function::indent.3stap.html | 78 - man/function::indent_depth.3stap.html | 79 - man/function::inet_get_ip_source.3stap.html | 71 - man/function::inet_get_local_port.3stap.html | 71 - man/function::inode_name.3stap.html | 74 - man/function::inode_path.3stap.html | 74 - man/function::int_arg.3stap.html | 78 - man/function::ip_ntop.3stap.html | 71 - man/function::ipmib_filter_key.3stap.html | 97 - man/function::ipmib_get_proto.3stap.html | 79 - man/function::ipmib_local_addr.3stap.html | 86 - man/function::ipmib_remote_addr.3stap.html | 86 - man/function::ipmib_tcp_local_port.3stap.html | 86 - ...function::ipmib_tcp_remote_port.3stap.html | 86 - man/function::is_myproc.3stap.html | 74 - man/function::is_return.3stap.html | 74 - man/function::is_sig_blocked.3stap.html | 78 - man/function::isdigit.3stap.html | 78 - man/function::isinstr.3stap.html | 88 - man/function::jiffies.3stap.html | 75 - man/function::json_add_array.3stap.html | 88 - ...::json_add_array_numeric_metric.3stap.html | 99 - ...n::json_add_array_string_metric.3stap.html | 92 - ...nction::json_add_numeric_metric.3stap.html | 92 - ...unction::json_add_string_metric.3stap.html | 85 - man/function::json_set_prefix.3stap.html | 79 - man/function::kernel_buffer_quoted.3stap.html | 100 - ...ion::kernel_buffer_quoted_error.3stap.html | 92 - man/function::kernel_char.3stap.html | 78 - man/function::kernel_int.3stap.html | 78 - man/function::kernel_long.3stap.html | 78 - man/function::kernel_pointer.3stap.html | 78 - man/function::kernel_short.3stap.html | 78 - man/function::kernel_string.3stap.html | 93 - man/function::kernel_string_n.3stap.html | 85 - man/function::kernel_string_quoted.3stap.html | 78 - ...ion::kernel_string_quoted_utf16.3stap.html | 81 - ...ion::kernel_string_quoted_utf32.3stap.html | 81 - man/function::kernel_string_utf16.3stap.html | 93 - man/function::kernel_string_utf32.3stap.html | 93 - man/function::ktime_get_ns.3stap.html | 74 - man/function::linuxmib_filter_key.3stap.html | 90 - man/function::local_clock_ms.3stap.html | 74 - man/function::local_clock_ns.3stap.html | 74 - man/function::local_clock_s.3stap.html | 74 - man/function::local_clock_us.3stap.html | 74 - man/function::log.3stap.html | 78 - man/function::long_arg.3stap.html | 78 - man/function::longlong_arg.3stap.html | 78 - man/function::matched.3stap.html | 78 - man/function::matched_str.3stap.html | 74 - man/function::mdelay.3stap.html | 78 - man/function::mem_page_size.3stap.html | 67 - man/function::modname.3stap.html | 80 - man/function::module_name.3stap.html | 74 - man/function::module_size.3stap.html | 74 - man/function::msecs_to_string.3stap.html | 79 - man/function::nfsderror.3stap.html | 78 - man/function::ngroups.3stap.html | 78 - man/function::ns_egid.3stap.html | 74 - man/function::ns_euid.3stap.html | 74 - man/function::ns_gid.3stap.html | 74 - man/function::ns_pgrp.3stap.html | 74 - man/function::ns_pid.3stap.html | 74 - man/function::ns_ppid.3stap.html | 74 - man/function::ns_sid.3stap.html | 74 - man/function::ns_tid.3stap.html | 74 - man/function::ns_uid.3stap.html | 74 - man/function::nsecs_to_string.3stap.html | 79 - man/function::ntohl.3stap.html | 71 - man/function::ntohll.3stap.html | 71 - man/function::ntohs.3stap.html | 71 - man/function::pages_to_string.3stap.html | 81 - man/function::panic.3stap.html | 80 - man/function::pexecname.3stap.html | 74 - man/function::pgrp.3stap.html | 74 - man/function::pid.3stap.html | 74 - man/function::pid2execname.3stap.html | 78 - man/function::pid2task.3stap.html | 78 - man/function::pn.3stap.html | 74 - man/function::pnlabel.3stap.html | 81 - man/function::pointer_arg.3stap.html | 78 - man/function::pp.3stap.html | 74 - man/function::ppfunc.3stap.html | 77 - man/function::ppid.3stap.html | 74 - man/function::print_backtrace.3stap.html | 74 - ...ction::print_backtrace_fileline.3stap.html | 75 - man/function::print_regs.3stap.html | 74 - man/function::print_stack.3stap.html | 91 - man/function::print_syms.3stap.html | 84 - man/function::print_ubacktrace.3stap.html | 119 - ...unction::print_ubacktrace_brief.3stap.html | 78 - ...tion::print_ubacktrace_fileline.3stap.html | 111 - man/function::print_ustack.3stap.html | 92 - man/function::print_usyms.3stap.html | 84 - man/function::printk.3stap.html | 85 - man/function::probe_type.3stap.html | 74 - man/function::probefunc.3stap.html | 89 - man/function::probemod.3stap.html | 74 - man/function::proc_mem_data.3stap.html | 86 - man/function::proc_mem_rss.3stap.html | 86 - man/function::proc_mem_shr.3stap.html | 86 - man/function::proc_mem_size.3stap.html | 86 - man/function::proc_mem_string.3stap.html | 86 - man/function::proc_mem_txt.3stap.html | 86 - man/function::pstrace.3stap.html | 80 - man/function::qs_done.3stap.html | 78 - man/function::qs_run.3stap.html | 78 - man/function::qs_wait.3stap.html | 78 - man/function::qsq_blocked.3stap.html | 85 - man/function::qsq_print.3stap.html | 85 - man/function::qsq_service_time.3stap.html | 85 - man/function::qsq_start.3stap.html | 78 - man/function::qsq_throughput.3stap.html | 85 - man/function::qsq_utilization.3stap.html | 85 - ...function::qsq_wait_queue_length.3stap.html | 85 - man/function::qsq_wait_time.3stap.html | 87 - man/function::raise.3stap.html | 80 - man/function::randint.3stap.html | 71 - man/function::read_stopwatch_ms.3stap.html | 81 - man/function::read_stopwatch_ns.3stap.html | 81 - man/function::read_stopwatch_s.3stap.html | 81 - man/function::read_stopwatch_us.3stap.html | 81 - man/function::real_mount.3stap.html | 74 - man/function::register.3stap.html | 93 - man/function::registers_valid.3stap.html | 80 - man/function::regparm.3stap.html | 81 - man/function::remote_id.3stap.html | 79 - man/function::remote_uri.3stap.html | 77 - man/function::return_str.3stap.html | 90 - man/function::returnstr.3stap.html | 82 - man/function::returnval.3stap.html | 76 - man/function::reverse_path_walk.3stap.html | 74 - man/function::rlimit_from_str.3stap.html | 78 - man/function::s32_arg.3stap.html | 78 - man/function::s64_arg.3stap.html | 78 - man/function::sa_flags_str.3stap.html | 71 - man/function::sa_handler.3stap.html | 5 - man/function::sa_handler_str.3stap.html | 72 - man/function::set_kernel_char.3stap.html | 85 - man/function::set_kernel_int.3stap.html | 85 - man/function::set_kernel_long.3stap.html | 85 - man/function::set_kernel_pointer.3stap.html | 85 - man/function::set_kernel_short.3stap.html | 85 - man/function::set_kernel_string.3stap.html | 85 - man/function::set_kernel_string_n.3stap.html | 92 - man/function::set_user_char.3stap.html | 85 - man/function::set_user_int.3stap.html | 85 - man/function::set_user_long.3stap.html | 85 - man/function::set_user_pointer.3stap.html | 85 - man/function::set_user_short.3stap.html | 85 - man/function::set_user_string.3stap.html | 85 - man/function::set_user_string_n.3stap.html | 92 - man/function::sid.3stap.html | 74 - man/function::signal_str.3stap.html | 71 - man/function::sigset_mask_str.3stap.html | 71 - man/function::sock_fam_num2str.3stap.html | 71 - man/function::sock_fam_str2num.3stap.html | 71 - man/function::sock_prot_num2str.3stap.html | 71 - man/function::sock_prot_str2num.3stap.html | 71 - man/function::sock_state_num2str.3stap.html | 71 - man/function::sock_state_str2num.3stap.html | 71 - man/function::speculate.3stap.html | 85 - man/function::speculation.3stap.html | 78 - man/function::sprint_backtrace.3stap.html | 77 - man/function::sprint_loadavg.3stap.html | 74 - man/function::sprint_stack.3stap.html | 91 - man/function::sprint_syms.3stap.html | 85 - man/function::sprint_ubacktrace.3stap.html | 84 - man/function::sprint_ustack.3stap.html | 92 - man/function::sprint_usyms.3stap.html | 85 - man/function::stack.3stap.html | 80 - man/function::stack_size.3stap.html | 74 - man/function::stack_unused.3stap.html | 74 - man/function::stack_used.3stap.html | 74 - man/function::start_stopwatch.3stap.html | 81 - man/function::stop_stopwatch.3stap.html | 81 - man/function::stp_pid.3stap.html | 74 - man/function::str_replace.3stap.html | 89 - man/function::string_quoted.3stap.html | 78 - man/function::stringat.3stap.html | 85 - man/function::strlen.3stap.html | 78 - man/function::strpos.3stap.html | 94 - man/function::strtol.3stap.html | 87 - man/function::substr.3stap.html | 92 - man/function::switch_file.3stap.html | 74 - man/function::symdata.3stap.html | 78 - man/function::symfile.3stap.html | 72 - man/function::symfileline.3stap.html | 78 - man/function::symline.3stap.html | 72 - man/function::symname.3stap.html | 78 - man/function::system.3stap.html | 78 - man/function::target.3stap.html | 84 - man/function::target_set_pid.3stap.html | 81 - man/function::target_set_report.3stap.html | 74 - man/function::task_ancestry.3stap.html | 86 - man/function::task_backtrace.3stap.html | 78 - man/function::task_cpu.3stap.html | 78 - man/function::task_current.3stap.html | 74 - man/function::task_cwd_path.3stap.html | 65 - man/function::task_dentry_path.3stap.html | 88 - man/function::task_egid.3stap.html | 78 - man/function::task_euid.3stap.html | 78 - man/function::task_exe_file.3stap.html | 65 - man/function::task_execname.3stap.html | 78 - man/function::task_fd_lookup.3stap.html | 79 - man/function::task_gid.3stap.html | 78 - ...function::task_max_file_handles.3stap.html | 78 - man/function::task_nice.3stap.html | 78 - man/function::task_ns_egid.3stap.html | 78 - man/function::task_ns_euid.3stap.html | 78 - man/function::task_ns_gid.3stap.html | 78 - man/function::task_ns_pid.3stap.html | 78 - man/function::task_ns_tid.3stap.html | 78 - man/function::task_ns_uid.3stap.html | 78 - ...unction::task_open_file_handles.3stap.html | 78 - man/function::task_parent.3stap.html | 78 - man/function::task_pid.3stap.html | 78 - man/function::task_prio.3stap.html | 78 - man/function::task_start_time.3stap.html | 78 - man/function::task_state.3stap.html | 78 - man/function::task_stime.3stap.html | 86 - man/function::task_tid.3stap.html | 78 - man/function::task_time_string.3stap.html | 75 - man/function::task_time_string_tid.3stap.html | 79 - man/function::task_uid.3stap.html | 78 - man/function::task_utime.3stap.html | 86 - man/function::tcpmib_filter_key.3stap.html | 90 - man/function::tcpmib_get_state.3stap.html | 78 - man/function::tcpmib_local_addr.3stap.html | 78 - man/function::tcpmib_local_port.3stap.html | 78 - man/function::tcpmib_remote_addr.3stap.html | 78 - man/function::tcpmib_remote_port.3stap.html | 78 - man/function::text_str.3stap.html | 78 - man/function::text_strn.3stap.html | 94 - man/function::thread_indent.3stap.html | 78 - man/function::thread_indent_depth.3stap.html | 79 - man/function::tid.3stap.html | 74 - man/function::tokenize.3stap.html | 94 - man/function::tz_ctime.3stap.html | 81 - man/function::tz_gmtoff.3stap.html | 74 - man/function::tz_name.3stap.html | 74 - man/function::u32_arg.3stap.html | 78 - man/function::u64_arg.3stap.html | 78 - man/function::u_register.3stap.html | 78 - man/function::uaddr.3stap.html | 77 - man/function::ubacktrace.3stap.html | 85 - man/function::ucallers.3stap.html | 85 - man/function::udelay.3stap.html | 78 - man/function::uid.3stap.html | 74 - man/function::uint_arg.3stap.html | 78 - man/function::ulong_arg.3stap.html | 78 - man/function::ulonglong_arg.3stap.html | 78 - man/function::umodname.3stap.html | 78 - man/function::usecs_to_string.3stap.html | 79 - man/function::user_buffer_quoted.3stap.html | 92 - ...ction::user_buffer_quoted_error.3stap.html | 92 - man/function::user_char.3stap.html | 78 - man/function::user_char_error.3stap.html | 78 - man/function::user_char_warn.3stap.html | 78 - man/function::user_int.3stap.html | 78 - man/function::user_int16.3stap.html | 78 - man/function::user_int16_error.3stap.html | 78 - man/function::user_int32.3stap.html | 78 - man/function::user_int32_error.3stap.html | 78 - man/function::user_int64.3stap.html | 78 - man/function::user_int64_error.3stap.html | 78 - man/function::user_int8.3stap.html | 78 - man/function::user_int8_error.3stap.html | 78 - man/function::user_int_error.3stap.html | 78 - man/function::user_int_warn.3stap.html | 78 - man/function::user_long.3stap.html | 78 - man/function::user_long_error.3stap.html | 78 - man/function::user_long_warn.3stap.html | 78 - man/function::user_mode.3stap.html | 76 - man/function::user_short.3stap.html | 78 - man/function::user_short_error.3stap.html | 78 - man/function::user_short_warn.3stap.html | 78 - man/function::user_string.3stap.html | 93 - man/function::user_string_n.3stap.html | 100 - man/function::user_string_n_quoted.3stap.html | 107 - man/function::user_string_n_warn.3stap.html | 101 - man/function::user_string_quoted.3stap.html | 78 - ...ction::user_string_quoted_utf16.3stap.html | 81 - ...ction::user_string_quoted_utf32.3stap.html | 81 - man/function::user_string_utf16.3stap.html | 93 - man/function::user_string_utf32.3stap.html | 93 - man/function::user_string_warn.3stap.html | 93 - man/function::user_uint16.3stap.html | 78 - man/function::user_uint16_error.3stap.html | 78 - man/function::user_uint32.3stap.html | 78 - man/function::user_uint32_error.3stap.html | 78 - man/function::user_uint64.3stap.html | 78 - man/function::user_uint64_error.3stap.html | 78 - man/function::user_uint8.3stap.html | 78 - man/function::user_uint8_error.3stap.html | 78 - man/function::user_ulong.3stap.html | 78 - man/function::user_ulong_error.3stap.html | 78 - man/function::user_ulong_warn.3stap.html | 78 - man/function::user_ushort.3stap.html | 78 - man/function::user_ushort_error.3stap.html | 78 - man/function::user_ushort_warn.3stap.html | 78 - man/function::usrdev2kerndev.3stap.html | 71 - man/function::ustack.3stap.html | 80 - man/function::usymdata.3stap.html | 78 - man/function::usymfile.3stap.html | 84 - man/function::usymfileline.3stap.html | 78 - man/function::usymline.3stap.html | 84 - man/function::usymname.3stap.html | 78 - man/function::vm_fault_contains.3stap.html | 78 - man/function::warn.3stap.html | 78 - man/index.html | 832 ---- ...json_output_array_numeric_value.3stap.html | 100 - ...:json_output_array_string_value.3stap.html | 100 - man/macro::json_output_data_end.3stap.html | 74 - man/macro::json_output_data_start.3stap.html | 74 - ...acro::json_output_numeric_value.3stap.html | 86 - ...macro::json_output_string_value.3stap.html | 86 - man/probe::ioblock.end.3stap.html | 169 - man/probe::ioblock.request.3stap.html | 176 - man/probe::ioblock_trace.bounce.3stap.html | 178 - man/probe::ioblock_trace.end.3stap.html | 178 - man/probe::ioblock_trace.request.3stap.html | 178 - ...be::ioscheduler.elv_add_request.3stap.html | 106 - ...:ioscheduler.elv_add_request.kp.3stap.html | 113 - ...:ioscheduler.elv_add_request.tp.3stap.html | 113 - ...scheduler.elv_completed_request.3stap.html | 106 - ...e::ioscheduler.elv_next_request.3stap.html | 78 - ...heduler.elv_next_request.return.3stap.html | 99 - ...heduler_trace.elv_abort_request.3stap.html | 106 - ...ler_trace.elv_completed_request.3stap.html | 113 - ...heduler_trace.elv_issue_request.3stap.html | 113 - ...duler_trace.elv_requeue_request.3stap.html | 113 - man/probe::ioscheduler_trace.plug.3stap.html | 85 - ...be::ioscheduler_trace.unplug_io.3stap.html | 85 - ...:ioscheduler_trace.unplug_timer.3stap.html | 85 - man/probe::ipmib.ForwDatagrams.3stap.html | 90 - man/probe::ipmib.FragFails.3stap.html | 90 - man/probe::ipmib.FragOKs.3stap.html | 90 - man/probe::ipmib.InAddrErrors.3stap.html | 90 - man/probe::ipmib.InDiscards.3stap.html | 90 - man/probe::ipmib.InNoRoutes.3stap.html | 90 - man/probe::ipmib.InReceives.3stap.html | 90 - man/probe::ipmib.InUnknownProtos.3stap.html | 90 - man/probe::ipmib.OutRequests.3stap.html | 90 - man/probe::ipmib.ReasmReqds.3stap.html | 90 - man/probe::ipmib.ReasmTimeout.3stap.html | 90 - man/probe::irq_handler.entry.3stap.html | 148 - man/probe::irq_handler.exit.3stap.html | 155 - man/probe::json_data.3stap.html | 76 - man/probe::kprocess.create.3stap.html | 92 - man/probe::kprocess.exec.3stap.html | 106 - man/probe::kprocess.exec_complete.3stap.html | 106 - man/probe::kprocess.exit.3stap.html | 85 - man/probe::kprocess.release.3stap.html | 108 - man/probe::kprocess.start.3stap.html | 81 - man/probe::linuxmib.DelayedACKs.3stap.html | 90 - man/probe::linuxmib.ListenDrops.3stap.html | 90 - ...probe::linuxmib.ListenOverflows.3stap.html | 90 - ...be::linuxmib.TCPMemoryPressures.3stap.html | 90 - man/probe::netdev.change_mac.3stap.html | 92 - man/probe::netdev.change_mtu.3stap.html | 85 - man/probe::netdev.change_rx_flag.3stap.html | 78 - man/probe::netdev.close.3stap.html | 71 - man/probe::netdev.get_stats.3stap.html | 71 - man/probe::netdev.hard_transmit.3stap.html | 92 - man/probe::netdev.ioctl.3stap.html | 78 - man/probe::netdev.open.3stap.html | 71 - man/probe::netdev.receive.3stap.html | 85 - man/probe::netdev.register.3stap.html | 71 - man/probe::netdev.rx.3stap.html | 78 - man/probe::netdev.set_promiscuity.3stap.html | 92 - man/probe::netdev.transmit.3stap.html | 92 - man/probe::netdev.unregister.3stap.html | 71 - man/probe::netfilter.arp.forward.3stap.html | 240 - man/probe::netfilter.arp.in.3stap.html | 240 - man/probe::netfilter.arp.out.3stap.html | 240 - ...probe::netfilter.bridge.forward.3stap.html | 289 -- ...robe::netfilter.bridge.local_in.3stap.html | 289 -- ...obe::netfilter.bridge.local_out.3stap.html | 289 -- ...::netfilter.bridge.post_routing.3stap.html | 289 -- ...e::netfilter.bridge.pre_routing.3stap.html | 289 -- man/probe::netfilter.ip.forward.3stap.html | 270 -- man/probe::netfilter.ip.local_in.3stap.html | 270 -- man/probe::netfilter.ip.local_out.3stap.html | 270 -- ...robe::netfilter.ip.post_routing.3stap.html | 270 -- ...probe::netfilter.ip.pre_routing.3stap.html | 267 -- man/probe::nfs.aop.readpage.3stap.html | 141 - man/probe::nfs.aop.readpages.3stap.html | 120 - man/probe::nfs.aop.release_page.3stap.html | 106 - man/probe::nfs.aop.set_page_dirty.3stap.html | 85 - man/probe::nfs.aop.write_begin.3stap.html | 120 - man/probe::nfs.aop.write_end.3stap.html | 144 - man/probe::nfs.aop.writepage.3stap.html | 158 - man/probe::nfs.aop.writepages.3stap.html | 130 - man/probe::nfs.fop.aio_read.3stap.html | 134 - man/probe::nfs.fop.aio_write.3stap.html | 113 - man/probe::nfs.fop.check_flags.3stap.html | 71 - man/probe::nfs.fop.flush.3stap.html | 92 - man/probe::nfs.fop.fsync.3stap.html | 85 - man/probe::nfs.fop.llseek.3stap.html | 99 - man/probe::nfs.fop.lock.3stap.html | 120 - man/probe::nfs.fop.mmap.3stap.html | 141 - man/probe::nfs.fop.open.3stap.html | 99 - man/probe::nfs.fop.read.3stap.html | 78 - man/probe::nfs.fop.read_iter.3stap.html | 127 - man/probe::nfs.fop.release.3stap.html | 85 - man/probe::nfs.fop.sendfile.3stap.html | 113 - man/probe::nfs.fop.write.3stap.html | 78 - man/probe::nfs.fop.write_iter.3stap.html | 106 - man/probe::nfs.proc.commit.3stap.html | 123 - man/probe::nfs.proc.commit_done.3stap.html | 120 - man/probe::nfs.proc.commit_setup.3stap.html | 127 - man/probe::nfs.proc.create.3stap.html | 113 - ...robe::nfs.proc.handle_exception.3stap.html | 78 - man/probe::nfs.proc.lookup.3stap.html | 113 - man/probe::nfs.proc.open.3stap.html | 113 - man/probe::nfs.proc.read.3stap.html | 113 - man/probe::nfs.proc.read_done.3stap.html | 113 - man/probe::nfs.proc.read_setup.3stap.html | 113 - man/probe::nfs.proc.release.3stap.html | 113 - man/probe::nfs.proc.remove.3stap.html | 106 - man/probe::nfs.proc.rename.3stap.html | 127 - man/probe::nfs.proc.rename_done.3stap.html | 120 - man/probe::nfs.proc.rename_setup.3stap.html | 99 - man/probe::nfs.proc.write.3stap.html | 127 - man/probe::nfs.proc.write_done.3stap.html | 120 - man/probe::nfs.proc.write_setup.3stap.html | 134 - man/probe::nfsd.close.3stap.html | 78 - man/probe::nfsd.commit.3stap.html | 106 - man/probe::nfsd.create.3stap.html | 120 - man/probe::nfsd.createv3.3stap.html | 134 - man/probe::nfsd.dispatch.3stap.html | 106 - man/probe::nfsd.lookup.3stap.html | 92 - man/probe::nfsd.open.3stap.html | 92 - man/probe::nfsd.proc.commit.3stap.html | 127 - man/probe::nfsd.proc.create.3stap.html | 120 - man/probe::nfsd.proc.lookup.3stap.html | 120 - man/probe::nfsd.proc.read.3stap.html | 141 - man/probe::nfsd.proc.remove.3stap.html | 120 - man/probe::nfsd.proc.rename.3stap.html | 127 - man/probe::nfsd.proc.write.3stap.html | 148 - man/probe::nfsd.read.3stap.html | 120 - man/probe::nfsd.rename.3stap.html | 113 - man/probe::nfsd.unlink.3stap.html | 99 - man/probe::nfsd.write.3stap.html | 120 - man/probe::scheduler.balance.3stap.html | 78 - man/probe::scheduler.cpu_off.3stap.html | 99 - man/probe::scheduler.cpu_on.3stap.html | 92 - man/probe::scheduler.ctxswitch.3stap.html | 141 - man/probe::scheduler.kthread_stop.3stap.html | 78 - ...::scheduler.kthread_stop.return.3stap.html | 78 - man/probe::scheduler.migrate.3stap.html | 106 - man/probe::scheduler.process_exit.3stap.html | 85 - man/probe::scheduler.process_fork.3stap.html | 85 - man/probe::scheduler.process_free.3stap.html | 85 - man/probe::scheduler.process_wait.3stap.html | 78 - man/probe::scheduler.signal_send.3stap.html | 85 - man/probe::scheduler.tick.3stap.html | 85 - man/probe::scheduler.wait_task.3stap.html | 85 - man/probe::scheduler.wakeup.3stap.html | 106 - man/probe::scheduler.wakeup_new.3stap.html | 106 - man/probe::scsi.iocompleted.3stap.html | 134 - man/probe::scsi.iodispatching.3stap.html | 141 - man/probe::scsi.iodone.3stap.html | 134 - man/probe::scsi.ioentry.3stap.html | 99 - man/probe::scsi.ioexecute.3stap.html | 148 - man/probe::scsi.set_state.3stap.html | 120 - man/probe::signal.check_ignored.3stap.html | 92 - ...be::signal.check_ignored.return.3stap.html | 78 - man/probe::signal.checkperm.3stap.html | 120 - man/probe::signal.checkperm.return.3stap.html | 78 - man/probe::signal.do_action.3stap.html | 113 - man/probe::signal.do_action.return.3stap.html | 78 - man/probe::signal.flush.3stap.html | 92 - man/probe::signal.force_segv.3stap.html | 99 - ...probe::signal.force_segv.return.3stap.html | 78 - man/probe::signal.handle.3stap.html | 127 - man/probe::signal.handle.return.3stap.html | 85 - man/probe::signal.pending.3stap.html | 92 - man/probe::signal.pending.return.3stap.html | 78 - man/probe::signal.procmask.3stap.html | 99 - man/probe::signal.procmask.return.3stap.html | 78 - man/probe::signal.send.3stap.html | 141 - man/probe::signal.send.return.3stap.html | 125 - man/probe::signal.send_sig_queue.3stap.html | 106 - ...e::signal.send_sig_queue.return.3stap.html | 78 - man/probe::signal.sys_tgkill.3stap.html | 120 - ...probe::signal.sys_tgkill.return.3stap.html | 78 - man/probe::signal.sys_tkill.3stap.html | 113 - man/probe::signal.syskill.3stap.html | 106 - man/probe::signal.syskill.return.3stap.html | 67 - man/probe::signal.systkill.return.3stap.html | 78 - man/probe::signal.wakeup.3stap.html | 92 - man/probe::socket.aio_read.3stap.html | 129 - man/probe::socket.aio_read.return.3stap.html | 136 - man/probe::socket.aio_write.3stap.html | 129 - man/probe::socket.aio_write.return.3stap.html | 136 - man/probe::socket.close.3stap.html | 120 - man/probe::socket.close.return.3stap.html | 85 - man/probe::socket.create.3stap.html | 113 - man/probe::socket.create.return.3stap.html | 127 - man/probe::socket.read_iter.3stap.html | 129 - man/probe::socket.read_iter.return.3stap.html | 136 - man/probe::socket.readv.3stap.html | 129 - man/probe::socket.readv.return.3stap.html | 136 - man/probe::socket.receive.3stap.html | 127 - man/probe::socket.recvmsg.3stap.html | 129 - man/probe::socket.recvmsg.return.3stap.html | 136 - man/probe::socket.send.3stap.html | 127 - man/probe::socket.sendmsg.3stap.html | 129 - man/probe::socket.sendmsg.return.3stap.html | 136 - man/probe::socket.write_iter.3stap.html | 129 - ...probe::socket.write_iter.return.3stap.html | 136 - man/probe::socket.writev.3stap.html | 129 - man/probe::socket.writev.return.3stap.html | 136 - man/probe::softirq.entry.3stap.html | 92 - man/probe::softirq.exit.3stap.html | 92 - man/probe::stap.cache_add_mod.3stap.html | 85 - man/probe::stap.cache_add_nss.3stap.html | 85 - man/probe::stap.cache_add_src.3stap.html | 85 - man/probe::stap.cache_clean.3stap.html | 78 - man/probe::stap.cache_get.3stap.html | 85 - man/probe::stap.pass0.3stap.html | 78 - man/probe::stap.pass0.end.3stap.html | 5 - man/probe::stap.pass1.end.3stap.html | 5 - man/probe::stap.pass1a.3stap.html | 79 - man/probe::stap.pass1b.3stap.html | 78 - man/probe::stap.pass2.3stap.html | 79 - man/probe::stap.pass2.end.3stap.html | 5 - man/probe::stap.pass3.3stap.html | 79 - man/probe::stap.pass3.end.3stap.html | 5 - man/probe::stap.pass4.3stap.html | 79 - man/probe::stap.pass4.end.3stap.html | 5 - man/probe::stap.pass5.3stap.html | 79 - man/probe::stap.pass5.end.3stap.html | 5 - man/probe::stap.pass6.3stap.html | 78 - man/probe::stap.pass6.end.3stap.html | 5 - man/probe::stap.system.3stap.html | 78 - man/probe::stap.system.return.3stap.html | 78 - man/probe::stap.system.spawn.3stap.html | 85 - ...:stapio.receive_control_message.3stap.html | 92 - man/probe::staprun.insert_module.3stap.html | 78 - man/probe::staprun.remove_module.3stap.html | 78 - ...e::staprun.send_control_message.3stap.html | 92 - ...e::sunrpc.clnt.bind_new_program.3stap.html | 113 - man/probe::sunrpc.clnt.call_async.3stap.html | 141 - man/probe::sunrpc.clnt.call_sync.3stap.html | 141 - ...probe::sunrpc.clnt.clone_client.3stap.html | 113 - ...robe::sunrpc.clnt.create_client.3stap.html | 113 - ...probe::sunrpc.clnt.restart_call.3stap.html | 113 - ...be::sunrpc.clnt.shutdown_client.3stap.html | 190 - man/probe::sunrpc.sched.delay.3stap.html | 113 - man/probe::sunrpc.sched.execute.3stap.html | 106 - man/probe::sunrpc.sched.new_task.3stap.html | 99 - ...robe::sunrpc.sched.release_task.3stap.html | 107 - man/probe::sunrpc.svc.authorise.3stap.html | 5 - man/probe::sunrpc.svc.create.3stap.html | 5 - man/probe::sunrpc.svc.destroy.3stap.html | 5 - man/probe::sunrpc.svc.drop.3stap.html | 5 - man/probe::sunrpc.svc.process.3stap.html | 5 - man/probe::sunrpc.svc.recv.3stap.html | 5 - man/probe::sunrpc.svc.register.3stap.html | 5 - man/probe::sunrpc.svc.send.3stap.html | 5 - man/probe::syscall_any.3stap.html | 95 - man/probe::syscall_any.return.3stap.html | 102 - man/probe::tcp.disconnect.3stap.html | 127 - man/probe::tcp.disconnect.return.3stap.html | 85 - man/probe::tcp.receive.3stap.html | 162 - man/probe::tcp.recvmsg.3stap.html | 127 - man/probe::tcp.recvmsg.return.3stap.html | 120 - man/probe::tcp.sendmsg.3stap.html | 99 - man/probe::tcp.sendmsg.return.3stap.html | 85 - man/probe::tcp.setsockopt.3stap.html | 121 - man/probe::tcp.setsockopt.return.3stap.html | 85 - man/probe::tcpmib.ActiveOpens.3stap.html | 90 - man/probe::tcpmib.AttemptFails.3stap.html | 90 - man/probe::tcpmib.CurrEstab.3stap.html | 90 - man/probe::tcpmib.EstabResets.3stap.html | 90 - man/probe::tcpmib.InSegs.3stap.html | 93 - man/probe::tcpmib.OutRsts.3stap.html | 90 - man/probe::tcpmib.OutSegs.3stap.html | 90 - man/probe::tcpmib.PassiveOpens.3stap.html | 90 - man/probe::tcpmib.RetransSegs.3stap.html | 90 - man/probe::tty.init.3stap.html | 85 - man/probe::tty.ioctl.3stap.html | 85 - man/probe::tty.open.3stap.html | 106 - man/probe::tty.poll.3stap.html | 78 - man/probe::tty.read.3stap.html | 92 - man/probe::tty.receive.3stap.html | 113 - man/probe::tty.register.3stap.html | 92 - man/probe::tty.release.3stap.html | 106 - man/probe::tty.resize.3stap.html | 127 - man/probe::tty.unregister.3stap.html | 92 - man/probe::tty.write.3stap.html | 92 - man/probe::udp.disconnect.3stap.html | 127 - man/probe::udp.disconnect.return.3stap.html | 120 - man/probe::udp.recvmsg.3stap.html | 127 - man/probe::udp.recvmsg.return.3stap.html | 120 - man/probe::udp.sendmsg.3stap.html | 127 - man/probe::udp.sendmsg.return.3stap.html | 85 - man/probe::vm.brk.3stap.html | 92 - man/probe::vm.kfree.3stap.html | 92 - man/probe::vm.kmalloc.3stap.html | 120 - man/probe::vm.kmalloc_node.3stap.html | 120 - man/probe::vm.kmem_cache_alloc.3stap.html | 120 - ...probe::vm.kmem_cache_alloc_node.3stap.html | 120 - man/probe::vm.kmem_cache_free.3stap.html | 92 - man/probe::vm.mmap.3stap.html | 92 - man/probe::vm.munmap.3stap.html | 92 - man/probe::vm.oom_kill.3stap.html | 85 - man/probe::vm.pagefault.3stap.html | 92 - man/probe::vm.pagefault.return.3stap.html | 78 - man/probe::vm.write_shared.3stap.html | 92 - man/probe::vm.write_shared_copy.3stap.html | 99 - man/probe::workqueue.create.3stap.html | 78 - man/probe::workqueue.destroy.3stap.html | 71 - man/probe::workqueue.execute.3stap.html | 85 - man/probe::workqueue.insert.3stap.html | 85 - man/stap-exporter.8.html | 254 -- man/stap-merge.1.html | 185 - man/stap-prep.1.html | 99 - man/stap-report.1.html | 101 - man/stap-server.8.html | 805 ---- man/stap.1.html | 3992 ----------------- man/stapbpf.8.html | 286 -- man/stapdyn.8.html | 250 -- man/stapex.3stap.html | 246 - man/stapfuncs.3stap.html | 54 - man/stappaths.7.html | 194 - man/stapprobes.3stap.html | 2421 ---------- man/stapref.1.html | 454 -- man/staprun.8.html | 464 -- man/stapsh.8.html | 64 - man/stapvars.3stap.html | 95 - man/stapvirt.1.html | 349 -- man/systemtap-service.8.html | 798 ---- man/systemtap.8.html | 782 ---- man/tapset::ansi.3stap.html | 213 - man/tapset::atomic.3stap.html | 75 - man/tapset::context-caller.3stap.html | 95 - man/tapset::context-envvar.3stap.html | 64 - man/tapset::context-symbols.3stap.html | 256 -- man/tapset::context-unwind.3stap.html | 128 - man/tapset::context.3stap.html | 752 ---- man/tapset::conversions-guru.3stap.html | 155 - man/tapset::conversions.3stap.html | 319 -- man/tapset::ctime.3stap.html | 72 - man/tapset::dentry.3stap.html | 42 - man/tapset::dev.3stap.html | 107 - man/tapset::errno.3stap.html | 107 - man/tapset::guru-delay.3stap.html | 81 - man/tapset::guru-signal.3stap.html | 64 - man/tapset::indent.3stap.html | 107 - man/tapset::inet.3stap.html | 139 - man/tapset::inet_sock.3stap.html | 75 - man/tapset::ioblock.3stap.html | 123 - man/tapset::ioscheduler.3stap.html | 254 -- man/tapset::ip.3stap.html | 75 - man/tapset::ipmib-filter-default.3stap.html | 59 - man/tapset::ipmib.3stap.html | 299 -- man/tapset::irq.3stap.html | 171 - man/tapset::json.3stap.html | 258 -- man/tapset::kprocess.3stap.html | 142 - ...tapset::linuxmib-filter-default.3stap.html | 59 - man/tapset::linuxmib.3stap.html | 107 - man/tapset::loadavg.3stap.html | 79 - man/tapset::logging.3stap.html | 200 - man/tapset::memory.3stap.html | 302 -- man/tapset::netfilter.3stap.html | 186 - man/tapset::networking.3stap.html | 270 -- man/tapset::nfs.3stap.html | 411 -- man/tapset::nfs_proc.3stap.html | 331 -- man/tapset::nfsd.3stap.html | 318 -- man/tapset::nfsderrno.3stap.html | 59 - man/tapset::panic.3stap.html | 69 - man/tapset::pn.3stap.html | 75 - man/tapset::proc_mem.3stap.html | 273 -- man/tapset::pstrace.3stap.html | 59 - man/tapset::queue_stats.3stap.html | 219 - man/tapset::random.3stap.html | 59 - man/tapset::regex.3stap.html | 91 - man/tapset::registers.3stap.html | 299 -- man/tapset::rlimit.3stap.html | 59 - man/tapset::rpc.3stap.html | 347 -- man/tapset::scheduler.3stap.html | 299 -- man/tapset::scsi.3stap.html | 142 - man/tapset::signal.3stap.html | 578 --- man/tapset::socket.3stap.html | 494 -- man/tapset::speculative.3stap.html | 107 - man/tapset::stap_staticmarkers.3stap.html | 475 -- man/tapset::stopwatch.3stap.html | 155 - man/tapset::string.3stap.html | 206 - man/tapset::switchfile.3stap.html | 59 - man/tapset::syscall_any.3stap.html | 75 - man/tapset::syscalls.3stap.html | 61 - man/tapset::system.3stap.html | 59 - man/tapset::target_set.3stap.html | 75 - man/tapset::task.3stap.html | 411 -- man/tapset::task_ancestry.3stap.html | 59 - man/tapset::task_time.3stap.html | 256 -- man/tapset::tcp.3stap.html | 190 - man/tapset::tcpmib-filter-default.3stap.html | 59 - man/tapset::tcpmib.3stap.html | 267 -- man/tapset::timestamp.3stap.html | 96 - man/tapset::timestamp_gtod.3stap.html | 107 - man/tapset::timestamp_monotonic.3stap.html | 187 - man/tapset::tokenize.3stap.html | 72 - man/tapset::tty.3stap.html | 219 - man/tapset::tzinfo.3stap.html | 91 - man/tapset::ucontext-symbols.3stap.html | 209 - man/tapset::ucontext-unwind.3stap.html | 136 - man/tapset::ucontext.3stap.html | 75 - man/tapset::uconversions-guru.3stap.html | 155 - man/tapset::uconversions.3stap.html | 870 ---- man/tapset::udp.3stap.html | 142 - man/warning::buildid.7stap.html | 117 - man/warning::debuginfo.7stap.html | 212 - man/warning::symbols.7stap.html | 92 - tapsets/API-HZ.html | 4 +- tapsets/API-MAJOR.html | 2 +- tapsets/API-MINOR.html | 2 +- tapsets/API-MKDEV.html | 2 +- tapsets/API-abort.html | 4 +- tapsets/API-addr-to-node.html | 4 +- tapsets/API-addr.html | 4 +- tapsets/API-ansi-clear-screen.html | 4 +- tapsets/API-ansi-cursor-hide.html | 4 +- tapsets/API-ansi-cursor-move.html | 4 +- tapsets/API-ansi-cursor-restore.html | 4 +- tapsets/API-ansi-cursor-save.html | 4 +- tapsets/API-ansi-cursor-show.html | 4 +- tapsets/API-ansi-new-line.html | 4 +- tapsets/API-ansi-reset-color.html | 4 +- tapsets/API-ansi-set-color.html | 4 +- tapsets/API-asmlinkage.html | 4 +- tapsets/API-assert.html | 4 +- tapsets/API-atomic-long-read.html | 4 +- tapsets/API-atomic-read.html | 4 +- tapsets/API-backtrace.html | 4 +- tapsets/API-bytes-to-string.html | 4 +- tapsets/API-caller-addr.html | 4 +- tapsets/API-caller.html | 4 +- tapsets/API-callers.html | 4 +- tapsets/API-cmdline-arg.html | 4 +- tapsets/API-cmdline-args.html | 4 +- tapsets/API-cmdline-str.html | 4 +- tapsets/API-commit.html | 4 +- tapsets/API-cpu-clock-ms.html | 4 +- tapsets/API-cpu-clock-ns.html | 4 +- tapsets/API-cpu-clock-s.html | 4 +- tapsets/API-cpu-clock-us.html | 4 +- tapsets/API-cpu.html | 4 +- tapsets/API-cpuid.html | 4 +- tapsets/API-cputime-to-msecs.html | 2 +- tapsets/API-cputime-to-string.html | 4 +- tapsets/API-cputime-to-usecs.html | 2 +- tapsets/API-ctime.html | 4 +- tapsets/API-current-exe-file.html | 4 +- tapsets/API-d-name.html | 4 +- tapsets/API-d-path.html | 4 +- tapsets/API-delete-stopwatch.html | 4 +- tapsets/API-discard.html | 2 +- tapsets/API-dump-stack.html | 4 +- tapsets/API-egid.html | 4 +- tapsets/API-env-var.html | 4 +- tapsets/API-errno-str.html | 4 +- tapsets/API-error.html | 4 +- tapsets/API-euid.html | 4 +- tapsets/API-execname.html | 4 +- tapsets/API-exit.html | 4 +- tapsets/API-fastcall.html | 4 +- tapsets/API-format-ipaddr.html | 2 +- tapsets/API-fp-add.html | 11 + tapsets/API-fp-eq.html | 11 + tapsets/API-fp-le.html | 11 + tapsets/API-fp-lt.html | 11 + tapsets/API-fp-mul.html | 11 + tapsets/API-fp-rem.html | 11 + tapsets/API-fp-sqrt.html | 9 + tapsets/API-fp-sub.html | 11 + tapsets/API-fp-to-long.html | 17 + tapsets/API-fp-to-string.html | 13 + tapsets/API-fp32-to-fp64.html | 9 + tapsets/API-ftrace.html | 4 +- tapsets/API-fullpath-struct-file.html | 4 +- tapsets/API-fullpath-struct-nameidata.html | 4 +- tapsets/API-fullpath-struct-path.html | 4 +- tapsets/API-get-cycles.html | 4 +- tapsets/API-get-loadavg-index.html | 4 +- tapsets/API-get-sa-flags.html | 2 +- tapsets/API-get-sa-handler.html | 2 +- tapsets/API-gettimeofday-ms.html | 4 +- tapsets/API-gettimeofday-ns.html | 4 +- tapsets/API-gettimeofday-s.html | 4 +- tapsets/API-gettimeofday-us.html | 4 +- tapsets/API-gid.html | 4 +- tapsets/API-htonl.html | 2 +- tapsets/API-htonll.html | 2 +- tapsets/API-htons.html | 2 +- tapsets/API-indent-depth.html | 4 +- tapsets/API-indent.html | 4 +- tapsets/API-inet-get-ip-source.html | 2 +- tapsets/API-inet-get-local-port.html | 2 +- tapsets/API-inode-name.html | 4 +- tapsets/API-inode-path.html | 4 +- tapsets/API-int-arg.html | 4 +- tapsets/API-ioblock-end.html | 44 +- tapsets/API-ioblock-request.html | 30 +- tapsets/API-ioblock-trace-bounce.html | 48 +- tapsets/API-ioblock-trace-end.html | 40 +- tapsets/API-ioblock-trace-request.html | 46 +- .../API-ioscheduler-elv-add-request-kp.html | 18 +- .../API-ioscheduler-elv-add-request-tp.html | 18 +- tapsets/API-ioscheduler-elv-add-request.html | 14 +- ...API-ioscheduler-elv-completed-request.html | 14 +- ...I-ioscheduler-elv-next-request-return.html | 6 +- tapsets/API-ioscheduler-elv-next-request.html | 6 +- ...I-ioscheduler-trace-elv-abort-request.html | 6 +- ...scheduler-trace-elv-completed-request.html | 18 +- ...I-ioscheduler-trace-elv-issue-request.html | 18 +- ...ioscheduler-trace-elv-requeue-request.html | 16 +- tapsets/API-ioscheduler-trace-plug.html | 8 +- tapsets/API-ioscheduler-trace-unplug-io.html | 4 +- .../API-ioscheduler-trace-unplug-timer.html | 4 +- tapsets/API-ip-ntop.html | 2 +- tapsets/API-ipmib-ForwDatagrams.html | 4 +- tapsets/API-ipmib-FragFails.html | 4 +- tapsets/API-ipmib-FragOKs.html | 4 +- tapsets/API-ipmib-InAddrErrors.html | 8 +- tapsets/API-ipmib-InDiscards.html | 8 +- tapsets/API-ipmib-InNoRoutes.html | 4 +- tapsets/API-ipmib-InReceives.html | 4 +- tapsets/API-ipmib-InUnknownProtos.html | 8 +- tapsets/API-ipmib-OutRequests.html | 8 +- tapsets/API-ipmib-ReasmReqds.html | 8 +- tapsets/API-ipmib-ReasmTimeout.html | 8 +- tapsets/API-ipmib-filter-key.html | 4 +- tapsets/API-ipmib-get-proto.html | 4 +- tapsets/API-ipmib-local-addr.html | 4 +- tapsets/API-ipmib-remote-addr.html | 4 +- tapsets/API-ipmib-tcp-local-port.html | 4 +- tapsets/API-ipmib-tcp-remote-port.html | 4 +- tapsets/API-irq-handler-entry.html | 32 +- tapsets/API-irq-handler-exit.html | 38 +- tapsets/API-is-myproc.html | 4 +- tapsets/API-is-return.html | 4 +- tapsets/API-is-sig-blocked.html | 2 +- tapsets/API-isdigit.html | 4 +- tapsets/API-isinstr.html | 4 +- tapsets/API-jiffies.html | 4 +- .../API-json-add-array-numeric-metric.html | 4 +- tapsets/API-json-add-array-string-metric.html | 4 +- tapsets/API-json-add-array.html | 4 +- tapsets/API-json-add-numeric-metric.html | 4 +- tapsets/API-json-add-string-metric.html | 4 +- tapsets/API-json-data.html | 12 +- .../API-json-output-array-numeric-value.html | 4 +- .../API-json-output-array-string-value.html | 4 +- tapsets/API-json-output-data-end.html | 4 +- tapsets/API-json-output-data-start.html | 4 +- tapsets/API-json-output-numeric-value.html | 4 +- tapsets/API-json-output-string-value.html | 4 +- tapsets/API-json-set-prefix.html | 4 +- tapsets/API-kernel-buffer-quoted-error.html | 4 +- tapsets/API-kernel-buffer-quoted.html | 4 +- tapsets/API-kernel-char.html | 4 +- tapsets/API-kernel-int.html | 4 +- tapsets/API-kernel-long.html | 4 +- tapsets/API-kernel-pointer.html | 4 +- tapsets/API-kernel-short.html | 4 +- tapsets/API-kernel-string-n.html | 4 +- tapsets/API-kernel-string-quoted-utf16.html | 4 +- tapsets/API-kernel-string-quoted-utf32.html | 4 +- tapsets/API-kernel-string-quoted.html | 4 +- tapsets/API-kernel-string-utf16.html | 4 +- tapsets/API-kernel-string-utf32.html | 4 +- tapsets/API-kernel-string.html | 4 +- tapsets/API-kprocess-create.html | 6 +- tapsets/API-kprocess-exec-complete.html | 14 +- tapsets/API-kprocess-exec.html | 12 +- tapsets/API-kprocess-exit.html | 6 +- tapsets/API-kprocess-release.html | 12 +- tapsets/API-kprocess-start.html | 6 +- tapsets/API-ktime-get-ns.html | 4 +- tapsets/API-linuxmib-DelayedACKs.html | 4 +- tapsets/API-linuxmib-ListenDrops.html | 4 +- tapsets/API-linuxmib-ListenOverflows.html | 4 +- tapsets/API-linuxmib-TCPMemoryPressures.html | 4 +- tapsets/API-linuxmib-filter-key.html | 4 +- tapsets/API-local-clock-ms.html | 4 +- tapsets/API-local-clock-ns.html | 4 +- tapsets/API-local-clock-s.html | 4 +- tapsets/API-local-clock-us.html | 4 +- tapsets/API-log.html | 4 +- tapsets/API-long-arg.html | 4 +- tapsets/API-long-to-fp.html | 9 + tapsets/API-longlong-arg.html | 4 +- tapsets/API-matched-str.html | 4 +- tapsets/API-matched.html | 4 +- tapsets/API-mdelay.html | 4 +- tapsets/API-mem-page-size.html | 2 +- tapsets/API-modname.html | 4 +- tapsets/API-module-name.html | 4 +- tapsets/API-module-size.html | 4 +- tapsets/API-msecs-to-string.html | 4 +- tapsets/API-netdev-change-mac.html | 10 +- tapsets/API-netdev-change-mtu.html | 6 +- tapsets/API-netdev-change-rx-flag.html | 6 +- tapsets/API-netdev-close.html | 2 +- tapsets/API-netdev-get-stats.html | 2 +- tapsets/API-netdev-hard-transmit.html | 10 +- tapsets/API-netdev-ioctl.html | 6 +- tapsets/API-netdev-open.html | 2 +- tapsets/API-netdev-receive.html | 6 +- tapsets/API-netdev-register.html | 2 +- tapsets/API-netdev-rx.html | 6 +- tapsets/API-netdev-set-promiscuity.html | 8 +- tapsets/API-netdev-transmit.html | 10 +- tapsets/API-netdev-unregister.html | 2 +- tapsets/API-netfilter-arp-forward.html | 62 +- tapsets/API-netfilter-arp-in.html | 74 +- tapsets/API-netfilter-arp-out.html | 66 +- tapsets/API-netfilter-bridge-forward.html | 104 +- tapsets/API-netfilter-bridge-local-in.html | 96 +- tapsets/API-netfilter-bridge-local-out.html | 96 +- .../API-netfilter-bridge-post-routing.html | 96 +- tapsets/API-netfilter-bridge-pre-routing.html | 100 +- tapsets/API-netfilter-ip-forward.html | 82 +- tapsets/API-netfilter-ip-local-in.html | 84 +- tapsets/API-netfilter-ip-local-out.html | 78 +- tapsets/API-netfilter-ip-post-routing.html | 68 +- tapsets/API-netfilter-ip-pre-routing.html | 82 +- tapsets/API-nfs-aop-readpage.html | 26 +- tapsets/API-nfs-aop-readpages.html | 18 +- tapsets/API-nfs-aop-release-page.html | 14 +- tapsets/API-nfs-aop-set-page-dirty.html | 8 +- tapsets/API-nfs-aop-write-begin.html | 20 +- tapsets/API-nfs-aop-write-end.html | 20 +- tapsets/API-nfs-aop-writepage.html | 34 +- tapsets/API-nfs-aop-writepages.html | 22 +- tapsets/API-nfs-fop-aio-read.html | 30 +- tapsets/API-nfs-fop-aio-write.html | 14 +- tapsets/API-nfs-fop-check-flags.html | 2 +- tapsets/API-nfs-fop-flush.html | 6 +- tapsets/API-nfs-fop-fsync.html | 6 +- tapsets/API-nfs-fop-llseek.html | 10 +- tapsets/API-nfs-fop-lock.html | 16 +- tapsets/API-nfs-fop-mmap.html | 28 +- tapsets/API-nfs-fop-open.html | 10 +- tapsets/API-nfs-fop-read-iter.html | 22 +- tapsets/API-nfs-fop-read.html | 4 +- tapsets/API-nfs-fop-release.html | 6 +- tapsets/API-nfs-fop-sendfile.html | 18 +- tapsets/API-nfs-fop-write-iter.html | 10 +- tapsets/API-nfs-fop-write.html | 4 +- tapsets/API-nfs-proc-commit-done.html | 20 +- tapsets/API-nfs-proc-commit-setup.html | 20 +- tapsets/API-nfs-proc-commit.html | 18 +- tapsets/API-nfs-proc-create.html | 16 +- tapsets/API-nfs-proc-handle-exception.html | 4 +- tapsets/API-nfs-proc-lookup.html | 14 +- tapsets/API-nfs-proc-open.html | 14 +- tapsets/API-nfs-proc-read-done.html | 16 +- tapsets/API-nfs-proc-read-setup.html | 16 +- tapsets/API-nfs-proc-read.html | 12 +- tapsets/API-nfs-proc-release.html | 12 +- tapsets/API-nfs-proc-remove.html | 10 +- tapsets/API-nfs-proc-rename-done.html | 20 +- tapsets/API-nfs-proc-rename-setup.html | 12 +- tapsets/API-nfs-proc-rename.html | 24 +- tapsets/API-nfs-proc-write-done.html | 12 +- tapsets/API-nfs-proc-write-setup.html | 24 +- tapsets/API-nfs-proc-write.html | 14 +- tapsets/API-nfsd-close.html | 4 +- tapsets/API-nfsd-commit.html | 8 +- tapsets/API-nfsd-create.html | 22 +- tapsets/API-nfsd-createv3.html | 26 +- tapsets/API-nfsd-dispatch.html | 16 +- tapsets/API-nfsd-lookup.html | 10 +- tapsets/API-nfsd-open.html | 10 +- tapsets/API-nfsd-proc-commit.html | 14 +- tapsets/API-nfsd-proc-create.html | 18 +- tapsets/API-nfsd-proc-lookup.html | 18 +- tapsets/API-nfsd-proc-read.html | 28 +- tapsets/API-nfsd-proc-remove.html | 20 +- tapsets/API-nfsd-proc-rename.html | 22 +- tapsets/API-nfsd-proc-write.html | 32 +- tapsets/API-nfsd-read.html | 18 +- tapsets/API-nfsd-rename.html | 14 +- tapsets/API-nfsd-unlink.html | 10 +- tapsets/API-nfsd-write.html | 16 +- tapsets/API-nfsderror.html | 4 +- tapsets/API-ngroups.html | 4 +- tapsets/API-ns-egid.html | 4 +- tapsets/API-ns-euid.html | 4 +- tapsets/API-ns-gid.html | 4 +- tapsets/API-ns-pgrp.html | 4 +- tapsets/API-ns-pid.html | 4 +- tapsets/API-ns-ppid.html | 4 +- tapsets/API-ns-sid.html | 4 +- tapsets/API-ns-tid.html | 4 +- tapsets/API-ns-uid.html | 4 +- tapsets/API-nsecs-to-string.html | 4 +- tapsets/API-ntohl.html | 2 +- tapsets/API-ntohll.html | 2 +- tapsets/API-ntohs.html | 2 +- tapsets/API-pages-to-string.html | 4 +- tapsets/API-panic.html | 4 +- tapsets/API-pexecname.html | 4 +- tapsets/API-pgrp.html | 4 +- tapsets/API-pid.html | 4 +- tapsets/API-pid2execname.html | 4 +- tapsets/API-pid2task.html | 4 +- tapsets/API-pn.html | 4 +- tapsets/API-pnlabel.html | 6 +- tapsets/API-pointer-arg.html | 4 +- tapsets/API-pp.html | 4 +- tapsets/API-ppfunc.html | 4 +- tapsets/API-ppid.html | 4 +- tapsets/API-print-backtrace-fileline.html | 4 +- tapsets/API-print-backtrace.html | 4 +- tapsets/API-print-regs.html | 4 +- tapsets/API-print-stack.html | 6 +- tapsets/API-print-syms.html | 4 +- tapsets/API-print-ubacktrace-brief.html | 6 +- tapsets/API-print-ubacktrace-fileline.html | 6 +- tapsets/API-print-ubacktrace.html | 6 +- tapsets/API-print-ustack.html | 6 +- tapsets/API-print-usyms.html | 4 +- tapsets/API-printk.html | 4 +- tapsets/API-probe-type.html | 4 +- tapsets/API-probefunc.html | 6 +- tapsets/API-probemod.html | 4 +- tapsets/API-proc-mem-data.html | 4 +- tapsets/API-proc-mem-rss.html | 4 +- tapsets/API-proc-mem-shr.html | 4 +- tapsets/API-proc-mem-size.html | 4 +- tapsets/API-proc-mem-string.html | 4 +- tapsets/API-proc-mem-txt.html | 4 +- tapsets/API-pstrace.html | 4 +- tapsets/API-qs-done.html | 4 +- tapsets/API-qs-run.html | 4 +- tapsets/API-qs-wait.html | 4 +- tapsets/API-qsq-blocked.html | 4 +- tapsets/API-qsq-print.html | 6 +- tapsets/API-qsq-service-time.html | 4 +- tapsets/API-qsq-start.html | 4 +- tapsets/API-qsq-throughput.html | 4 +- tapsets/API-qsq-utilization.html | 4 +- tapsets/API-qsq-wait-queue-length.html | 4 +- tapsets/API-qsq-wait-time.html | 4 +- tapsets/API-raise.html | 4 +- tapsets/API-randint.html | 2 +- tapsets/API-read-stopwatch-ms.html | 4 +- tapsets/API-read-stopwatch-ns.html | 4 +- tapsets/API-read-stopwatch-s.html | 4 +- tapsets/API-read-stopwatch-us.html | 4 +- tapsets/API-real-mount.html | 4 +- tapsets/API-register.html | 4 +- tapsets/API-registers-valid.html | 4 +- tapsets/API-regparm.html | 4 +- tapsets/API-remote-id.html | 4 +- tapsets/API-remote-uri.html | 4 +- tapsets/API-return-str.html | 4 +- tapsets/API-returnstr.html | 4 +- tapsets/API-returnval.html | 4 +- tapsets/API-reverse-path-walk.html | 4 +- tapsets/API-rlimit-from-str.html | 4 +- tapsets/API-s32-arg.html | 4 +- tapsets/API-s64-arg.html | 8 +- tapsets/API-sa-flags-str.html | 2 +- tapsets/API-sa-handler-str.html | 4 +- tapsets/API-scheduler-balance.html | 4 +- tapsets/API-scheduler-cpu-off.html | 8 +- tapsets/API-scheduler-cpu-on.html | 4 +- tapsets/API-scheduler-ctxswitch.html | 32 +- .../API-scheduler-kthread-stop-return.html | 6 +- tapsets/API-scheduler-kthread-stop.html | 2 +- tapsets/API-scheduler-migrate.html | 14 +- tapsets/API-scheduler-process-exit.html | 6 +- tapsets/API-scheduler-process-fork.html | 6 +- tapsets/API-scheduler-process-free.html | 6 +- tapsets/API-scheduler-process-wait.html | 6 +- tapsets/API-scheduler-signal-send.html | 6 +- tapsets/API-scheduler-tick.html | 8 +- tapsets/API-scheduler-wait-task.html | 8 +- tapsets/API-scheduler-wakeup-new.html | 16 +- tapsets/API-scheduler-wakeup.html | 12 +- tapsets/API-scsi-iocompleted.html | 26 +- tapsets/API-scsi-iodispatching.html | 26 +- tapsets/API-scsi-iodone.html | 14 +- tapsets/API-scsi-ioentry.html | 10 +- tapsets/API-scsi-ioexecute.html | 24 +- tapsets/API-scsi-set-state.html | 22 +- tapsets/API-set-int-arg.html | 12 + tapsets/API-set-kernel-char.html | 4 +- tapsets/API-set-kernel-int.html | 4 +- tapsets/API-set-kernel-long.html | 4 +- tapsets/API-set-kernel-pointer.html | 4 +- tapsets/API-set-kernel-short.html | 4 +- tapsets/API-set-kernel-string-n.html | 4 +- tapsets/API-set-kernel-string.html | 4 +- tapsets/API-set-long-arg.html | 13 + tapsets/API-set-longlong-arg.html | 11 + tapsets/API-set-pointer-arg.html | 12 + tapsets/API-set-s32-arg.html | 12 + tapsets/API-set-s64-arg.html | 12 + tapsets/API-set-u32-arg.html | 12 + tapsets/API-set-u64-arg.html | 12 + tapsets/API-set-uint-arg.html | 12 + tapsets/API-set-ulong-arg.html | 13 + tapsets/API-set-ulonglong-arg.html | 12 + tapsets/API-set-user-char.html | 4 +- tapsets/API-set-user-int.html | 4 +- tapsets/API-set-user-long.html | 4 +- tapsets/API-set-user-pointer.html | 4 +- tapsets/API-set-user-short.html | 4 +- tapsets/API-set-user-string-arg.html | 13 + tapsets/API-set-user-string-n.html | 8 +- tapsets/API-set-user-string.html | 8 +- tapsets/API-sid.html | 8 +- tapsets/API-signal-check-ignored-return.html | 2 +- tapsets/API-signal-check-ignored.html | 8 +- tapsets/API-signal-checkperm-return.html | 2 +- tapsets/API-signal-checkperm.html | 14 +- tapsets/API-signal-do-action-return.html | 6 +- tapsets/API-signal-do-action.html | 16 +- tapsets/API-signal-flush.html | 6 +- tapsets/API-signal-force-segv-return.html | 6 +- tapsets/API-signal-force-segv.html | 12 +- tapsets/API-signal-handle-return.html | 4 +- tapsets/API-signal-handle.html | 16 +- tapsets/API-signal-pending-return.html | 2 +- tapsets/API-signal-pending.html | 8 +- tapsets/API-signal-procmask-return.html | 6 +- tapsets/API-signal-procmask.html | 16 +- tapsets/API-signal-send-return.html | 12 +- tapsets/API-signal-send-sig-queue-return.html | 6 +- tapsets/API-signal-send-sig-queue.html | 14 +- tapsets/API-signal-send.html | 24 +- tapsets/API-signal-str.html | 2 +- tapsets/API-signal-sys-tgkill-return.html | 2 +- tapsets/API-signal-sys-tgkill.html | 20 +- tapsets/API-signal-sys-tkill.html | 12 +- tapsets/API-signal-syskill-return.html | 2 +- tapsets/API-signal-syskill.html | 14 +- tapsets/API-signal-systkill-return.html | 2 +- tapsets/API-signal-wakeup.html | 12 +- tapsets/API-sigset-mask-str.html | 2 +- tapsets/API-sock-fam-num2str.html | 2 +- tapsets/API-sock-fam-str2num.html | 2 +- tapsets/API-sock-prot-num2str.html | 2 +- tapsets/API-sock-prot-str2num.html | 2 +- tapsets/API-sock-state-num2str.html | 2 +- tapsets/API-sock-state-str2num.html | 2 +- tapsets/API-socket-aio-read-return.html | 26 +- tapsets/API-socket-aio-read.html | 22 +- tapsets/API-socket-aio-write-return.html | 18 +- tapsets/API-socket-aio-write.html | 16 +- tapsets/API-socket-close-return.html | 6 +- tapsets/API-socket-close.html | 18 +- tapsets/API-socket-create-return.html | 18 +- tapsets/API-socket-create.html | 10 +- tapsets/API-socket-read-iter-return.html | 22 +- tapsets/API-socket-read-iter.html | 22 +- tapsets/API-socket-readv-return.html | 26 +- tapsets/API-socket-readv.html | 22 +- tapsets/API-socket-receive.html | 22 +- tapsets/API-socket-recvmsg-return.html | 24 +- tapsets/API-socket-recvmsg.html | 18 +- tapsets/API-socket-send.html | 20 +- tapsets/API-socket-sendmsg-return.html | 18 +- tapsets/API-socket-sendmsg.html | 20 +- tapsets/API-socket-write-iter-return.html | 22 +- tapsets/API-socket-write-iter.html | 22 +- tapsets/API-socket-writev-return.html | 22 +- tapsets/API-socket-writev.html | 18 +- tapsets/API-softirq-entry.html | 6 +- tapsets/API-softirq-exit.html | 10 +- tapsets/API-speculate.html | 4 +- tapsets/API-speculation.html | 4 +- tapsets/API-sprint-backtrace.html | 4 +- tapsets/API-sprint-loadavg.html | 4 +- tapsets/API-sprint-stack.html | 6 +- tapsets/API-sprint-syms.html | 4 +- tapsets/API-sprint-ubacktrace.html | 6 +- tapsets/API-sprint-ustack.html | 6 +- tapsets/API-sprint-usyms.html | 4 +- tapsets/API-stack-size.html | 4 +- tapsets/API-stack-unused.html | 4 +- tapsets/API-stack-used.html | 4 +- tapsets/API-stack.html | 4 +- tapsets/API-stap-cache-add-mod.html | 8 +- tapsets/API-stap-cache-add-nss.html | 6 +- tapsets/API-stap-cache-add-src.html | 4 +- tapsets/API-stap-cache-clean.html | 4 +- tapsets/API-stap-cache-get.html | 4 +- tapsets/API-stap-pass0-end.html | 4 +- tapsets/API-stap-pass0.html | 4 +- tapsets/API-stap-pass1-end.html | 4 +- tapsets/API-stap-pass1a.html | 4 +- tapsets/API-stap-pass1b.html | 4 +- tapsets/API-stap-pass2-end.html | 4 +- tapsets/API-stap-pass2.html | 4 +- tapsets/API-stap-pass3-end.html | 4 +- tapsets/API-stap-pass3.html | 4 +- tapsets/API-stap-pass4-end.html | 4 +- tapsets/API-stap-pass4.html | 4 +- tapsets/API-stap-pass5-end.html | 4 +- tapsets/API-stap-pass5.html | 4 +- tapsets/API-stap-pass6-end.html | 4 +- tapsets/API-stap-pass6.html | 4 +- tapsets/API-stap-system-return.html | 4 +- tapsets/API-stap-system-spawn.html | 4 +- tapsets/API-stap-system.html | 4 +- .../API-stapio-receive-control-message.html | 8 +- tapsets/API-staprun-insert-module.html | 4 +- tapsets/API-staprun-remove-module.html | 4 +- tapsets/API-staprun-send-control-message.html | 8 +- tapsets/API-start-stopwatch.html | 4 +- tapsets/API-stop-stopwatch.html | 4 +- tapsets/API-stp-pid.html | 4 +- tapsets/API-str-replace.html | 4 +- tapsets/API-string-quoted.html | 4 +- tapsets/API-string-to-fp.html | 10 + tapsets/API-stringat.html | 4 +- tapsets/API-strlen.html | 4 +- tapsets/API-strpos.html | 4 +- tapsets/API-strtol.html | 4 +- tapsets/API-substr.html | 4 +- tapsets/API-sunrpc-clnt-bind-new-program.html | 18 +- tapsets/API-sunrpc-clnt-call-async.html | 26 +- tapsets/API-sunrpc-clnt-call-sync.html | 22 +- tapsets/API-sunrpc-clnt-clone-client.html | 14 +- tapsets/API-sunrpc-clnt-create-client.html | 12 +- tapsets/API-sunrpc-clnt-restart-call.html | 12 +- tapsets/API-sunrpc-clnt-shutdown-client.html | 52 +- tapsets/API-sunrpc-sched-delay.html | 14 +- tapsets/API-sunrpc-sched-execute.html | 16 +- tapsets/API-sunrpc-sched-new-task.html | 10 +- tapsets/API-sunrpc-sched-release-task.html | 16 +- tapsets/API-sunrpc-svc-create.html | 6 +- tapsets/API-sunrpc-svc-destroy.html | 22 +- tapsets/API-sunrpc-svc-drop.html | 14 +- tapsets/API-sunrpc-svc-process.html | 20 +- tapsets/API-sunrpc-svc-recv.html | 6 +- tapsets/API-sunrpc-svc-register.html | 12 +- tapsets/API-sunrpc-svc-send.html | 16 +- tapsets/API-switch-file.html | 8 +- tapsets/API-symdata.html | 4 +- tapsets/API-symfile.html | 4 +- tapsets/API-symfileline.html | 4 +- tapsets/API-symline.html | 4 +- tapsets/API-symname.html | 4 +- tapsets/API-syscall-any-return.html | 14 +- tapsets/API-syscall-any.html | 10 +- tapsets/API-system.html | 4 +- tapsets/API-target-set-pid.html | 4 +- tapsets/API-target-set-report.html | 4 +- tapsets/API-target.html | 4 +- tapsets/API-task-ancestry.html | 4 +- tapsets/API-task-backtrace.html | 4 +- tapsets/API-task-cpu.html | 4 +- tapsets/API-task-current.html | 4 +- tapsets/API-task-cwd-path.html | 2 +- tapsets/API-task-dentry-path.html | 4 +- tapsets/API-task-egid.html | 4 +- tapsets/API-task-euid.html | 4 +- tapsets/API-task-exe-file.html | 2 +- tapsets/API-task-execname.html | 4 +- tapsets/API-task-fd-lookup.html | 4 +- tapsets/API-task-gid.html | 4 +- tapsets/API-task-max-file-handles.html | 4 +- tapsets/API-task-nice.html | 4 +- tapsets/API-task-ns-egid.html | 4 +- tapsets/API-task-ns-euid.html | 4 +- tapsets/API-task-ns-gid.html | 4 +- tapsets/API-task-ns-pid.html | 4 +- tapsets/API-task-ns-tid.html | 4 +- tapsets/API-task-ns-uid.html | 4 +- tapsets/API-task-open-file-handles.html | 4 +- tapsets/API-task-parent.html | 4 +- tapsets/API-task-pid.html | 4 +- tapsets/API-task-prio.html | 4 +- tapsets/API-task-start-time.html | 4 +- tapsets/API-task-state.html | 4 +- tapsets/API-task-stime.html | 4 +- tapsets/API-task-tid.html | 4 +- tapsets/API-task-time-string-tid.html | 4 +- tapsets/API-task-time-string.html | 4 +- tapsets/API-task-uid.html | 4 +- tapsets/API-task-utime.html | 4 +- tapsets/API-tcp-disconnect-return.html | 4 +- tapsets/API-tcp-disconnect.html | 22 +- tapsets/API-tcp-receive.html | 34 +- tapsets/API-tcp-recvmsg-return.html | 18 +- tapsets/API-tcp-recvmsg.html | 18 +- tapsets/API-tcp-sendmsg-return.html | 8 +- tapsets/API-tcp-sendmsg.html | 8 +- tapsets/API-tcp-setsockopt-return.html | 8 +- tapsets/API-tcp-setsockopt.html | 18 +- tapsets/API-tcpmib-ActiveOpens.html | 4 +- tapsets/API-tcpmib-AttemptFails.html | 4 +- tapsets/API-tcpmib-CurrEstab.html | 4 +- tapsets/API-tcpmib-EstabResets.html | 4 +- tapsets/API-tcpmib-InSegs.html | 8 +- tapsets/API-tcpmib-OutRsts.html | 8 +- tapsets/API-tcpmib-OutSegs.html | 4 +- tapsets/API-tcpmib-PassiveOpens.html | 8 +- tapsets/API-tcpmib-RetransSegs.html | 4 +- tapsets/API-tcpmib-filter-key.html | 4 +- tapsets/API-tcpmib-get-state.html | 4 +- tapsets/API-tcpmib-local-addr.html | 4 +- tapsets/API-tcpmib-local-port.html | 4 +- tapsets/API-tcpmib-remote-addr.html | 4 +- tapsets/API-tcpmib-remote-port.html | 4 +- tapsets/API-text-str.html | 4 +- tapsets/API-text-strn.html | 4 +- tapsets/API-thread-indent-depth.html | 4 +- tapsets/API-thread-indent.html | 4 +- tapsets/API-tid.html | 4 +- tapsets/API-tokenize.html | 4 +- tapsets/API-tty-init.html | 6 +- tapsets/API-tty-ioctl.html | 6 +- tapsets/API-tty-open.html | 14 +- tapsets/API-tty-poll.html | 6 +- tapsets/API-tty-read.html | 8 +- tapsets/API-tty-receive.html | 20 +- tapsets/API-tty-register.html | 10 +- tapsets/API-tty-release.html | 6 +- tapsets/API-tty-resize.html | 26 +- tapsets/API-tty-unregister.html | 10 +- tapsets/API-tty-write.html | 6 +- tapsets/API-tz-ctime.html | 4 +- tapsets/API-tz-gmtoff.html | 4 +- tapsets/API-tz-name.html | 4 +- tapsets/API-u-register.html | 4 +- tapsets/API-u32-arg.html | 4 +- tapsets/API-u64-arg.html | 4 +- tapsets/API-uaddr.html | 4 +- tapsets/API-ubacktrace.html | 6 +- tapsets/API-ucallers.html | 6 +- tapsets/API-udelay.html | 4 +- tapsets/API-udp-disconnect-return.html | 14 +- tapsets/API-udp-disconnect.html | 20 +- tapsets/API-udp-recvmsg-return.html | 12 +- tapsets/API-udp-recvmsg.html | 20 +- tapsets/API-udp-sendmsg-return.html | 4 +- tapsets/API-udp-sendmsg.html | 20 +- tapsets/API-uid.html | 4 +- tapsets/API-uint-arg.html | 4 +- tapsets/API-ulong-arg.html | 4 +- tapsets/API-ulonglong-arg.html | 4 +- tapsets/API-umodname.html | 4 +- tapsets/API-usecs-to-string.html | 4 +- tapsets/API-user-buffer-quoted-error.html | 4 +- tapsets/API-user-buffer-quoted.html | 4 +- tapsets/API-user-char-error.html | 4 +- tapsets/API-user-char-warn.html | 4 +- tapsets/API-user-char.html | 4 +- tapsets/API-user-int-error.html | 4 +- tapsets/API-user-int-warn.html | 4 +- tapsets/API-user-int.html | 4 +- tapsets/API-user-int16-error.html | 4 +- tapsets/API-user-int16.html | 4 +- tapsets/API-user-int32-error.html | 4 +- tapsets/API-user-int32.html | 4 +- tapsets/API-user-int64-error.html | 4 +- tapsets/API-user-int64.html | 4 +- tapsets/API-user-int8-error.html | 4 +- tapsets/API-user-int8.html | 4 +- tapsets/API-user-long-error.html | 4 +- tapsets/API-user-long-warn.html | 4 +- tapsets/API-user-long.html | 4 +- tapsets/API-user-mode.html | 4 +- tapsets/API-user-short-error.html | 4 +- tapsets/API-user-short-warn.html | 4 +- tapsets/API-user-short.html | 4 +- tapsets/API-user-string-n-nofault.html | 13 + tapsets/API-user-string-n-quoted.html | 8 +- tapsets/API-user-string-n-warn.html | 8 +- tapsets/API-user-string-n.html | 8 +- tapsets/API-user-string-nofault.html | 10 + tapsets/API-user-string-quoted-utf16.html | 4 +- tapsets/API-user-string-quoted-utf32.html | 4 +- tapsets/API-user-string-quoted.html | 8 +- tapsets/API-user-string-utf16.html | 4 +- tapsets/API-user-string-utf32.html | 4 +- tapsets/API-user-string-warn.html | 4 +- tapsets/API-user-string.html | 4 +- tapsets/API-user-uint16-error.html | 4 +- tapsets/API-user-uint16.html | 4 +- tapsets/API-user-uint32-error.html | 4 +- tapsets/API-user-uint32.html | 4 +- tapsets/API-user-uint64-error.html | 4 +- tapsets/API-user-uint64.html | 4 +- tapsets/API-user-uint8-error.html | 4 +- tapsets/API-user-uint8.html | 4 +- tapsets/API-user-ulong-error.html | 4 +- tapsets/API-user-ulong-warn.html | 4 +- tapsets/API-user-ulong.html | 4 +- tapsets/API-user-ushort-error.html | 4 +- tapsets/API-user-ushort-warn.html | 4 +- tapsets/API-user-ushort.html | 4 +- tapsets/API-usrdev2kerndev.html | 2 +- tapsets/API-ustack.html | 4 +- tapsets/API-usymdata.html | 4 +- tapsets/API-usymfile.html | 4 +- tapsets/API-usymfileline.html | 4 +- tapsets/API-usymline.html | 4 +- tapsets/API-usymname.html | 4 +- tapsets/API-vm-brk.html | 8 +- tapsets/API-vm-fault-contains.html | 2 +- tapsets/API-vm-kfree.html | 2 +- tapsets/API-vm-kmalloc-node.html | 18 +- tapsets/API-vm-kmalloc.html | 18 +- tapsets/API-vm-kmem-cache-alloc-node.html | 20 +- tapsets/API-vm-kmem-cache-alloc.html | 18 +- tapsets/API-vm-kmem-cache-free.html | 10 +- tapsets/API-vm-mmap.html | 4 +- tapsets/API-vm-munmap.html | 4 +- tapsets/API-vm-oom-kill.html | 4 +- tapsets/API-vm-pagefault-return.html | 6 +- tapsets/API-vm-pagefault.html | 12 +- tapsets/API-vm-write-shared-copy.html | 12 +- tapsets/API-vm-write-shared.html | 10 +- tapsets/API-warn.html | 4 +- tapsets/API-workqueue-create.html | 2 +- tapsets/API-workqueue-destroy.html | 2 +- tapsets/API-workqueue-execute.html | 6 +- tapsets/API-workqueue-insert.html | 6 +- tapsets/floatingpoint.stp.html | 4 + tapsets/index.html | 60 +- tapsets/syscall_any.stp.html | 4 +- tapsets/syscalls.html | 6 +- tutorial/1_Introduction.html | 155 + tutorial/2_Tracing.html | 328 ++ tutorial/3_Analysis.html | 587 +++ tutorial/4_Tapsets.html | 398 ++ tutorial/5_Further_information.html | 136 + tutorial/A_Glossary.html | 60 + tutorial/About_this_document.html | 59 + tutorial/B_Errors.html | 360 ++ tutorial/C_Acknowledgments.html | 63 + tutorial/Contents.html | 127 + tutorial/contents.png | Bin 0 -> 278 bytes tutorial/crossref.png | Bin 0 -> 147 bytes tutorial/footnode.html | 214 + tutorial/images.log | 1387 ++---- tutorial/images.pdf | Bin 0 -> 125162 bytes tutorial/images.pl | 48 +- tutorial/images.tex | 45 +- tutorial/img1.png | Bin 0 -> 5528 bytes tutorial/img10.png | Bin 0 -> 17955 bytes tutorial/img11.png | Bin 0 -> 33938 bytes tutorial/img12.png | Bin 0 -> 23910 bytes tutorial/img13.png | Bin 0 -> 151 bytes tutorial/img2.png | Bin 0 -> 14473 bytes tutorial/img3.png | Bin 0 -> 23093 bytes tutorial/img4.png | Bin 0 -> 9334 bytes tutorial/img5.png | Bin 0 -> 32769 bytes tutorial/img6.png | Bin 0 -> 21352 bytes tutorial/img7.png | Bin 0 -> 481 bytes tutorial/img8.png | Bin 0 -> 290 bytes tutorial/img9.png | Bin 0 -> 31553 bytes tutorial/index.html | 139 + tutorial/labels.pl | 4 +- tutorial/next.png | Bin 0 -> 245 bytes tutorial/next_g.png | Bin 0 -> 272 bytes tutorial/prev.png | Bin 0 -> 279 bytes tutorial/prev_g.png | Bin 0 -> 327 bytes tutorial/tutorial.css | 63 + tutorial/tutorial.html | 139 + tutorial/up.png | Bin 0 -> 211 bytes tutorial/up_g.png | Bin 0 -> 231 bytes 1609 files changed, 6939 insertions(+), 96299 deletions(-) delete mode 100644 man/dtrace.1.html delete mode 100644 man/error::dwarf.7stap.html delete mode 100644 man/error::fault.7stap.html delete mode 100644 man/error::inode-uprobes.7stap.html delete mode 100644 man/error::pass1.7stap.html delete mode 100644 man/error::pass2.7stap.html delete mode 100644 man/error::pass3.7stap.html delete mode 100644 man/error::pass4.7stap.html delete mode 100644 man/error::pass5.7stap.html delete mode 100644 man/error::process-tracking.7stap.html delete mode 100644 man/error::reporting.7stap.html delete mode 100644 man/error::sdt.7stap.html delete mode 100644 man/function::-.3stap.html delete mode 100644 man/function::HZ.3stap.html delete mode 100644 man/function::MAJOR.3stap.html delete mode 100644 man/function::MINOR.3stap.html delete mode 100644 man/function::MKDEF.3stap.html delete mode 100644 man/function::MKDEV.3stap.html delete mode 100644 man/function::abort.3stap.html delete mode 100644 man/function::addr.3stap.html delete mode 100644 man/function::addr_to_node.3stap.html delete mode 100644 man/function::ansi_clear_screen.3stap.html delete mode 100644 man/function::ansi_cursor_hide.3stap.html delete mode 100644 man/function::ansi_cursor_move.3stap.html delete mode 100644 man/function::ansi_cursor_restore.3stap.html delete mode 100644 man/function::ansi_cursor_save.3stap.html delete mode 100644 man/function::ansi_cursor_show.3stap.html delete mode 100644 man/function::ansi_new_line.3stap.html delete mode 100644 man/function::ansi_reset_color.3stap.html delete mode 100644 man/function::ansi_set_color.3stap.html delete mode 100644 man/function::asmlinkage.3stap.html delete mode 100644 man/function::assert.3stap.html delete mode 100644 man/function::atomic_long_read.3stap.html delete mode 100644 man/function::atomic_read.3stap.html delete mode 100644 man/function::backtrace.3stap.html delete mode 100644 man/function::bytes_to_string.3stap.html delete mode 100644 man/function::caller.3stap.html delete mode 100644 man/function::caller_addr.3stap.html delete mode 100644 man/function::callers.3stap.html delete mode 100644 man/function::cmdline_arg.3stap.html delete mode 100644 man/function::cmdline_args.3stap.html delete mode 100644 man/function::cmdline_str.3stap.html delete mode 100644 man/function::commit.3stap.html delete mode 100644 man/function::cpu.3stap.html delete mode 100644 man/function::cpu_clock_ms.3stap.html delete mode 100644 man/function::cpu_clock_ns.3stap.html delete mode 100644 man/function::cpu_clock_s.3stap.html delete mode 100644 man/function::cpu_clock_us.3stap.html delete mode 100644 man/function::cpuid.3stap.html delete mode 100644 man/function::cputime_to_msecs.3stap.html delete mode 100644 man/function::cputime_to_string.3stap.html delete mode 100644 man/function::cputime_to_usecs.3stap.html delete mode 100644 man/function::ctime.3stap.html delete mode 100644 man/function::current_exe_file.3stap.html delete mode 100644 man/function::d_name.3stap.html delete mode 100644 man/function::d_path.3stap.html delete mode 100644 man/function::delete_stopwatch.3stap.html delete mode 100644 man/function::discard.3stap.html delete mode 100644 man/function::dump_stack.3stap.html delete mode 100644 man/function::egid.3stap.html delete mode 100644 man/function::env_var.3stap.html delete mode 100644 man/function::errno_str.3stap.html delete mode 100644 man/function::error.3stap.html delete mode 100644 man/function::euid.3stap.html delete mode 100644 man/function::execname.3stap.html delete mode 100644 man/function::exit.3stap.html delete mode 100644 man/function::fastcall.3stap.html delete mode 100644 man/function::format_ipaddr.3stap.html delete mode 100644 man/function::ftrace.3stap.html delete mode 100644 man/function::fullpath_struct_file.3stap.html delete mode 100644 man/function::fullpath_struct_nameidata.3stap.html delete mode 100644 man/function::fullpath_struct_path.3stap.html delete mode 100644 man/function::get_cycles.3stap.html delete mode 100644 man/function::get_loadavg_index.3stap.html delete mode 100644 man/function::get_sa_flags.3stap.html delete mode 100644 man/function::get_sa_handler.3stap.html delete mode 100644 man/function::gettimeofday_ms.3stap.html delete mode 100644 man/function::gettimeofday_ns.3stap.html delete mode 100644 man/function::gettimeofday_s.3stap.html delete mode 100644 man/function::gettimeofday_us.3stap.html delete mode 100644 man/function::gid.3stap.html delete mode 100644 man/function::htonl.3stap.html delete mode 100644 man/function::htonll.3stap.html delete mode 100644 man/function::htons.3stap.html delete mode 100644 man/function::indent.3stap.html delete mode 100644 man/function::indent_depth.3stap.html delete mode 100644 man/function::inet_get_ip_source.3stap.html delete mode 100644 man/function::inet_get_local_port.3stap.html delete mode 100644 man/function::inode_name.3stap.html delete mode 100644 man/function::inode_path.3stap.html delete mode 100644 man/function::int_arg.3stap.html delete mode 100644 man/function::ip_ntop.3stap.html delete mode 100644 man/function::ipmib_filter_key.3stap.html delete mode 100644 man/function::ipmib_get_proto.3stap.html delete mode 100644 man/function::ipmib_local_addr.3stap.html delete mode 100644 man/function::ipmib_remote_addr.3stap.html delete mode 100644 man/function::ipmib_tcp_local_port.3stap.html delete mode 100644 man/function::ipmib_tcp_remote_port.3stap.html delete mode 100644 man/function::is_myproc.3stap.html delete mode 100644 man/function::is_return.3stap.html delete mode 100644 man/function::is_sig_blocked.3stap.html delete mode 100644 man/function::isdigit.3stap.html delete mode 100644 man/function::isinstr.3stap.html delete mode 100644 man/function::jiffies.3stap.html delete mode 100644 man/function::json_add_array.3stap.html delete mode 100644 man/function::json_add_array_numeric_metric.3stap.html delete mode 100644 man/function::json_add_array_string_metric.3stap.html delete mode 100644 man/function::json_add_numeric_metric.3stap.html delete mode 100644 man/function::json_add_string_metric.3stap.html delete mode 100644 man/function::json_set_prefix.3stap.html delete mode 100644 man/function::kernel_buffer_quoted.3stap.html delete mode 100644 man/function::kernel_buffer_quoted_error.3stap.html delete mode 100644 man/function::kernel_char.3stap.html delete mode 100644 man/function::kernel_int.3stap.html delete mode 100644 man/function::kernel_long.3stap.html delete mode 100644 man/function::kernel_pointer.3stap.html delete mode 100644 man/function::kernel_short.3stap.html delete mode 100644 man/function::kernel_string.3stap.html delete mode 100644 man/function::kernel_string_n.3stap.html delete mode 100644 man/function::kernel_string_quoted.3stap.html delete mode 100644 man/function::kernel_string_quoted_utf16.3stap.html delete mode 100644 man/function::kernel_string_quoted_utf32.3stap.html delete mode 100644 man/function::kernel_string_utf16.3stap.html delete mode 100644 man/function::kernel_string_utf32.3stap.html delete mode 100644 man/function::ktime_get_ns.3stap.html delete mode 100644 man/function::linuxmib_filter_key.3stap.html delete mode 100644 man/function::local_clock_ms.3stap.html delete mode 100644 man/function::local_clock_ns.3stap.html delete mode 100644 man/function::local_clock_s.3stap.html delete mode 100644 man/function::local_clock_us.3stap.html delete mode 100644 man/function::log.3stap.html delete mode 100644 man/function::long_arg.3stap.html delete mode 100644 man/function::longlong_arg.3stap.html delete mode 100644 man/function::matched.3stap.html delete mode 100644 man/function::matched_str.3stap.html delete mode 100644 man/function::mdelay.3stap.html delete mode 100644 man/function::mem_page_size.3stap.html delete mode 100644 man/function::modname.3stap.html delete mode 100644 man/function::module_name.3stap.html delete mode 100644 man/function::module_size.3stap.html delete mode 100644 man/function::msecs_to_string.3stap.html delete mode 100644 man/function::nfsderror.3stap.html delete mode 100644 man/function::ngroups.3stap.html delete mode 100644 man/function::ns_egid.3stap.html delete mode 100644 man/function::ns_euid.3stap.html delete mode 100644 man/function::ns_gid.3stap.html delete mode 100644 man/function::ns_pgrp.3stap.html delete mode 100644 man/function::ns_pid.3stap.html delete mode 100644 man/function::ns_ppid.3stap.html delete mode 100644 man/function::ns_sid.3stap.html delete mode 100644 man/function::ns_tid.3stap.html delete mode 100644 man/function::ns_uid.3stap.html delete mode 100644 man/function::nsecs_to_string.3stap.html delete mode 100644 man/function::ntohl.3stap.html delete mode 100644 man/function::ntohll.3stap.html delete mode 100644 man/function::ntohs.3stap.html delete mode 100644 man/function::pages_to_string.3stap.html delete mode 100644 man/function::panic.3stap.html delete mode 100644 man/function::pexecname.3stap.html delete mode 100644 man/function::pgrp.3stap.html delete mode 100644 man/function::pid.3stap.html delete mode 100644 man/function::pid2execname.3stap.html delete mode 100644 man/function::pid2task.3stap.html delete mode 100644 man/function::pn.3stap.html delete mode 100644 man/function::pnlabel.3stap.html delete mode 100644 man/function::pointer_arg.3stap.html delete mode 100644 man/function::pp.3stap.html delete mode 100644 man/function::ppfunc.3stap.html delete mode 100644 man/function::ppid.3stap.html delete mode 100644 man/function::print_backtrace.3stap.html delete mode 100644 man/function::print_backtrace_fileline.3stap.html delete mode 100644 man/function::print_regs.3stap.html delete mode 100644 man/function::print_stack.3stap.html delete mode 100644 man/function::print_syms.3stap.html delete mode 100644 man/function::print_ubacktrace.3stap.html delete mode 100644 man/function::print_ubacktrace_brief.3stap.html delete mode 100644 man/function::print_ubacktrace_fileline.3stap.html delete mode 100644 man/function::print_ustack.3stap.html delete mode 100644 man/function::print_usyms.3stap.html delete mode 100644 man/function::printk.3stap.html delete mode 100644 man/function::probe_type.3stap.html delete mode 100644 man/function::probefunc.3stap.html delete mode 100644 man/function::probemod.3stap.html delete mode 100644 man/function::proc_mem_data.3stap.html delete mode 100644 man/function::proc_mem_rss.3stap.html delete mode 100644 man/function::proc_mem_shr.3stap.html delete mode 100644 man/function::proc_mem_size.3stap.html delete mode 100644 man/function::proc_mem_string.3stap.html delete mode 100644 man/function::proc_mem_txt.3stap.html delete mode 100644 man/function::pstrace.3stap.html delete mode 100644 man/function::qs_done.3stap.html delete mode 100644 man/function::qs_run.3stap.html delete mode 100644 man/function::qs_wait.3stap.html delete mode 100644 man/function::qsq_blocked.3stap.html delete mode 100644 man/function::qsq_print.3stap.html delete mode 100644 man/function::qsq_service_time.3stap.html delete mode 100644 man/function::qsq_start.3stap.html delete mode 100644 man/function::qsq_throughput.3stap.html delete mode 100644 man/function::qsq_utilization.3stap.html delete mode 100644 man/function::qsq_wait_queue_length.3stap.html delete mode 100644 man/function::qsq_wait_time.3stap.html delete mode 100644 man/function::raise.3stap.html delete mode 100644 man/function::randint.3stap.html delete mode 100644 man/function::read_stopwatch_ms.3stap.html delete mode 100644 man/function::read_stopwatch_ns.3stap.html delete mode 100644 man/function::read_stopwatch_s.3stap.html delete mode 100644 man/function::read_stopwatch_us.3stap.html delete mode 100644 man/function::real_mount.3stap.html delete mode 100644 man/function::register.3stap.html delete mode 100644 man/function::registers_valid.3stap.html delete mode 100644 man/function::regparm.3stap.html delete mode 100644 man/function::remote_id.3stap.html delete mode 100644 man/function::remote_uri.3stap.html delete mode 100644 man/function::return_str.3stap.html delete mode 100644 man/function::returnstr.3stap.html delete mode 100644 man/function::returnval.3stap.html delete mode 100644 man/function::reverse_path_walk.3stap.html delete mode 100644 man/function::rlimit_from_str.3stap.html delete mode 100644 man/function::s32_arg.3stap.html delete mode 100644 man/function::s64_arg.3stap.html delete mode 100644 man/function::sa_flags_str.3stap.html delete mode 100644 man/function::sa_handler.3stap.html delete mode 100644 man/function::sa_handler_str.3stap.html delete mode 100644 man/function::set_kernel_char.3stap.html delete mode 100644 man/function::set_kernel_int.3stap.html delete mode 100644 man/function::set_kernel_long.3stap.html delete mode 100644 man/function::set_kernel_pointer.3stap.html delete mode 100644 man/function::set_kernel_short.3stap.html delete mode 100644 man/function::set_kernel_string.3stap.html delete mode 100644 man/function::set_kernel_string_n.3stap.html delete mode 100644 man/function::set_user_char.3stap.html delete mode 100644 man/function::set_user_int.3stap.html delete mode 100644 man/function::set_user_long.3stap.html delete mode 100644 man/function::set_user_pointer.3stap.html delete mode 100644 man/function::set_user_short.3stap.html delete mode 100644 man/function::set_user_string.3stap.html delete mode 100644 man/function::set_user_string_n.3stap.html delete mode 100644 man/function::sid.3stap.html delete mode 100644 man/function::signal_str.3stap.html delete mode 100644 man/function::sigset_mask_str.3stap.html delete mode 100644 man/function::sock_fam_num2str.3stap.html delete mode 100644 man/function::sock_fam_str2num.3stap.html delete mode 100644 man/function::sock_prot_num2str.3stap.html delete mode 100644 man/function::sock_prot_str2num.3stap.html delete mode 100644 man/function::sock_state_num2str.3stap.html delete mode 100644 man/function::sock_state_str2num.3stap.html delete mode 100644 man/function::speculate.3stap.html delete mode 100644 man/function::speculation.3stap.html delete mode 100644 man/function::sprint_backtrace.3stap.html delete mode 100644 man/function::sprint_loadavg.3stap.html delete mode 100644 man/function::sprint_stack.3stap.html delete mode 100644 man/function::sprint_syms.3stap.html delete mode 100644 man/function::sprint_ubacktrace.3stap.html delete mode 100644 man/function::sprint_ustack.3stap.html delete mode 100644 man/function::sprint_usyms.3stap.html delete mode 100644 man/function::stack.3stap.html delete mode 100644 man/function::stack_size.3stap.html delete mode 100644 man/function::stack_unused.3stap.html delete mode 100644 man/function::stack_used.3stap.html delete mode 100644 man/function::start_stopwatch.3stap.html delete mode 100644 man/function::stop_stopwatch.3stap.html delete mode 100644 man/function::stp_pid.3stap.html delete mode 100644 man/function::str_replace.3stap.html delete mode 100644 man/function::string_quoted.3stap.html delete mode 100644 man/function::stringat.3stap.html delete mode 100644 man/function::strlen.3stap.html delete mode 100644 man/function::strpos.3stap.html delete mode 100644 man/function::strtol.3stap.html delete mode 100644 man/function::substr.3stap.html delete mode 100644 man/function::switch_file.3stap.html delete mode 100644 man/function::symdata.3stap.html delete mode 100644 man/function::symfile.3stap.html delete mode 100644 man/function::symfileline.3stap.html delete mode 100644 man/function::symline.3stap.html delete mode 100644 man/function::symname.3stap.html delete mode 100644 man/function::system.3stap.html delete mode 100644 man/function::target.3stap.html delete mode 100644 man/function::target_set_pid.3stap.html delete mode 100644 man/function::target_set_report.3stap.html delete mode 100644 man/function::task_ancestry.3stap.html delete mode 100644 man/function::task_backtrace.3stap.html delete mode 100644 man/function::task_cpu.3stap.html delete mode 100644 man/function::task_current.3stap.html delete mode 100644 man/function::task_cwd_path.3stap.html delete mode 100644 man/function::task_dentry_path.3stap.html delete mode 100644 man/function::task_egid.3stap.html delete mode 100644 man/function::task_euid.3stap.html delete mode 100644 man/function::task_exe_file.3stap.html delete mode 100644 man/function::task_execname.3stap.html delete mode 100644 man/function::task_fd_lookup.3stap.html delete mode 100644 man/function::task_gid.3stap.html delete mode 100644 man/function::task_max_file_handles.3stap.html delete mode 100644 man/function::task_nice.3stap.html delete mode 100644 man/function::task_ns_egid.3stap.html delete mode 100644 man/function::task_ns_euid.3stap.html delete mode 100644 man/function::task_ns_gid.3stap.html delete mode 100644 man/function::task_ns_pid.3stap.html delete mode 100644 man/function::task_ns_tid.3stap.html delete mode 100644 man/function::task_ns_uid.3stap.html delete mode 100644 man/function::task_open_file_handles.3stap.html delete mode 100644 man/function::task_parent.3stap.html delete mode 100644 man/function::task_pid.3stap.html delete mode 100644 man/function::task_prio.3stap.html delete mode 100644 man/function::task_start_time.3stap.html delete mode 100644 man/function::task_state.3stap.html delete mode 100644 man/function::task_stime.3stap.html delete mode 100644 man/function::task_tid.3stap.html delete mode 100644 man/function::task_time_string.3stap.html delete mode 100644 man/function::task_time_string_tid.3stap.html delete mode 100644 man/function::task_uid.3stap.html delete mode 100644 man/function::task_utime.3stap.html delete mode 100644 man/function::tcpmib_filter_key.3stap.html delete mode 100644 man/function::tcpmib_get_state.3stap.html delete mode 100644 man/function::tcpmib_local_addr.3stap.html delete mode 100644 man/function::tcpmib_local_port.3stap.html delete mode 100644 man/function::tcpmib_remote_addr.3stap.html delete mode 100644 man/function::tcpmib_remote_port.3stap.html delete mode 100644 man/function::text_str.3stap.html delete mode 100644 man/function::text_strn.3stap.html delete mode 100644 man/function::thread_indent.3stap.html delete mode 100644 man/function::thread_indent_depth.3stap.html delete mode 100644 man/function::tid.3stap.html delete mode 100644 man/function::tokenize.3stap.html delete mode 100644 man/function::tz_ctime.3stap.html delete mode 100644 man/function::tz_gmtoff.3stap.html delete mode 100644 man/function::tz_name.3stap.html delete mode 100644 man/function::u32_arg.3stap.html delete mode 100644 man/function::u64_arg.3stap.html delete mode 100644 man/function::u_register.3stap.html delete mode 100644 man/function::uaddr.3stap.html delete mode 100644 man/function::ubacktrace.3stap.html delete mode 100644 man/function::ucallers.3stap.html delete mode 100644 man/function::udelay.3stap.html delete mode 100644 man/function::uid.3stap.html delete mode 100644 man/function::uint_arg.3stap.html delete mode 100644 man/function::ulong_arg.3stap.html delete mode 100644 man/function::ulonglong_arg.3stap.html delete mode 100644 man/function::umodname.3stap.html delete mode 100644 man/function::usecs_to_string.3stap.html delete mode 100644 man/function::user_buffer_quoted.3stap.html delete mode 100644 man/function::user_buffer_quoted_error.3stap.html delete mode 100644 man/function::user_char.3stap.html delete mode 100644 man/function::user_char_error.3stap.html delete mode 100644 man/function::user_char_warn.3stap.html delete mode 100644 man/function::user_int.3stap.html delete mode 100644 man/function::user_int16.3stap.html delete mode 100644 man/function::user_int16_error.3stap.html delete mode 100644 man/function::user_int32.3stap.html delete mode 100644 man/function::user_int32_error.3stap.html delete mode 100644 man/function::user_int64.3stap.html delete mode 100644 man/function::user_int64_error.3stap.html delete mode 100644 man/function::user_int8.3stap.html delete mode 100644 man/function::user_int8_error.3stap.html delete mode 100644 man/function::user_int_error.3stap.html delete mode 100644 man/function::user_int_warn.3stap.html delete mode 100644 man/function::user_long.3stap.html delete mode 100644 man/function::user_long_error.3stap.html delete mode 100644 man/function::user_long_warn.3stap.html delete mode 100644 man/function::user_mode.3stap.html delete mode 100644 man/function::user_short.3stap.html delete mode 100644 man/function::user_short_error.3stap.html delete mode 100644 man/function::user_short_warn.3stap.html delete mode 100644 man/function::user_string.3stap.html delete mode 100644 man/function::user_string_n.3stap.html delete mode 100644 man/function::user_string_n_quoted.3stap.html delete mode 100644 man/function::user_string_n_warn.3stap.html delete mode 100644 man/function::user_string_quoted.3stap.html delete mode 100644 man/function::user_string_quoted_utf16.3stap.html delete mode 100644 man/function::user_string_quoted_utf32.3stap.html delete mode 100644 man/function::user_string_utf16.3stap.html delete mode 100644 man/function::user_string_utf32.3stap.html delete mode 100644 man/function::user_string_warn.3stap.html delete mode 100644 man/function::user_uint16.3stap.html delete mode 100644 man/function::user_uint16_error.3stap.html delete mode 100644 man/function::user_uint32.3stap.html delete mode 100644 man/function::user_uint32_error.3stap.html delete mode 100644 man/function::user_uint64.3stap.html delete mode 100644 man/function::user_uint64_error.3stap.html delete mode 100644 man/function::user_uint8.3stap.html delete mode 100644 man/function::user_uint8_error.3stap.html delete mode 100644 man/function::user_ulong.3stap.html delete mode 100644 man/function::user_ulong_error.3stap.html delete mode 100644 man/function::user_ulong_warn.3stap.html delete mode 100644 man/function::user_ushort.3stap.html delete mode 100644 man/function::user_ushort_error.3stap.html delete mode 100644 man/function::user_ushort_warn.3stap.html delete mode 100644 man/function::usrdev2kerndev.3stap.html delete mode 100644 man/function::ustack.3stap.html delete mode 100644 man/function::usymdata.3stap.html delete mode 100644 man/function::usymfile.3stap.html delete mode 100644 man/function::usymfileline.3stap.html delete mode 100644 man/function::usymline.3stap.html delete mode 100644 man/function::usymname.3stap.html delete mode 100644 man/function::vm_fault_contains.3stap.html delete mode 100644 man/function::warn.3stap.html delete mode 100644 man/index.html delete mode 100644 man/macro::json_output_array_numeric_value.3stap.html delete mode 100644 man/macro::json_output_array_string_value.3stap.html delete mode 100644 man/macro::json_output_data_end.3stap.html delete mode 100644 man/macro::json_output_data_start.3stap.html delete mode 100644 man/macro::json_output_numeric_value.3stap.html delete mode 100644 man/macro::json_output_string_value.3stap.html delete mode 100644 man/probe::ioblock.end.3stap.html delete mode 100644 man/probe::ioblock.request.3stap.html delete mode 100644 man/probe::ioblock_trace.bounce.3stap.html delete mode 100644 man/probe::ioblock_trace.end.3stap.html delete mode 100644 man/probe::ioblock_trace.request.3stap.html delete mode 100644 man/probe::ioscheduler.elv_add_request.3stap.html delete mode 100644 man/probe::ioscheduler.elv_add_request.kp.3stap.html delete mode 100644 man/probe::ioscheduler.elv_add_request.tp.3stap.html delete mode 100644 man/probe::ioscheduler.elv_completed_request.3stap.html delete mode 100644 man/probe::ioscheduler.elv_next_request.3stap.html delete mode 100644 man/probe::ioscheduler.elv_next_request.return.3stap.html delete mode 100644 man/probe::ioscheduler_trace.elv_abort_request.3stap.html delete mode 100644 man/probe::ioscheduler_trace.elv_completed_request.3stap.html delete mode 100644 man/probe::ioscheduler_trace.elv_issue_request.3stap.html delete mode 100644 man/probe::ioscheduler_trace.elv_requeue_request.3stap.html delete mode 100644 man/probe::ioscheduler_trace.plug.3stap.html delete mode 100644 man/probe::ioscheduler_trace.unplug_io.3stap.html delete mode 100644 man/probe::ioscheduler_trace.unplug_timer.3stap.html delete mode 100644 man/probe::ipmib.ForwDatagrams.3stap.html delete mode 100644 man/probe::ipmib.FragFails.3stap.html delete mode 100644 man/probe::ipmib.FragOKs.3stap.html delete mode 100644 man/probe::ipmib.InAddrErrors.3stap.html delete mode 100644 man/probe::ipmib.InDiscards.3stap.html delete mode 100644 man/probe::ipmib.InNoRoutes.3stap.html delete mode 100644 man/probe::ipmib.InReceives.3stap.html delete mode 100644 man/probe::ipmib.InUnknownProtos.3stap.html delete mode 100644 man/probe::ipmib.OutRequests.3stap.html delete mode 100644 man/probe::ipmib.ReasmReqds.3stap.html delete mode 100644 man/probe::ipmib.ReasmTimeout.3stap.html delete mode 100644 man/probe::irq_handler.entry.3stap.html delete mode 100644 man/probe::irq_handler.exit.3stap.html delete mode 100644 man/probe::json_data.3stap.html delete mode 100644 man/probe::kprocess.create.3stap.html delete mode 100644 man/probe::kprocess.exec.3stap.html delete mode 100644 man/probe::kprocess.exec_complete.3stap.html delete mode 100644 man/probe::kprocess.exit.3stap.html delete mode 100644 man/probe::kprocess.release.3stap.html delete mode 100644 man/probe::kprocess.start.3stap.html delete mode 100644 man/probe::linuxmib.DelayedACKs.3stap.html delete mode 100644 man/probe::linuxmib.ListenDrops.3stap.html delete mode 100644 man/probe::linuxmib.ListenOverflows.3stap.html delete mode 100644 man/probe::linuxmib.TCPMemoryPressures.3stap.html delete mode 100644 man/probe::netdev.change_mac.3stap.html delete mode 100644 man/probe::netdev.change_mtu.3stap.html delete mode 100644 man/probe::netdev.change_rx_flag.3stap.html delete mode 100644 man/probe::netdev.close.3stap.html delete mode 100644 man/probe::netdev.get_stats.3stap.html delete mode 100644 man/probe::netdev.hard_transmit.3stap.html delete mode 100644 man/probe::netdev.ioctl.3stap.html delete mode 100644 man/probe::netdev.open.3stap.html delete mode 100644 man/probe::netdev.receive.3stap.html delete mode 100644 man/probe::netdev.register.3stap.html delete mode 100644 man/probe::netdev.rx.3stap.html delete mode 100644 man/probe::netdev.set_promiscuity.3stap.html delete mode 100644 man/probe::netdev.transmit.3stap.html delete mode 100644 man/probe::netdev.unregister.3stap.html delete mode 100644 man/probe::netfilter.arp.forward.3stap.html delete mode 100644 man/probe::netfilter.arp.in.3stap.html delete mode 100644 man/probe::netfilter.arp.out.3stap.html delete mode 100644 man/probe::netfilter.bridge.forward.3stap.html delete mode 100644 man/probe::netfilter.bridge.local_in.3stap.html delete mode 100644 man/probe::netfilter.bridge.local_out.3stap.html delete mode 100644 man/probe::netfilter.bridge.post_routing.3stap.html delete mode 100644 man/probe::netfilter.bridge.pre_routing.3stap.html delete mode 100644 man/probe::netfilter.ip.forward.3stap.html delete mode 100644 man/probe::netfilter.ip.local_in.3stap.html delete mode 100644 man/probe::netfilter.ip.local_out.3stap.html delete mode 100644 man/probe::netfilter.ip.post_routing.3stap.html delete mode 100644 man/probe::netfilter.ip.pre_routing.3stap.html delete mode 100644 man/probe::nfs.aop.readpage.3stap.html delete mode 100644 man/probe::nfs.aop.readpages.3stap.html delete mode 100644 man/probe::nfs.aop.release_page.3stap.html delete mode 100644 man/probe::nfs.aop.set_page_dirty.3stap.html delete mode 100644 man/probe::nfs.aop.write_begin.3stap.html delete mode 100644 man/probe::nfs.aop.write_end.3stap.html delete mode 100644 man/probe::nfs.aop.writepage.3stap.html delete mode 100644 man/probe::nfs.aop.writepages.3stap.html delete mode 100644 man/probe::nfs.fop.aio_read.3stap.html delete mode 100644 man/probe::nfs.fop.aio_write.3stap.html delete mode 100644 man/probe::nfs.fop.check_flags.3stap.html delete mode 100644 man/probe::nfs.fop.flush.3stap.html delete mode 100644 man/probe::nfs.fop.fsync.3stap.html delete mode 100644 man/probe::nfs.fop.llseek.3stap.html delete mode 100644 man/probe::nfs.fop.lock.3stap.html delete mode 100644 man/probe::nfs.fop.mmap.3stap.html delete mode 100644 man/probe::nfs.fop.open.3stap.html delete mode 100644 man/probe::nfs.fop.read.3stap.html delete mode 100644 man/probe::nfs.fop.read_iter.3stap.html delete mode 100644 man/probe::nfs.fop.release.3stap.html delete mode 100644 man/probe::nfs.fop.sendfile.3stap.html delete mode 100644 man/probe::nfs.fop.write.3stap.html delete mode 100644 man/probe::nfs.fop.write_iter.3stap.html delete mode 100644 man/probe::nfs.proc.commit.3stap.html delete mode 100644 man/probe::nfs.proc.commit_done.3stap.html delete mode 100644 man/probe::nfs.proc.commit_setup.3stap.html delete mode 100644 man/probe::nfs.proc.create.3stap.html delete mode 100644 man/probe::nfs.proc.handle_exception.3stap.html delete mode 100644 man/probe::nfs.proc.lookup.3stap.html delete mode 100644 man/probe::nfs.proc.open.3stap.html delete mode 100644 man/probe::nfs.proc.read.3stap.html delete mode 100644 man/probe::nfs.proc.read_done.3stap.html delete mode 100644 man/probe::nfs.proc.read_setup.3stap.html delete mode 100644 man/probe::nfs.proc.release.3stap.html delete mode 100644 man/probe::nfs.proc.remove.3stap.html delete mode 100644 man/probe::nfs.proc.rename.3stap.html delete mode 100644 man/probe::nfs.proc.rename_done.3stap.html delete mode 100644 man/probe::nfs.proc.rename_setup.3stap.html delete mode 100644 man/probe::nfs.proc.write.3stap.html delete mode 100644 man/probe::nfs.proc.write_done.3stap.html delete mode 100644 man/probe::nfs.proc.write_setup.3stap.html delete mode 100644 man/probe::nfsd.close.3stap.html delete mode 100644 man/probe::nfsd.commit.3stap.html delete mode 100644 man/probe::nfsd.create.3stap.html delete mode 100644 man/probe::nfsd.createv3.3stap.html delete mode 100644 man/probe::nfsd.dispatch.3stap.html delete mode 100644 man/probe::nfsd.lookup.3stap.html delete mode 100644 man/probe::nfsd.open.3stap.html delete mode 100644 man/probe::nfsd.proc.commit.3stap.html delete mode 100644 man/probe::nfsd.proc.create.3stap.html delete mode 100644 man/probe::nfsd.proc.lookup.3stap.html delete mode 100644 man/probe::nfsd.proc.read.3stap.html delete mode 100644 man/probe::nfsd.proc.remove.3stap.html delete mode 100644 man/probe::nfsd.proc.rename.3stap.html delete mode 100644 man/probe::nfsd.proc.write.3stap.html delete mode 100644 man/probe::nfsd.read.3stap.html delete mode 100644 man/probe::nfsd.rename.3stap.html delete mode 100644 man/probe::nfsd.unlink.3stap.html delete mode 100644 man/probe::nfsd.write.3stap.html delete mode 100644 man/probe::scheduler.balance.3stap.html delete mode 100644 man/probe::scheduler.cpu_off.3stap.html delete mode 100644 man/probe::scheduler.cpu_on.3stap.html delete mode 100644 man/probe::scheduler.ctxswitch.3stap.html delete mode 100644 man/probe::scheduler.kthread_stop.3stap.html delete mode 100644 man/probe::scheduler.kthread_stop.return.3stap.html delete mode 100644 man/probe::scheduler.migrate.3stap.html delete mode 100644 man/probe::scheduler.process_exit.3stap.html delete mode 100644 man/probe::scheduler.process_fork.3stap.html delete mode 100644 man/probe::scheduler.process_free.3stap.html delete mode 100644 man/probe::scheduler.process_wait.3stap.html delete mode 100644 man/probe::scheduler.signal_send.3stap.html delete mode 100644 man/probe::scheduler.tick.3stap.html delete mode 100644 man/probe::scheduler.wait_task.3stap.html delete mode 100644 man/probe::scheduler.wakeup.3stap.html delete mode 100644 man/probe::scheduler.wakeup_new.3stap.html delete mode 100644 man/probe::scsi.iocompleted.3stap.html delete mode 100644 man/probe::scsi.iodispatching.3stap.html delete mode 100644 man/probe::scsi.iodone.3stap.html delete mode 100644 man/probe::scsi.ioentry.3stap.html delete mode 100644 man/probe::scsi.ioexecute.3stap.html delete mode 100644 man/probe::scsi.set_state.3stap.html delete mode 100644 man/probe::signal.check_ignored.3stap.html delete mode 100644 man/probe::signal.check_ignored.return.3stap.html delete mode 100644 man/probe::signal.checkperm.3stap.html delete mode 100644 man/probe::signal.checkperm.return.3stap.html delete mode 100644 man/probe::signal.do_action.3stap.html delete mode 100644 man/probe::signal.do_action.return.3stap.html delete mode 100644 man/probe::signal.flush.3stap.html delete mode 100644 man/probe::signal.force_segv.3stap.html delete mode 100644 man/probe::signal.force_segv.return.3stap.html delete mode 100644 man/probe::signal.handle.3stap.html delete mode 100644 man/probe::signal.handle.return.3stap.html delete mode 100644 man/probe::signal.pending.3stap.html delete mode 100644 man/probe::signal.pending.return.3stap.html delete mode 100644 man/probe::signal.procmask.3stap.html delete mode 100644 man/probe::signal.procmask.return.3stap.html delete mode 100644 man/probe::signal.send.3stap.html delete mode 100644 man/probe::signal.send.return.3stap.html delete mode 100644 man/probe::signal.send_sig_queue.3stap.html delete mode 100644 man/probe::signal.send_sig_queue.return.3stap.html delete mode 100644 man/probe::signal.sys_tgkill.3stap.html delete mode 100644 man/probe::signal.sys_tgkill.return.3stap.html delete mode 100644 man/probe::signal.sys_tkill.3stap.html delete mode 100644 man/probe::signal.syskill.3stap.html delete mode 100644 man/probe::signal.syskill.return.3stap.html delete mode 100644 man/probe::signal.systkill.return.3stap.html delete mode 100644 man/probe::signal.wakeup.3stap.html delete mode 100644 man/probe::socket.aio_read.3stap.html delete mode 100644 man/probe::socket.aio_read.return.3stap.html delete mode 100644 man/probe::socket.aio_write.3stap.html delete mode 100644 man/probe::socket.aio_write.return.3stap.html delete mode 100644 man/probe::socket.close.3stap.html delete mode 100644 man/probe::socket.close.return.3stap.html delete mode 100644 man/probe::socket.create.3stap.html delete mode 100644 man/probe::socket.create.return.3stap.html delete mode 100644 man/probe::socket.read_iter.3stap.html delete mode 100644 man/probe::socket.read_iter.return.3stap.html delete mode 100644 man/probe::socket.readv.3stap.html delete mode 100644 man/probe::socket.readv.return.3stap.html delete mode 100644 man/probe::socket.receive.3stap.html delete mode 100644 man/probe::socket.recvmsg.3stap.html delete mode 100644 man/probe::socket.recvmsg.return.3stap.html delete mode 100644 man/probe::socket.send.3stap.html delete mode 100644 man/probe::socket.sendmsg.3stap.html delete mode 100644 man/probe::socket.sendmsg.return.3stap.html delete mode 100644 man/probe::socket.write_iter.3stap.html delete mode 100644 man/probe::socket.write_iter.return.3stap.html delete mode 100644 man/probe::socket.writev.3stap.html delete mode 100644 man/probe::socket.writev.return.3stap.html delete mode 100644 man/probe::softirq.entry.3stap.html delete mode 100644 man/probe::softirq.exit.3stap.html delete mode 100644 man/probe::stap.cache_add_mod.3stap.html delete mode 100644 man/probe::stap.cache_add_nss.3stap.html delete mode 100644 man/probe::stap.cache_add_src.3stap.html delete mode 100644 man/probe::stap.cache_clean.3stap.html delete mode 100644 man/probe::stap.cache_get.3stap.html delete mode 100644 man/probe::stap.pass0.3stap.html delete mode 100644 man/probe::stap.pass0.end.3stap.html delete mode 100644 man/probe::stap.pass1.end.3stap.html delete mode 100644 man/probe::stap.pass1a.3stap.html delete mode 100644 man/probe::stap.pass1b.3stap.html delete mode 100644 man/probe::stap.pass2.3stap.html delete mode 100644 man/probe::stap.pass2.end.3stap.html delete mode 100644 man/probe::stap.pass3.3stap.html delete mode 100644 man/probe::stap.pass3.end.3stap.html delete mode 100644 man/probe::stap.pass4.3stap.html delete mode 100644 man/probe::stap.pass4.end.3stap.html delete mode 100644 man/probe::stap.pass5.3stap.html delete mode 100644 man/probe::stap.pass5.end.3stap.html delete mode 100644 man/probe::stap.pass6.3stap.html delete mode 100644 man/probe::stap.pass6.end.3stap.html delete mode 100644 man/probe::stap.system.3stap.html delete mode 100644 man/probe::stap.system.return.3stap.html delete mode 100644 man/probe::stap.system.spawn.3stap.html delete mode 100644 man/probe::stapio.receive_control_message.3stap.html delete mode 100644 man/probe::staprun.insert_module.3stap.html delete mode 100644 man/probe::staprun.remove_module.3stap.html delete mode 100644 man/probe::staprun.send_control_message.3stap.html delete mode 100644 man/probe::sunrpc.clnt.bind_new_program.3stap.html delete mode 100644 man/probe::sunrpc.clnt.call_async.3stap.html delete mode 100644 man/probe::sunrpc.clnt.call_sync.3stap.html delete mode 100644 man/probe::sunrpc.clnt.clone_client.3stap.html delete mode 100644 man/probe::sunrpc.clnt.create_client.3stap.html delete mode 100644 man/probe::sunrpc.clnt.restart_call.3stap.html delete mode 100644 man/probe::sunrpc.clnt.shutdown_client.3stap.html delete mode 100644 man/probe::sunrpc.sched.delay.3stap.html delete mode 100644 man/probe::sunrpc.sched.execute.3stap.html delete mode 100644 man/probe::sunrpc.sched.new_task.3stap.html delete mode 100644 man/probe::sunrpc.sched.release_task.3stap.html delete mode 100644 man/probe::sunrpc.svc.authorise.3stap.html delete mode 100644 man/probe::sunrpc.svc.create.3stap.html delete mode 100644 man/probe::sunrpc.svc.destroy.3stap.html delete mode 100644 man/probe::sunrpc.svc.drop.3stap.html delete mode 100644 man/probe::sunrpc.svc.process.3stap.html delete mode 100644 man/probe::sunrpc.svc.recv.3stap.html delete mode 100644 man/probe::sunrpc.svc.register.3stap.html delete mode 100644 man/probe::sunrpc.svc.send.3stap.html delete mode 100644 man/probe::syscall_any.3stap.html delete mode 100644 man/probe::syscall_any.return.3stap.html delete mode 100644 man/probe::tcp.disconnect.3stap.html delete mode 100644 man/probe::tcp.disconnect.return.3stap.html delete mode 100644 man/probe::tcp.receive.3stap.html delete mode 100644 man/probe::tcp.recvmsg.3stap.html delete mode 100644 man/probe::tcp.recvmsg.return.3stap.html delete mode 100644 man/probe::tcp.sendmsg.3stap.html delete mode 100644 man/probe::tcp.sendmsg.return.3stap.html delete mode 100644 man/probe::tcp.setsockopt.3stap.html delete mode 100644 man/probe::tcp.setsockopt.return.3stap.html delete mode 100644 man/probe::tcpmib.ActiveOpens.3stap.html delete mode 100644 man/probe::tcpmib.AttemptFails.3stap.html delete mode 100644 man/probe::tcpmib.CurrEstab.3stap.html delete mode 100644 man/probe::tcpmib.EstabResets.3stap.html delete mode 100644 man/probe::tcpmib.InSegs.3stap.html delete mode 100644 man/probe::tcpmib.OutRsts.3stap.html delete mode 100644 man/probe::tcpmib.OutSegs.3stap.html delete mode 100644 man/probe::tcpmib.PassiveOpens.3stap.html delete mode 100644 man/probe::tcpmib.RetransSegs.3stap.html delete mode 100644 man/probe::tty.init.3stap.html delete mode 100644 man/probe::tty.ioctl.3stap.html delete mode 100644 man/probe::tty.open.3stap.html delete mode 100644 man/probe::tty.poll.3stap.html delete mode 100644 man/probe::tty.read.3stap.html delete mode 100644 man/probe::tty.receive.3stap.html delete mode 100644 man/probe::tty.register.3stap.html delete mode 100644 man/probe::tty.release.3stap.html delete mode 100644 man/probe::tty.resize.3stap.html delete mode 100644 man/probe::tty.unregister.3stap.html delete mode 100644 man/probe::tty.write.3stap.html delete mode 100644 man/probe::udp.disconnect.3stap.html delete mode 100644 man/probe::udp.disconnect.return.3stap.html delete mode 100644 man/probe::udp.recvmsg.3stap.html delete mode 100644 man/probe::udp.recvmsg.return.3stap.html delete mode 100644 man/probe::udp.sendmsg.3stap.html delete mode 100644 man/probe::udp.sendmsg.return.3stap.html delete mode 100644 man/probe::vm.brk.3stap.html delete mode 100644 man/probe::vm.kfree.3stap.html delete mode 100644 man/probe::vm.kmalloc.3stap.html delete mode 100644 man/probe::vm.kmalloc_node.3stap.html delete mode 100644 man/probe::vm.kmem_cache_alloc.3stap.html delete mode 100644 man/probe::vm.kmem_cache_alloc_node.3stap.html delete mode 100644 man/probe::vm.kmem_cache_free.3stap.html delete mode 100644 man/probe::vm.mmap.3stap.html delete mode 100644 man/probe::vm.munmap.3stap.html delete mode 100644 man/probe::vm.oom_kill.3stap.html delete mode 100644 man/probe::vm.pagefault.3stap.html delete mode 100644 man/probe::vm.pagefault.return.3stap.html delete mode 100644 man/probe::vm.write_shared.3stap.html delete mode 100644 man/probe::vm.write_shared_copy.3stap.html delete mode 100644 man/probe::workqueue.create.3stap.html delete mode 100644 man/probe::workqueue.destroy.3stap.html delete mode 100644 man/probe::workqueue.execute.3stap.html delete mode 100644 man/probe::workqueue.insert.3stap.html delete mode 100644 man/stap-exporter.8.html delete mode 100644 man/stap-merge.1.html delete mode 100644 man/stap-prep.1.html delete mode 100644 man/stap-report.1.html delete mode 100644 man/stap-server.8.html delete mode 100644 man/stap.1.html delete mode 100644 man/stapbpf.8.html delete mode 100644 man/stapdyn.8.html delete mode 100644 man/stapex.3stap.html delete mode 100644 man/stapfuncs.3stap.html delete mode 100644 man/stappaths.7.html delete mode 100644 man/stapprobes.3stap.html delete mode 100644 man/stapref.1.html delete mode 100644 man/staprun.8.html delete mode 100644 man/stapsh.8.html delete mode 100644 man/stapvars.3stap.html delete mode 100644 man/stapvirt.1.html delete mode 100644 man/systemtap-service.8.html delete mode 100644 man/systemtap.8.html delete mode 100644 man/tapset::ansi.3stap.html delete mode 100644 man/tapset::atomic.3stap.html delete mode 100644 man/tapset::context-caller.3stap.html delete mode 100644 man/tapset::context-envvar.3stap.html delete mode 100644 man/tapset::context-symbols.3stap.html delete mode 100644 man/tapset::context-unwind.3stap.html delete mode 100644 man/tapset::context.3stap.html delete mode 100644 man/tapset::conversions-guru.3stap.html delete mode 100644 man/tapset::conversions.3stap.html delete mode 100644 man/tapset::ctime.3stap.html delete mode 100644 man/tapset::dentry.3stap.html delete mode 100644 man/tapset::dev.3stap.html delete mode 100644 man/tapset::errno.3stap.html delete mode 100644 man/tapset::guru-delay.3stap.html delete mode 100644 man/tapset::guru-signal.3stap.html delete mode 100644 man/tapset::indent.3stap.html delete mode 100644 man/tapset::inet.3stap.html delete mode 100644 man/tapset::inet_sock.3stap.html delete mode 100644 man/tapset::ioblock.3stap.html delete mode 100644 man/tapset::ioscheduler.3stap.html delete mode 100644 man/tapset::ip.3stap.html delete mode 100644 man/tapset::ipmib-filter-default.3stap.html delete mode 100644 man/tapset::ipmib.3stap.html delete mode 100644 man/tapset::irq.3stap.html delete mode 100644 man/tapset::json.3stap.html delete mode 100644 man/tapset::kprocess.3stap.html delete mode 100644 man/tapset::linuxmib-filter-default.3stap.html delete mode 100644 man/tapset::linuxmib.3stap.html delete mode 100644 man/tapset::loadavg.3stap.html delete mode 100644 man/tapset::logging.3stap.html delete mode 100644 man/tapset::memory.3stap.html delete mode 100644 man/tapset::netfilter.3stap.html delete mode 100644 man/tapset::networking.3stap.html delete mode 100644 man/tapset::nfs.3stap.html delete mode 100644 man/tapset::nfs_proc.3stap.html delete mode 100644 man/tapset::nfsd.3stap.html delete mode 100644 man/tapset::nfsderrno.3stap.html delete mode 100644 man/tapset::panic.3stap.html delete mode 100644 man/tapset::pn.3stap.html delete mode 100644 man/tapset::proc_mem.3stap.html delete mode 100644 man/tapset::pstrace.3stap.html delete mode 100644 man/tapset::queue_stats.3stap.html delete mode 100644 man/tapset::random.3stap.html delete mode 100644 man/tapset::regex.3stap.html delete mode 100644 man/tapset::registers.3stap.html delete mode 100644 man/tapset::rlimit.3stap.html delete mode 100644 man/tapset::rpc.3stap.html delete mode 100644 man/tapset::scheduler.3stap.html delete mode 100644 man/tapset::scsi.3stap.html delete mode 100644 man/tapset::signal.3stap.html delete mode 100644 man/tapset::socket.3stap.html delete mode 100644 man/tapset::speculative.3stap.html delete mode 100644 man/tapset::stap_staticmarkers.3stap.html delete mode 100644 man/tapset::stopwatch.3stap.html delete mode 100644 man/tapset::string.3stap.html delete mode 100644 man/tapset::switchfile.3stap.html delete mode 100644 man/tapset::syscall_any.3stap.html delete mode 100644 man/tapset::syscalls.3stap.html delete mode 100644 man/tapset::system.3stap.html delete mode 100644 man/tapset::target_set.3stap.html delete mode 100644 man/tapset::task.3stap.html delete mode 100644 man/tapset::task_ancestry.3stap.html delete mode 100644 man/tapset::task_time.3stap.html delete mode 100644 man/tapset::tcp.3stap.html delete mode 100644 man/tapset::tcpmib-filter-default.3stap.html delete mode 100644 man/tapset::tcpmib.3stap.html delete mode 100644 man/tapset::timestamp.3stap.html delete mode 100644 man/tapset::timestamp_gtod.3stap.html delete mode 100644 man/tapset::timestamp_monotonic.3stap.html delete mode 100644 man/tapset::tokenize.3stap.html delete mode 100644 man/tapset::tty.3stap.html delete mode 100644 man/tapset::tzinfo.3stap.html delete mode 100644 man/tapset::ucontext-symbols.3stap.html delete mode 100644 man/tapset::ucontext-unwind.3stap.html delete mode 100644 man/tapset::ucontext.3stap.html delete mode 100644 man/tapset::uconversions-guru.3stap.html delete mode 100644 man/tapset::uconversions.3stap.html delete mode 100644 man/tapset::udp.3stap.html delete mode 100644 man/warning::buildid.7stap.html delete mode 100644 man/warning::debuginfo.7stap.html delete mode 100644 man/warning::symbols.7stap.html create mode 100644 tapsets/API-fp-add.html create mode 100644 tapsets/API-fp-eq.html create mode 100644 tapsets/API-fp-le.html create mode 100644 tapsets/API-fp-lt.html create mode 100644 tapsets/API-fp-mul.html create mode 100644 tapsets/API-fp-rem.html create mode 100644 tapsets/API-fp-sqrt.html create mode 100644 tapsets/API-fp-sub.html create mode 100644 tapsets/API-fp-to-long.html create mode 100644 tapsets/API-fp-to-string.html create mode 100644 tapsets/API-fp32-to-fp64.html create mode 100644 tapsets/API-long-to-fp.html create mode 100644 tapsets/API-set-int-arg.html create mode 100644 tapsets/API-set-long-arg.html create mode 100644 tapsets/API-set-longlong-arg.html create mode 100644 tapsets/API-set-pointer-arg.html create mode 100644 tapsets/API-set-s32-arg.html create mode 100644 tapsets/API-set-s64-arg.html create mode 100644 tapsets/API-set-u32-arg.html create mode 100644 tapsets/API-set-u64-arg.html create mode 100644 tapsets/API-set-uint-arg.html create mode 100644 tapsets/API-set-ulong-arg.html create mode 100644 tapsets/API-set-ulonglong-arg.html create mode 100644 tapsets/API-set-user-string-arg.html create mode 100644 tapsets/API-string-to-fp.html create mode 100644 tapsets/API-user-string-n-nofault.html create mode 100644 tapsets/API-user-string-nofault.html create mode 100644 tapsets/floatingpoint.stp.html create mode 100644 tutorial/1_Introduction.html create mode 100644 tutorial/2_Tracing.html create mode 100644 tutorial/3_Analysis.html create mode 100644 tutorial/4_Tapsets.html create mode 100644 tutorial/5_Further_information.html create mode 100644 tutorial/A_Glossary.html create mode 100644 tutorial/About_this_document.html create mode 100644 tutorial/B_Errors.html create mode 100644 tutorial/C_Acknowledgments.html create mode 100644 tutorial/Contents.html create mode 100644 tutorial/contents.png create mode 100644 tutorial/crossref.png create mode 100644 tutorial/footnode.html create mode 100644 tutorial/images.pdf create mode 100644 tutorial/img1.png create mode 100644 tutorial/img10.png create mode 100644 tutorial/img11.png create mode 100644 tutorial/img12.png create mode 100644 tutorial/img13.png create mode 100644 tutorial/img2.png create mode 100644 tutorial/img3.png create mode 100644 tutorial/img4.png create mode 100644 tutorial/img5.png create mode 100644 tutorial/img6.png create mode 100644 tutorial/img7.png create mode 100644 tutorial/img8.png create mode 100644 tutorial/img9.png create mode 100644 tutorial/index.html create mode 100644 tutorial/next.png create mode 100644 tutorial/next_g.png create mode 100644 tutorial/prev.png create mode 100644 tutorial/prev_g.png create mode 100644 tutorial/tutorial.css create mode 100644 tutorial/tutorial.html create mode 100644 tutorial/up.png create mode 100644 tutorial/up_g.png diff --git a/SystemTap_Beginners_Guide.pdf b/SystemTap_Beginners_Guide.pdf index 25b91a2195dfedd7521c77eac33d8e4d9840d12b..1c63243b3f1cbff2877f7e2d33edcceaaffabb3d 100644 GIT binary patch delta 81652 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

VO-aBAI)&&JjBxS@rU=js; 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 N+^9o`{zC^e`X8tT#-9KH delta 80158 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 JhXH+R{U1TdY|a1x diff --git a/SystemTap_Beginners_Guide/SystemTap_Beginners_Guide-Preface.html b/SystemTap_Beginners_Guide/SystemTap_Beginners_Guide-Preface.html index d315386b..4ac372fc 100644 --- a/SystemTap_Beginners_Guide/SystemTap_Beginners_Guide-Preface.html +++ b/SystemTap_Beginners_Guide/SystemTap_Beginners_Guide-Preface.html @@ -1,12 +1,12 @@ Preface

⁠Preface

-

⁠1. Document Conventions

This manual uses several conventions to highlight certain words and phrases and draw attention to specific pieces of information.
In PDF and paper editions, this manual uses typefaces drawn from the Liberation Fonts set. The Liberation Fonts set is also used in HTML editions if the set is installed on your system. If not, alternative but equivalent typefaces are displayed. Note: Red Hat Enterprise Linux 5 and later include the Liberation Fonts set by default. -

⁠1.1. Typographic Conventions

Four typographic conventions are used to call attention to specific words and phrases. These conventions, and the circumstances they apply to, are as follows.
@@ -55,7 +55,7 @@ Aside from standard usage for presenting the title of a work, italics denotes the first use of a new and important term. For example:
Publican is a DocBook publishing system. -

⁠1.2. Pull-quote Conventions

Terminal output and source code listings are set off visually from the surrounding text.
@@ -81,7 +81,7 @@ public class ExClient System.out.println("Echo.echo('Hello') = " + echo.echo("Hello")); } -}

⁠1.3. Notes and Warnings

Finally, we use three visual styles to draw attention to information that might otherwise be overlooked.

Note

diff --git a/SystemTap_Beginners_Guide/arrayoperators.html b/SystemTap_Beginners_Guide/arrayoperators.html index 27595f80..452d64c4 100644 --- a/SystemTap_Beginners_Guide/arrayoperators.html +++ b/SystemTap_Beginners_Guide/arrayoperators.html @@ -1,5 +1,5 @@ 3.5. Array Operations in SystemTap

- ⁠3.5. Array Operations in SystemTap

This section enumerates some of the most commonly used array operations in SystemTap.

- ⁠3.5.1. Assigning an Associated Value

Use = to set an associated value to indexed unique pairs, as in:
array_name[index_expression] = value
Example 3.13, “Basic Array Statements” shows a very basic example of how to set an explicit associated value to a unique key. You can also use a handler function as both your index_expression and value. For example, you can use arrays to set a timestamp as the associated value to a process name (which you wish to use as your unique key), as in:
+ ⁠3.5. Array Operations in SystemTap
This section enumerates some of the most commonly used array operations in SystemTap.

+ ⁠3.5.1. Assigning an Associated Value

Use = to set an associated value to indexed unique pairs, as in:
array_name[index_expression] = value
Example 3.13, “Basic Array Statements” shows a very basic example of how to set an explicit associated value to a unique key. You can also use a handler function as both your index_expression and value. For example, you can use arrays to set a timestamp as the associated value to a process name (which you wish to use as your unique key), as in:
⁠

Example 3.14. Associating Timestamps to Process Names

foo[tid()] = gettimeofday_s()
Whenever an event invokes the statement in Example 3.14, “Associating Timestamps to Process Names”, SystemTap returns the appropriate tid() value (that is, the ID of a thread, which is then used as the unique key). At the same time, SystemTap also uses the function gettimeofday_s() to set the corresponding timestamp as the associated value to the unique key defined by the function tid(). This creates an array composed of key pairs containing thread IDs and timestamps.
In this same example, if tid() returns a value that is already defined in the array foo, the operator will discard the original associated value to it, and replace it with the current timestamp from gettimeofday_s().
\ No newline at end of file diff --git a/SystemTap_Beginners_Guide/arrayops-aggregates.html b/SystemTap_Beginners_Guide/arrayops-aggregates.html index dd827a76..b66dff7c 100644 --- a/SystemTap_Beginners_Guide/arrayops-aggregates.html +++ b/SystemTap_Beginners_Guide/arrayops-aggregates.html @@ -1,19 +1,19 @@ 3.5.7. Computing for Statistical Aggregates

- ⁠3.5.7. Computing for Statistical Aggregates

Statistical aggregates are used to collect statistics on numerical values where it is important to accumulate new data quickly and in large volume (that is, storing only aggregated stream statistics). Statistical aggregates can be used in global variables or as elements in an array.
To add value to a statistical aggregate, use the operator <<< value.
+ ⁠3.5.7. Computing for Statistical Aggregates
Statistical aggregates are used to collect statistics on numerical values where it is important to accumulate new data quickly and in large volume (that is, storing only aggregated stream statistics). Statistical aggregates can be used in global variables or as elements in an array.
To add value to a statistical aggregate, use the operator <<< value.
⁠

Example 3.21. stat-aggregates.stp

global reads
 probe vfs.read
 {
   reads[execname()] <<< $count
-}
In Example 3.21, “stat-aggregates.stp”, the operator <<< $count stores the amount returned by $count to the associated value of the corresponding execname() in the reads array. Remember, these values are stored; they are not added to the associated values of each unique key, nor are they used to replace the current associated values. In a manner of speaking, think of it as having each unique key (execname()) having multiple associated values, accumulating with each probe handler run.

Note

In the context of Example 3.21, “stat-aggregates.stp”, count returns the amount of data read by the returned execname() to the virtual file system.
To extract data collected by statistical aggregates, use the syntax format @extractor(variable/array index expression). extractor can be any of the following integer extractors:
count
+}
In Example 3.21, “stat-aggregates.stp”, the operator <<< $count stores the amount returned by $count to the associated value of the corresponding execname() in the reads array. Remember, these values are stored; they are not added to the associated values of each unique key, nor are they used to replace the current associated values. In a manner of speaking, think of it as having each unique key (execname()) having multiple associated values, accumulating with each probe handler run.

Note

In the context of Example 3.21, “stat-aggregates.stp”, count returns the amount of data read by the returned execname() to the virtual file system.
To extract data collected by statistical aggregates, use the syntax format @extractor(variable/array index expression). extractor can be any of the following integer extractors:
count
Returns the number of all values stored into the variable/array index expression. Given the sample probe in Example 3.21, “stat-aggregates.stp”, the expression @count(reads[execname()]) will return how many values are stored in each unique key in array reads. -
sum
+
sum
Returns the sum of all values stored into the variable/array index expression. Again, given sample probe in Example 3.21, “stat-aggregates.stp”, the expression @sum(reads[execname()]) will return the total of all values stored in each unique key in array reads. -
min
+
min
Returns the smallest among all the values stored in the variable/array index expression. -
max
+
max
Returns the largest among all the values stored in the variable/array index expression. -
avg
+
avg
Returns the average of all values stored in the variable/array index expression.
When using statistical aggregates, you can also build array constructs that use multiple index diff --git a/SystemTap_Beginners_Guide/arrayops-conditionals.html b/SystemTap_Beginners_Guide/arrayops-conditionals.html index addab696..c1af58fb 100644 --- a/SystemTap_Beginners_Guide/arrayops-conditionals.html +++ b/SystemTap_Beginners_Guide/arrayops-conditionals.html @@ -1,6 +1,6 @@ 3.5.6. Using Arrays in Conditional Statements

- ⁠3.5.6. Using Arrays in Conditional Statements

You can also use associative arrays in if statements. This is useful if you want to execute a subroutine once a value in the array matches a certain condition. Consider the following example:
+ ⁠3.5.6. Using Arrays in Conditional Statements
You can also use associative arrays in if statements. This is useful if you want to execute a subroutine once a value in the array matches a certain condition. Consider the following example:
⁠

Example 3.19. vfsreads-print-if-1kb.stp

global reads
 probe vfs.read
 {
@@ -15,7 +15,7 @@ probe timer.s(3)
       printf("%s : %dkB \n", count, reads[count]/1024)
     else
       printf("%s : %dB \n", count, reads[count])
-}
Every three seconds, Example 3.19, “vfsreads-print-if-1kb.stp” prints out a list of all processes, along with how many times each process performed a VFS read. If the associated value of a process name is equal or greater than 1024, the if statement in the script converts and prints it out in kB.
Testing for Membership
You can also test whether a specific unique key is a member of an array. Further, membership in an array can be used in if statements, as in:
if([index_expression] in array_name) statement
To illustrate this, consider the following example:
Every three seconds, Example 3.19, “vfsreads-print-if-1kb.stp” prints out a list of all processes, along with how many times each process performed a VFS read. If the associated value of a process name is equal or greater than 1024, the if statement in the script converts and prints it out in kB.
Testing for Membership
You can also test whether a specific unique key is a member of an array. Further, membership in an array can be used in if statements, as in:
if([index_expression] in array_name) statement
To illustrate this, consider the following example:
⁠

Example 3.20. vfsreads-stop-on-stapio2.stp

global reads
 
 probe vfs.read
diff --git a/SystemTap_Beginners_Guide/arrayops-deleting.html b/SystemTap_Beginners_Guide/arrayops-deleting.html
index eb05997d..27226309 100644
--- a/SystemTap_Beginners_Guide/arrayops-deleting.html
+++ b/SystemTap_Beginners_Guide/arrayops-deleting.html
@@ -1,6 +1,6 @@
 
 3.5.5. Clearing/Deleting Arrays and Array Elements

- ⁠3.5.5. Clearing/Deleting Arrays and Array Elements

Sometimes, you may need to clear the associated values in array elements, or reset an entire array for re-use in another probe. Example 3.17, “cumulative-vfsreads.stp” in Section 3.5.4, “Processing Multiple Elements in an Array” allows you to track how the number of VFS reads per process grows over time, but it does not show you the number of VFS reads each process makes per 3-second period.
To do that, you will need to clear the values accumulated by the array. You can accomplish this using the delete operator to delete elements in an array, or an entire array. Consider the following example:
+ ⁠3.5.5. Clearing/Deleting Arrays and Array Elements
Sometimes, you may need to clear the associated values in array elements, or reset an entire array for re-use in another probe. Example 3.17, “cumulative-vfsreads.stp” in Section 3.5.4, “Processing Multiple Elements in an Array” allows you to track how the number of VFS reads per process grows over time, but it does not show you the number of VFS reads each process makes per 3-second period.
To do that, you will need to clear the values accumulated by the array. You can accomplish this using the delete operator to delete elements in an array, or an entire array. Consider the following example:
⁠

Example 3.18. noncumulative-vfsreads.stp

global reads
 probe vfs.read
 {
@@ -11,7 +11,7 @@ probe timer.s(3)
   foreach (count in reads)
     printf("%s : %d \n", count, reads[count])
   delete reads
-}
In Example 3.18, “noncumulative-vfsreads.stp”, the second probe prints the number of VFS reads each process made within the probed 3-second period only. The delete reads statement clears the reads array within the probe.

Note

You can have multiple array operations within the same probe. Using the examples from Section 3.5.4, “Processing Multiple Elements in an Array” and Section 3.5.5, “Clearing/Deleting Arrays and Array Elements” , you can track the number of VFS reads each process makes per 3-second period and tally the cumulative VFS reads of those same processes. Consider the following example:
global reads, totalreads
+}
In Example 3.18, “noncumulative-vfsreads.stp”, the second probe prints the number of VFS reads each process made within the probed 3-second period only. The delete reads statement clears the reads array within the probe.

Note

You can have multiple array operations within the same probe. Using the examples from Section 3.5.4, “Processing Multiple Elements in an Array” and Section 3.5.5, “Clearing/Deleting Arrays and Array Elements” , you can track the number of VFS reads each process makes per 3-second period and tally the cumulative VFS reads of those same processes. Consider the following example:
global reads, totalreads
 
 probe vfs.read
 {
diff --git a/SystemTap_Beginners_Guide/arrayops-foreach.html b/SystemTap_Beginners_Guide/arrayops-foreach.html
index c5710cd4..1cbec791 100644
--- a/SystemTap_Beginners_Guide/arrayops-foreach.html
+++ b/SystemTap_Beginners_Guide/arrayops-foreach.html
@@ -1,6 +1,6 @@
 
 3.5.4. Processing Multiple Elements in an Array

- ⁠3.5.4. Processing Multiple Elements in an Array

Once you've collected enough information in an array, you will need to retrieve and process all elements in that array to make it useful. Consider Example 3.16, “vfsreads.stp”: the script collects information about how many VFS reads each process performs, but does not specify what to do with it. The obvious means for making Example 3.16, “vfsreads.stp” useful is to print the key pairs in the array reads, but how?
The best way to process all key pairs in an array (as an iteration) is to use the foreach statement. Consider the following example:
+ ⁠3.5.4. Processing Multiple Elements in an Array
Once you've collected enough information in an array, you will need to retrieve and process all elements in that array to make it useful. Consider Example 3.16, “vfsreads.stp”: the script collects information about how many VFS reads each process performs, but does not specify what to do with it. The obvious means for making Example 3.16, “vfsreads.stp” useful is to print the key pairs in the array reads, but how?
The best way to process all key pairs in an array (as an iteration) is to use the foreach statement. Consider the following example:
⁠

Example 3.17. cumulative-vfsreads.stp

global reads
 probe vfs.read
 {
@@ -10,7 +10,7 @@ probe timer.s(3)
 {
   foreach (count in reads)
     printf("%s : %d \n", count, reads[count])
-}
In the second probe of Example 3.17, “cumulative-vfsreads.stp”, the foreach statement uses the variable count to reference each iteration of a unique key in the array reads. The reads[count] array statement in the same probe retrieves the associated value of each unique key.
Given what we know about the first probe in Example 3.17, “cumulative-vfsreads.stp”, the script prints VFS-read statistics every 3 seconds, displaying names of processes that performed a VFS-read along with a corresponding VFS-read count.
Now, remember that the foreach statement in Example 3.17, “cumulative-vfsreads.stp” prints all iterations of process names in the array, and in no particular order. You can instruct the script to process the iterations in a particular order by using + (ascending) or - (descending). In addition, you can also limit the number of iterations the script needs to process with the limit value option.
For example, consider the following replacement probe:
probe timer.s(3)
+}
In the second probe of Example 3.17, “cumulative-vfsreads.stp”, the foreach statement uses the variable count to reference each iteration of a unique key in the array reads. The reads[count] array statement in the same probe retrieves the associated value of each unique key.
Given what we know about the first probe in Example 3.17, “cumulative-vfsreads.stp”, the script prints VFS-read statistics every 3 seconds, displaying names of processes that performed a VFS-read along with a corresponding VFS-read count.
Now, remember that the foreach statement in Example 3.17, “cumulative-vfsreads.stp” prints all iterations of process names in the array, and in no particular order. You can instruct the script to process the iterations in a particular order by using + (ascending) or - (descending). In addition, you can also limit the number of iterations the script needs to process with the limit value option.
For example, consider the following replacement probe:
probe timer.s(3)
 {
   foreach (count in reads- limit 10)
     printf("%s : %d \n", count, reads[count])
diff --git a/SystemTap_Beginners_Guide/arrayops-increment.html b/SystemTap_Beginners_Guide/arrayops-increment.html
index 52ef8f92..2a0c4442 100644
--- a/SystemTap_Beginners_Guide/arrayops-increment.html
+++ b/SystemTap_Beginners_Guide/arrayops-increment.html
@@ -1,6 +1,6 @@
 
 3.5.3. Incrementing Associated Values

- ⁠3.5.3. Incrementing Associated Values

Use ++ to increment the associated value of a unique key in an array, as in:
array_name[index_expression] ++
Again, you can also use a handler function for your index_expression. For example, if you wanted to tally how many times a specific process performed a read to the virtual file system (using the event vfs.read), you can use the following probe:
+ ⁠3.5.3. Incrementing Associated Values
Use ++ to increment the associated value of a unique key in an array, as in:
array_name[index_expression] ++
Again, you can also use a handler function for your index_expression. For example, if you wanted to tally how many times a specific process performed a read to the virtual file system (using the event vfs.read), you can use the following probe:
⁠

Example 3.16. vfsreads.stp

probe vfs.read
 {
   reads[execname()] ++
diff --git a/SystemTap_Beginners_Guide/arrayops-readvalues.html b/SystemTap_Beginners_Guide/arrayops-readvalues.html
index d4b27378..579c71ce 100644
--- a/SystemTap_Beginners_Guide/arrayops-readvalues.html
+++ b/SystemTap_Beginners_Guide/arrayops-readvalues.html
@@ -1,9 +1,9 @@
 
 3.5.2. Reading Values From Arrays

- ⁠3.5.2. Reading Values From Arrays

You can also read values from an array the same way you would read the value of a variable. + ⁠3.5.2. Reading Values From Arrays
You can also read values from an array the same way you would read the value of a variable. To do so, include the array_name[index_expression] - statement as an element in a mathematical expression. For example:
⁠

Example 3.15. Using Array Values in Simple Computations

delta = gettimeofday_s() - foo[tid()]
This example assumes that the array foo was built using the construct in Example 3.14, “Associating Timestamps to Process Names” (from Section 3.5.1, “Assigning an Associated Value”). This @@ -16,7 +16,7 @@ reading the value of tid() from the array. This particular construct is useful for determining the time between two events, such as the start and completion of a read operation. -

Note

+

Note

If the index_expression cannot find the unique key, it returns a value of 0 (for numerical operations, such as Example 3.15, “Using Array Values in Simple Computations”) or a null/empty string value (for string operations) by diff --git a/SystemTap_Beginners_Guide/associativearrays.html b/SystemTap_Beginners_Guide/associativearrays.html index 3a6ec695..af3ad42f 100644 --- a/SystemTap_Beginners_Guide/associativearrays.html +++ b/SystemTap_Beginners_Guide/associativearrays.html @@ -1,6 +1,6 @@ 3.4. Associative Arrays

- ⁠3.4. Associative Arrays

SystemTap also supports the use of associative arrays. While an ordinary variable represents a single value, associative arrays can represent a collection of values. Simply put, an associative array is a collection of unique keys; each key in the array has a value associated with it.
Since associative arrays are normally processed in multiple probes (as we will demonstrate later), they should be declared as global variables in the SystemTap script. The syntax for accessing an element in an associative array is similar to that of awk, and is as follows:
array_name[index_expression]
Here, the array_name is any arbitrary name the array uses. The index_expression is used to refer to a specific unique key in the array. To illustrate, let us try to build an array named foo that specifies the ages of three people tom, dick, and harry (which are unique keys). To assign them the ages (associated values) of 23, 24, and 25 respectively, we'd use the following array statements:
+ ⁠3.4. Associative Arrays
SystemTap also supports the use of associative arrays. While an ordinary variable represents a single value, associative arrays can represent a collection of values. Simply put, an associative array is a collection of unique keys; each key in the array has a value associated with it.
Since associative arrays are normally processed in multiple probes (as we will demonstrate later), they should be declared as global variables in the SystemTap script. The syntax for accessing an element in an associative array is similar to that of awk, and is as follows:
array_name[index_expression]
Here, the array_name is any arbitrary name the array uses. The index_expression is used to refer to a specific unique key in the array. To illustrate, let us try to build an array named foo that specifies the ages of three people tom, dick, and harry (which are unique keys). To assign them the ages (associated values) of 23, 24, and 25 respectively, we'd use the following array statements:
⁠

Example 3.13. Basic Array Statements

foo["tom"] = 23
 foo["dick"] = 24
 foo["harry"] = 25
You can specify up to nine index expressions in an array statement, each one delimited by a comma (,). This is useful if you wish to have a key that contains multiple pieces of information. The following line from disktop.stp uses 5 elements for the key: process ID, executable name, user ID, parent process ID, and string "W". It associates the value of devname with that key.
device[pid(),execname(),uid(),ppid(),"W"] = devname

Important

All associate arrays must be declared as global, regardless of whether the associate array is used in one or multiple probes.
\ No newline at end of file diff --git a/SystemTap_Beginners_Guide/commandlineargssect.html b/SystemTap_Beginners_Guide/commandlineargssect.html index 95a1d1ed..726dea73 100644 --- a/SystemTap_Beginners_Guide/commandlineargssect.html +++ b/SystemTap_Beginners_Guide/commandlineargssect.html @@ -1,7 +1,7 @@ 3.3.4. Command-Line Arguments

- ⁠3.3.4. Command-Line Arguments

A SystemTap script can also accept simple command-line arguments using a $ or @ immediately + ⁠3.3.4. Command-Line Arguments
A SystemTap script can also accept simple command-line arguments using a $ or @ immediately followed by the number of the argument on the command line. Use $ if you are expecting the user to enter an integer as a command-line argument, and @ if you are expecting a string.
⁠

Example 3.12. commandlineargs.stp

probe kernel.function(@1) { }
-probe kernel.function(@1).return { }
Example 3.12, “commandlineargs.stp” is similar to Example 3.1, “wildcards.stp”, except that it allows you to pass the kernel function to be probed as a command-line argument (as in stap commandlineargs.stp kernel function). You can also specify the script to accept multiple command-line arguments, noting them as @1, @2, and so on, in the order they are entered by the user.
\ No newline at end of file +probe kernel.function(@1).return { }
Example 3.12, “commandlineargs.stp” is similar to Example 3.1, “wildcards.stp”, except that it allows you to pass the kernel function to be probed as a command-line argument (as in stap commandlineargs.stp kernel function). You can also specify the script to accept multiple command-line arguments, noting them as @1, @2, and so on, in the order they are entered by the user.
\ No newline at end of file diff --git a/SystemTap_Beginners_Guide/cross-compiling.html b/SystemTap_Beginners_Guide/cross-compiling.html index 093fab31..73c3b1a0 100644 --- a/SystemTap_Beginners_Guide/cross-compiling.html +++ b/SystemTap_Beginners_Guide/cross-compiling.html @@ -1,6 +1,6 @@ 2.2. Generating Instrumentation for Other Computers

- ⁠2.2. Generating Instrumentation for Other Computers

+ ⁠2.2. Generating Instrumentation for Other Computers
When users run a SystemTap script, SystemTap builds a kernel module out of that script. SystemTap then loads the module into the kernel, allowing it to extract the specified data directly from the kernel (refer to @@ -10,7 +10,7 @@ Normally, however, SystemTap scripts can only be run on systems where SystemTap is deployed (as in Section 2.1, “Installation and Setup”). This could mean that if you want to run SystemTap on ten systems, you would need to deploy SystemTap on all those systems. In some cases, this may be neither feasible nor desired. For instance, corporate policy may prohibit an administrator from installing RPM packages that provide compilers or debug information on specific machines, and thus prevent the deployment of SystemTap. To work around this problem, SystemTap allows you to use cross-instrumentation.
Cross-instrumentation is the process of generating SystemTap instrumentation module from a SystemTap script on one computer to be used on another computer. This process offers the following benefits: -
  • +
    • The kernel information packages for various machines can be installed on a single host machine.
    • Each target machine only needs one RPM package to be installed in order to use the generated SystemTap instrumentation module: the systemtap-runtime package. @@ -18,9 +18,9 @@ For the sake of simplicity, the following terms are used throughout this section:
      • - + - + Instrumentation module — the kernel module built from a SystemTap script. The SystemTap module is built on the host @@ -28,25 +28,25 @@ kernel of target system.
      • - + - + Host system — the system on which you compile the instrumentation modules from SystemTap scripts in order to load them on target systems.
      • - + - + Target system — the system for which you are building the instrumentation modules from SystemTap scripts.
      • - + - + Target kernel — the kernel of the target system. This is the kernel on which you intend to load or run the instrumentation @@ -54,7 +54,7 @@
      To configure a host system and target systems, complete the following steps:
      - ⁠
      1. + ⁠
        1. Install the systemtap-runtime package on each target system.
        2. @@ -90,7 +90,7 @@ be converted into the instrumentation module, and module_name is the desired name of the instrumentation module. -

          Note

          +

          Note

          To determine the architecture notation of a running kernel, you can run the following command:
          uname -m
          Once the instrumentation module is compiled, copy diff --git a/SystemTap_Beginners_Guide/errors.html b/SystemTap_Beginners_Guide/errors.html index 09d26124..20492941 100644 --- a/SystemTap_Beginners_Guide/errors.html +++ b/SystemTap_Beginners_Guide/errors.html @@ -1,12 +1,12 @@ Chapter 6. Understanding SystemTap Errors

          ⁠Chapter 6. Understanding SystemTap Errors

          This chapter explains the most common errors you may encounter while using SystemTap.

          - ⁠6.1. Parse and Semantic Errors

          Parse and semantic errors occur while SystemTap attempts to parse and + ⁠6.1. Parse and Semantic Errors
          Parse and semantic errors occur while SystemTap attempts to parse and translate the script into C, before converting it into a kernel module. For example, type errors result from operations that assign invalid values to variables or arrays. -

          - ⁠parse error: expected foo, saw bar

          The script contains a grammatical or typographical error. SystemTap detected the type of the construct that is incorrect, given the context of the probe. +

          + ⁠parse error: expected foo, saw bar

          The script contains a grammatical or typographical error. SystemTap detected the type of the construct that is incorrect, given the context of the probe.
          For example, the following invalid SystemTap script is missing its probe handlers: @@ -23,22 +23,22 @@ probe vfs.write
          parse error: expected one of '. , ( ? ! { = +='
           	saw: keyword at perror.stp:2:1
           1 parse error(s).
          -

          - ⁠parse error: embedded code in unprivileged script

          +

          + ⁠parse error: embedded code in unprivileged script

          The script contains unsafe embedded C code, that is, blocks of code surrounded by %{ and %}. SystemTap allows you to embed C code in a script, which is useful if there are no tapsets to suit your purposes. However, embedded C constructs are not safe and SystemTap reports this error to warn you if such constructs appear in the script. -
          +
          If you are sure that any similar constructs in the script are safe and you are a member of the stapdev group (or have root privileges), run the script in "guru" mode by using the -g option: -
          stap -g script

          - ⁠semantic error: type mismatch for identifier 'foo' ... string vs. long

          +
          stap -g script

          + ⁠semantic error: type mismatch for identifier 'foo' ... string vs. long

          The function foo in the script used the wrong type (such as %s or %d). @@ -48,40 +48,40 @@ probe vfs.write
          probe syscall.open
           {
             printf ("%d(%d) open\n", execname(), pid())
          -}

          - ⁠semantic error: unresolved type for identifier 'foo'

          The identifier (variable) was used, but no type (integer or +}

          + ⁠semantic error: unresolved type for identifier 'foo'

          The identifier (variable) was used, but no type (integer or string) could be determined. This occurs, for instance, if you use a variable in a printf statement while - the script never assigns a value to the variable.

          - ⁠semantic error: Expecting symbol or array index expression

          + the script never assigns a value to the variable.

          + ⁠semantic error: Expecting symbol or array index expression

          SystemTap could not assign a value to a variable or to a location in an array. The destination for the assignment is not a valid destination. The following example code would generate this error:
          probe begin { printf("x") = 1 }
          -

          - ⁠while searching for arity N function, semantic error: unresolved function call

          A function call or array index expression in the script used an invalid +

          + ⁠while searching for arity N function, semantic error: unresolved function call

          A function call or array index expression in the script used an invalid number of arguments or parameters. In SystemTap, arity can either refer to the number of indices - for an array, or the number of parameters to a function.

          - ⁠semantic error: array locals not supported, missing global declaration?

          The script used an array operation without declaring the array as + for an array, or the number of parameters to a function.

          + ⁠semantic error: array locals not supported, missing global declaration?

          The script used an array operation without declaring the array as a global variable (global variables can be declared after their use in - SystemTap scripts). Similar messages appear if an array is used, but with inconsistent arities.

          - ⁠semantic error: variable 'foo' modified during 'foreach' iteration

          The array foo is being modified (being assigned to or deleted from) within an active foreach loop. This error also displays if an operation within the script performs a function call within the foreach loop.

          - ⁠semantic error: probe point mismatch at position N, while resolving probe point foo

          SystemTap did not understand what the event or SystemTap function + SystemTap scripts). Similar messages appear if an array is used, but with inconsistent arities.

          + ⁠semantic error: variable 'foo' modified during 'foreach' iteration

          The array foo is being modified (being assigned to or deleted from) within an active foreach loop. This error also displays if an operation within the script performs a function call within the foreach loop.

          + ⁠semantic error: probe point mismatch at position N, while resolving probe point foo

          SystemTap did not understand what the event or SystemTap function foo refers to. This usually means that SystemTap could not find a match for foo in the tapset library. N refers to the line and column of - the error.

          - ⁠semantic error: no match for probe point, while resolving probe point foo

          SystemTap could not resolve the events or handler function foo for a variety of reasons. This error occurs when the script contains the event kernel.function("something"), and something does not exist. In some cases, the error could also mean the script contains an invalid kernel file name or source line number.

          - ⁠semantic error: unresolved target-symbol expression

          A handler in the script references a target variable, but the + the error.

          + ⁠semantic error: no match for probe point, while resolving probe point foo

          SystemTap could not resolve the events or handler function foo for a variety of reasons. This error occurs when the script contains the event kernel.function("something"), and something does not exist. In some cases, the error could also mean the script contains an invalid kernel file name or source line number.

          + ⁠semantic error: unresolved target-symbol expression

          A handler in the script references a target variable, but the value of the variable could not be resolved. This error could also mean that a handler is referencing a target variable that is not valid in the context when it was referenced. This may be a result of compiler - optimization of the generated code.

          - ⁠semantic error: libdwfl failure

          There was a problem processing the debugging information. In most + optimization of the generated code.

          + ⁠semantic error: libdwfl failure

          There was a problem processing the debugging information. In most cases, this error results from the installation of a kernel-debuginfo package whose version does not match - the probed kernel exactly. The installed kernel-debuginfo package itself may have some consistency or correctness problems.

          + the probed kernel exactly. The installed kernel-debuginfo package itself may have some consistency or correctness problems.

          ⁠semantic error: cannot find foo debuginfo

          SystemTap could not find a suitable kernel-debuginfo package.
          \ No newline at end of file diff --git a/SystemTap_Beginners_Guide/futexcontentionsect.html b/SystemTap_Beginners_Guide/futexcontentionsect.html index 50b8704f..9c77cdde 100644 --- a/SystemTap_Beginners_Guide/futexcontentionsect.html +++ b/SystemTap_Beginners_Guide/futexcontentionsect.html @@ -1,15 +1,15 @@ 5.4. Identifying Contended User-Space Locks

          - ⁠5.4. Identifying Contended User-Space Locks

          This section describes how to identify contended + ⁠5.4. Identifying Contended User-Space Locks
          This section describes how to identify contended user-space locks throughout the system within a specific time period. The ability to identify contended user-space locks can help you investigate poor program performance that you suspect may be -caused by futex contentions.
          Simply put, futex contention occurs +caused by futex contentions.
          Simply put, futex contention occurs when multiple processes are trying to access the same lock variable at the same time. This can result in a poor performance because the lock serializes execution; one process obtains the lock while the other processes must wait for the lock - variable to become available again.
          The futexes.stp script probes the futex system call to show lock contention.
          futexes.stp
          + variable to become available again.
          The futexes.stp script probes the futex system call to show lock contention.
          futexes.stp
          #! /usr/bin/env stap
           
           # This script tries to identify contended user-space locks by hooking
          diff --git a/SystemTap_Beginners_Guide/handlerconditionalstatements.html b/SystemTap_Beginners_Guide/handlerconditionalstatements.html
          index f574f273..661850b4 100644
          --- a/SystemTap_Beginners_Guide/handlerconditionalstatements.html
          +++ b/SystemTap_Beginners_Guide/handlerconditionalstatements.html
          @@ -1,10 +1,10 @@
           
           3.3.3. Conditional Statements

          - ⁠3.3.3. Conditional Statements

          + ⁠3.3.3. Conditional Statements
          In some cases, the output of a SystemTap script may be too large. To address this, you need to further refine the script's logic in order to delimit the output into something more relevant or useful to your probe.
          Do this by using conditionals in handlers. SystemTap accepts the following types of conditional statements: -
          If/Else Statements
          Format:
          if (condition)
          +
          If/Else Statements
          Format:
          if (condition)
             statement1
           else
             statement2
          @@ -30,7 +30,7 @@ probe timer.s(5) { exit() } probe end { printf("VFS reads total %d\n VFS writes total %d\n", countread, countnonread) -}
          Example 3.11, “ifelse.stp” is a script that counts how many virtual file system reads (vfs_read) and writes (vfs_write) the system performs within a 5-second span. When run, the script increments the value of the variable countread by 1 if the name of the function it probed matches vfs_read (as noted by the condition if (probefunc()=="vfs_read")); otherwise, it increments countnonread (else {countnonread ++}).
          While Loops
          Format:
          while (condition)
          +}
        Example 3.11, “ifelse.stp” is a script that counts how many virtual file system reads (vfs_read) and writes (vfs_write) the system performs within a 5-second span. When run, the script increments the value of the variable countread by 1 if the name of the function it probed matches vfs_read (as noted by the condition if (probefunc()=="vfs_read")); otherwise, it increments countnonread (else {countnonread ++}).
        While Loops
        Format:
        while (condition)
           statement
        So long as condition is non-zero the block of statements in @@ -38,11 +38,11 @@ the block of statements in statement is often a statement block and it must change a value so condition will eventually be zero. -
        For Loops
        Format:
        for (initialization; conditional; increment) statement
        +
        For Loops
        Format:
        for (initialization; conditional; increment) statement
        The for loop is shorthand for a while loop. The following is the equivalent while loop:
        initialization
         while (conditional) {
            statement
            increment
        -}
      Conditional Operators
      Aside from == ("is equal to"), following operators can also be used in conditional statements:
      >=
      Greater than or equal to
      <=
      Less than or equal to
      !=
      Is not equal to
    \ No newline at end of file +}
Conditional Operators
Aside from == ("is equal to"), following operators can also be used in conditional statements:
>=
Greater than or equal to
<=
Less than or equal to
!=
Is not equal to
\ No newline at end of file diff --git a/SystemTap_Beginners_Guide/index.html b/SystemTap_Beginners_Guide/index.html index bdb36a86..f9bf0e50 100644 --- a/SystemTap_Beginners_Guide/index.html +++ b/SystemTap_Beginners_Guide/index.html @@ -1,7 +1,7 @@ -SystemTap Beginners Guide

  • SystemTap Beginners Guide
SystemTap 4.3

SystemTap Beginners Guide

Introduction to SystemTap

Edition 4.3

+SystemTap Beginners Guide

  • SystemTap Beginners Guide
SystemTap 4.5

SystemTap Beginners Guide

Introduction to SystemTap

Edition 4.5

Logo -

Red Hat, Inc.

Don Domingo

Engineering Services and Operations Content Services

William Cohen

Engineering Services and Operations Performance Tools

Legal Notice

+

Red Hat, Inc.

Don Domingo

Engineering Services and Operations Content Services

William Cohen

Engineering Services and Operations Performance Tools

Legal Notice

This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. @@ -18,4 +18,4 @@
For more details see the file COPYING in the source distribution of Linux. -

Abstract

This guide provides basic instructions on how to use SystemTap to monitor different subsystems of a Linux system in finer detail.
Preface
1. Document Conventions
1.1. Typographic Conventions
1.2. Pull-quote Conventions
1.3. Notes and Warnings
2. We Need Feedback!
1. Introduction
1.1. Documentation Goals
1.2. SystemTap Capabilities
1.3. Limitations of SystemTap
2. Using SystemTap
2.1. Installation and Setup
2.1.1. Installing SystemTap
2.1.2. Installing Required Kernel Information Packages Manually
2.1.3. Initial Testing
2.2. Generating Instrumentation for Other Computers
2.3. Running SystemTap Scripts
2.3.1. SystemTap Flight Recorder Mode
3. Understanding How SystemTap Works
3.1. Architecture
3.2. SystemTap Scripts
3.2.1. Event
3.2.2. SystemTap Handler/Body
3.3. Basic SystemTap Handler Constructs
3.3.1. Variables
3.3.2. Target Variables
3.3.3. Conditional Statements
3.3.4. Command-Line Arguments
3.4. Associative Arrays
3.5. Array Operations in SystemTap
3.5.1. Assigning an Associated Value
3.5.2. Reading Values From Arrays
3.5.3. Incrementing Associated Values
3.5.4. Processing Multiple Elements in an Array
3.5.5. Clearing/Deleting Arrays and Array Elements
3.5.6. Using Arrays in Conditional Statements
3.5.7. Computing for Statistical Aggregates
3.6. Tapsets
4. User-space Probing
4.1. User-Space Events
4.2. Accessing User-Space Target Variables
4.3. User-Space Stack Backtraces
5. Useful SystemTap Scripts
5.1. Network
5.1.1. Network Profiling
5.1.2. Tracing Functions Called in Network Socket Code
5.1.3. Monitoring Incoming TCP Connections
5.1.4. Monitoring TCP Packets
5.1.5. Monitoring Network Packets Drops in Kernel
5.2. Disk
5.2.1. Summarizing Disk Read/Write Traffic
5.2.2. Tracking I/O Time For Each File Read or Write
5.2.3. Track Cumulative IO
5.2.4. I/O Monitoring (By Device)
5.2.5. Monitoring Reads and Writes to a File
5.2.6. Monitoring Changes to File Attributes
5.2.7. Periodically Print I/O Block Time
5.3. Profiling
5.3.1. Counting Function Calls Made
5.3.2. Call Graph Tracing
5.3.3. Determining Time Spent in Kernel and User Space
5.3.4. Monitoring Polling Applications
5.3.5. Tracking Most Frequently Used System Calls
5.3.6. Tracking System Call Volume Per Process
5.4. Identifying Contended User-Space Locks
6. Understanding SystemTap Errors
6.1. Parse and Semantic Errors
6.2. Runtime Errors and Warnings
7. References
A. Revision History
Index
\ No newline at end of file +

Abstract

This guide provides basic instructions on how to use SystemTap to monitor different subsystems of a Linux system in finer detail.
Preface
1. Document Conventions
1.1. Typographic Conventions
1.2. Pull-quote Conventions
1.3. Notes and Warnings
2. We Need Feedback!
1. Introduction
1.1. Documentation Goals
1.2. SystemTap Capabilities
1.3. Limitations of SystemTap
2. Using SystemTap
2.1. Installation and Setup
2.1.1. Installing SystemTap
2.1.2. Installing Required Kernel Information Packages Manually
2.1.3. Initial Testing
2.2. Generating Instrumentation for Other Computers
2.3. Running SystemTap Scripts
2.3.1. SystemTap Flight Recorder Mode
3. Understanding How SystemTap Works
3.1. Architecture
3.2. SystemTap Scripts
3.2.1. Event
3.2.2. SystemTap Handler/Body
3.3. Basic SystemTap Handler Constructs
3.3.1. Variables
3.3.2. Target Variables
3.3.3. Conditional Statements
3.3.4. Command-Line Arguments
3.4. Associative Arrays
3.5. Array Operations in SystemTap
3.5.1. Assigning an Associated Value
3.5.2. Reading Values From Arrays
3.5.3. Incrementing Associated Values
3.5.4. Processing Multiple Elements in an Array
3.5.5. Clearing/Deleting Arrays and Array Elements
3.5.6. Using Arrays in Conditional Statements
3.5.7. Computing for Statistical Aggregates
3.6. Tapsets
4. User-space Probing
4.1. User-Space Events
4.2. Accessing User-Space Target Variables
4.3. User-Space Stack Backtraces
5. Useful SystemTap Scripts
5.1. Network
5.1.1. Network Profiling
5.1.2. Tracing Functions Called in Network Socket Code
5.1.3. Monitoring Incoming TCP Connections
5.1.4. Monitoring TCP Packets
5.1.5. Monitoring Network Packets Drops in Kernel
5.2. Disk
5.2.1. Summarizing Disk Read/Write Traffic
5.2.2. Tracking I/O Time For Each File Read or Write
5.2.3. Track Cumulative IO
5.2.4. I/O Monitoring (By Device)
5.2.5. Monitoring Reads and Writes to a File
5.2.6. Monitoring Changes to File Attributes
5.2.7. Periodically Print I/O Block Time
5.3. Profiling
5.3.1. Counting Function Calls Made
5.3.2. Call Graph Tracing
5.3.3. Determining Time Spent in Kernel and User Space
5.3.4. Monitoring Polling Applications
5.3.5. Tracking Most Frequently Used System Calls
5.3.6. Tracking System Call Volume Per Process
5.4. Identifying Contended User-Space Locks
6. Understanding SystemTap Errors
6.1. Parse and Semantic Errors
6.2. Runtime Errors and Warnings
7. References
A. Revision History
Index
\ No newline at end of file diff --git a/SystemTap_Beginners_Guide/inodewatch2sect.html b/SystemTap_Beginners_Guide/inodewatch2sect.html index a5eaef01..59fe976c 100644 --- a/SystemTap_Beginners_Guide/inodewatch2sect.html +++ b/SystemTap_Beginners_Guide/inodewatch2sect.html @@ -1,6 +1,6 @@ 5.2.6. Monitoring Changes to File Attributes

- ⁠5.2.6. Monitoring Changes to File Attributes

This section describes how to monitor if any processes are changing the attributes of a targeted file, in real time.
inodewatch2.stp
+ ⁠5.2.6. Monitoring Changes to File Attributes
This section describes how to monitor if any processes are changing the attributes of a targeted file, in real time.
inodewatch2.stp
#! /usr/bin/env stap
 
 global ATTR_MODE = 1
diff --git a/SystemTap_Beginners_Guide/inodewatchsect.html b/SystemTap_Beginners_Guide/inodewatchsect.html
index 28ae0d7b..e46b0aa8 100644
--- a/SystemTap_Beginners_Guide/inodewatchsect.html
+++ b/SystemTap_Beginners_Guide/inodewatchsect.html
@@ -1,6 +1,6 @@
 
 5.2.5. Monitoring Reads and Writes to a File

- ⁠5.2.5. Monitoring Reads and Writes to a File

This section describes how to monitor reads from and writes to a file in real time.
inodewatch.stp
+ ⁠5.2.5. Monitoring Reads and Writes to a File
This section describes how to monitor reads from and writes to a file in real time.
inodewatch.stp
#! /usr/bin/env stap
 
 probe vfs.{write,read}
@@ -13,6 +13,6 @@ probe vfs.{write,read}
 }
 
inodewatch.stp takes the following information about the -file as arguments on the command line:
  • The file's major device number.
  • The file's minor device number.
  • The file's inode number.
To get this information, use stat -c '%D %i' filename, where filename is an absolute path.
For instance: to monitor /etc/crontab, run stat -c '%D %i' /etc/crontab first. This gives the following output:
805 1078319
805 is the base-16 (hexadecimal) device number. The lower two digits are the minor device number and the upper digits are the major number. 1078319 is the inode number. To start monitoring /etc/crontab, run stap inodewatch.stp 0x8 0x05 1078319 (The 0x prefixes indicate base-16 values.
The output of this command contains the name and ID of any process performing a read/write, the function it is performing (that is, vfs_read or vfs_write), the device number (in hex format), and the inode number. Example 5.10, “inodewatch.stp Sample Output” contains the output of stap inodewatch.stp 0x8 0x05 1078319 (when cat /etc/crontab is executed while the script is running) :
  • The file's major device number.
  • The file's minor device number.
  • The file's inode number.
To get this information, use stat -c '%D %i' filename, where filename is an absolute path.
For instance: to monitor /etc/crontab, run stat -c '%D %i' /etc/crontab first. This gives the following output:
805 1078319
805 is the base-16 (hexadecimal) device number. The lower two digits are the minor device number and the upper digits are the major number. 1078319 is the inode number. To start monitoring /etc/crontab, run stap inodewatch.stp 0x8 0x05 1078319 (The 0x prefixes indicate base-16 values.
The output of this command contains the name and ID of any process performing a read/write, the function it is performing (that is, vfs_read or vfs_write), the device number (in hex format), and the inode number. Example 5.10, “inodewatch.stp Sample Output” contains the output of stap inodewatch.stp 0x8 0x05 1078319 (when cat /etc/crontab is executed while the script is running) :
⁠

Example 5.10. inodewatch.stp Sample Output

cat(16437) vfs_read 0x800005/1078319
 cat(16437) vfs_read 0x800005/1078319
\ No newline at end of file diff --git a/SystemTap_Beginners_Guide/intro-systemtap-limitations.html b/SystemTap_Beginners_Guide/intro-systemtap-limitations.html index 3dbdefbb..a31f79af 100644 --- a/SystemTap_Beginners_Guide/intro-systemtap-limitations.html +++ b/SystemTap_Beginners_Guide/intro-systemtap-limitations.html @@ -1,6 +1,6 @@ 1.3. Limitations of SystemTap

- ⁠1.3. Limitations of SystemTap

The current iteration of SystemTap allows for a multitude of + ⁠1.3. Limitations of SystemTap
The current iteration of SystemTap allows for a multitude of options when probing kernel-space events for a wide range of kernels. However, SystemTap's ability to probe user-space events depends on kernel support (the Utrace mechanism) that is not available in many kernels. diff --git a/SystemTap_Beginners_Guide/intro-systemtap-vs-others.html b/SystemTap_Beginners_Guide/intro-systemtap-vs-others.html index 42cc600e..4f1a75b8 100644 --- a/SystemTap_Beginners_Guide/intro-systemtap-vs-others.html +++ b/SystemTap_Beginners_Guide/intro-systemtap-vs-others.html @@ -1,3 +1,3 @@ 1.2. SystemTap Capabilities

- ⁠1.2. SystemTap Capabilities

  • Flexibility: SystemTap's framework allows users to develop simple scripts for investigating and monitoring a wide variety of kernel functions, system calls, and other events that occur in kernel space. As a result, SystemTap is not so much a tool as it is a system that allows you to develop your own kernel-specific forensic and monitoring tools.
  • Ease of use: as mentioned earlier, SystemTap allows users to probe kernel-space events without having to resort to instrument, recompile, install, and reboot the kernel.
Most of the SystemTap scripts enumerated in Chapter 5, Useful SystemTap Scripts demonstrate system forensics and monitoring capabilities not natively available with other similar tools (such as top, oprofile, or ps). These scripts are provided to give readers extensive examples of the application of SystemTap and to educate them further on the capabilities they can employ when writing their own SystemTap scripts.
\ No newline at end of file + ⁠1.2. SystemTap Capabilities
  • Flexibility: SystemTap's framework allows users to develop simple scripts for investigating and monitoring a wide variety of kernel functions, system calls, and other events that occur in kernel space. As a result, SystemTap is not so much a tool as it is a system that allows you to develop your own kernel-specific forensic and monitoring tools.
  • Ease of use: as mentioned earlier, SystemTap allows users to probe kernel-space events without having to resort to instrument, recompile, install, and reboot the kernel.
Most of the SystemTap scripts enumerated in Chapter 5, Useful SystemTap Scripts demonstrate system forensics and monitoring capabilities not natively available with other similar tools (such as top, oprofile, or ps). These scripts are provided to give readers extensive examples of the application of SystemTap and to educate them further on the capabilities they can employ when writing their own SystemTap scripts.
\ No newline at end of file diff --git a/SystemTap_Beginners_Guide/introduction.html b/SystemTap_Beginners_Guide/introduction.html index 6a348b47..840255a2 100644 --- a/SystemTap_Beginners_Guide/introduction.html +++ b/SystemTap_Beginners_Guide/introduction.html @@ -1,6 +1,6 @@ Chapter 1. Introduction

- ⁠Chapter 1. Introduction

+ ⁠Chapter 1. Introduction
SystemTap is a tracing and probing tool that allows users to study and monitor the activities of the computer system (particularly, the kernel) in fine @@ -11,6 +11,6 @@ designed to provide more filtering and analysis options for collected information.

- ⁠1.1. Documentation Goals

SystemTap provides the infrastructure to monitor the running Linux kernel for detailed analysis. This can assist administrators and developers in identifying the underlying cause of a bug or performance problem.
Without SystemTap, monitoring the activity of a running kernel would require a tedious instrument, recompile, install, and reboot sequence. SystemTap is designed to eliminate this and allows users to gather the same information by running user-written SystemTap scripts.
SystemTap was initially designed for users with intermediate to advanced knowledge of the kernel. As a consequence, it is less useful to administrators or developers with limited knowledge of and experience with the Linux kernel. Moreover, much of the existing SystemTap documentation is aimed at knowledgeable and experienced users, which makes learning the tool similarly difficult.
To lower these barriers, the SystemTap Beginners Guide was written with the following goals:
  • to introduce users to SystemTap, familiarize + ⁠1.1. Documentation Goals
SystemTap provides the infrastructure to monitor the running Linux kernel for detailed analysis. This can assist administrators and developers in identifying the underlying cause of a bug or performance problem.
Without SystemTap, monitoring the activity of a running kernel would require a tedious instrument, recompile, install, and reboot sequence. SystemTap is designed to eliminate this and allows users to gather the same information by running user-written SystemTap scripts.
SystemTap was initially designed for users with intermediate to advanced knowledge of the kernel. As a consequence, it is less useful to administrators or developers with limited knowledge of and experience with the Linux kernel. Moreover, much of the existing SystemTap documentation is aimed at knowledgeable and experienced users, which makes learning the tool similarly difficult.
To lower these barriers, the SystemTap Beginners Guide was written with the following goals:
  • to introduce users to SystemTap, familiarize them with its architecture, and provide setup instructions;
  • to provide pre-written SystemTap scripts for monitoring detailed activity in different components of the system, along with instructions on how to run them and analyze their output.
\ No newline at end of file diff --git a/SystemTap_Beginners_Guide/ioblktimesect.html b/SystemTap_Beginners_Guide/ioblktimesect.html index 7b291b53..3b7ad7c3 100644 --- a/SystemTap_Beginners_Guide/ioblktimesect.html +++ b/SystemTap_Beginners_Guide/ioblktimesect.html @@ -1,6 +1,6 @@ 5.2.7. Periodically Print I/O Block Time

- ⁠5.2.7. Periodically Print I/O Block Time

+ ⁠5.2.7. Periodically Print I/O Block Time
This section describes how to track the amount of time each block I/O requests spends waiting for completion. This is useful in determining whether there are too many outstanding block I/O operations at any given time. diff --git a/SystemTap_Beginners_Guide/iotimesect.html b/SystemTap_Beginners_Guide/iotimesect.html index 54a1a14d..51dc07f7 100644 --- a/SystemTap_Beginners_Guide/iotimesect.html +++ b/SystemTap_Beginners_Guide/iotimesect.html @@ -1,6 +1,6 @@ 5.2.2. Tracking I/O Time For Each File Read or Write

- ⁠5.2.2. Tracking I/O Time For Each File Read or Write

+ ⁠5.2.2. Tracking I/O Time For Each File Read or Write
This section describes how to monitor the amount of time it takes for each process to read from or write to any file. This is useful to determine what files are slow to load on a given system. @@ -111,7 +111,7 @@ probe syscall.close { to a file. For each file any system call accesses, iotime.stp counts the number of microseconds it takes for any reads or writes to finish and tracks the amount of data (in bytes) read from or written to the file. -
+
iotime.stp also uses the local variable $count to track the amount of data (in bytes) that any system call attempts to read or write. Note that $return (as used in disktop.stp from diff --git a/SystemTap_Beginners_Guide/ix01.html b/SystemTap_Beginners_Guide/ix01.html index e679d148..9be79c01 100644 --- a/SystemTap_Beginners_Guide/ix01.html +++ b/SystemTap_Beginners_Guide/ix01.html @@ -1,3 +1,3 @@ -Index

  • SystemTap Beginners Guide

Symbols

$count
sample usage
local variables, Tracking I/O Time For Each File Read or Write
$return
sample usage
local variables, Summarizing Disk Read/Write Traffic, Track Cumulative IO
@avg (integer extractor)
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
@count (integer extractor)
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
@max (integer extractor)
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
@min (integer extractor)
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
@sum (integer extractor)
computing for statistical aggregates
array operations, Computing for Statistical Aggregates

A

adding values to statistical aggregates
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
advantages of cross-instrumentation, Generating Instrumentation for Other Computers
aggregate element not found
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
aggregates (statistical)
array operations, Computing for Statistical Aggregates
aggregation overflow
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
algebraic formulas using arrays
reading values from arrays
array operations, Reading Values From Arrays
architecture notation, determining, Generating Instrumentation for Other Computers
architecture of SystemTap, Architecture
array locals not supported
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
array operations
assigning associated values, Assigning an Associated Value
associating timestamps to process names, Assigning an Associated Value
associative arrays, Array Operations in SystemTap
clearing arrays/array elements, Clearing/Deleting Arrays and Array Elements
delete operator, Clearing/Deleting Arrays and Array Elements
multiple array operations within the same probe, Clearing/Deleting Arrays and Array Elements
virtual file system reads (non-cumulative), tallying, Clearing/Deleting Arrays and Array Elements
computing for statistical aggregates, Computing for Statistical Aggregates
@avg (integer extractor), Computing for Statistical Aggregates
@count (integer extractor), Computing for Statistical Aggregates
@max (integer extractor), Computing for Statistical Aggregates
@min (integer extractor), Computing for Statistical Aggregates
@sum (integer extractor), Computing for Statistical Aggregates
adding values to statistical aggregates, Computing for Statistical Aggregates
count (operator), Computing for Statistical Aggregates
extracting data collected by statistical aggregates, Computing for Statistical Aggregates
conditional statements, using arrays in, Using Arrays in Conditional Statements
testing for array membership, Using Arrays in Conditional Statements
deleting arrays and array elements, Clearing/Deleting Arrays and Array Elements
incrementing associated values, Incrementing Associated Values
tallying virtual file system reads (VFS reads), Incrementing Associated Values
multiple elements in an array, Processing Multiple Elements in an Array
processing multiple elements in an array, Processing Multiple Elements in an Array
cumulative virtual file system reads, tallying, Processing Multiple Elements in an Array
foreach, Processing Multiple Elements in an Array
iterations, processing elements in an array as, Processing Multiple Elements in an Array
limiting the output of foreach, Processing Multiple Elements in an Array
ordering the output of foreach, Processing Multiple Elements in an Array
reading values from arrays, Reading Values From Arrays
computing for timestamp deltas, Reading Values From Arrays
empty unique keys, Reading Values From Arrays
using arrays in simple computations, Reading Values From Arrays
arrays, Associative Arrays
(see also associative arrays)
assigning associated values
array operations, Assigning an Associated Value
associating timestamps to process names, Assigning an Associated Value
associating timestamps to process names
array operations, Assigning an Associated Value
associated values
introduction
arrays, Associative Arrays
associating timestamps to process names
assigning associated values
array operations, Assigning an Associated Value
associative arrays
introduction, Associative Arrays
associated values, Associative Arrays
example, Associative Arrays
index expression, Associative Arrays
key pairs, Associative Arrays
syntax, Associative Arrays
unique keys, Associative Arrays
asynchronous events
Events, Event

B

begin
Events, Event
building instrumentation modules from SystemTap scripts, Generating Instrumentation for Other Computers
building kernel modules from SystemTap scripts, Generating Instrumentation for Other Computers

C

call graph tracing
examples of SystemTap scripts, Call Graph Tracing
capabilities of SystemTap
Introduction, SystemTap Capabilities
changes to file attributes, monitoring
examples of SystemTap scripts, Monitoring Changes to File Attributes
clearing arrays/array elements
array operations, Clearing/Deleting Arrays and Array Elements
delete operator, Clearing/Deleting Arrays and Array Elements
multiple array operations within the same probe, Clearing/Deleting Arrays and Array Elements
virtual file system reads (non-cumulative), tallying, Clearing/Deleting Arrays and Array Elements
command-line arguments
SystemTap handler constructs
handlers, Command-Line Arguments
compiling instrumentation/kernel modules from SystemTap scripts, Generating Instrumentation for Other Computers
components
SystemTap scripts
introduction, SystemTap Scripts
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
@avg (integer extractor), Computing for Statistical Aggregates
@count (integer extractor), Computing for Statistical Aggregates
@max (integer extractor), Computing for Statistical Aggregates
@min (integer extractor), Computing for Statistical Aggregates
@sum (integer extractor), Computing for Statistical Aggregates
adding values to statistical aggregates, Computing for Statistical Aggregates
count (operator), Computing for Statistical Aggregates
extracting data collected by statistical aggregates, Computing for Statistical Aggregates
computing for timestamp deltas
reading values from arrays
array operations, Reading Values From Arrays
conditional operators
conditional statements
handlers, Conditional Statements
conditional statements, using arrays in
array operations, Using Arrays in Conditional Statements
testing for array membership, Using Arrays in Conditional Statements
CONFIG_HZ, computing for, Variables
contended user-space locks (futex contentions), identifying
examples of SystemTap scripts, Identifying Contended User-Space Locks
copy fault
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
count operator
computing for statistical aggregates
array (operator), Computing for Statistical Aggregates
counting function calls
examples of SystemTap scripts, Counting Function Calls Made
CPU ticks
examples of SystemTap scripts, Determining Time Spent in Kernel and User Space
cpu()
functions, SystemTap Handler/Body
cross-compiling, Generating Instrumentation for Other Computers
cross-instrumentation
advantages of, Generating Instrumentation for Other Computers
building kernel modules from SystemTap scripts, Generating Instrumentation for Other Computers
configuration
host system and target system, Generating Instrumentation for Other Computers
generating instrumentation from SystemTap scripts, Generating Instrumentation for Other Computers
host system, Generating Instrumentation for Other Computers
instrumentation module, Generating Instrumentation for Other Computers
target kernel, Generating Instrumentation for Other Computers
target system, Generating Instrumentation for Other Computers
ctime()
functions, SystemTap Handler/Body
ctime(), example of usage
script examples, Summarizing Disk Read/Write Traffic
cumulative I/O, tracking
examples of SystemTap scripts, Track Cumulative IO
cumulative virtual file system reads, tallying
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array

D

delete operator
clearing arrays/array elements
array operations, Clearing/Deleting Arrays and Array Elements
determining architecture notation, Generating Instrumentation for Other Computers
determining the kernel version, Installing Required Kernel Information Packages Manually
determining time spent in kernel and user space
examples of SystemTap scripts, Determining Time Spent in Kernel and User Space
device I/O, monitoring
examples of SystemTap scripts, I/O Monitoring (By Device)
device number of a file (integer format)
examples of SystemTap scripts, Monitoring Reads and Writes to a File
disk I/O traffic, summarizing
script examples, Summarizing Disk Read/Write Traffic
division by 0
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
documentation goals
Introduction, Documentation Goals

E

embedded code in unprivileged script
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
empty unique keys
reading values from arrays
array operations, Reading Values From Arrays
end
Events, Event
errors
parse/semantics error, Parse and Semantic Errors
embedded code in unprivileged script, Parse and Semantic Errors
expected symbol/array index expression, Parse and Semantic Errors
grammatical/typographical script error, Parse and Semantic Errors
guru mode, Parse and Semantic Errors
invalid values to variables/arrays, Parse and Semantic Errors
libdwfl failure, Parse and Semantic Errors
no match for probe point, Parse and Semantic Errors
non-global arrays, Parse and Semantic Errors
probe mismatch, Parse and Semantic Errors
type mismatch for identifier, Parse and Semantic Errors
unresolved function call, Parse and Semantic Errors
unresolved target-symbol expression, Parse and Semantic Errors
unresolved type for identifier, Parse and Semantic Errors
variable modified during 'foreach', Parse and Semantic Errors
runtime errors/warnings, Runtime Errors and Warnings
aggregate element not found, Runtime Errors and Warnings
aggregation overflow, Runtime Errors and Warnings
copy fault, Runtime Errors and Warnings
division by 0, Runtime Errors and Warnings
MAXACTION exceeded, Runtime Errors and Warnings
MAXNESTING exceeded, Runtime Errors and Warnings
number of errors: N, skipped probes: M, Runtime Errors and Warnings
pointer dereference fault, Runtime Errors and Warnings
event types
Understanding How SystemTap Works, Understanding How SystemTap Works
Events
asynchronous events, Event
begin, Event
end, Event
examples of synchronous and asynchronous events, Event
introduction, Event
kernel.function("function"), Event
kernel.trace("tracepoint"), Event
module("module"), Event
synchronous events, Event
syscall.system_call, Event
timer events, Event
user-space, User-Space Events
vfs.file_operation, Event
wildcards, Event
events and handlers, Understanding How SystemTap Works
events wildcards, Event
example
introduction
arrays, Associative Arrays
example of multiple command-line arguments
examples of SystemTap scripts, Call Graph Tracing
examples of synchronous and asynchronous events
Events, Event
examples of SystemTap scripts, Useful SystemTap Scripts
call graph tracing, Call Graph Tracing
CPU ticks, Determining Time Spent in Kernel and User Space
ctime(), example of usage, Summarizing Disk Read/Write Traffic
determining time spent in kernel and user space, Determining Time Spent in Kernel and User Space
file device number (integer format), Monitoring Reads and Writes to a File
futex (lock) contentions, Identifying Contended User-Space Locks
futex system call, Identifying Contended User-Space Locks
identifying contended user-space locks (futex contentions), Identifying Contended User-Space Locks
if/else conditionals, alternative syntax, Network Profiling
inode number, Monitoring Reads and Writes to a File
monitoring changes to file attributes, Monitoring Changes to File Attributes
monitoring device I/O, I/O Monitoring (By Device)
monitoring I/O block time, Periodically Print I/O Block Time
monitoring I/O time, Tracking I/O Time For Each File Read or Write
monitoring incoming TCP connections, Monitoring Incoming TCP Connections
monitoring polling applications, Monitoring Polling Applications
monitoring reads and writes to a file, Monitoring Reads and Writes to a File
monitoring system calls, Tracking Most Frequently Used System Calls
monitoring system calls (volume per process), Tracking System Call Volume Per Process
monitoring TCP packets, Monitoring TCP Packets
multiple command-line arguments, example of, Call Graph Tracing
net/socket.c, tracing functions from, Tracing Functions Called in Network Socket Code
network profiling, Network Profiling, Monitoring Network Packets Drops in Kernel
stat -c, determining file device number (integer format), Monitoring Reads and Writes to a File
stat -c, determining whole device number, I/O Monitoring (By Device)
summarizing disk I/O traffic, Summarizing Disk Read/Write Traffic
tallying function calls, Counting Function Calls Made
thread_indent(), sample usage, Call Graph Tracing
timer.ms(), sample usage, Counting Function Calls Made
timer.s(), sample usage, Monitoring Polling Applications, Tracking Most Frequently Used System Calls
tracing functions called in network socket code, Tracing Functions Called in Network Socket Code
tracking cumulative I/O, Track Cumulative IO
trigger function, Call Graph Tracing
usrdev2kerndev(), I/O Monitoring (By Device)
whole device number (usage as a command-line argument), I/O Monitoring (By Device)
exceeded MAXACTION
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
exceeded MAXNESTING
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
exit()
functions, SystemTap Handler/Body
expected symbol/array index expression
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
extracting data collected by statistical aggregates
computing for statistical aggregates
array operations, Computing for Statistical Aggregates

F

feedback
contact information for this manual, We Need Feedback!
file attributes, monitoring changes to
examples of SystemTap scripts, Monitoring Changes to File Attributes
file device number (integer format)
examples of SystemTap scripts, Monitoring Reads and Writes to a File
file reads/writes, monitoring
examples of SystemTap scripts, Monitoring Reads and Writes to a File
flight recorder mode, SystemTap Flight Recorder Mode
file mode, File Flight Recorder
in-memory mode, In-memory Flight Recorder
for loops
conditional statements
handlers, Conditional Statements
foreach
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array
format
introduction
arrays, Associative Arrays
format and syntax
printf(), SystemTap Handler/Body
SystemTap handler constructs
handlers, Variables
SystemTap scripts
introduction, SystemTap Scripts
format specifiers
printf(), SystemTap Handler/Body
format strings
printf(), SystemTap Handler/Body
function call (unresolved)
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
function calls (incoming/outgoing), tracing
examples of SystemTap scripts, Call Graph Tracing
function calls, tallying
examples of SystemTap scripts, Counting Function Calls Made
functions, SystemTap Handler/Body
cpu(), SystemTap Handler/Body
ctime(), SystemTap Handler/Body
gettimeofday_s(), SystemTap Handler/Body
pp(), SystemTap Handler/Body
SystemTap scripts
introduction, SystemTap Scripts
target(), SystemTap Handler/Body
thread_indent(), SystemTap Handler/Body
tid(), SystemTap Handler/Body
uid(), SystemTap Handler/Body
functions (used in handlers)
exit(), SystemTap Handler/Body
functions called in network socket code, tracing
examples of SystemTap scripts, Tracing Functions Called in Network Socket Code
futex (lock) contentions
examples of SystemTap scripts, Identifying Contended User-Space Locks
futex contention, definition
examples of SystemTap scripts, Identifying Contended User-Space Locks
futex contentions, identifying
examples of SystemTap scripts, Identifying Contended User-Space Locks
futex system call
examples of SystemTap scripts, Identifying Contended User-Space Locks

G

gettimeofday_s()
functions, SystemTap Handler/Body
global
SystemTap handler constructs
handlers, Variables
goals, documentation
Introduction, Documentation Goals
grammatical/typographical script error
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
guru mode
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors

H

handler functions, SystemTap Handler/Body
handlers
conditional statements, Conditional Statements
conditional operators, Conditional Statements
for loops, Conditional Statements
if/else, Conditional Statements
while loops, Conditional Statements
introduction, SystemTap Handler/Body
SystemTap handler constructs, Basic SystemTap Handler Constructs
command-line arguments, Command-Line Arguments
global, Variables
syntax and format, Basic SystemTap Handler Constructs
variable notations, Command-Line Arguments
variables, Variables
target variables, Target Variables
handlers and events, Understanding How SystemTap Works
SystemTap scripts
introduction, SystemTap Scripts
heaviest disk reads/writes, identifying
script examples, Summarizing Disk Read/Write Traffic
host system
cross-instrumentation, Generating Instrumentation for Other Computers
host system and target system
cross-instrumentation
configuration, Generating Instrumentation for Other Computers

I

I/O block time, monitoring
examples of SystemTap scripts, Periodically Print I/O Block Time
I/O monitoring (by device)
examples of SystemTap scripts, I/O Monitoring (By Device)
I/O time, monitoring
examples of SystemTap scripts, Tracking I/O Time For Each File Read or Write
I/O traffic, summarizing
script examples, Summarizing Disk Read/Write Traffic
identifier type mismatch
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
identifying contended user-space locks (futex contentions)
examples of SystemTap scripts, Identifying Contended User-Space Locks
identifying heaviest disk reads/writes
script examples, Summarizing Disk Read/Write Traffic
if/else
conditional statements
handlers, Conditional Statements
if/else conditionals, alternative syntax
examples of SystemTap scripts, Network Profiling
if/else statements, using arrays in
array operations, Using Arrays in Conditional Statements
incoming TCP connections, monitoring
examples of SystemTap scripts, Monitoring Incoming TCP Connections
incoming/outgoing function calls, tracing
examples of SystemTap scripts, Call Graph Tracing
incrementing associated values
array operations, Incrementing Associated Values
tallying virtual file system reads (VFS reads), Incrementing Associated Values
index expression
introduction
arrays, Associative Arrays
initial testing, Initial Testing
inode number
examples of SystemTap scripts, Monitoring Reads and Writes to a File
Installation
initial testing, Initial Testing
kernel information packages, Installing Required Kernel Information Packages Manually
kernel version, determining the, Installing Required Kernel Information Packages Manually
required packages, Installing Required Kernel Information Packages Manually
Setup and Installation, Installation and Setup
systemtap package, Installing SystemTap
systemtap-runtime package, Installing SystemTap
instrumentation module
cross-instrumentation, Generating Instrumentation for Other Computers
instrumentation modules from SystemTap scripts, building, Generating Instrumentation for Other Computers
integer extractors
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
Introduction
capabilities of SystemTap, SystemTap Capabilities
documentation goals, Documentation Goals
goals, documentation, Documentation Goals
limitations of SystemTap, Limitations of SystemTap
performance monitoring, Introduction
invalid division
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
invalid values to variables/arrays
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
iterations, processing elements in an array as
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array

K

kernel and user space, determining time spent in
examples of SystemTap scripts, Determining Time Spent in Kernel and User Space
kernel information packages, Installing Required Kernel Information Packages Manually
kernel modules from SystemTap scripts, building, Generating Instrumentation for Other Computers
kernel version, determining the, Installing Required Kernel Information Packages Manually
kernel.function("function")
Events, Event
kernel.trace("tracepoint")
Events, Event
key pairs
introduction
arrays, Associative Arrays

L

libdwfl failure
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
limitations of SystemTap
Introduction, Limitations of SystemTap
limiting the output of foreach
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array
local variables
name, SystemTap Handler/Body
sample usage
$count, Tracking I/O Time For Each File Read or Write
$return, Summarizing Disk Read/Write Traffic, Track Cumulative IO

M

MAXACTION exceeded
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
MAXNESTING exceeded
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
membership (in array), testing for
conditional statements, using arrays in
array operations, Using Arrays in Conditional Statements
module("module")
Events, Event
monitoring changes to file attributes
examples of SystemTap scripts, Monitoring Changes to File Attributes
monitoring cumulative I/O
examples of SystemTap scripts, Track Cumulative IO
monitoring device I/O
examples of SystemTap scripts, I/O Monitoring (By Device)
monitoring I/O block time
examples of SystemTap scripts, Periodically Print I/O Block Time
monitoring I/O time
examples of SystemTap scripts, Tracking I/O Time For Each File Read or Write
monitoring incoming TCP connections
examples of SystemTap scripts, Monitoring Incoming TCP Connections
monitoring polling applications
examples of SystemTap scripts, Monitoring Polling Applications
monitoring reads and writes to a file
examples of SystemTap scripts, Monitoring Reads and Writes to a File
monitoring system calls
examples of SystemTap scripts, Tracking Most Frequently Used System Calls
monitoring system calls (volume per process)
examples of SystemTap scripts, Tracking System Call Volume Per Process
monitoring TCP packets
examples of SystemTap scripts, Monitoring TCP Packets
multiple array operations within the same probe
clearing arrays/array elements
array operations, Clearing/Deleting Arrays and Array Elements
multiple command-line arguments, example of
examples of SystemTap scripts, Call Graph Tracing
multiple elements in an array
array operations, Processing Multiple Elements in an Array

N

name
local variables, SystemTap Handler/Body
net/socket.c, tracing functions from
examples of SystemTap scripts, Tracing Functions Called in Network Socket Code
network profiling
examples of SystemTap scripts, Network Profiling, Monitoring Network Packets Drops in Kernel
network socket code, tracing functions called in
examples of SystemTap scripts, Tracing Functions Called in Network Socket Code
network traffic, monitoring
examples of SystemTap scripts, Network Profiling, Monitoring Network Packets Drops in Kernel
no match for probe point
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
non-global arrays
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
number of errors: N, skipped probes: M
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings

O

operations
assigning associated values
associating timestamps to process names, Assigning an Associated Value
associative arrays, Array Operations in SystemTap
clearing arrays/array elements, Clearing/Deleting Arrays and Array Elements
delete operator, Clearing/Deleting Arrays and Array Elements
multiple array operations within the same probe, Clearing/Deleting Arrays and Array Elements
virtual file system reads (non-cumulative), tallying, Clearing/Deleting Arrays and Array Elements
computing for statistical aggregates, Computing for Statistical Aggregates
@avg (integer extractor), Computing for Statistical Aggregates
@count (integer extractor), Computing for Statistical Aggregates
@max (integer extractor), Computing for Statistical Aggregates
@min (integer extractor), Computing for Statistical Aggregates
@sum (integer extractor), Computing for Statistical Aggregates
adding values to statistical aggregates, Computing for Statistical Aggregates
count (operator), Computing for Statistical Aggregates
extracting data collected by statistical aggregates, Computing for Statistical Aggregates
conditional statements, using arrays in, Using Arrays in Conditional Statements
testing for array membership, Using Arrays in Conditional Statements
deleting arrays and array elements, Clearing/Deleting Arrays and Array Elements
incrementing associated values, Incrementing Associated Values
tallying virtual file system reads (VFS reads), Incrementing Associated Values
multiple elements in an array, Processing Multiple Elements in an Array
processing multiple elements in an array, Processing Multiple Elements in an Array
cumulative virtual file system reads, tallying, Processing Multiple Elements in an Array
foreach, Processing Multiple Elements in an Array
iterations, processing elements in an array as, Processing Multiple Elements in an Array
limiting the output of foreach, Processing Multiple Elements in an Array
ordering the output of foreach, Processing Multiple Elements in an Array
reading values from arrays, Reading Values From Arrays
computing for timestamp deltas, Reading Values From Arrays
empty unique keys, Reading Values From Arrays
using arrays in simple computations, Reading Values From Arrays
options, stap
Usage, Running SystemTap Scripts
ordering the output of foreach
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array
overflow of aggregation
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings

P

packages required to run SystemTap, Installing Required Kernel Information Packages Manually
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
embedded code in unprivileged script, Parse and Semantic Errors
expected symbol/array index expression, Parse and Semantic Errors
grammatical/typographical script error, Parse and Semantic Errors
guru mode, Parse and Semantic Errors
invalid values to variables/arrays, Parse and Semantic Errors
libdwfl failure, Parse and Semantic Errors
no match for probe point, Parse and Semantic Errors
non-global arrays, Parse and Semantic Errors
probe mismatch, Parse and Semantic Errors
type mismatch for identifier, Parse and Semantic Errors
unresolved function call, Parse and Semantic Errors
unresolved target-symbol expression, Parse and Semantic Errors
unresolved type for identifier, Parse and Semantic Errors
variable modified during 'foreach', Parse and Semantic Errors
performance monitoring
Introduction, Introduction
pointer dereference fault
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
polling applications, monitoring
examples of SystemTap scripts, Monitoring Polling Applications
pp()
functions, SystemTap Handler/Body
printf()
format specifiers, SystemTap Handler/Body
format strings, SystemTap Handler/Body
syntax and format, SystemTap Handler/Body
printing I/O activity (cumulative)
examples of SystemTap scripts, Track Cumulative IO
printing I/O block time (periodically)
examples of SystemTap scripts, Periodically Print I/O Block Time
probe mismatch
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
probe point (no match for)
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
probes
SystemTap scripts
introduction, SystemTap Scripts
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array
cumulative virtual file system reads, tallying
array operations, Processing Multiple Elements in an Array
foreach
array operations, Processing Multiple Elements in an Array
limiting the output of foreach
array operations, Processing Multiple Elements in an Array
ordering the output of foreach
array operations, Processing Multiple Elements in an Array
profiling the network
examples of SystemTap scripts, Network Profiling, Monitoring Network Packets Drops in Kernel

R

reading values from arrays
array operations, Reading Values From Arrays
empty unique keys, Reading Values From Arrays
using arrays in simple computations, Reading Values From Arrays
computing for timestamp deltas
array operations, Reading Values From Arrays
reads/writes to a file, monitoring
examples of SystemTap scripts, Monitoring Reads and Writes to a File
required packages, Installing Required Kernel Information Packages Manually
RPMs required to run SystemTap, Installing Required Kernel Information Packages Manually
running scripts from standard input, Running SystemTap Scripts
running SystemTap scripts
Usage, Running SystemTap Scripts
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
aggregate element not found, Runtime Errors and Warnings
aggregation overflow, Runtime Errors and Warnings
copy fault, Runtime Errors and Warnings
division by 0, Runtime Errors and Warnings
MAXACTION exceeded, Runtime Errors and Warnings
MAXNESTING exceeded, Runtime Errors and Warnings
number of errors: N, skipped probes: M, Runtime Errors and Warnings
pointer dereference fault, Runtime Errors and Warnings

S

script examples
call graph tracing, Call Graph Tracing
CPU ticks, Determining Time Spent in Kernel and User Space
ctime(), example of usage, Summarizing Disk Read/Write Traffic
determining time spent in kernel and user space, Determining Time Spent in Kernel and User Space
file device number (integer format), Monitoring Reads and Writes to a File
futex (lock) contentions, Identifying Contended User-Space Locks
futex system call, Identifying Contended User-Space Locks
identifying contended user-space locks (futex contentions), Identifying Contended User-Space Locks
if/else conditionals, alternative syntax, Network Profiling
inode number, Monitoring Reads and Writes to a File
monitoring changes to file attributes, Monitoring Changes to File Attributes
monitoring device I/O, I/O Monitoring (By Device)
monitoring I/O block time, Periodically Print I/O Block Time
monitoring I/O time, Tracking I/O Time For Each File Read or Write
monitoring incoming TCP connections, Monitoring Incoming TCP Connections
monitoring polling applications, Monitoring Polling Applications
monitoring reads and writes to a file, Monitoring Reads and Writes to a File
monitoring system calls, Tracking Most Frequently Used System Calls
monitoring system calls (volume per process), Tracking System Call Volume Per Process
monitoring TCP packets, Monitoring TCP Packets
multiple command-line arguments, example of, Call Graph Tracing
net/socket.c, tracing functions from, Tracing Functions Called in Network Socket Code
network profiling, Network Profiling, Monitoring Network Packets Drops in Kernel
stat -c, determining file device number (integer format), Monitoring Reads and Writes to a File
stat -c, determining whole device number, I/O Monitoring (By Device)
summarizing disk I/O traffic, Summarizing Disk Read/Write Traffic
tallying function calls, Counting Function Calls Made
thread_indent(), sample usage, Call Graph Tracing
timer.ms(), sample usage, Counting Function Calls Made
timer.s(), sample usage, Monitoring Polling Applications, Tracking Most Frequently Used System Calls
tracing functions called in network socket code, Tracing Functions Called in Network Socket Code
tracking cumulative I/O, Track Cumulative IO
trigger function, Call Graph Tracing
usrdev2kerndev(), I/O Monitoring (By Device)
whole device number (usage as a command-line argument), I/O Monitoring (By Device)
scripts
introduction, SystemTap Scripts
components, SystemTap Scripts
events and handlers, SystemTap Scripts
format and syntax, SystemTap Scripts
functions, SystemTap Scripts
probes, SystemTap Scripts
statement blocks, SystemTap Scripts
sessions, SystemTap, Architecture
Setup and Installation, Installation and Setup
Stack backtrace
user-space, User-Space Stack Backtraces
standard input, running scripts from
Usage, Running SystemTap Scripts
stap
Usage, Running SystemTap Scripts
stap options, Running SystemTap Scripts
stapdev
Usage, Running SystemTap Scripts
staprun
Usage, Running SystemTap Scripts
stapusr
Usage, Running SystemTap Scripts
stat -c, determining file device number (integer format)
examples of SystemTap scripts, Monitoring Reads and Writes to a File
stat -c, determining whole device number
examples of SystemTap scripts, I/O Monitoring (By Device)
statement blocks
SystemTap scripts
introduction, SystemTap Scripts
statistical aggregates
array operations, Computing for Statistical Aggregates
summarizing disk I/O traffic
script examples, Summarizing Disk Read/Write Traffic
synchronous events
Events, Event
syntax
introduction
arrays, Associative Arrays
syntax and format
printf(), SystemTap Handler/Body
SystemTap handler constructs
handlers, Basic SystemTap Handler Constructs
SystemTap scripts
introduction, SystemTap Scripts
syscall.system_call
Events, Event
system calls volume (per process), monitoring
examples of SystemTap scripts, Tracking System Call Volume Per Process
system calls, monitoring
examples of SystemTap scripts, Tracking Most Frequently Used System Calls
SystemTap architecture, Architecture
SystemTap handlers
SystemTap handler constructs, Basic SystemTap Handler Constructs
syntax and format, Basic SystemTap Handler Constructs
systemtap package, Installing SystemTap
SystemTap script functions, SystemTap Handler/Body
SystemTap scripts
introduction, SystemTap Scripts
components, SystemTap Scripts
events and handlers, SystemTap Scripts
format and syntax, SystemTap Scripts
functions, SystemTap Scripts
probes, SystemTap Scripts
statement blocks, SystemTap Scripts
useful examples, Useful SystemTap Scripts
SystemTap scripts, how to run, Running SystemTap Scripts
SystemTap sessions, Architecture
SystemTap statements
conditional statements, Conditional Statements
conditional operators, Conditional Statements
for loops, Conditional Statements
if/else, Conditional Statements
while loops, Conditional Statements
SystemTap handler constructs
command-line arguments, Command-Line Arguments
global, Variables
variable notations, Command-Line Arguments
variables, Variables
systemtap-runtime package, Installing SystemTap
systemtap-testsuite package
sample scripts, Useful SystemTap Scripts

T

tallying function calls
examples of SystemTap scripts, Counting Function Calls Made
tallying virtual file system reads (VFS reads)
incrementing associated values
array operations, Incrementing Associated Values
Tapsets
definition of, Tapsets
target kernel
cross-instrumentation, Generating Instrumentation for Other Computers
target system
cross-instrumentation, Generating Instrumentation for Other Computers
target system and host system
configuration, Generating Instrumentation for Other Computers
target variables, Target Variables
pretty printing, Pretty Printing Target Variables
typecasting, Typecasting
user-space, Accessing User-Space Target Variables
variable availability, Checking Target Variable Availability
target()
functions, SystemTap Handler/Body
target-symbol expression, unresolved
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
TCP connections (incoming), monitoring
examples of SystemTap scripts, Monitoring Incoming TCP Connections
TCP packets, monitoring
examples of SystemTap scripts, Monitoring TCP Packets
testing for array membership
conditional statements, using arrays in
array operations, Using Arrays in Conditional Statements
testing, initial, Initial Testing
thread_indent()
functions, SystemTap Handler/Body
thread_indent(), sample usage
examples of SystemTap scripts, Call Graph Tracing
tid()
functions, SystemTap Handler/Body
time of I/O
examples of SystemTap scripts, Tracking I/O Time For Each File Read or Write
time spent in kernel/user space, determining
examples of SystemTap scripts, Determining Time Spent in Kernel and User Space
timer events
Events, Event
timer.ms(), sample usage
examples of SystemTap scripts, Counting Function Calls Made
timer.s(), sample usage
examples of SystemTap scripts, Monitoring Polling Applications, Tracking Most Frequently Used System Calls
timestamp deltas, computing for
reading values from arrays
array operations, Reading Values From Arrays
timestamps, association thereof to process names
assigning associated values
array operations, Assigning an Associated Value
tracepoint, Event, Monitoring Network Packets Drops in Kernel
tracing call graph
examples of SystemTap scripts, Call Graph Tracing
tracing functions called in network socket code
examples of SystemTap scripts, Tracing Functions Called in Network Socket Code
tracing incoming/outgoing function calls
examples of SystemTap scripts, Call Graph Tracing
tracking cumulative I/O
examples of SystemTap scripts, Track Cumulative IO
trigger function
examples of SystemTap scripts, Call Graph Tracing
type mismatch for identifier
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
typographical script error
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors

U

uid()
functions, SystemTap Handler/Body
uname -m, Generating Instrumentation for Other Computers
uname -r, Installing Required Kernel Information Packages Manually
understainding SystemTap errors
runtime errors/warnings, Runtime Errors and Warnings
aggregate element not found, Runtime Errors and Warnings
aggregation overflow, Runtime Errors and Warnings
copy fault, Runtime Errors and Warnings
division by 0, Runtime Errors and Warnings
MAXACTION exceeded, Runtime Errors and Warnings
MAXNESTING exceeded, Runtime Errors and Warnings
number of errors: N, skipped probes: M, Runtime Errors and Warnings
pointer dereference fault, Runtime Errors and Warnings
Understanding How SystemTap Works, Understanding How SystemTap Works
architecture, Architecture
event types, Understanding How SystemTap Works
events and handlers, Understanding How SystemTap Works
SystemTap sessions, Architecture
understanding SystemTap errors
parse/semantics error, Parse and Semantic Errors
embedded code in unprivileged script, Parse and Semantic Errors
expected symbol/array index expression, Parse and Semantic Errors
grammatical/typographical script error, Parse and Semantic Errors
guru mode, Parse and Semantic Errors
invalid values to variables/arrays, Parse and Semantic Errors
libdwfl failure, Parse and Semantic Errors
no match for probe point, Parse and Semantic Errors
non-global arrays, Parse and Semantic Errors
probe mismatch, Parse and Semantic Errors
type mismatch for identifier, Parse and Semantic Errors
unresolved function call, Parse and Semantic Errors
unresolved target-symbol expression, Parse and Semantic Errors
unresolved type for identifier, Parse and Semantic Errors
variable modified during 'foreach', Parse and Semantic Errors
unique keys
introduction
arrays, Associative Arrays
unprivileged script, embedded code in
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
unresolved function call
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
unresolved target-symbol expression
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
unresolved type for identifier
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
unsafe embedded code in unprivileged script
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
Usage
options, stap, Running SystemTap Scripts
running SystemTap scripts, Running SystemTap Scripts
standard input, running scripts from, Running SystemTap Scripts
stap, Running SystemTap Scripts
stapdev, Running SystemTap Scripts
staprun, Running SystemTap Scripts
stapusr, Running SystemTap Scripts
useful examples of SystemTap scripts, Useful SystemTap Scripts
user and kernel space, determining time spent in
examples of SystemTap scripts, Determining Time Spent in Kernel and User Space
using arrays in simple computations
reading values from arrays
array operations, Reading Values From Arrays
Using SystemTap, Using SystemTap
usrdev2kerndev()
examples of SystemTap scripts, I/O Monitoring (By Device)

V

values, assignment of
array operations, Assigning an Associated Value
variable modified during 'foreach'
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
variable notations
SystemTap handler constructs
handlers, Command-Line Arguments
variables
SystemTap handler constructs
handlers, Variables
variables (local)
name, SystemTap Handler/Body
sample usage
$count, Tracking I/O Time For Each File Read or Write
$return, Summarizing Disk Read/Write Traffic, Track Cumulative IO
VFS reads, tallying of
incrementing associated values
array operations, Incrementing Associated Values
vfs.file_operation
Events, Event
virtual file system reads (cumulative), tallying
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array
virtual file system reads (non-cumulative), tallying
clearing arrays/array elements
array operations, Clearing/Deleting Arrays and Array Elements

W

while loops
conditional statements
handlers, Conditional Statements
whole device number (usage as a command-line argument)
examples of SystemTap scripts, I/O Monitoring (By Device)
wildcards in events, Event
writes/reads to a file, monitoring
examples of SystemTap scripts, Monitoring Reads and Writes to a File
\ No newline at end of file +Index

  • SystemTap Beginners Guide

Symbols

$count
sample usage
local variables, Tracking I/O Time For Each File Read or Write
$return
sample usage
local variables, Summarizing Disk Read/Write Traffic, Track Cumulative IO
@avg (integer extractor)
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
@count (integer extractor)
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
@max (integer extractor)
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
@min (integer extractor)
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
@sum (integer extractor)
computing for statistical aggregates
array operations, Computing for Statistical Aggregates

A

adding values to statistical aggregates
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
advantages of cross-instrumentation, Generating Instrumentation for Other Computers
aggregate element not found
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
aggregates (statistical)
array operations, Computing for Statistical Aggregates
aggregation overflow
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
algebraic formulas using arrays
reading values from arrays
array operations, Reading Values From Arrays
architecture notation, determining, Generating Instrumentation for Other Computers
architecture of SystemTap, Architecture
array locals not supported
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
array operations
assigning associated values, Assigning an Associated Value
associating timestamps to process names, Assigning an Associated Value
associative arrays, Array Operations in SystemTap
clearing arrays/array elements, Clearing/Deleting Arrays and Array Elements
delete operator, Clearing/Deleting Arrays and Array Elements
multiple array operations within the same probe, Clearing/Deleting Arrays and Array Elements
virtual file system reads (non-cumulative), tallying, Clearing/Deleting Arrays and Array Elements
computing for statistical aggregates, Computing for Statistical Aggregates
@avg (integer extractor), Computing for Statistical Aggregates
@count (integer extractor), Computing for Statistical Aggregates
@max (integer extractor), Computing for Statistical Aggregates
@min (integer extractor), Computing for Statistical Aggregates
@sum (integer extractor), Computing for Statistical Aggregates
adding values to statistical aggregates, Computing for Statistical Aggregates
count (operator), Computing for Statistical Aggregates
extracting data collected by statistical aggregates, Computing for Statistical Aggregates
conditional statements, using arrays in, Using Arrays in Conditional Statements
testing for array membership, Using Arrays in Conditional Statements
deleting arrays and array elements, Clearing/Deleting Arrays and Array Elements
incrementing associated values, Incrementing Associated Values
tallying virtual file system reads (VFS reads), Incrementing Associated Values
multiple elements in an array, Processing Multiple Elements in an Array
processing multiple elements in an array, Processing Multiple Elements in an Array
cumulative virtual file system reads, tallying, Processing Multiple Elements in an Array
foreach, Processing Multiple Elements in an Array
iterations, processing elements in an array as, Processing Multiple Elements in an Array
limiting the output of foreach, Processing Multiple Elements in an Array
ordering the output of foreach, Processing Multiple Elements in an Array
reading values from arrays, Reading Values From Arrays
computing for timestamp deltas, Reading Values From Arrays
empty unique keys, Reading Values From Arrays
using arrays in simple computations, Reading Values From Arrays
arrays, Associative Arrays
(see also associative arrays)
assigning associated values
array operations, Assigning an Associated Value
associating timestamps to process names, Assigning an Associated Value
associating timestamps to process names
array operations, Assigning an Associated Value
associated values
introduction
arrays, Associative Arrays
associating timestamps to process names
assigning associated values
array operations, Assigning an Associated Value
associative arrays
introduction, Associative Arrays
associated values, Associative Arrays
example, Associative Arrays
index expression, Associative Arrays
key pairs, Associative Arrays
syntax, Associative Arrays
unique keys, Associative Arrays
asynchronous events
Events, Event

B

begin
Events, Event
building instrumentation modules from SystemTap scripts, Generating Instrumentation for Other Computers
building kernel modules from SystemTap scripts, Generating Instrumentation for Other Computers

C

call graph tracing
examples of SystemTap scripts, Call Graph Tracing
capabilities of SystemTap
Introduction, SystemTap Capabilities
changes to file attributes, monitoring
examples of SystemTap scripts, Monitoring Changes to File Attributes
clearing arrays/array elements
array operations, Clearing/Deleting Arrays and Array Elements
delete operator, Clearing/Deleting Arrays and Array Elements
multiple array operations within the same probe, Clearing/Deleting Arrays and Array Elements
virtual file system reads (non-cumulative), tallying, Clearing/Deleting Arrays and Array Elements
command-line arguments
SystemTap handler constructs
handlers, Command-Line Arguments
compiling instrumentation/kernel modules from SystemTap scripts, Generating Instrumentation for Other Computers
components
SystemTap scripts
introduction, SystemTap Scripts
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
@avg (integer extractor), Computing for Statistical Aggregates
@count (integer extractor), Computing for Statistical Aggregates
@max (integer extractor), Computing for Statistical Aggregates
@min (integer extractor), Computing for Statistical Aggregates
@sum (integer extractor), Computing for Statistical Aggregates
adding values to statistical aggregates, Computing for Statistical Aggregates
count (operator), Computing for Statistical Aggregates
extracting data collected by statistical aggregates, Computing for Statistical Aggregates
computing for timestamp deltas
reading values from arrays
array operations, Reading Values From Arrays
conditional operators
conditional statements
handlers, Conditional Statements
conditional statements, using arrays in
array operations, Using Arrays in Conditional Statements
testing for array membership, Using Arrays in Conditional Statements
CONFIG_HZ, computing for, Variables
contended user-space locks (futex contentions), identifying
examples of SystemTap scripts, Identifying Contended User-Space Locks
copy fault
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
count operator
computing for statistical aggregates
array (operator), Computing for Statistical Aggregates
counting function calls
examples of SystemTap scripts, Counting Function Calls Made
CPU ticks
examples of SystemTap scripts, Determining Time Spent in Kernel and User Space
cpu()
functions, SystemTap Handler/Body
cross-compiling, Generating Instrumentation for Other Computers
cross-instrumentation
advantages of, Generating Instrumentation for Other Computers
building kernel modules from SystemTap scripts, Generating Instrumentation for Other Computers
configuration
host system and target system, Generating Instrumentation for Other Computers
generating instrumentation from SystemTap scripts, Generating Instrumentation for Other Computers
host system, Generating Instrumentation for Other Computers
instrumentation module, Generating Instrumentation for Other Computers
target kernel, Generating Instrumentation for Other Computers
target system, Generating Instrumentation for Other Computers
ctime()
functions, SystemTap Handler/Body
ctime(), example of usage
script examples, Summarizing Disk Read/Write Traffic
cumulative I/O, tracking
examples of SystemTap scripts, Track Cumulative IO
cumulative virtual file system reads, tallying
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array

D

delete operator
clearing arrays/array elements
array operations, Clearing/Deleting Arrays and Array Elements
determining architecture notation, Generating Instrumentation for Other Computers
determining the kernel version, Installing Required Kernel Information Packages Manually
determining time spent in kernel and user space
examples of SystemTap scripts, Determining Time Spent in Kernel and User Space
device I/O, monitoring
examples of SystemTap scripts, I/O Monitoring (By Device)
device number of a file (integer format)
examples of SystemTap scripts, Monitoring Reads and Writes to a File
disk I/O traffic, summarizing
script examples, Summarizing Disk Read/Write Traffic
division by 0
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
documentation goals
Introduction, Documentation Goals

E

embedded code in unprivileged script
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
empty unique keys
reading values from arrays
array operations, Reading Values From Arrays
end
Events, Event
errors
parse/semantics error, Parse and Semantic Errors
embedded code in unprivileged script, Parse and Semantic Errors
expected symbol/array index expression, Parse and Semantic Errors
grammatical/typographical script error, Parse and Semantic Errors
guru mode, Parse and Semantic Errors
invalid values to variables/arrays, Parse and Semantic Errors
libdwfl failure, Parse and Semantic Errors
no match for probe point, Parse and Semantic Errors
non-global arrays, Parse and Semantic Errors
probe mismatch, Parse and Semantic Errors
type mismatch for identifier, Parse and Semantic Errors
unresolved function call, Parse and Semantic Errors
unresolved target-symbol expression, Parse and Semantic Errors
unresolved type for identifier, Parse and Semantic Errors
variable modified during 'foreach', Parse and Semantic Errors
runtime errors/warnings, Runtime Errors and Warnings
aggregate element not found, Runtime Errors and Warnings
aggregation overflow, Runtime Errors and Warnings
copy fault, Runtime Errors and Warnings
division by 0, Runtime Errors and Warnings
MAXACTION exceeded, Runtime Errors and Warnings
MAXNESTING exceeded, Runtime Errors and Warnings
number of errors: N, skipped probes: M, Runtime Errors and Warnings
pointer dereference fault, Runtime Errors and Warnings
event types
Understanding How SystemTap Works, Understanding How SystemTap Works
Events
asynchronous events, Event
begin, Event
end, Event
examples of synchronous and asynchronous events, Event
introduction, Event
kernel.function("function"), Event
kernel.trace("tracepoint"), Event
module("module"), Event
synchronous events, Event
syscall.system_call, Event
timer events, Event
user-space, User-Space Events
vfs.file_operation, Event
wildcards, Event
events and handlers, Understanding How SystemTap Works
events wildcards, Event
example
introduction
arrays, Associative Arrays
example of multiple command-line arguments
examples of SystemTap scripts, Call Graph Tracing
examples of synchronous and asynchronous events
Events, Event
examples of SystemTap scripts, Useful SystemTap Scripts
call graph tracing, Call Graph Tracing
CPU ticks, Determining Time Spent in Kernel and User Space
ctime(), example of usage, Summarizing Disk Read/Write Traffic
determining time spent in kernel and user space, Determining Time Spent in Kernel and User Space
file device number (integer format), Monitoring Reads and Writes to a File
futex (lock) contentions, Identifying Contended User-Space Locks
futex system call, Identifying Contended User-Space Locks
identifying contended user-space locks (futex contentions), Identifying Contended User-Space Locks
if/else conditionals, alternative syntax, Network Profiling
inode number, Monitoring Reads and Writes to a File
monitoring changes to file attributes, Monitoring Changes to File Attributes
monitoring device I/O, I/O Monitoring (By Device)
monitoring I/O block time, Periodically Print I/O Block Time
monitoring I/O time, Tracking I/O Time For Each File Read or Write
monitoring incoming TCP connections, Monitoring Incoming TCP Connections
monitoring polling applications, Monitoring Polling Applications
monitoring reads and writes to a file, Monitoring Reads and Writes to a File
monitoring system calls, Tracking Most Frequently Used System Calls
monitoring system calls (volume per process), Tracking System Call Volume Per Process
monitoring TCP packets, Monitoring TCP Packets
multiple command-line arguments, example of, Call Graph Tracing
net/socket.c, tracing functions from, Tracing Functions Called in Network Socket Code
network profiling, Network Profiling, Monitoring Network Packets Drops in Kernel
stat -c, determining file device number (integer format), Monitoring Reads and Writes to a File
stat -c, determining whole device number, I/O Monitoring (By Device)
summarizing disk I/O traffic, Summarizing Disk Read/Write Traffic
tallying function calls, Counting Function Calls Made
thread_indent(), sample usage, Call Graph Tracing
timer.ms(), sample usage, Counting Function Calls Made
timer.s(), sample usage, Monitoring Polling Applications, Tracking Most Frequently Used System Calls
tracing functions called in network socket code, Tracing Functions Called in Network Socket Code
tracking cumulative I/O, Track Cumulative IO
trigger function, Call Graph Tracing
usrdev2kerndev(), I/O Monitoring (By Device)
whole device number (usage as a command-line argument), I/O Monitoring (By Device)
exceeded MAXACTION
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
exceeded MAXNESTING
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
exit()
functions, SystemTap Handler/Body
expected symbol/array index expression
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
extracting data collected by statistical aggregates
computing for statistical aggregates
array operations, Computing for Statistical Aggregates

F

feedback
contact information for this manual, We Need Feedback!
file attributes, monitoring changes to
examples of SystemTap scripts, Monitoring Changes to File Attributes
file device number (integer format)
examples of SystemTap scripts, Monitoring Reads and Writes to a File
file reads/writes, monitoring
examples of SystemTap scripts, Monitoring Reads and Writes to a File
flight recorder mode, SystemTap Flight Recorder Mode
file mode, File Flight Recorder
in-memory mode, In-memory Flight Recorder
for loops
conditional statements
handlers, Conditional Statements
foreach
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array
format
introduction
arrays, Associative Arrays
format and syntax
printf(), SystemTap Handler/Body
SystemTap handler constructs
handlers, Variables
SystemTap scripts
introduction, SystemTap Scripts
format specifiers
printf(), SystemTap Handler/Body
format strings
printf(), SystemTap Handler/Body
function call (unresolved)
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
function calls (incoming/outgoing), tracing
examples of SystemTap scripts, Call Graph Tracing
function calls, tallying
examples of SystemTap scripts, Counting Function Calls Made
functions, SystemTap Handler/Body
cpu(), SystemTap Handler/Body
ctime(), SystemTap Handler/Body
gettimeofday_s(), SystemTap Handler/Body
pp(), SystemTap Handler/Body
SystemTap scripts
introduction, SystemTap Scripts
target(), SystemTap Handler/Body
thread_indent(), SystemTap Handler/Body
tid(), SystemTap Handler/Body
uid(), SystemTap Handler/Body
functions (used in handlers)
exit(), SystemTap Handler/Body
functions called in network socket code, tracing
examples of SystemTap scripts, Tracing Functions Called in Network Socket Code
futex (lock) contentions
examples of SystemTap scripts, Identifying Contended User-Space Locks
futex contention, definition
examples of SystemTap scripts, Identifying Contended User-Space Locks
futex contentions, identifying
examples of SystemTap scripts, Identifying Contended User-Space Locks
futex system call
examples of SystemTap scripts, Identifying Contended User-Space Locks

G

gettimeofday_s()
functions, SystemTap Handler/Body
global
SystemTap handler constructs
handlers, Variables
goals, documentation
Introduction, Documentation Goals
grammatical/typographical script error
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
guru mode
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors

H

handler functions, SystemTap Handler/Body
handlers
conditional statements, Conditional Statements
conditional operators, Conditional Statements
for loops, Conditional Statements
if/else, Conditional Statements
while loops, Conditional Statements
introduction, SystemTap Handler/Body
SystemTap handler constructs, Basic SystemTap Handler Constructs
command-line arguments, Command-Line Arguments
global, Variables
syntax and format, Basic SystemTap Handler Constructs
variable notations, Command-Line Arguments
variables, Variables
target variables, Target Variables
handlers and events, Understanding How SystemTap Works
SystemTap scripts
introduction, SystemTap Scripts
heaviest disk reads/writes, identifying
script examples, Summarizing Disk Read/Write Traffic
host system
cross-instrumentation, Generating Instrumentation for Other Computers
host system and target system
cross-instrumentation
configuration, Generating Instrumentation for Other Computers

I

I/O block time, monitoring
examples of SystemTap scripts, Periodically Print I/O Block Time
I/O monitoring (by device)
examples of SystemTap scripts, I/O Monitoring (By Device)
I/O time, monitoring
examples of SystemTap scripts, Tracking I/O Time For Each File Read or Write
I/O traffic, summarizing
script examples, Summarizing Disk Read/Write Traffic
identifier type mismatch
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
identifying contended user-space locks (futex contentions)
examples of SystemTap scripts, Identifying Contended User-Space Locks
identifying heaviest disk reads/writes
script examples, Summarizing Disk Read/Write Traffic
if/else
conditional statements
handlers, Conditional Statements
if/else conditionals, alternative syntax
examples of SystemTap scripts, Network Profiling
if/else statements, using arrays in
array operations, Using Arrays in Conditional Statements
incoming TCP connections, monitoring
examples of SystemTap scripts, Monitoring Incoming TCP Connections
incoming/outgoing function calls, tracing
examples of SystemTap scripts, Call Graph Tracing
incrementing associated values
array operations, Incrementing Associated Values
tallying virtual file system reads (VFS reads), Incrementing Associated Values
index expression
introduction
arrays, Associative Arrays
initial testing, Initial Testing
inode number
examples of SystemTap scripts, Monitoring Reads and Writes to a File
Installation
initial testing, Initial Testing
kernel information packages, Installing Required Kernel Information Packages Manually
kernel version, determining the, Installing Required Kernel Information Packages Manually
required packages, Installing Required Kernel Information Packages Manually
Setup and Installation, Installation and Setup
systemtap package, Installing SystemTap
systemtap-runtime package, Installing SystemTap
instrumentation module
cross-instrumentation, Generating Instrumentation for Other Computers
instrumentation modules from SystemTap scripts, building, Generating Instrumentation for Other Computers
integer extractors
computing for statistical aggregates
array operations, Computing for Statistical Aggregates
Introduction
capabilities of SystemTap, SystemTap Capabilities
documentation goals, Documentation Goals
goals, documentation, Documentation Goals
limitations of SystemTap, Limitations of SystemTap
performance monitoring, Introduction
invalid division
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
invalid values to variables/arrays
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
iterations, processing elements in an array as
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array

K

kernel and user space, determining time spent in
examples of SystemTap scripts, Determining Time Spent in Kernel and User Space
kernel information packages, Installing Required Kernel Information Packages Manually
kernel modules from SystemTap scripts, building, Generating Instrumentation for Other Computers
kernel version, determining the, Installing Required Kernel Information Packages Manually
kernel.function("function")
Events, Event
kernel.trace("tracepoint")
Events, Event
key pairs
introduction
arrays, Associative Arrays

L

libdwfl failure
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
limitations of SystemTap
Introduction, Limitations of SystemTap
limiting the output of foreach
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array
local variables
name, SystemTap Handler/Body
sample usage
$count, Tracking I/O Time For Each File Read or Write
$return, Summarizing Disk Read/Write Traffic, Track Cumulative IO

M

MAXACTION exceeded
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
MAXNESTING exceeded
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
membership (in array), testing for
conditional statements, using arrays in
array operations, Using Arrays in Conditional Statements
module("module")
Events, Event
monitoring changes to file attributes
examples of SystemTap scripts, Monitoring Changes to File Attributes
monitoring cumulative I/O
examples of SystemTap scripts, Track Cumulative IO
monitoring device I/O
examples of SystemTap scripts, I/O Monitoring (By Device)
monitoring I/O block time
examples of SystemTap scripts, Periodically Print I/O Block Time
monitoring I/O time
examples of SystemTap scripts, Tracking I/O Time For Each File Read or Write
monitoring incoming TCP connections
examples of SystemTap scripts, Monitoring Incoming TCP Connections
monitoring polling applications
examples of SystemTap scripts, Monitoring Polling Applications
monitoring reads and writes to a file
examples of SystemTap scripts, Monitoring Reads and Writes to a File
monitoring system calls
examples of SystemTap scripts, Tracking Most Frequently Used System Calls
monitoring system calls (volume per process)
examples of SystemTap scripts, Tracking System Call Volume Per Process
monitoring TCP packets
examples of SystemTap scripts, Monitoring TCP Packets
multiple array operations within the same probe
clearing arrays/array elements
array operations, Clearing/Deleting Arrays and Array Elements
multiple command-line arguments, example of
examples of SystemTap scripts, Call Graph Tracing
multiple elements in an array
array operations, Processing Multiple Elements in an Array

N

name
local variables, SystemTap Handler/Body
net/socket.c, tracing functions from
examples of SystemTap scripts, Tracing Functions Called in Network Socket Code
network profiling
examples of SystemTap scripts, Network Profiling, Monitoring Network Packets Drops in Kernel
network socket code, tracing functions called in
examples of SystemTap scripts, Tracing Functions Called in Network Socket Code
network traffic, monitoring
examples of SystemTap scripts, Network Profiling, Monitoring Network Packets Drops in Kernel
no match for probe point
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
non-global arrays
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
number of errors: N, skipped probes: M
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings

O

operations
assigning associated values
associating timestamps to process names, Assigning an Associated Value
associative arrays, Array Operations in SystemTap
clearing arrays/array elements, Clearing/Deleting Arrays and Array Elements
delete operator, Clearing/Deleting Arrays and Array Elements
multiple array operations within the same probe, Clearing/Deleting Arrays and Array Elements
virtual file system reads (non-cumulative), tallying, Clearing/Deleting Arrays and Array Elements
computing for statistical aggregates, Computing for Statistical Aggregates
@avg (integer extractor), Computing for Statistical Aggregates
@count (integer extractor), Computing for Statistical Aggregates
@max (integer extractor), Computing for Statistical Aggregates
@min (integer extractor), Computing for Statistical Aggregates
@sum (integer extractor), Computing for Statistical Aggregates
adding values to statistical aggregates, Computing for Statistical Aggregates
count (operator), Computing for Statistical Aggregates
extracting data collected by statistical aggregates, Computing for Statistical Aggregates
conditional statements, using arrays in, Using Arrays in Conditional Statements
testing for array membership, Using Arrays in Conditional Statements
deleting arrays and array elements, Clearing/Deleting Arrays and Array Elements
incrementing associated values, Incrementing Associated Values
tallying virtual file system reads (VFS reads), Incrementing Associated Values
multiple elements in an array, Processing Multiple Elements in an Array
processing multiple elements in an array, Processing Multiple Elements in an Array
cumulative virtual file system reads, tallying, Processing Multiple Elements in an Array
foreach, Processing Multiple Elements in an Array
iterations, processing elements in an array as, Processing Multiple Elements in an Array
limiting the output of foreach, Processing Multiple Elements in an Array
ordering the output of foreach, Processing Multiple Elements in an Array
reading values from arrays, Reading Values From Arrays
computing for timestamp deltas, Reading Values From Arrays
empty unique keys, Reading Values From Arrays
using arrays in simple computations, Reading Values From Arrays
options, stap
Usage, Running SystemTap Scripts
ordering the output of foreach
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array
overflow of aggregation
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings

P

packages required to run SystemTap, Installing Required Kernel Information Packages Manually
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
embedded code in unprivileged script, Parse and Semantic Errors
expected symbol/array index expression, Parse and Semantic Errors
grammatical/typographical script error, Parse and Semantic Errors
guru mode, Parse and Semantic Errors
invalid values to variables/arrays, Parse and Semantic Errors
libdwfl failure, Parse and Semantic Errors
no match for probe point, Parse and Semantic Errors
non-global arrays, Parse and Semantic Errors
probe mismatch, Parse and Semantic Errors
type mismatch for identifier, Parse and Semantic Errors
unresolved function call, Parse and Semantic Errors
unresolved target-symbol expression, Parse and Semantic Errors
unresolved type for identifier, Parse and Semantic Errors
variable modified during 'foreach', Parse and Semantic Errors
performance monitoring
Introduction, Introduction
pointer dereference fault
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
polling applications, monitoring
examples of SystemTap scripts, Monitoring Polling Applications
pp()
functions, SystemTap Handler/Body
printf()
format specifiers, SystemTap Handler/Body
format strings, SystemTap Handler/Body
syntax and format, SystemTap Handler/Body
printing I/O activity (cumulative)
examples of SystemTap scripts, Track Cumulative IO
printing I/O block time (periodically)
examples of SystemTap scripts, Periodically Print I/O Block Time
probe mismatch
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
probe point (no match for)
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
probes
SystemTap scripts
introduction, SystemTap Scripts
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array
cumulative virtual file system reads, tallying
array operations, Processing Multiple Elements in an Array
foreach
array operations, Processing Multiple Elements in an Array
limiting the output of foreach
array operations, Processing Multiple Elements in an Array
ordering the output of foreach
array operations, Processing Multiple Elements in an Array
profiling the network
examples of SystemTap scripts, Network Profiling, Monitoring Network Packets Drops in Kernel

R

reading values from arrays
array operations, Reading Values From Arrays
empty unique keys, Reading Values From Arrays
using arrays in simple computations, Reading Values From Arrays
computing for timestamp deltas
array operations, Reading Values From Arrays
reads/writes to a file, monitoring
examples of SystemTap scripts, Monitoring Reads and Writes to a File
required packages, Installing Required Kernel Information Packages Manually
RPMs required to run SystemTap, Installing Required Kernel Information Packages Manually
running scripts from standard input, Running SystemTap Scripts
running SystemTap scripts
Usage, Running SystemTap Scripts
runtime errors/warnings
understainding SystemTap errors, Runtime Errors and Warnings
aggregate element not found, Runtime Errors and Warnings
aggregation overflow, Runtime Errors and Warnings
copy fault, Runtime Errors and Warnings
division by 0, Runtime Errors and Warnings
MAXACTION exceeded, Runtime Errors and Warnings
MAXNESTING exceeded, Runtime Errors and Warnings
number of errors: N, skipped probes: M, Runtime Errors and Warnings
pointer dereference fault, Runtime Errors and Warnings

S

script examples
call graph tracing, Call Graph Tracing
CPU ticks, Determining Time Spent in Kernel and User Space
ctime(), example of usage, Summarizing Disk Read/Write Traffic
determining time spent in kernel and user space, Determining Time Spent in Kernel and User Space
file device number (integer format), Monitoring Reads and Writes to a File
futex (lock) contentions, Identifying Contended User-Space Locks
futex system call, Identifying Contended User-Space Locks
identifying contended user-space locks (futex contentions), Identifying Contended User-Space Locks
if/else conditionals, alternative syntax, Network Profiling
inode number, Monitoring Reads and Writes to a File
monitoring changes to file attributes, Monitoring Changes to File Attributes
monitoring device I/O, I/O Monitoring (By Device)
monitoring I/O block time, Periodically Print I/O Block Time
monitoring I/O time, Tracking I/O Time For Each File Read or Write
monitoring incoming TCP connections, Monitoring Incoming TCP Connections
monitoring polling applications, Monitoring Polling Applications
monitoring reads and writes to a file, Monitoring Reads and Writes to a File
monitoring system calls, Tracking Most Frequently Used System Calls
monitoring system calls (volume per process), Tracking System Call Volume Per Process
monitoring TCP packets, Monitoring TCP Packets
multiple command-line arguments, example of, Call Graph Tracing
net/socket.c, tracing functions from, Tracing Functions Called in Network Socket Code
network profiling, Network Profiling, Monitoring Network Packets Drops in Kernel
stat -c, determining file device number (integer format), Monitoring Reads and Writes to a File
stat -c, determining whole device number, I/O Monitoring (By Device)
summarizing disk I/O traffic, Summarizing Disk Read/Write Traffic
tallying function calls, Counting Function Calls Made
thread_indent(), sample usage, Call Graph Tracing
timer.ms(), sample usage, Counting Function Calls Made
timer.s(), sample usage, Monitoring Polling Applications, Tracking Most Frequently Used System Calls
tracing functions called in network socket code, Tracing Functions Called in Network Socket Code
tracking cumulative I/O, Track Cumulative IO
trigger function, Call Graph Tracing
usrdev2kerndev(), I/O Monitoring (By Device)
whole device number (usage as a command-line argument), I/O Monitoring (By Device)
scripts
introduction, SystemTap Scripts
components, SystemTap Scripts
events and handlers, SystemTap Scripts
format and syntax, SystemTap Scripts
functions, SystemTap Scripts
probes, SystemTap Scripts
statement blocks, SystemTap Scripts
sessions, SystemTap, Architecture
Setup and Installation, Installation and Setup
Stack backtrace
user-space, User-Space Stack Backtraces
standard input, running scripts from
Usage, Running SystemTap Scripts
stap
Usage, Running SystemTap Scripts
stap options, Running SystemTap Scripts
stapdev
Usage, Running SystemTap Scripts
staprun
Usage, Running SystemTap Scripts
stapusr
Usage, Running SystemTap Scripts
stat -c, determining file device number (integer format)
examples of SystemTap scripts, Monitoring Reads and Writes to a File
stat -c, determining whole device number
examples of SystemTap scripts, I/O Monitoring (By Device)
statement blocks
SystemTap scripts
introduction, SystemTap Scripts
statistical aggregates
array operations, Computing for Statistical Aggregates
summarizing disk I/O traffic
script examples, Summarizing Disk Read/Write Traffic
synchronous events
Events, Event
syntax
introduction
arrays, Associative Arrays
syntax and format
printf(), SystemTap Handler/Body
SystemTap handler constructs
handlers, Basic SystemTap Handler Constructs
SystemTap scripts
introduction, SystemTap Scripts
syscall.system_call
Events, Event
system calls volume (per process), monitoring
examples of SystemTap scripts, Tracking System Call Volume Per Process
system calls, monitoring
examples of SystemTap scripts, Tracking Most Frequently Used System Calls
SystemTap architecture, Architecture
SystemTap handlers
SystemTap handler constructs, Basic SystemTap Handler Constructs
syntax and format, Basic SystemTap Handler Constructs
systemtap package, Installing SystemTap
SystemTap script functions, SystemTap Handler/Body
SystemTap scripts
introduction, SystemTap Scripts
components, SystemTap Scripts
events and handlers, SystemTap Scripts
format and syntax, SystemTap Scripts
functions, SystemTap Scripts
probes, SystemTap Scripts
statement blocks, SystemTap Scripts
useful examples, Useful SystemTap Scripts
SystemTap scripts, how to run, Running SystemTap Scripts
SystemTap sessions, Architecture
SystemTap statements
conditional statements, Conditional Statements
conditional operators, Conditional Statements
for loops, Conditional Statements
if/else, Conditional Statements
while loops, Conditional Statements
SystemTap handler constructs
command-line arguments, Command-Line Arguments
global, Variables
variable notations, Command-Line Arguments
variables, Variables
systemtap-runtime package, Installing SystemTap
systemtap-testsuite package
sample scripts, Useful SystemTap Scripts

T

tallying function calls
examples of SystemTap scripts, Counting Function Calls Made
tallying virtual file system reads (VFS reads)
incrementing associated values
array operations, Incrementing Associated Values
Tapsets
definition of, Tapsets
target kernel
cross-instrumentation, Generating Instrumentation for Other Computers
target system
cross-instrumentation, Generating Instrumentation for Other Computers
target system and host system
configuration, Generating Instrumentation for Other Computers
target variables, Target Variables
pretty printing, Pretty Printing Target Variables
typecasting, Typecasting
user-space, Accessing User-Space Target Variables
variable availability, Checking Target Variable Availability
target()
functions, SystemTap Handler/Body
target-symbol expression, unresolved
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
TCP connections (incoming), monitoring
examples of SystemTap scripts, Monitoring Incoming TCP Connections
TCP packets, monitoring
examples of SystemTap scripts, Monitoring TCP Packets
testing for array membership
conditional statements, using arrays in
array operations, Using Arrays in Conditional Statements
testing, initial, Initial Testing
thread_indent()
functions, SystemTap Handler/Body
thread_indent(), sample usage
examples of SystemTap scripts, Call Graph Tracing
tid()
functions, SystemTap Handler/Body
time of I/O
examples of SystemTap scripts, Tracking I/O Time For Each File Read or Write
time spent in kernel/user space, determining
examples of SystemTap scripts, Determining Time Spent in Kernel and User Space
timer events
Events, Event
timer.ms(), sample usage
examples of SystemTap scripts, Counting Function Calls Made
timer.s(), sample usage
examples of SystemTap scripts, Monitoring Polling Applications, Tracking Most Frequently Used System Calls
timestamp deltas, computing for
reading values from arrays
array operations, Reading Values From Arrays
timestamps, association thereof to process names
assigning associated values
array operations, Assigning an Associated Value
tracepoint, Event, Monitoring Network Packets Drops in Kernel
tracing call graph
examples of SystemTap scripts, Call Graph Tracing
tracing functions called in network socket code
examples of SystemTap scripts, Tracing Functions Called in Network Socket Code
tracing incoming/outgoing function calls
examples of SystemTap scripts, Call Graph Tracing
tracking cumulative I/O
examples of SystemTap scripts, Track Cumulative IO
trigger function
examples of SystemTap scripts, Call Graph Tracing
type mismatch for identifier
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
typographical script error
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors

U

uid()
functions, SystemTap Handler/Body
uname -m, Generating Instrumentation for Other Computers
uname -r, Installing Required Kernel Information Packages Manually
understainding SystemTap errors
runtime errors/warnings, Runtime Errors and Warnings
aggregate element not found, Runtime Errors and Warnings
aggregation overflow, Runtime Errors and Warnings
copy fault, Runtime Errors and Warnings
division by 0, Runtime Errors and Warnings
MAXACTION exceeded, Runtime Errors and Warnings
MAXNESTING exceeded, Runtime Errors and Warnings
number of errors: N, skipped probes: M, Runtime Errors and Warnings
pointer dereference fault, Runtime Errors and Warnings
Understanding How SystemTap Works, Understanding How SystemTap Works
architecture, Architecture
event types, Understanding How SystemTap Works
events and handlers, Understanding How SystemTap Works
SystemTap sessions, Architecture
understanding SystemTap errors
parse/semantics error, Parse and Semantic Errors
embedded code in unprivileged script, Parse and Semantic Errors
expected symbol/array index expression, Parse and Semantic Errors
grammatical/typographical script error, Parse and Semantic Errors
guru mode, Parse and Semantic Errors
invalid values to variables/arrays, Parse and Semantic Errors
libdwfl failure, Parse and Semantic Errors
no match for probe point, Parse and Semantic Errors
non-global arrays, Parse and Semantic Errors
probe mismatch, Parse and Semantic Errors
type mismatch for identifier, Parse and Semantic Errors
unresolved function call, Parse and Semantic Errors
unresolved target-symbol expression, Parse and Semantic Errors
unresolved type for identifier, Parse and Semantic Errors
variable modified during 'foreach', Parse and Semantic Errors
unique keys
introduction
arrays, Associative Arrays
unprivileged script, embedded code in
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
unresolved function call
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
unresolved target-symbol expression
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
unresolved type for identifier
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
unsafe embedded code in unprivileged script
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
Usage
options, stap, Running SystemTap Scripts
running SystemTap scripts, Running SystemTap Scripts
standard input, running scripts from, Running SystemTap Scripts
stap, Running SystemTap Scripts
stapdev, Running SystemTap Scripts
staprun, Running SystemTap Scripts
stapusr, Running SystemTap Scripts
useful examples of SystemTap scripts, Useful SystemTap Scripts
user and kernel space, determining time spent in
examples of SystemTap scripts, Determining Time Spent in Kernel and User Space
using arrays in simple computations
reading values from arrays
array operations, Reading Values From Arrays
Using SystemTap, Using SystemTap
usrdev2kerndev()
examples of SystemTap scripts, I/O Monitoring (By Device)

V

values, assignment of
array operations, Assigning an Associated Value
variable modified during 'foreach'
parse/semantics error
understanding SystemTap errors, Parse and Semantic Errors
variable notations
SystemTap handler constructs
handlers, Command-Line Arguments
variables
SystemTap handler constructs
handlers, Variables
variables (local)
name, SystemTap Handler/Body
sample usage
$count, Tracking I/O Time For Each File Read or Write
$return, Summarizing Disk Read/Write Traffic, Track Cumulative IO
VFS reads, tallying of
incrementing associated values
array operations, Incrementing Associated Values
vfs.file_operation
Events, Event
virtual file system reads (cumulative), tallying
processing multiple elements in an array
array operations, Processing Multiple Elements in an Array
virtual file system reads (non-cumulative), tallying
clearing arrays/array elements
array operations, Clearing/Deleting Arrays and Array Elements

W

while loops
conditional statements
handlers, Conditional Statements
whole device number (usage as a command-line argument)
examples of SystemTap scripts, I/O Monitoring (By Device)
wildcards in events, Event
writes/reads to a file, monitoring
examples of SystemTap scripts, Monitoring Reads and Writes to a File
\ No newline at end of file diff --git a/SystemTap_Beginners_Guide/mainsect-disk.html b/SystemTap_Beginners_Guide/mainsect-disk.html index 4ae49e42..1154c7cd 100644 --- a/SystemTap_Beginners_Guide/mainsect-disk.html +++ b/SystemTap_Beginners_Guide/mainsect-disk.html @@ -1,7 +1,7 @@ 5.2. Disk

⁠5.2. Disk

The following sections showcase scripts that monitor disk and I/O activity.

- ⁠5.2.1. Summarizing Disk Read/Write Traffic

This section describes how to identify which processes are performing the heaviest disk reads/writes to the system.
disktop.stp
+ ⁠5.2.1. Summarizing Disk Read/Write Traffic
This section describes how to identify which processes are performing the heaviest disk reads/writes to the system.
disktop.stp
#!/usr/bin/env stap 
 #
 # Copyright (C) 2007 Oracle Corp.
@@ -74,7 +74,7 @@ probe end{
   delete write_bytes
 }
 
-
disktop.stp outputs the top ten processes responsible for the heaviest reads/writes to disk. Example 5.6, “disktop.stp Sample Output” displays a sample output for this script, and includes the following data per listed process:
  • UID — user ID. A user ID of 0 refers to the root user.
  • PID — the ID of the listed process.
  • PPID — the process ID of the listed process's parent process.
  • CMD — the name of the listed process.
  • DEVICE — which storage device the listed process is reading from or writing to.
  • T — the type of action performed by the listed process; W refers to write, while R refers to read.
  • BYTES — the amount of data read to or written from disk.
The time and date in the output of disktop.stp is returned by the functions ctime() and gettimeofday_s(). ctime() derives calendar time in terms of seconds passed since the Unix epoch (January 1, 1970). gettimeofday_s() counts the actual number of seconds since Unix epoch, which gives a fairly accurate human-readable timestamp for the output.
+
disktop.stp outputs the top ten processes responsible for the heaviest reads/writes to disk. Example 5.6, “disktop.stp Sample Output” displays a sample output for this script, and includes the following data per listed process:
  • UID — user ID. A user ID of 0 refers to the root user.
  • PID — the ID of the listed process.
  • PPID — the process ID of the listed process's parent process.
  • CMD — the name of the listed process.
  • DEVICE — which storage device the listed process is reading from or writing to.
  • T — the type of action performed by the listed process; W refers to write, while R refers to read.
  • BYTES — the amount of data read to or written from disk.
The time and date in the output of disktop.stp is returned by the functions ctime() and gettimeofday_s(). ctime() derives calendar time in terms of seconds passed since the Unix epoch (January 1, 1970). gettimeofday_s() counts the actual number of seconds since Unix epoch, which gives a fairly accurate human-readable timestamp for the output.
In this script, the $return is a local variable that stores the actual number of bytes each process reads or writes from the virtual file system. $return can only be used in return probes (for example, diff --git a/SystemTap_Beginners_Guide/mainsect-profiling.html b/SystemTap_Beginners_Guide/mainsect-profiling.html index deadc64e..c81dbfd8 100644 --- a/SystemTap_Beginners_Guide/mainsect-profiling.html +++ b/SystemTap_Beginners_Guide/mainsect-profiling.html @@ -1,7 +1,7 @@ 5.3. Profiling

⁠5.3. Profiling

The following sections showcase scripts that profile kernel activity by monitoring function calls.

- ⁠5.3.1. Counting Function Calls Made

This section describes how to identify how many times the system called a specific kernel function in a 30-second sample. Depending on the use of wildcards, you can also use this script to target multiple kernel functions.
functioncallcount.stp
+ ⁠5.3.1. Counting Function Calls Made
This section describes how to identify how many times the system called a specific kernel function in a 30-second sample. Depending on the use of wildcards, you can also use this script to target multiple kernel functions.
functioncallcount.stp
#! /usr/bin/env stap
 # The following line command will probe all the functions
 # in kernel's memory management code:
@@ -21,7 +21,7 @@ probe end {
   exit()
 }
 
-
functioncallcount.stp takes the targeted kernel function as an argument. The argument supports wildcards, which enables you to target multiple kernel functions up to a certain extent.
The output of functioncallcount.stp contains the name of the function called and how many times it was called during the sample time (in alphabetical order). Example 5.13, “functioncallcount.stp Sample Output” contains an excerpt from the output of stap functioncallcount.stp "*@mm/*.c":
functioncallcount.stp takes the targeted kernel function as an argument. The argument supports wildcards, which enables you to target multiple kernel functions up to a certain extent.
The output of functioncallcount.stp contains the name of the function called and how many times it was called during the sample time (in alphabetical order). Example 5.13, “functioncallcount.stp Sample Output” contains an excerpt from the output of stap functioncallcount.stp "*@mm/*.c":
⁠

Example 5.13. functioncallcount.stp Sample Output

[...]
 __vma_link 97
 __vma_link_file 66
diff --git a/SystemTap_Beginners_Guide/paracallgraph.html b/SystemTap_Beginners_Guide/paracallgraph.html
index a476c2b6..db0288c4 100644
--- a/SystemTap_Beginners_Guide/paracallgraph.html
+++ b/SystemTap_Beginners_Guide/paracallgraph.html
@@ -1,6 +1,6 @@
 
 5.3.2. Call Graph Tracing

- ⁠5.3.2. Call Graph Tracing

This section describes how to trace incoming and outgoing function calls.
para-callgraph.stp
+ ⁠5.3.2. Call Graph Tracing
This section describes how to trace incoming and outgoing function calls.
para-callgraph.stp
#! /usr/bin/env stap
 
 function trace(entry_p, extra) {
@@ -26,14 +26,14 @@ probe $2.return {
 probe $1.call   { trace(1, $$parms) }
 probe $1.return { trace(-1, $$return) }
 
-
para-callgraph.stp takes two command-line arguments:
  • +
    para-callgraph.stp takes two command-line arguments:
    • The function/s whose entry/exit call you'd like to trace ($1).
    • A second optional trigger function ($2), which enables or disables tracing on a per-thread basis. Tracing in each thread will continue as long as the trigger function has not exited yet. -
    para-callgraph.stp uses thread_indent(); as such, its output contains the timestamp, process name, and thread ID of $1 (that is, the probe function you are tracing). For more information about thread_indent(), refer to its entry in SystemTap Functions.
    The following example contains an excerpt from the output +
para-callgraph.stp uses thread_indent(); as such, its output contains the timestamp, process name, and thread ID of $1 (that is, the probe function you are tracing). For more information about thread_indent(), refer to its entry in SystemTap Functions.
The following example contains an excerpt from the output for stap para-callgraph.stp 'kernel.function("*@fs/*.c")' 'kernel.function("sys_read")':
⁠

Example 5.14. para-callgraph.stp Sample Output

[...]
    267 gnome-terminal(2921): <-do_sync_read return=0xfffffffffffffff5
diff --git a/SystemTap_Beginners_Guide/pr01s02.html b/SystemTap_Beginners_Guide/pr01s02.html
index cf243f22..eb861cac 100644
--- a/SystemTap_Beginners_Guide/pr01s02.html
+++ b/SystemTap_Beginners_Guide/pr01s02.html
@@ -1,6 +1,6 @@
 
-2. We Need Feedback!

- ⁠2. We Need Feedback!

+2. We Need Feedback!

+ ⁠2. We Need Feedback!

If you find a typographical error in this manual, or if you have thought of a way to make this manual better, we would love to hear from you! Please submit a report in Bugzilla: http://sourceware.org/bugzilla/ diff --git a/SystemTap_Beginners_Guide/runtimeerror.html b/SystemTap_Beginners_Guide/runtimeerror.html index 8a4c9068..56ffba8e 100644 --- a/SystemTap_Beginners_Guide/runtimeerror.html +++ b/SystemTap_Beginners_Guide/runtimeerror.html @@ -1,42 +1,42 @@ 6.2. Runtime Errors and Warnings

- ⁠6.2. Runtime Errors and Warnings

+ ⁠6.2. Runtime Errors and Warnings
Runtime errors and warnings occur when the SystemTap instrumentation has been installed and is collecting data on the system. -

- ⁠WARNING: Number of errors: N, skipped probes: M

+

+ ⁠WARNING: Number of errors: N, skipped probes: M

Errors and/or skipped probes occurred during this run. Both N and M are the counts of the number of probes that were not executed due to conditions such as too much time required to execute event handlers over an interval of time. -

- ⁠division by 0

+

+ ⁠division by 0

The script code performed an invalid division. -

- ⁠aggregate element not found

+

+ ⁠aggregate element not found

A statistics extractor function other than @count was invoked on an aggregate that has not had any values accumulated yet. This is similar to a division by zero. -

- ⁠aggregation overflow

+

+ ⁠aggregation overflow

An array containing aggregate values contains too many distinct key pairs at this time. -

- ⁠MAXNESTING exceeded

+

+ ⁠MAXNESTING exceeded

Too many levels of function call nesting were attempted. The default nesting of function calls allowed is 10. -

- ⁠MAXACTION exceeded

+

+ ⁠MAXACTION exceeded

The probe handler attempted to execute too many statements in the probe handler. The default number of actions allowed in a probe handler is 1000. -

- ⁠kernel/user string copy fault at ADDR

+

+ ⁠kernel/user string copy fault at ADDR

The probe handler attempted to copy a string from kernel or user space at an invalid address (ADDR). -

- ⁠pointer dereference fault

+

+ ⁠pointer dereference fault

There was a fault encountered during a pointer dereference operation such as a target variable evaluation.
\ No newline at end of file diff --git a/SystemTap_Beginners_Guide/scriptconstructions.html b/SystemTap_Beginners_Guide/scriptconstructions.html index eefa8844..4f3c8c01 100644 --- a/SystemTap_Beginners_Guide/scriptconstructions.html +++ b/SystemTap_Beginners_Guide/scriptconstructions.html @@ -1,8 +1,8 @@ 3.3. Basic SystemTap Handler Constructs

- ⁠3.3. Basic SystemTap Handler Constructs

SystemTap supports the use of several basic constructs in handlers. The syntax for most of these handler constructs are mostly based on C and awk syntax. This section describes several of the most useful SystemTap handler constructs, which should provide you with enough information to write simple yet useful SystemTap scripts.

- ⁠3.3.1. Variables

Variables can be used freely throughout a handler; simply choose a -name, assign a value from a function or expression to it, and use it in an expression. SystemTap automatically identifies whether a variable should be typed as a string or integer, based on the type of the values assigned to it. For instance, if you use set the variable foo to gettimeofday_s() (as in foo = gettimeofday_s()), then foo is typed as a number and can be printed in a printf() with the integer format specifier (%d).
Note, however, that by default variables are only local to the probe they are used in. This means that variables are initialized, used and disposed at each probe handler invocation. To share a variable between probes, declare the variable name using global outside of the probes. Consider the following example:
+ ⁠3.3. Basic SystemTap Handler Constructs
SystemTap supports the use of several basic constructs in handlers. The syntax for most of these handler constructs are mostly based on C and awk syntax. This section describes several of the most useful SystemTap handler constructs, which should provide you with enough information to write simple yet useful SystemTap scripts.

+ ⁠3.3.1. Variables

Variables can be used freely throughout a handler; simply choose a +name, assign a value from a function or expression to it, and use it in an expression. SystemTap automatically identifies whether a variable should be typed as a string or integer, based on the type of the values assigned to it. For instance, if you use set the variable foo to gettimeofday_s() (as in foo = gettimeofday_s()), then foo is typed as a number and can be printed in a printf() with the integer format specifier (%d).
Note, however, that by default variables are only local to the probe they are used in. This means that variables are initialized, used and disposed at each probe handler invocation. To share a variable between probes, declare the variable name using global outside of the probes. Consider the following example:
⁠

Example 3.8. timer-jiffies.stp

global count_jiffies, count_ms
 probe timer.jiffies(100) { count_jiffies ++ }
 probe timer.ms(100) { count_ms ++ }
@@ -12,4 +12,4 @@ probe timer.ms(12345)
   printf ("jiffies:ms ratio %d:%d => CONFIG_HZ=%d\n",
     count_jiffies, count_ms, hz)
   exit ()
-}
Example 3.8, “timer-jiffies.stp” computes the CONFIG_HZ setting of the kernel using timers that count jiffies and milliseconds, then computing accordingly. The global statement allows the script to use the variables count_jiffies and count_ms (set in their own respective probes) to be shared with probe timer.ms(12345).

Note

The ++ notation in Example 3.8, “timer-jiffies.stp” (that is, count_jiffies ++ and count_ms ++) is used to increment the value of a variable by 1. In the following probe, count_jiffies is incremented by 1 every 100 jiffies:
probe timer.jiffies(100) { count_jiffies ++ }
In this instance, SystemTap understands that count_jiffies is an integer. Because no initial value was assigned to count_jiffies, its initial value is zero by default.
\ No newline at end of file +}
Example 3.8, “timer-jiffies.stp” computes the CONFIG_HZ setting of the kernel using timers that count jiffies and milliseconds, then computing accordingly. The global statement allows the script to use the variables count_jiffies and count_ms (set in their own respective probes) to be shared with probe timer.ms(12345).

Note

The ++ notation in Example 3.8, “timer-jiffies.stp” (that is, count_jiffies ++ and count_ms ++) is used to increment the value of a variable by 1. In the following probe, count_jiffies is incremented by 1 every 100 jiffies:
probe timer.jiffies(100) { count_jiffies ++ }
In this instance, SystemTap understands that count_jiffies is an integer. Because no initial value was assigned to count_jiffies, its initial value is zero by default.
\ No newline at end of file diff --git a/SystemTap_Beginners_Guide/scripts.html b/SystemTap_Beginners_Guide/scripts.html index 950cd7c1..3da99ad4 100644 --- a/SystemTap_Beginners_Guide/scripts.html +++ b/SystemTap_Beginners_Guide/scripts.html @@ -1,16 +1,16 @@ 3.2. SystemTap Scripts

- ⁠3.2. SystemTap Scripts

+ ⁠3.2. SystemTap Scripts
For the most part, SystemTap scripts are the foundation of each SystemTap session. SystemTap scripts instruct SystemTap on what type of information to collect, and what to do once that information is collected. -
+
As stated in Chapter 3, Understanding How SystemTap Works, SystemTap scripts are made up of two components: events and handlers. Once a SystemTap session is underway, SystemTap monitors the operating system for the specified events and executes the handlers as they occur. -

Note

+

Note

An event and its corresponding handler is collectively called a probe. A SystemTap script can have multiple probes.
@@ -26,7 +26,7 @@ recompilation of the code and allows more flexibility with regard to handlers. Events serve as the triggers for handlers to run; handlers can be specified to record specified data and print it in a certain manner. -
Format
+
Format
SystemTap scripts use the file extension .stp, and contains probes written in the following format:
probe	event {statements}
@@ -34,7 +34,7 @@ by a comma (,). If multiple events are specified in a single probe, SystemTap will execute the handler when any of the specified events occur. -
+
Each probe has a corresponding statement block. This statement block is enclosed in braces ({ }) and contains the statements to be executed per event. SystemTap executes these statements in sequence; special separators or @@ -42,7 +42,7 @@

Note

Statement blocks in SystemTap scripts follow the same syntax and semantics as the C programming language. A statement block can be nested within another statement block. -
+
SystemTap allows you to write functions to factor out code to be used by a number of probes. Thus, rather than repeatedly writing the same series of statements in multiple probes, you can just place the instructions @@ -61,16 +61,16 @@ probe event {function_name< each section therein provides a detailed explanation of the script, its events, handlers, and expected output.

- ⁠3.2.1. Event

+ ⁠3.2.1. Event
SystemTap events can be broadly classified into two types: synchronous and asynchronous. -
Synchronous Events
+
Synchronous Events
A synchronous event occurs when any process executes an instruction at a particular location in kernel code. This gives other events a reference point from which more contextual data may be available. -
Examples of synchronous events include:
syscall.system_call
+
Examples of synchronous events include:
syscall.system_call
The entry to the system call system_call. If the exit from a syscall is desired, appending a .return to the event @@ -78,12 +78,12 @@ probe event {function_name< the entry and exit of the system call close, use syscall.close and syscall.close.return respectively. -
vfs.file_operation
+
vfs.file_operation
The entry to the file_operation event for Virtual File System (VFS). Similar to syscall event, appending a .return to the event monitors the exit of the file_operation operation. -
kernel.function("function")
+
kernel.function("function")
The entry to the kernel function function. For example, kernel.function("sys_open") refers to the "event" @@ -93,7 +93,7 @@ probe event {function_name< sys_open, append the return string to the event statement; that is, kernel.function("sys_open").return. -
+
When defining probe events, you can use asterisk (*) for wildcards. You can also trace the entry or exit of a function in a kernel source file. Consider the following example: @@ -106,7 +106,7 @@ probe kernel.function("*@net/socket.c").return { }
kernel.trace("tracepoint")
+
kernel.trace("tracepoint")
The static probe for tracepoint. Recent kernels (2.6.30 and newer) include instrumentation for specific events in the kernel. These @@ -114,7 +114,7 @@ probe kernel.function("*@net/socket.c").return { }
kernel.trace("kfree_skb") which indicates each time a network buffer is freed in the kernel. -
module("module").function("function")
Allows you to probe functions within modules. For example:
module("module").function("function")
Allows you to probe functions within modules. For example:
⁠

Example 3.2. moduleprobe.stp

probe module("ext3").function("*") { }
 probe module("ext3").function("*").return { }
The first probe in Example 3.2, “moduleprobe.stp” @@ -128,14 +128,14 @@ probe module("ext3").function("*").return { }
Example 3.1, “wildcards.stp”).
A system's kernel modules are typically located in /lib/modules/kernel_version, where kernel_version refers to the currently loaded kernel version. Modules use the file name extension .ko. -
Asynchronous Events
+
Asynchronous Events
Asynchronous events are not tied to a particular instruction or location in code. This family of probe points consists mainly of counters, timers, and similar constructs. -
Examples of asynchronous events include:
begin
+
Examples of asynchronous events include:
begin
The startup of a SystemTap session; that is, as soon as the SystemTap script is run. -
end
The end of a SystemTap session.
timer events
+
end
The end of a SystemTap session.
timer events
An event that specifies a handler to be executed periodically. For example:
This section illustrates how to determine which processes are performing the highest volume of system calls. In previous sections, we've described how to monitor the top system diff --git a/SystemTap_Beginners_Guide/systemtapscript-handler.html b/SystemTap_Beginners_Guide/systemtapscript-handler.html index febdcd92..18833b40 100644 --- a/SystemTap_Beginners_Guide/systemtapscript-handler.html +++ b/SystemTap_Beginners_Guide/systemtapscript-handler.html @@ -1,6 +1,6 @@ 3.2.2. SystemTap Handler/Body

- ⁠3.2.2. SystemTap Handler/Body

Consider the following sample script:
+ ⁠3.2.2. SystemTap Handler/Body
Consider the following sample script:
⁠

Example 3.4. helloworld.stp

probe begin
 {
   printf ("hello world\n")
@@ -10,29 +10,29 @@
 		(that is, the start of the session) triggers the handler enclosed in
 		{ }, which simply prints hello
 			world followed by a new-line, then exits.
-	

Note

+

Note

SystemTap scripts continue to run until the exit() function executes. If the users wants to stop the execution of the script, it can interrupted manually with Ctrl+C. -
printf ( ) Statements
+
printf ( ) Statements
The printf () statement is one of the simplest functions for printing data. printf () can also be used to display data using a wide variety of SystemTap functions in the following format:
		printf ("format string\n", arguments)
-	
+
The format string specifies how arguments should be printed. The format string of Example 3.4, “helloworld.stp” instructs SystemTap to print hello world, and contains no format specifiers. -
+
You can use the format specifiers %s (for strings) and %d (for numbers) in format strings, depending on your list of arguments. Format strings can have multiple format specifiers, each matching a corresponding argument; multiple arguments are delimited by a comma (,). -

Note

Semantically, the SystemTap printf function is +

Note

Semantically, the SystemTap printf function is very similar to its C language counterpart. The aforementioned syntax and format for SystemTap's printf function is identical to that of the C-style printf. @@ -53,15 +53,15 @@ hald(2360) open df(3433) open df(3433) open df(3433) open -hald(2360) open
SystemTap Functions
+hald(2360) open
SystemTap Functions
SystemTap supports a wide variety of functions that can be used as printf () arguments. Example 3.5, “variables-in-printf-statements.stp” uses the SystemTap functions execname() (name of the process that called a kernel function/performed a system call) and pid() (current process ID). -
The following is a list of commonly-used SystemTap functions:
tid()
The ID of the current thread.
uid()
The ID of the current user.
cpu()
The current CPU number.
gettimeofday_s()
The number of seconds since UNIX epoch (January 1, 1970).
ctime()
+
The following is a list of commonly-used SystemTap functions:
tid()
The ID of the current thread.
uid()
The ID of the current user.
cpu()
The current CPU number.
gettimeofday_s()
The number of seconds since UNIX epoch (January 1, 1970).
ctime()
Convert number of seconds since UNIX epoch to date. -
pp()
A string describing the probe point currently being handled.
thread_indent()
+
pp()
A string describing the probe point currently being handled.
thread_indent()
This particular function is quite useful in providing you with a way to better organize your print results. The function takes one argument, an indentation delta, which indicates how many @@ -112,10 +112,10 @@ probe kernel.function("*@net/socket.c").return 4699 ftp(7223): <- sock_map_file 4715 ftp(7223): <- sock_map_fd 4732 ftp(7223): <- sys_socket -4775 ftp(7223): <- sys_socketcall
This sample output contains the following information:
  • The time (in microseconds) since the initial thread_indent() call for the thread (included in the string from thread_indent()).
  • The process name (and its corresponding ID) that made the function call (included in the string from thread_indent()).
  • An arrow signifying whether the call was an entry (<-) or an exit (->); the indentations help you match specific function call entries with their corresponding exits.
  • The name of the function called by the process.
name
Identifies the name of a specific system call. This variable can +4775 ftp(7223): <- sys_socketcall
This sample output contains the following information:
  • The time (in microseconds) since the initial thread_indent() call for the thread (included in the string from thread_indent()).
  • The process name (and its corresponding ID) that made the function call (included in the string from thread_indent()).
  • An arrow signifying whether the call was an entry (<-) or an exit (->); the indentations help you match specific function call entries with their corresponding exits.
  • The name of the function called by the process.
name
Identifies the name of a specific system call. This variable can only be used in probes that use the event syscall.system_call. -
target()
+
target()
Used in conjunction with stap script -x process ID or stap diff --git a/SystemTap_Beginners_Guide/targetavailable.html b/SystemTap_Beginners_Guide/targetavailable.html index d30d373b..2cb0fa6c 100644 --- a/SystemTap_Beginners_Guide/targetavailable.html +++ b/SystemTap_Beginners_Guide/targetavailable.html @@ -1,6 +1,6 @@ 3.3.2.3. Checking Target Variable Availability

- ⁠3.3.2.3. Checking Target Variable Availability

+ ⁠3.3.2.3. Checking Target Variable Availability
As code evolves the target variables available may change. The @defined makes it easier to handle those variations in the available target variables. diff --git a/SystemTap_Beginners_Guide/targetvariables.html b/SystemTap_Beginners_Guide/targetvariables.html index 193139b8..07423353 100644 --- a/SystemTap_Beginners_Guide/targetvariables.html +++ b/SystemTap_Beginners_Guide/targetvariables.html @@ -1,6 +1,6 @@ 3.3.2. Target Variables

- ⁠3.3.2. Target Variables

+ ⁠3.3.2. Target Variables
The probe events that map to actual locations in the code (for example kernel.function("function") and kernel.statement("statement")) @@ -28,6 +28,10 @@ external variable or a file local static variable defined in another file then it can be referenced through “@var("varname@src/file.c")”.
+It is also supported to specify an executable or library file path as the +second argument, as in +“@var("varname", "/path/to/exe/or/lib")” +
SystemTap tracks the typing information of the target variable and can examine the fields of a structure with the -> operator. The -> operator can be chained to look at data structures @@ -69,7 +73,7 @@ Obtain the string at address from kernel memory. Obtain the string at address from the kernel memory and limits the string to n bytes.

- ⁠3.3.2.1. Pretty Printing Target Variables

+ ⁠3.3.2.1. Pretty Printing Target Variables
SystemTap scripts are often used to observe what is happening within the code. In many cases just printing the values of the various context variables diff --git a/SystemTap_Beginners_Guide/threadtimessect.html b/SystemTap_Beginners_Guide/threadtimessect.html index 85f0ea0e..b57c6b2f 100644 --- a/SystemTap_Beginners_Guide/threadtimessect.html +++ b/SystemTap_Beginners_Guide/threadtimessect.html @@ -1,6 +1,6 @@ 5.3.3. Determining Time Spent in Kernel and User Space

- ⁠5.3.3. Determining Time Spent in Kernel and User Space

This section illustrates how to determine the amount of time any given thread is spending in either kernel or user-space.
thread-times.stp
+ ⁠5.3.3. Determining Time Spent in Kernel and User Space
This section illustrates how to determine the amount of time any given thread is spending in either kernel or user-space.
thread-times.stp
#! /usr/bin/env stap
 
 probe perf.sw.cpu_clock!, timer.profile {
@@ -44,7 +44,7 @@ probe timer.s(5), end {
   delete tids
 }
 
-
thread-times.stp lists the top 20 processes currently taking up CPU time within a 5-second sample, along with the total number of CPU ticks made during the sample. The output of this script also notes the percentage of CPU time each process used, as well as whether that time was spent in kernel space or user space.
thread-times.stp lists the top 20 processes currently taking up CPU time within a 5-second sample, along with the total number of CPU ticks made during the sample. The output of this script also notes the percentage of CPU time each process used, as well as whether that time was spent in kernel space or user space.
⁠

Example 5.15. thread-times.stp Sample Output

  tid   %user %kernel (of 20002 ticks)
     0   0.00%  87.88%
 32169   5.24%   0.03%
diff --git a/SystemTap_Beginners_Guide/timeoutssect.html b/SystemTap_Beginners_Guide/timeoutssect.html
index c53b5606..ff1c0e9f 100644
--- a/SystemTap_Beginners_Guide/timeoutssect.html
+++ b/SystemTap_Beginners_Guide/timeoutssect.html
@@ -1,6 +1,6 @@
 
 5.3.4. Monitoring Polling Applications

- ⁠5.3.4. Monitoring Polling Applications

+ ⁠5.3.4. Monitoring Polling Applications
This section describes how to identify and monitor which applications are polling. Doing so allows you to track unnecessary or excessive polling, which can help you pinpoint areas for improvement in terms of CPU usage and power savings. @@ -122,7 +122,7 @@ probe prometheus { of the following system calls completed due to time expiring rather than due to an actual event occurring: -
  • poll
  • select
  • epoll
  • itimer
  • futex
  • nanosleep
  • signal
⁠

Example 5.16. timeout.stp Sample Output

  uid |   poll  select   epoll  itimer   futex nanosle  signal| process
 28937 | 148793       0       0    4727   37288       0       0| firefox
 22945 |      0   56949       0       1       0       0       0| scim-bridge
diff --git a/SystemTap_Beginners_Guide/topsyssect.html b/SystemTap_Beginners_Guide/topsyssect.html
index 9000a108..88358d4f 100644
--- a/SystemTap_Beginners_Guide/topsyssect.html
+++ b/SystemTap_Beginners_Guide/topsyssect.html
@@ -1,6 +1,6 @@
 
 5.3.5. Tracking Most Frequently Used System Calls

- ⁠5.3.5. Tracking Most Frequently Used System Calls

+ ⁠5.3.5. Tracking Most Frequently Used System Calls
timeout.stp from Section 5.3.4, “Monitoring Polling Applications” helps you identify which applications are polling by examining a small subset of system calls ( @@ -57,7 +57,7 @@ probe prometheus {
topsys.stp lists the top 20 system calls used by the system per 5-second interval. It also lists how many times each system call was used during that period. Refer to Example 5.17, “topsys.stp Sample Output” for a sample output. -
⁠

Example 5.17. topsys.stp Sample Output

--------------------------------------------------------------
                   SYSCALL      COUNT
              gettimeofday       1857
diff --git a/SystemTap_Beginners_Guide/traceio2sect.html b/SystemTap_Beginners_Guide/traceio2sect.html
index 67b70eca..082d8a7f 100644
--- a/SystemTap_Beginners_Guide/traceio2sect.html
+++ b/SystemTap_Beginners_Guide/traceio2sect.html
@@ -1,6 +1,6 @@
 
 5.2.4. I/O Monitoring (By Device)

- ⁠5.2.4. I/O Monitoring (By Device)

+ ⁠5.2.4. I/O Monitoring (By Device)
This section describes how to monitor I/O activity on a specific device.
traceio2.stp
#! /usr/bin/env stap
@@ -23,7 +23,7 @@ probe vfs.{write,read}
             execname(), pid(), ppfunc(), dev)
 }
 
-
traceio2.stp takes 1 argument: the whole device number. To get this number, use stat -c "0x%D" directory, where directory is located in the device to be monitored.
The usrdev2kerndev() function converts the whole device number into the format understood by the kernel. The output produced by usrdev2kerndev() is used in conjunction with the MKDEV(), MINOR(), and MAJOR() functions to determine the major and minor numbers of a specific device.
The output of traceio2.stp includes the name and ID of any process performing a read/write, the function it is performing (that is, vfs_read or vfs_write), and the kernel device number.
The following example is an excerpt from the full output of stap traceio2.stp 0x805, where 0x805 is the whole device number of /home. /home resides in /dev/sda5, which is the device we wish to monitor.
traceio2.stp takes 1 argument: the whole device number. To get this number, use stat -c "0x%D" directory, where directory is located in the device to be monitored.
The usrdev2kerndev() function converts the whole device number into the format understood by the kernel. The output produced by usrdev2kerndev() is used in conjunction with the MKDEV(), MINOR(), and MAJOR() functions to determine the major and minor numbers of a specific device.
The output of traceio2.stp includes the name and ID of any process performing a read/write, the function it is performing (that is, vfs_read or vfs_write), and the kernel device number.
The following example is an excerpt from the full output of stap traceio2.stp 0x805, where 0x805 is the whole device number of /home. /home resides in /dev/sda5, which is the device we wish to monitor.
⁠

Example 5.9. traceio2.stp Sample Output

[...]
 synergyc(3722) vfs_read 0x800005
 synergyc(3722) vfs_read 0x800005
diff --git a/SystemTap_Beginners_Guide/traceiosect.html b/SystemTap_Beginners_Guide/traceiosect.html
index 9e0c9a0b..636b8930 100644
--- a/SystemTap_Beginners_Guide/traceiosect.html
+++ b/SystemTap_Beginners_Guide/traceiosect.html
@@ -1,6 +1,6 @@
 
 5.2.3. Track Cumulative IO

- ⁠5.2.3. Track Cumulative IO

+ ⁠5.2.3. Track Cumulative IO
This section describes how to track the cumulative amount of I/O to the system.
traceio.stp
#! /usr/bin/env stap
@@ -58,7 +58,7 @@ probe timer.s(1) {
 	addition, it also tracks the cumulative amount of I/O reads and writes done by those ten
 	executables. This information is tracked and printed out in 1-second intervals, and in
 	descending order.
-
+
Note that traceio.stp also uses the local variable $return, which is also used by disktop.stp from Section 5.2.1, “Summarizing Disk Read/Write Traffic”.
In most cases SystemTap can determine a variable's type from the debug information. However, code may use void pointers for variables diff --git a/SystemTap_Beginners_Guide/understanding-how-systemtap-works.html b/SystemTap_Beginners_Guide/understanding-how-systemtap-works.html index d84b23b6..06950344 100644 --- a/SystemTap_Beginners_Guide/understanding-how-systemtap-works.html +++ b/SystemTap_Beginners_Guide/understanding-how-systemtap-works.html @@ -1,28 +1,28 @@ Chapter 3. Understanding How SystemTap Works

SystemTap allows users to write and reuse simple scripts to deeply examine the activities of a running Linux system. These scripts can be designed to extract data, filter it, and summarize it quickly (and safely), enabling the diagnosis of complex performance (or even functional) problems. -
The essential idea behind a SystemTap script is to name +
The essential idea behind a SystemTap script is to name events, and to give them handlers. When SystemTap runs the script, SystemTap monitors for the event; once the event occurs, the Linux kernel then runs the handler as a quick sub-routine, then resumes. -
+
There are several kind of events; entering/exiting a function, timer expiration, session termination, etc. A handler is a series of script language statements that specify the work to be done whenever the event occurs. This work normally includes extracting data from the event context, storing them into internal variables, and printing results.

- ⁠3.1. Architecture

+ ⁠3.1. Architecture
A SystemTap session begins when you run a SystemTap script. This session occurs in the following fashion:
- ⁠

Procedure 3.1. SystemTap Session

  1. + ⁠

    Procedure 3.1. SystemTap Session

    1. First, SystemTap checks the script against the existing tapset library (normally in /usr/share/systemtap/tapset/ for any tapsets used. SystemTap will then substitute any located tapsets with their diff --git a/SystemTap_Beginners_Guide/understanding-tapsets.html b/SystemTap_Beginners_Guide/understanding-tapsets.html index 15263416..f737da45 100644 --- a/SystemTap_Beginners_Guide/understanding-tapsets.html +++ b/SystemTap_Beginners_Guide/understanding-tapsets.html @@ -1,6 +1,6 @@ 3.6. Tapsets

      - ⁠3.6. Tapsets

      + ⁠3.6. Tapsets
      Tapsets are scripts that form a library of pre-written probes and functions to be used in SystemTap scripts. When a user runs a SystemTap script, SystemTap checks the script's probe events diff --git a/SystemTap_Beginners_Guide/useful-systemtap-scripts.html b/SystemTap_Beginners_Guide/useful-systemtap-scripts.html index e610bea7..5d0ab27e 100644 --- a/SystemTap_Beginners_Guide/useful-systemtap-scripts.html +++ b/SystemTap_Beginners_Guide/useful-systemtap-scripts.html @@ -1,8 +1,8 @@ Chapter 5. Useful SystemTap Scripts

      - ⁠Chapter 5. Useful SystemTap Scripts

      This chapter enumerates several SystemTap scripts you can use to monitor and investigate different subsystems. All of these scripts are available at /usr/share/systemtap/testsuite/systemtap.examples/ once you install the systemtap-testsuite RPM.

      + ⁠Chapter 5. Useful SystemTap Scripts

      This chapter enumerates several SystemTap scripts you can use to monitor and investigate different subsystems. All of these scripts are available at /usr/share/systemtap/testsuite/systemtap.examples/ once you install the systemtap-testsuite RPM.

      ⁠5.1. Network

      The following sections showcase scripts that trace network-related functions and build a profile of network activity.

      - ⁠5.1.1. Network Profiling

      This section describes how to profile network activity. nettop.stp provides a glimpse into how much network traffic each process is generating on a machine.
      nettop.stp
      + ⁠5.1.1. Network Profiling
      This section describes how to profile network activity. nettop.stp provides a glimpse into how much network traffic each process is generating on a machine.
      nettop.stp
      #! /usr/bin/env stap
       
       global ifxmit, ifrecv
      @@ -48,7 +48,7 @@ probe timer.ms(5000), end, error
         print_activity()
       }
       
      -
      Note that function print_activity() uses the following +
      Note that function print_activity() uses the following expressions:
      n_xmit ? @sum(ifxmit[pid, dev, exec, uid])/1024 : 0
       n_recv ? @sum(ifrecv[pid, dev, exec, uid])/1024 : 0
      These expressions are if/else conditionals. The first statement is a more concise way of writing the following @@ -80,7 +80,7 @@ else 11362 0 eth0 0 7 0 0 firefox 3897 0 eth0 0 1 0 0 multiload-apple [...]

      - ⁠5.1.2. Tracing Functions Called in Network Socket Code

      This section describes how to trace functions called from the kernel's net/socket.c file. This task helps you identify, in finer detail, how each process interacts with the network at the kernel level.
      socket-trace.stp
      + ⁠5.1.2. Tracing Functions Called in Network Socket Code
      This section describes how to trace functions called from the kernel's net/socket.c file. This task helps you identify, in finer detail, how each process interacts with the network at the kernel level.
      socket-trace.stp
      #! /usr/bin/env stap
       
       probe kernel.function("*@net/socket.c").call {
      @@ -111,7 +111,7 @@ probe kernel.function("*@net/socket.c").return {
       31 scim-bridge(3883):  <- sys_recv
       35 scim-bridge(3883): <- sys_socketcall
       [...]
    Example 5.2, “socket-trace.stp Sample Output” contains a 3-second excerpt of the output for socket-trace.stp. For more information about the output of this script as provided by thread_indent(), refer to SystemTap Functions Example 3.6, “thread_indent.stp”.

- ⁠5.1.3. Monitoring Incoming TCP Connections

+ ⁠5.1.3. Monitoring Incoming TCP Connections
This section illustrates how to monitor incoming TCP connections. This task is useful in identifying any unauthorized, suspicious, or otherwise unwanted network access requests in real time. @@ -137,7 +137,7 @@ probe kernel.{function("tcp_accept"),function("inet_csk_accept")}.return? { ⁠

Example 5.3. tcp_connections.stp Sample Output

UID            CMD    PID   PORT        IP_SOURCE
 0             sshd   3165     22      10.64.0.227
 0             sshd   3165     22      10.64.0.227

- ⁠5.1.4. Monitoring TCP Packets

+ ⁠5.1.4. Monitoring TCP Packets
This section illustrates how to monitor TCP packets received by the system. This is useful in analyzing network traffic generated by applications running on the system.
tcpdumplike.stp
@@ -188,8 +188,8 @@ probe tcp.receive { 209.85.229.147 10.0.2.15 80 21141 0 1 1 0 0 0 209.85.229.118 10.0.2.15 80 63433 0 1 1 0 0 0 [...]

- ⁠5.1.5. Monitoring Network Packets Drops in Kernel

- + ⁠5.1.5. Monitoring Network Packets Drops in Kernel
+ The network stack in Linux can discard packets for various reasons. Some Linux kernels include a tracepoint, kernel.trace("kfree_skb"), which easily tracks where packets are discarded. @@ -220,7 +220,7 @@ probe kernel.trace("kfree_skb") { locations[$location] <<< 1 } # Every 5 seconds report our drop locations probe timer.sec(5) { - printf("\n") + printf("\n%s\n", ctime(gettimeofday_s())) foreach (l in locations-) { printf("%d packets dropped at %s\n", @count(locations[l]), symname(l)) @@ -254,14 +254,17 @@ each tracepoint location with either the function name or the address.
⁠

Example 5.5. dropwatch.stp Sample Output

Monitoring for dropped packets
 
+Tue Nov 17 00:26:51 2020
 1762 packets dropped at unix_stream_recvmsg
 4 packets dropped at tun_do_read
 2 packets dropped at nf_hook_slow
 
+Tue Nov 17 00:26:56 2020
 467 packets dropped at unix_stream_recvmsg
 20 packets dropped at nf_hook_slow
 6 packets dropped at tun_do_read
 
+Tue Nov 17 00:27:01 2020
 446 packets dropped at unix_stream_recvmsg
 4 packets dropped at tun_do_read
 4 packets dropped at nf_hook_slow
diff --git a/SystemTap_Beginners_Guide/userspace-probing.html b/SystemTap_Beginners_Guide/userspace-probing.html
index a47a83a3..c36bad86 100644
--- a/SystemTap_Beginners_Guide/userspace-probing.html
+++ b/SystemTap_Beginners_Guide/userspace-probing.html
@@ -23,7 +23,7 @@ To determine whether the currently running Linux kernel provides the needed utra
 
grep CONFIG_UTRACE /boot/config-`uname -r`
If the Linux kernel supports user-space probing, the command produces the following output:
CONFIG_UTRACE=y

- ⁠4.1. User-Space Events

+ ⁠4.1. User-Space Events
All user-space event probes begin with process. You can limit the process events to a specific running process by specifying the process ID. You can also limit the process events to monitor a particular executable diff --git a/SystemTap_Beginners_Guide/using-systemtap.html b/SystemTap_Beginners_Guide/using-systemtap.html index e02280bc..a0402084 100644 --- a/SystemTap_Beginners_Guide/using-systemtap.html +++ b/SystemTap_Beginners_Guide/using-systemtap.html @@ -1,9 +1,9 @@ Chapter 2. Using SystemTap

This chapter documents how to install SystemTap in the system and explains how to use the stap utility to run SystemTap scripts.

- ⁠2.1. Installation and Setup

To deploy SystemTap, install the SystemTap packages along + ⁠2.1. Installation and Setup
To deploy SystemTap, install the SystemTap packages along with the corresponding set of -devel, -debuginfo, and -debuginfo-common packages for your kernel. If your system has multiple kernels installed and @@ -17,7 +17,7 @@ -debuginfo package of the kernel, not the -debug version of the kernel.

⁠2.1.1. Installing SystemTap

To deploy SystemTap, install the following RPM packages: -
  • systemtap
  • systemtap-runtime
+
  • systemtap
  • systemtap-runtime
To do so, run the following command as root:
yum install systemtap systemtap-runtime
Note that before using SystemTap, you still need to install the required @@ -26,7 +26,7 @@
stap-prep
If this command does not work, try manual installation as described below.

- ⁠2.1.2. Installing Required Kernel Information Packages Manually

+ ⁠2.1.2. Installing Required Kernel Information Packages Manually
SystemTap needs information about the kernel in order to place instrumentation in it (in other words, probe it). This information also allows SystemTap to generate the code for the instrumentation.
@@ -38,7 +38,7 @@ Likewise, the necessary packages for the PAE kernel are kernel-PAE-debuginfo, kernel-PAE-debuginfo-common, and kernel-PAE-devel. -
To determine what kernel your system is currently using, use:
uname -r
+
To determine what kernel your system is currently using, use:
uname -r
For example, if you intend to use SystemTap on kernel version 2.6.18-53.el5 on an i686 machine, download and install the following RPM packages:
  • kernel-debuginfo-2.6.18-53.1.13.el5.i686.rpm
  • kernel-debuginfo-common-2.6.18-53.1.13.el5.i686.rpm
  • kernel-devel-2.6.18-53.1.13.el5.i686.rpm

Important

@@ -73,7 +73,7 @@ debuginfo-install kernel-PAE-2.6.18-53.1.13.el5
Once you have manually downloaded the required packages to the machine, run the following command as root to install them:
rpm --force -ivh package_names

- ⁠2.1.3. Initial Testing

If you are currently using the kernel you intend to probe with + ⁠2.1.3. Initial Testing
If you are currently using the kernel you intend to probe with SystemTap, you can immediately test whether the deployment was successful. If not, you restart the system and load the appropriate kernel. diff --git a/SystemTap_Beginners_Guide/using-usage.html b/SystemTap_Beginners_Guide/using-usage.html index a5f432cf..297727dc 100644 --- a/SystemTap_Beginners_Guide/using-usage.html +++ b/SystemTap_Beginners_Guide/using-usage.html @@ -1,8 +1,8 @@ 2.3. Running SystemTap Scripts

- ⁠2.3. Running SystemTap Scripts

+ ⁠2.3. Running SystemTap Scripts
SystemTap is distributed with a number of command line tools that allow you to monitor the activities of the system. The stap command reads probing instructions from a SystemTap script, translates these instructions into C code, builds a kernel module, and loads it into the running Linux kernel. The staprun command runs SystemTap instrumentation, that is, a kernel module built from SystemTap scripts during a cross-instrumentation. -
Running stap and staprun requires elevated privileges to the system. Because not all users can be granted root access just to run SystemTap, you can allow a non-privileged user to run SystemTap instrumentation on their machine by adding them to one of the following user groups:
stapdev
+
Running stap and staprun requires elevated privileges to the system. Because not all users can be granted root access just to run SystemTap, you can allow a non-privileged user to run SystemTap instrumentation on their machine by adding them to one of the following user groups:
stapdev
Members of this group can use the stap command to run SystemTap scripts, or staprun to run SystemTap instrumentation modules.
Running the stap command involves compiling SystemTap scripts into kernel modules and @@ -10,13 +10,13 @@ to stapdev members. Unfortunately, such privileges also grant effective root access to stapdev members. As a consequence, only grant stapdev group membership to users whom you can trust with root access. -
stapusr
+
stapusr
Members of this group can only use the staprun command to run SystemTap instrumentation modules. In addition, they can only run modules from the /lib/modules/kernel_version/systemtap/ directory. Note that this directory must be owned only by the root user, and must only be writable by the root user.
The stap command reads a SystemTap script either from a file, or from standard input. To tell stap to read a SystemTap script from a file, specify the file name on the command line: -
stap file_name
+
stap file_name
To instruct stap to read a SystemTap script from standard input, use the - switch instead of the file name. Note that any command-line options you wish to use must be inserted before the - switch. For example, to make the output of the stap command more verbose, type: -
echo "probe timer.s(1) {exit()}" | stap -v -
Below is a list of commonly used stap options:
-v
Makes the output of the SystemTap session more +
echo "probe timer.s(1) {exit()}" | stap -v -
Below is a list of commonly used stap options:
-v
Makes the output of the SystemTap session more verbose. You can repeat this option multiple times to provide more details on the script's execution, for example:
stap -vvv script.stp
This option is particularly useful if you encounter any errors in running the script. For more information about common SystemTap script errors, refer to Chapter 6, Understanding SystemTap Errors.
-o file_name
Sends the standard output to a file named file_name.
-S size,count
Limits the maximum size of output files to size megabytes and @@ -30,7 +30,7 @@ target(), refer to SystemTap Functions.
-e 'script'
Uses script rather than a file as input for the SystemTap translator.
-F
Uses SystemTap's flight recorder mode and makes the script a background process. For more information about flight recorder mode, refer to Section 2.3.1, “SystemTap Flight Recorder Mode”.
For more information about the stap command, refer to the stap(1) man page. For more information about the staprun command and cross-instrumentation, refer to Section 2.2, “Generating Instrumentation for Other Computers” or the staprun(8) man page.

- ⁠2.3.1. SystemTap Flight Recorder Mode

+ ⁠2.3.1. SystemTap Flight Recorder Mode
SystemTap's flight recorder mode allows you to run a SystemTap script for long periods of time and just focus on recent output. The flight recorder mode limits the amount of output @@ -41,7 +41,7 @@ There are two variations of the flight recorder mode: In both cases, the SystemTap script runs as a background process.

- ⁠2.3.1.1. In-memory Flight Recorder

+ ⁠2.3.1.1. In-memory Flight Recorder
When flight recorder mode is used without a file name, SystemTap uses a buffer in kernel memory to store the output of the script. Once the SystemTap instrumentation module is loaded and the probes start @@ -65,7 +65,7 @@ using the -s option with the size in megabytes (roun next power over 2) for the buffer. For example, -s2 on the SystemTap command line would specify 2MB for the buffer.

- ⁠2.3.1.2. File Flight Recorder

+ ⁠2.3.1.2. File Flight Recorder
The flight recorder mode can also store data to files. You can control the number and size of the files kept by using the -S option followed by two numerical arguments separated by a comma: the first argument is the maximum size diff --git a/SystemTap_Beginners_Guide/ustack.html b/SystemTap_Beginners_Guide/ustack.html index b7c026f8..d1b205f2 100644 --- a/SystemTap_Beginners_Guide/ustack.html +++ b/SystemTap_Beginners_Guide/ustack.html @@ -1,6 +1,6 @@ 4.3. User-Space Stack Backtraces

- ⁠4.3. User-Space Stack Backtraces

+ ⁠4.3. User-Space Stack Backtraces
The probe point (pp) function indicates which particular event triggered the SystemTap event handler. A probe on the entry into a function would list the function name. diff --git a/SystemTap_Beginners_Guide/utargetvariable.html b/SystemTap_Beginners_Guide/utargetvariable.html index 22bb8a3e..165bee27 100644 --- a/SystemTap_Beginners_Guide/utargetvariable.html +++ b/SystemTap_Beginners_Guide/utargetvariable.html @@ -1,6 +1,6 @@ 4.2. Accessing User-Space Target Variables

- ⁠4.2. Accessing User-Space Target Variables

+ ⁠4.2. Accessing User-Space Target Variables
You can access user-space target variables in the same manner as described in Section 3.3.2, “Target Variables”. In Linux, however, there are separate address spaces for the user and diff --git a/man/dtrace.1.html b/man/dtrace.1.html deleted file mode 100644 index 88844fbe..00000000 --- a/man/dtrace.1.html +++ /dev/null @@ -1,220 +0,0 @@ - -Manpage of DTRACE - -

DTRACE

-Section: User Commands (1)
Index -Return to Main Contents
- -  -

NAME

- -dtrace - Dtrace compatible user application static probe generation tool. -

- - - - -

-  -

SYNOPSIS

- -

-
- -dtrace -s file [OPTIONS] - -

-  -

DESCRIPTION

- -

-The dtrace command converts probe descriptions defined in file.d -into a probe header -file via the -h option -or a probe description file via the -G option. -

-  -

OPTIONS

- -

- -

-
-h - -
-generate a systemtap header file. -

-

-G - -
-generate a systemtap probe definition object file. -

-

-o file - -
-is the name of the output file. If the -G option is given then -the output file will be called file.o; if the -h option is -given then the output file will be called file.h. -

-

-C - -
-run the cpp preprocessor on the input file when the -h option -is given. -

-

-I file - -
-give this include path to cpp when the -C option is given. -

-

-k - -
-keep temporary files, for example the C language source for the --G option. -

-

-  -

EXAMPLES

- -

-Systemtap is source compatible with dtrace user application static -probe support. -Given a file test.d containing: - -
- -

- -

-
-provider sdt_probes 
-{
-  probe test_0 (int type);
-  probe test_1 (struct astruct node);
-};
-struct astruct {int a; int b;};
-
-
- -
- - -

- -Then the command "dtrace -s test.d -G" will create the -probe definition file test.o and the command "dtrace -stest.d -h" will create the probe header file test.h -Subsequently the application can use the generated macros this way: - -
- -

- -

-
-#include "test.h"
- ...
-struct astruct s;
- ...
-SDT_PROBES_TEST_0(value);
- ...
-if (SDT_PROBES_TEST_1_ENABLED())
-    SDT_PROBES_TEST_1(expensive_function(s));
-
-
- -
- - -

- -

-  -

SEMAPHORES

- -

-Semaphores are flag variables used by probes as a way of bypassing -potentially costly processing to prepare arguments for probes that may -not even be active. They are automatically set/cleared by systemtap -when a relevant script is running, so the argument setup cost is only -paid when necessary. These semaphore variables are defined within the -the "test.o" object file, which must therefore be linked into an -application. -

- -Sometimes, semaphore variables are not necessary nor helpful. Skipping -them can simplify the build process, by omitting the extra "test.o" -file. To skip dependence upon semaphore variables, include "<sys/sdt.h>" -within the application before "test.h": - -
- -

- -

-
-#include <sys/sdt.h>
-#include "test.h"
- ...
-struct astruct s;
- ...
-SDT_PROBES_TEST_0(value);
- ...
-if (SDT_PROBES_TEST_1_ENABLED())
-   SDT_PROBES_TEST_1(cheap_function(s));
-
-
- -
- - -

- -In this mode, the ENABLED() test is fixed at 1. -

-  -

SEE ALSO

- - -
-stap(1),
-stappaths(7)
-
-
-
  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/, <systemtap@sourceware.org>. - - -

- -error::reporting(7stap), - - -https://sourceware.org/systemtap/wiki/HowToReportBugs - - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
OPTIONS
-
EXAMPLES
-
SEMAPHORES
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/error::dwarf.7stap.html b/man/error::dwarf.7stap.html deleted file mode 100644 index a006f599..00000000 --- a/man/error::dwarf.7stap.html +++ /dev/null @@ -1,160 +0,0 @@ - -Manpage of ERROR::DWARF - -

ERROR::DWARF

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -error::dwarf - dwarf debuginfo quality problems -

-  -

DESCRIPTION

- -

-Systemtap sometimes relies on ELF/DWARF debuginfo for programs being -instrumented to locate places to probe, or context variables to -read/write, just like a symbolic debugger does. Even though -examination of the program's source code may show variables or lines -where probes may be desired, the compiler must preserve information -about them for systemtap (or a debugger such as gdb) to get pinpoint -access to the desired information. If a script requires such data, -but the compiler did not preserve enough of it, pass-2 errors may -result. -

- -Common conditions that trigger these problems include: -

-

-
debuginfo missing or mismatching
-Sometimes debuginfo is installed, but does not match the binaries being -probed. See the warning::debuginfo man page for more help for -locating correct debuginfo. -

-

compiler version
-Prior to GCC version 4.5, debuginfo quality was fairly limited. -Often developers were advised to build their programs with --O0 -g - -flags to disable optimization. GCC version 4.5 introduced -a facility called "variable-tracking assignments" that allows it -to generate high-quality debuginfo under full --O2 -g - -optimization. It is not perfect, but much better than before. -Note that, due to another gcc bug (PR51358) --O0 -g - -can actually sometimes make debuginfo quality worse than for --O2 -g. - -

-Another related problem involves debuginfo quality for the -prologue area of a function (PR15123), wherein a program -compiled with CFLAGS=-mfentry (especially the kernel, for ftrace) -may lack accurate debuginfo for the entry instructions for gcc -prior to version 4.8. If able, arrange to compile your programs -with --grecord-gcc-switches - -CFLAGS, and/or try rerunning systemtap with - -$PR15123_ASSUME_MFENTRY=1. - - -

-

linux kbuild damaging debuginfo quality
-An upstream kernel commit #2062afb4f804a put --fno-var-tracking-assignments into KCFLAGS, dramatically reducing -debuginfo quality, which can cause debuginfo failures. The simplest -fix is to erase, excise, nay, eradicate this line from the top -level linux Makefile: -

- -KBUILD_CFLAGS += [...] -fno-var-tracking-assignments [...] - -

-

function inlining
-Even modern gcc sometimes has problems with parameters for inlined functions. -It may be necessary to change the script to probe at a slightly different place. -Try a -.statement() probe, instead of a .function() probe, - -somewhere a few source lines into the body of the inlined function. Or try -putting a probe at the call site of the inlined function. Or use the - -if @defined($var) { ... } - - -script language construct to test for the resolvability of the context -variable before using it. -

-

instruction reordering
-Heavily optimized code often smears the instructions from -multiple source statements together. This can leave systemtap with no place -to choose to place a probe, especially a statement probe specified by line -number. Systemtap may advise to try a nearby line number, but these may -not work well either. Consider placing a probe by a statement wildcard -or line number range. -

-

elfutils configuration
-It is possible that the DWARF debuginfo being sought is available, but not in -a format acceptable to the copy of elfutils used by systemtap. For example, -your copy of gcc might produce compressed debuginfo (.zdebug_* ELF -sections or .xz files) while your copy of elfutils might lack -appropriate decompression capabilities. Unfortunately, there is no easy -way to tell if this is the problem. If you're building your own copy -of elfutils, ensure all decompression library headers/libraries are -available at build time. -

-

debuginfo configuration
-Some tools may generate debuginfo that is unsupported by systemtap, such -as the linux kernel CONFIG_DEBUG_INFO_SPLIT (.dwo files) option. -Stick with plain ELF/DWARF (optinally split, Fedora-style), if possible. -

-

-

-  -

ALTERNATIVES

- -

-In order to reduce reliance on ELF/DWARF debuginfo, consider the use of -statically compiled-in instrumentation, such as kernel tracepoints, or -<sys/sdt.h> - -userspace markers. Such instrumentation hook sites are relatively low -cost (just one NOP instruction for sdt.h), and nearly guarantee the -availability of parameter data and a reliable probe site, -all without reliance on debuginfo. -

-  -

SEE ALSO

- - -
-stap(1),
-http://dwarfstd.org/,
-http://sourceware.org/systemtap/wiki/TipContextVariables,
-http://gcc.gnu.org/wiki/Var_Tracking_Assignments,
-warning::debuginfo(7stap),
-warning::buildid(7stap),
-error::reporting(7stap)
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
ALTERNATIVES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/error::fault.7stap.html b/man/error::fault.7stap.html deleted file mode 100644 index 8f945cf6..00000000 --- a/man/error::fault.7stap.html +++ /dev/null @@ -1,70 +0,0 @@ - -Manpage of ERROR::FAULT - -

ERROR::FAULT

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -error::fault - memory access faults -

- - - -

-

-  -

DESCRIPTION

- -

-Read or write faults can occur during the operation of a systemtap -script, if the script causes dereferencing of a pointer that turns out -to be invalid. This can be caused by using context variables that do -not happen to have valid values, or perhaps references to memory that -is unavailable at that moment due to paging. -

- -These fault conditions are benign because they are caught by the -systemtap runtime, which cleanly terminates the script. If quick -termination is not desired, consider using the ---skip-badvars or --suppress-handler-errors or -DMAXERRORS=NN - -stap options, or wrapping relevant parts of the probe handlers in a -try/catch - -block. -

- -It may be possible to adjust the target program, to make it more likely -that needed context variables are paged in when systemtap looks for them. -Consider adding some lightweight processing on the key variables, like a -strlen(foo) - -for a string, or iterating across elements of an array or linked list, -or touching a few bytes of a heap-allocated block. The idea is to trigger -any page faults in the target program, before systemtap would need to (but can't). -  -

SEE ALSO

- - -
-stap(1),
-error::reporting(7stap)
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/error::inode-uprobes.7stap.html b/man/error::inode-uprobes.7stap.html deleted file mode 100644 index 9991dee4..00000000 --- a/man/error::inode-uprobes.7stap.html +++ /dev/null @@ -1,65 +0,0 @@ - -Manpage of ERROR::INODE-UPROBES - -

ERROR::INODE-UPROBES

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -error::inode-uprobes - limitations of inode-uprobes -

-  -

DESCRIPTION

- -

-The uprobes kernel facility introduced in Linux 3.5 aims to supplant the -earlier out-of-tree utrace patch to enable user-space probing. There -have been some functional limitations in inode-uprobes that preclude -some systemtap constructs. Over time, we hope these regressions will -be corrected. -

-

-
function.return probes
-process.function().return - -probes require "return-probes" or "uretprobes" functionality, which was not -implemented in the builtin inode-uprobes until kernel 3.10. If you cannot -upgrade your kernel, consider using -process.statement() - -probes placed on source line numbers at the function's return statements. -

-

function.statement.absolute probes
-In utrace-equipped kernels, systemtap made it possible to address probes -by literal addresses in the process virtual memory address space. The -new inode-uprobes does not have this capability. -

-

-

-  -

SEE ALSO

- - -
-stap(1),
-http://kernelnewbies.org/Linux_3.5,
-http://sourceware.org/systemtap/wiki/utrace,
-error::reporting(7stap)
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/error::pass1.7stap.html b/man/error::pass1.7stap.html deleted file mode 100644 index 936ee838..00000000 --- a/man/error::pass1.7stap.html +++ /dev/null @@ -1,93 +0,0 @@ - -Manpage of ERROR::PASS1 - -

ERROR::PASS1

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -error::pass1 - systemtap pass-1 errors -

-  -

DESCRIPTION

- -Errors that occur during pass 1 (parsing) usually mean -a basic syntax error of some sort occurred in the systemtap script. -There are several classes of problems possible: -

-

-
plain syntax error
-The systemtap script parser detects a large variety of errors, such as -missing operands, bad punctuation. It tries to list what kinds of tokens -it was expecting to see, and will show the region of the source code with -the problem. Please review the -stap(1) - -man page and/or the tutorial, to correct the script's syntax. -

-

grammar ambiguities
-There is at least one known ambiguity in the systemtap grammar. It relates -to the optionality of -; - -(semicolon) separators between statements, and the -++ and -- - -increment/decrement operators. If the parser indicates an error, consider -adding some explicit -; - -separators between nearby statements and try again. -

-

missing command line arguments
-A systemtap script that uses the -$N and @N - -constructs for substituting in command-line options may fail if not -enough options were given on the stap command line. -

-

compatibility changes
-Some versions of systemtap have changed the language incompatibly, -for example by adding the try/catch keywords for exception handling. -In such cases, rerun systemtap with the ---compatibility=VERSION - -option, substituting the last systemtap version where your script -was known to work. You may also check the release-history NEWS file -for compatibility changes. -

-

-  -

GATHERING MORE INFORMATION

- -Increasing the verbosity of pass-1 with an option such as ---vp 1 - -can help pinpoint the problem. -

-  -

SEE ALSO

- - -
-stap(1),
-error::reporting(7stap)
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
GATHERING MORE INFORMATION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/error::pass2.7stap.html b/man/error::pass2.7stap.html deleted file mode 100644 index 6384bfb2..00000000 --- a/man/error::pass2.7stap.html +++ /dev/null @@ -1,155 +0,0 @@ - -Manpage of ERROR::PASS2 - -

ERROR::PASS2

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -error::pass2 - systemtap pass-2 errors -

-  -

DESCRIPTION

- -Errors that occur during pass 2 (elaboration) can have a variety of causes. -Common types include: -

-

-
missing debuginfo
-The script requires debuginfo to resolve a probe point, but could not -find any. See -error::dwarf(7stap) - -and -warning::debuginfo(7stap) - -for more details. -

-

unavailable probe point classes
-Some types of probe points are only available on certain system versions, -architectures, and configurations. For example, user-space -process.* - -probes may require utrace or uprobes capability in the kernel for this -architecture. -

-

unavailable probe points
-Some probe points may be individually unavailable even when their class is -fine. For example, -kprobe.function(foobar) - -may fail if function -foobar - -does not exist in the kernel any more. Debugging or symbol data may be absent for -some types of -.function or .statement - -probes; check for availability of debuginfo. Try the -stap-prep - -program to download possibly-required debuginfo. -Use a wildcard parameter such as -stap -l 'kprobe.function(*foo*)' - -to locate still-existing variants. Use -! or ? - -probe point suffixes to denote optional / preferred-alternatives, to let -the working parts of a script continue. -

-

typos
-There might be a spelling error in the probe point name ("sycsall" vs. -"syscall"). Wildcard probes may not find a match at all in the -tapsets. Recheck the names using -stap -l PROBEPOINT. - -Another common mistake is to use the -. - -operator instead of the correct --> - -when dereferencing context variable subfields or pointers: -$foo->bar->baz - -even if in C one would say -foo->bar.baz. - -

-

unavailable context variables
-Systemtap scripts often wish to refer to variables from the context of the -probed programs using -$variable - -notation. These variables may not always be available, depending on versions -of the compiler, debugging/optimization flags used, architecture, etc. Use -stap -L PROBEPOINT - -to list available context variables for given probes. Use the -@defined() - -expression to test for the resolvability of a context variable expression. -Consider using the -stap --skip-badvars - -option to silently replace misbehaving context variable expressions with zero. -Experiment with the -stap --prologue-searching - -option. -

-

module cache inconsistencies
-Occasionally, the systemtap module cache ($HOME/.systemtap/cache) might -contain obsolete information from a prior system configuration/version, -and produce false results as systemtap attempts to reuse it. Retrying -with -stap --poison-cache ... - -forces new information to be generated. -Note: - -this should not happen and likely represents a systemtap bug. Please -report it. -

-

-  -

GATHERING MORE INFORMATION

- -Increasing the verbosity of pass-2 with an option such as ---vp 02 - -can help pinpoint the problem. -

-  -

SEE ALSO

- - -
-stap(1),
-stap-prep(1),
-stapprobes(3stap),
-probe::*(3stap),
-error::dwarf(7stap),
-error::inode-uprobes(7stap),
-warning::debuginfo(7stap),
-error::reporting(7stap)
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
GATHERING MORE INFORMATION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/error::pass3.7stap.html b/man/error::pass3.7stap.html deleted file mode 100644 index 6d7bb35c..00000000 --- a/man/error::pass3.7stap.html +++ /dev/null @@ -1,62 +0,0 @@ - -Manpage of ERROR::PASS3 - -

ERROR::PASS3

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -error::pass3 - systemtap pass-3 errors -

-  -

DESCRIPTION

- -Errors during pass 3 (translation) occur only rarely. -

-

-
unsupported code generation
-Some script language constructs are not available in every -probe point. For example, the -@perf() - -counter-reading function may only be used in -process.* - -probes. -

-

-  -

GATHERING MORE INFORMATION

- -Increasing the verbosity of pass-3 with an option such as ---vp 002 - -may help pinpoint the problem. -

-  -

SEE ALSO

- - -
-stap(1),
-stapprobes(3stap)
-error::reporting(7stap)
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
GATHERING MORE INFORMATION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/error::pass4.7stap.html b/man/error::pass4.7stap.html deleted file mode 100644 index bbc5bfa0..00000000 --- a/man/error::pass4.7stap.html +++ /dev/null @@ -1,129 +0,0 @@ - -Manpage of ERROR::PASS4 - -

ERROR::PASS4

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -error::pass4 - systemtap pass-4 errors -

- - - -

-  -

DESCRIPTION

- -Errors that occur during pass 4 (compilation) have generally only a few -causes: -

-

-
kernel or OS version changes
-The systemtap runtime and embedded-C fragments in the tapset library -are designed to be portable across a wide range of OS versions. However, -incompatibilities can occur when some OS changes occur, such as kernel -modifications that change functions, types, or macros referenced -by systemtap. Upstream (git://sourceware.org/git/systemtap.git) builds -of systemtap are often quickly updated to include relevant fixes, so try -getting or making an updated build. Reworded: build systemtap from git -for use with very young kernels. -If the issue persists, report the problem to the systemtap developers. -

-

buggy embedded-C code
-Embedded-C code in your own guru-mode script cannot be checked by systemtap, -and is passed through verbatim to the compiler. Errors in such snippets of -code may be found during the pass-4 compiler invocation, though may be hard -to identify by the compiler errors. -

-

incompatible embedded-C code
-The interface standards between systemtap-generated code and embedded-C code -occasionally change. For example, before version 1.8, arguments were passed -using macros -THIS->foo and THIS->__retvalue - -but from version 1.8 onward, using -STAP_ARG_foo and STAP_RETVALUE. - -Adjust your embedded-C code to current standards, or use the -stap --compatible=VERSION - -option to make systemtap use a different one. -

-

compiler bugs and mysteries
-Messages such as "internal compiler error" suggest compiler problems. These -should be reported to the compiler developers in the form of a preprocessed -.i - -file, plus the compiler command line. To gather relevant information, run - -

- -
- -

-
-stap -k --vp 0003 -p4 ....
-
-
- -
- - -

- -Systemtap will report the saved temporary directory, and the compiler -command line it attempted. Go to the directory to find he main generated -file -stap_NNNNN_src.c. - -Force the compiler to produce a preprocessed file with: - -

- -
- -

-
-make -C /lib/modules/`uname -r`/build M=`pwd` stap_NNNNN_src.i
-
-
- -
- - -

- -(note the -.i - -suffix), and the compiler command line should be in the file -.stap_NNNNN_src.i.cmd. - -

-

-  -

SEE ALSO

- - -
-stap(1),
-error::reporting(7stap)
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/error::pass5.7stap.html b/man/error::pass5.7stap.html deleted file mode 100644 index cd53369f..00000000 --- a/man/error::pass5.7stap.html +++ /dev/null @@ -1,154 +0,0 @@ - -Manpage of ERROR::PASS5 - -

ERROR::PASS5

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -error::pass5 - systemtap pass-5 errors -

-  -

DESCRIPTION

- -Errors that occur during pass 5 (execution) can have a variety of causes. -

-

-
exceptional events during script execution
-The systemtap translator and runtime include numerous error checks -that aim to protect the systems and the users from mistakes or -transient conditions. The script may deliberately call the -error() - -tapset function to signal a problem. Some memory needed for -accessing -$context - -variables may be temporarily unavailable. Consider using the -try/catch - -construct to wrap script fragments in exception-handling code. -Consider using the -stap --suppress-handler-errors - -or -stap --skip-badvars - -option. -

-

resource exhaustion
-One of several types of space or time resource limits may be -exceeded by the script, including system overload, too many tuples -to be stored in an array, etc. Some of the error messages identify -the constraint by macro name, which may be individually raised. -Consider using the -stap --suppress-handler-errors - -and/or -stap -g --suppress-time-limits - -options. Extend or disable individual resource limits using the -stap -DSOME_LIMIT=NNNN - -option. The -stap -t - -option may identify those probes that are taking too long. - -

-

remote execution server problems
-If you use the -stap --remote - -option to direct a systemtap script to be executed somewhere else, -ensure that an SSH connection may be made to the remote host, and -that it has the current systemtap runtime installed & available. -

-

installation/permission problems
-It is possible that your copy of systemtap was not correctly -installed. For example, the -/usr/bin/staprun - -program may lack the necessary setuid permissions, or your invoking -userid might not have sufficient privileges (root, or -stapusr - -and related group memberships). Environment -variables may interfere with locating -/usr/libexec/.../stapio. - -

-

security configuration
-SecureBoot or other module signing machinery may be in effect, -preventing .ko module loading. A local or remote -stap-server - -service would be necessary to securely manage keys. This situation -is detected automatically on most kernels, but on some, the -SYSTEMTAP_SIGN - -environment varible may have to be set to trigger this extra -signing-related processing. -

-The normal kernel-module based systemtap backend may be more than -your script requires. Try -stap --runtime=bpfand/orstap --runtime=dyninst - -backends. Though they have inherent limitations, they operate -with lesser privileges and perceived risks. -

-

errors from target program
-The program invoked by the -stap -c CMD - -option may exit with a non-zero code. -

-

uncaught exceptions in the target program
-When using ---runtime=dyninst - -you may encounter an issue where the target program aborts with a -message like "terminate called after throwing an instance -of 'foo_exception'". This is unfortunately a limitation of Dyninst, -which sometimes prevents exceptions from properly unwinding through -instrumented code. -

-

-

-  -

GATHERING MORE INFORMATION

- -Increasing the verbosity of pass-5 -with an option such as ---vp 00001 - -can help pinpoint the problem. -

-  -

SEE ALSO

- - -
-stap(1),
-http://sourceware.org/systemtap/wiki/TipExhaustedResourceErrors,
-error::fault(7stap),
-error::reporting(7stap)
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
GATHERING MORE INFORMATION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/error::process-tracking.7stap.html b/man/error::process-tracking.7stap.html deleted file mode 100644 index 39255c5a..00000000 --- a/man/error::process-tracking.7stap.html +++ /dev/null @@ -1,128 +0,0 @@ - -Manpage of WARNING::PROCESS-TRACKING - -

WARNING::PROCESS-TRACKING

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -warning::process-tracking - process-tracking facilities are not available -

- - - -

-  -

DESCRIPTION

- -These errors and warnings occur when the kernel systemtap is running on -lacks support for user-space process tracking facilities. -

-  -

COMPILE-TIME ERROR

- -The error - -

- -
- -

-
-ERROR: user-space process-tracking facilities not available
-
-
- -
- - -

- -occurs when the script contains a uprobes probe point that the current -kernel does not support. -

-  -

RUNTIME WARNINGS

- -

- -The warning, - -

- -
- -

-
-WARNING: process-tracking facilities are not available in this kernel
-
-
- -
- - -

- -and the related message, - -

- -
- -

-
-WARNING: cannot track target in process '...'
-
-
- -
- - -

- -both occur at runtime when running on a kernel (generally an older -version) that has neither utrace functionality nor an acceptable -substitute. -

- -The script should still load and run. However, probes that rely on -availability of process-tracking facilities will silently fail to -trigger. -

-  -

RESOLVING THE ISSUE

- -If process-tracking functionality is absolutely necessary, either a -kernel version newer than 3.5 is needed, or an older version must be -compiled with appropriate utrace patches. -

-  -

SEE ALSO

- - -
-stap(1),
-error::reporting(7stap)
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
-
COMPILE-TIME ERROR
-
RUNTIME WARNINGS
-
-
RESOLVING THE ISSUE
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/error::reporting.7stap.html b/man/error::reporting.7stap.html deleted file mode 100644 index 6b7e2adc..00000000 --- a/man/error::reporting.7stap.html +++ /dev/null @@ -1,77 +0,0 @@ - -Manpage of ERROR::REPORTING - -

ERROR::REPORTING

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -error::reporting - systemtap error reporting -

-

-  -

COMMERCIAL SUPPORT

- -If you have a commercial support agreement with your OS distributor -that covers this software, we recommend getting your money's worth -by using their problem reporting systems first. -

-  -

COMMUNITY SUPPORT

- -Systemtap community & volunteer developers are eager to hear problem -reports, so they can improve the software. Various ways to contact them -include: -

-

-
public mailing list
-systemtap@sourceware.org -

-

public IRC
-#systemtap on irc.freenode.net, use fpaste.org for snippets of text -

-

public bugzilla
-http://sourceware.org/bugzilla/ -

-

-  -

INFORMATION TO COLLECT

- -In general, please include information about your platform, -systemtap version, your scripts & custom tapsets, systemtap -invocation, actual behavior / errors seen, and expected behavior. -The -stap-report - -script collects useful system/kernel information that helps describe -the OS environment; please include its output. -

-  -

SEE ALSO

- - -
-stap(1),
-stap-report(1),
-http://sourceware.org/systemtap/wiki/
-
-
-
-
- 

Index

-
-
NAME
-
COMMERCIAL SUPPORT
-
COMMUNITY SUPPORT
-
INFORMATION TO COLLECT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/error::sdt.7stap.html b/man/error::sdt.7stap.html deleted file mode 100644 index 9edc34be..00000000 --- a/man/error::sdt.7stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of ERROR::SDT - -

ERROR::SDT

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -error::sdt - <sys/sdt.h> marker failures -

- - - -

-

-  -

DESCRIPTION

- -

-Systemtap's -<sys/sdt.h> - -probes are modeled after the dtrace USDT API, but are implemented -differently. They leave a only a NOP instruction in the userspace -program's text segment, and add an ELF note to the binary with -metadata. This metadata describes the marker's name and parameters. -This encoding is designed to be parseable by multiple tools (not just -systemtap: GDB, the GNU Debugger, also contains support). These allow -the tools to find parameters and their types, wherever they happen to -reside, even without DWARF debuginfo. -

-

- -

-The reason finding parameters is tricky is because the STAP_PROBE / -DTRACE_PROBE markers store an assembly language expression for each -operand, as a result of use of gcc inline-assembly directives. The -compiler is given a broad gcc operand constraint string ("nor") for -the operands, which usually works well. Usually, it does not force -the compiler to load the parameters into or out of registers, which -would slow down an instrumented program. However, some -instrumentation sites with some parameters do not work well with the -default "nor" constraint. -

-

-
unresolveable at run-time
-GCC may emit strings that an assembler could resolve (from the -context of compiling the original program), but a run-time tool -cannot. For example, the operand string might refer to a label of a -local symbol that is not emitted into the ELF object file at all, -which leaves no trace for the run-time. Reference to such parameters -from within systemtap can result in "SDT asm not understood" errors. -

-

too complicated expression
-GCC might synthesize very complicated assembly addressing modes from -complex C data types / pointer expressions. systemtap or gdb may not -be able to parse some valid but complicated expressions. Reference to -such parameters from within systemtap can result in "SDT asm not -understood" errors. -

-

overly restrictive constraint
-GCC might not be able to even compile the original program with the -default "nor" constraint due to shortage of registers or other -reasons. A compile-time gcc error such as "asm operand has impossible -constraints" may result. -

-

-

- -

-There are two general workarounds to this family of problems. -

-

-
change the constraints
-While compiling the original instrumented program, set the -STAP_SDT_ARG_CONSTRAINT - -macro to different constraint strings. See the GCC manual about -various options. For example, on many machine architectures, "r" forces -operands into registers, and "g" leaves operands essentially unconstrained. -

-

revert to debuginfo
-As long as the instrumented program compiles, it may be fine simply to -keep using <sys/sdt.h> but eschew extraction of a few individual -parameters. In the worst case, disable <sys/sdt.h> macros entirely to -eschew the compiled-in instrumentation. If DWARF debuginfo was -generated and preserved, a systemtap script could refer to the -underlying source context variables instead of the positional -STAP_PROBE parameters. -

-

-  -

SEE ALSO

- - -
-stap(1),
-stapprobes(3stap),
-error::dwarf(7stap),
-http://gcc.gnu.org/onlinedocs/gcc/Constraints.html,
-http://sourceware.org/systemtap/wiki/UserSpaceProbeImplementation,
-error::reporting(7stap)
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/function::-.3stap.html b/man/function::-.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/function::-.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/function::HZ.3stap.html b/man/function::HZ.3stap.html deleted file mode 100644 index 2324c472..00000000 --- a/man/function::HZ.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::HZ - -

FUNCTION::HZ

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::HZ - Kernel HZ -  -

SYNOPSIS

- -

-

-    HZ:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the value of the kernel HZ macro, which corresponds to the rate of increase of the jiffies value. -  -

SEE ALSO

- -tapset::timestamp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::MAJOR.3stap.html b/man/function::MAJOR.3stap.html deleted file mode 100644 index cb1aee0f..00000000 --- a/man/function::MAJOR.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::MAJOR - -

FUNCTION::MAJOR

-Section: Device Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::MAJOR - Extract major device number from a kernel device number (kdev_t) -  -

SYNOPSIS

- -

-

-    MAJOR:long(dev:long)
-
- -  -

ARGUMENTS

- -

- -dev -

-Kernel device number to query. -
- -  -

SEE ALSO

- -tapset::dev(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::MINOR.3stap.html b/man/function::MINOR.3stap.html deleted file mode 100644 index 7c431ae0..00000000 --- a/man/function::MINOR.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::MINOR - -

FUNCTION::MINOR

-Section: Device Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::MINOR - Extract minor device number from a kernel device number (kdev_t) -  -

SYNOPSIS

- -

-

-    MINOR:long(dev:long)
-
- -  -

ARGUMENTS

- -

- -dev -

-Kernel device number to query. -
- -  -

SEE ALSO

- -tapset::dev(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::MKDEF.3stap.html b/man/function::MKDEF.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/function::MKDEF.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/function::MKDEV.3stap.html b/man/function::MKDEV.3stap.html deleted file mode 100644 index 729f2e75..00000000 --- a/man/function::MKDEV.3stap.html +++ /dev/null @@ -1,72 +0,0 @@ - -Manpage of FUNCTION::MKDEV - -

FUNCTION::MKDEV

-Section: Device Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::MKDEV - Creates a value that can be compared to a kernel device number (kdev_t) -  -

SYNOPSIS

- -

-

-    MKDEV:long(major:long,minor:long)
-
- -  -

ARGUMENTS

- -

- -major -

-Intended major device number. -
- -

- -minor -

-Intended minor device number. -
- -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::abort.3stap.html b/man/function::abort.3stap.html deleted file mode 100644 index 8bc7e787..00000000 --- a/man/function::abort.3stap.html +++ /dev/null @@ -1,77 +0,0 @@ - -Manpage of FUNCTION::ABORT - -

FUNCTION::ABORT

-Section: Logging Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::abort - Immediately shutting down probing script. -  -

SYNOPSIS

- -

-

-    abort()
-
- -  -

ARGUMENTS

- -

- -None -  -

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'. -  -

SEE ALSO

- -tapset::logging(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::addr.3stap.html b/man/function::addr.3stap.html deleted file mode 100644 index fa4cb572..00000000 --- a/man/function::addr.3stap.html +++ /dev/null @@ -1,77 +0,0 @@ - -Manpage of FUNCTION::ADDR - -

FUNCTION::ADDR

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::addr - Address of the current probe point. -  -

SYNOPSIS

- -

-

-    addr:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Returns the instruction pointer from the current probe's register state. Not all probe types have registers though, in which case zero is returned. The returned address is suitable for use with functions like -symname -and -symdata. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::addr_to_node.3stap.html b/man/function::addr_to_node.3stap.html deleted file mode 100644 index b6af6e39..00000000 --- a/man/function::addr_to_node.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::ADDR_TO_NO - -

FUNCTION::ADDR_TO_NO

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::addr_to_node - Returns which node a given address belongs to within a NUMA system -  -

SYNOPSIS

- -

-

-    addr_to_node:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the address of the faulting memory access -
- -  -

DESCRIPTION

- -

- -This function accepts an address, and returns the node that the given address belongs to in a NUMA system. -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ansi_clear_screen.3stap.html b/man/function::ansi_clear_screen.3stap.html deleted file mode 100644 index 52b506a4..00000000 --- a/man/function::ansi_clear_screen.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::ANSI_CLEAR - -

FUNCTION::ANSI_CLEAR

-Section: Utility functions for using an (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ansi_clear_screen - Move cursor to top left and clear screen. -  -

SYNOPSIS

- -

-

-    ansi_clear_screen()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Sends ansi code for moving cursor to top left and then the ansi code for clearing the screen from the cursor position to the end. -  -

SEE ALSO

- -tapset::ansi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ansi_cursor_hide.3stap.html b/man/function::ansi_cursor_hide.3stap.html deleted file mode 100644 index 0c11ade3..00000000 --- a/man/function::ansi_cursor_hide.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::ANSI_CURSO - -

FUNCTION::ANSI_CURSO

-Section: Utility functions for using an (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ansi_cursor_hide - Hides the cursor. -  -

SYNOPSIS

- -

-

-    ansi_cursor_hide()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Sends ansi code for hiding the cursor. -  -

SEE ALSO

- -tapset::ansi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ansi_cursor_move.3stap.html b/man/function::ansi_cursor_move.3stap.html deleted file mode 100644 index 5e0d5569..00000000 --- a/man/function::ansi_cursor_move.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::ANSI_CURSO - -

FUNCTION::ANSI_CURSO

-Section: Utility functions for using an (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ansi_cursor_move - Move cursor to new coordinates. -  -

SYNOPSIS

- -

-

-    ansi_cursor_move(x:long,y:long)
-
- -  -

ARGUMENTS

- -

- -x -

-Row to move the cursor to. -
- -

- -y -

-Colomn to move the cursor to. -
- -  -

DESCRIPTION

- -

- -Sends ansi code for positioning the cursor at row x and column y. Coordinates start at one, (1,1) is the top-left corner. -  -

SEE ALSO

- -tapset::ansi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ansi_cursor_restore.3stap.html b/man/function::ansi_cursor_restore.3stap.html deleted file mode 100644 index a4596c7a..00000000 --- a/man/function::ansi_cursor_restore.3stap.html +++ /dev/null @@ -1,75 +0,0 @@ - -Manpage of FUNCTION::ANSI_CURSO - -

FUNCTION::ANSI_CURSO

-Section: Utility functions for using an (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ansi_cursor_restore - Restores a previously saved cursor position. -  -

SYNOPSIS

- -

-

-    ansi_cursor_restore()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Sends ansi code for restoring the current cursor position previously saved with -ansi_cursor_save. -  -

SEE ALSO

- -tapset::ansi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ansi_cursor_save.3stap.html b/man/function::ansi_cursor_save.3stap.html deleted file mode 100644 index be954249..00000000 --- a/man/function::ansi_cursor_save.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::ANSI_CURSO - -

FUNCTION::ANSI_CURSO

-Section: Utility functions for using an (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ansi_cursor_save - Saves the cursor position. -  -

SYNOPSIS

- -

-

-    ansi_cursor_save()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Sends ansi code for saving the current cursor position. -  -

SEE ALSO

- -tapset::ansi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ansi_cursor_show.3stap.html b/man/function::ansi_cursor_show.3stap.html deleted file mode 100644 index f446775f..00000000 --- a/man/function::ansi_cursor_show.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::ANSI_CURSO - -

FUNCTION::ANSI_CURSO

-Section: Utility functions for using an (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ansi_cursor_show - Shows the cursor. -  -

SYNOPSIS

- -

-

-    ansi_cursor_show()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Sends ansi code for showing the cursor. -  -

SEE ALSO

- -tapset::ansi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ansi_new_line.3stap.html b/man/function::ansi_new_line.3stap.html deleted file mode 100644 index 769394f7..00000000 --- a/man/function::ansi_new_line.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::ANSI_NEW_L - -

FUNCTION::ANSI_NEW_L

-Section: Utility functions for using an (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ansi_new_line - Move cursor to new line. -  -

SYNOPSIS

- -

-

-    ansi_new_line()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Sends ansi code new line. -  -

SEE ALSO

- -tapset::ansi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ansi_reset_color.3stap.html b/man/function::ansi_reset_color.3stap.html deleted file mode 100644 index 39e82972..00000000 --- a/man/function::ansi_reset_color.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::ANSI_RESET - -

FUNCTION::ANSI_RESET

-Section: Utility functions for using an (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ansi_reset_color - Resets Select Graphic Rendition mode. -  -

SYNOPSIS

- -

-

-    ansi_reset_color()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Sends ansi code to reset foreground, background and color attribute to default values. -  -

SEE ALSO

- -tapset::ansi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ansi_set_color.3stap.html b/man/function::ansi_set_color.3stap.html deleted file mode 100644 index 5ccbbc96..00000000 --- a/man/function::ansi_set_color.3stap.html +++ /dev/null @@ -1,108 +0,0 @@ - -Manpage of FUNCTION::ANSI_SET_C - -

FUNCTION::ANSI_SET_C

-Section: Utility functions for using an (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ansi_set_color - Set the ansi Select Graphic Rendition mode. -  -

SYNOPSIS

- -

-

-1) ansi_set_color(fg:long)
-
- -

-

-2) ansi_set_color(fg:long,bg:long)
-
- -

-

-3) ansi_set_color(fg:long,bg:long,attr:long)
-
- -  -

ARGUMENTS

- -

- -fg -

-Foreground color to set. -
- -

- -bg -

-Background color to set. -
- -

- -attr -

-Color attribute to set. -
- -  -

DESCRIPTION

- -

- -1) Sends ansi code for Select Graphic Rendition mode for the given forground color. Black (30), Blue (34), Green (32), Cyan (36), Red (31), Purple (35), Brown (33), Light Gray (37). -

- -2) Sends ansi code for Select Graphic Rendition mode for the given forground color, Black (30), Blue (34), Green (32), Cyan (36), Red (31), Purple (35), Brown (33), Light Gray (37) and the given background color, Black (40), Red (41), Green (42), Yellow (43), Blue (44), Magenta (45), Cyan (46), White (47). -

- -3) Sends ansi code for Select Graphic Rendition mode for the given forground color, Black (30), Blue (34), Green (32), Cyan (36), Red (31), Purple (35), Brown (33), Light Gray (37), the given background color, Black (40), Red (41), Green (42), Yellow (43), Blue (44), Magenta (45), Cyan (46), White (47) and the color attribute All attributes off (0), Intensity Bold (1), Underline Single (4), Blink Slow (5), Blink Rapid (6), Image Negative (7). -  -

SEE ALSO

- -tapset::ansi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::asmlinkage.3stap.html b/man/function::asmlinkage.3stap.html deleted file mode 100644 index 97625922..00000000 --- a/man/function::asmlinkage.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::ASMLINKAGE - -

FUNCTION::ASMLINKAGE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::asmlinkage - Mark function as declared asmlinkage -  -

SYNOPSIS

- -

-

-    asmlinkage()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Call this function before accessing arguments using the *_arg functions if the probed kernel function was declared asmlinkage in the source. -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::assert.3stap.html b/man/function::assert.3stap.html deleted file mode 100644 index 4f827c2d..00000000 --- a/man/function::assert.3stap.html +++ /dev/null @@ -1,95 +0,0 @@ - -Manpage of FUNCTION::ASSERT - -

FUNCTION::ASSERT

-Section: Logging Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::assert - evaluate assertion -  -

SYNOPSIS

- -

-

-1) assert(expression:long)
-
- -

-

-2) assert(expression:long,msg:string)
-
- -  -

ARGUMENTS

- -

- -expression -

-The expression to evaluate -
- -

- -msg -

-The formatted message string -
- -  -

DESCRIPTION

- -

- -1) This function checks the expression and aborts the current running probe if expression evaluates to zero. Useserror -and may be caught by try{} catch{}. A default message will be displayed. -

- -2) This function checks the expression and aborts the current running probe if expression evaluates to zero. Useserror -and may be caught by try{} catch{}. The specified message will be displayed. -  -

SEE ALSO

- -tapset::logging(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::atomic_long_read.3stap.html b/man/function::atomic_long_read.3stap.html deleted file mode 100644 index 0143f1c0..00000000 --- a/man/function::atomic_long_read.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::ATOMIC_LON - -

FUNCTION::ATOMIC_LON

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::atomic_long_read - Retrieves an atomic long variable from kernel memory -  -

SYNOPSIS

- -

-

-    atomic_long_read:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-pointer to atomic long variable -
- -  -

DESCRIPTION

- -

- -Safely perform the read of an atomic long variable. This will be a NOP on kernels that do not have ATOMIC_LONG_INIT set on the kernel config. -  -

SEE ALSO

- -tapset::atomic(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::atomic_read.3stap.html b/man/function::atomic_read.3stap.html deleted file mode 100644 index 611ffcf9..00000000 --- a/man/function::atomic_read.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::ATOMIC_REA - -

FUNCTION::ATOMIC_REA

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::atomic_read - Retrieves an atomic variable from kernel memory -  -

SYNOPSIS

- -

-

-    atomic_read:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-pointer to atomic variable -
- -  -

DESCRIPTION

- -

- -Safely perform the read of an atomic variable. -  -

SEE ALSO

- -tapset::atomic(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::backtrace.3stap.html b/man/function::backtrace.3stap.html deleted file mode 100644 index 9014bc20..00000000 --- a/man/function::backtrace.3stap.html +++ /dev/null @@ -1,76 +0,0 @@ - -Manpage of FUNCTION::BACKTRACE - -

FUNCTION::BACKTRACE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::backtrace - Hex backtrace of current kernel stack -  -

SYNOPSIS

- -

-

-    backtrace:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns a string of hex addresses that are a backtrace of the kernel stack. Output may be truncated as per maximum string length (MAXSTRINGLEN). See -ubacktrace -for user-space backtrace. -  -

SEE ALSO

- -tapset::context-unwind(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::bytes_to_string.3stap.html b/man/function::bytes_to_string.3stap.html deleted file mode 100644 index dbee7acd..00000000 --- a/man/function::bytes_to_string.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::BYTES_TO_S - -

FUNCTION::BYTES_TO_S

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::bytes_to_string - Human readable string for given bytes -  -

SYNOPSIS

- -

-

-    bytes_to_string:string(bytes:long)
-
- -  -

ARGUMENTS

- -

- -bytes -

-Number of bytes to translate. -
- -  -

DESCRIPTION

- -

- -Returns a string representing the number of bytes (up to 1024 bytes), the number of kilobytes (when less than 1024K) postfixed by 'K', the number of megabytes (when less than 1024M) postfixed by 'M' or the number of gigabytes postfixed by 'G'. If representing K, M or G, and the number is amount is less than 100, it includes a '.' plus the remainer. The returned string will be 5 characters wide (padding with whitespace at the front) unless negative or representing more than 9999G bytes. -  -

SEE ALSO

- -tapset::proc_mem(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::caller.3stap.html b/man/function::caller.3stap.html deleted file mode 100644 index 08d89e3d..00000000 --- a/man/function::caller.3stap.html +++ /dev/null @@ -1,76 +0,0 @@ - -Manpage of FUNCTION::CALLER - -

FUNCTION::CALLER

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::caller - Return name and address of calling function -  -

SYNOPSIS

- -

-

-    caller:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the address and name of the calling function. This is equivalent to calling: sprintf("s -0xx", symname(caller_addr), -caller_addr) -  -

SEE ALSO

- -tapset::context-caller(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::caller_addr.3stap.html b/man/function::caller_addr.3stap.html deleted file mode 100644 index 3f467bd9..00000000 --- a/man/function::caller_addr.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::CALLER_ADD - -

FUNCTION::CALLER_ADD

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::caller_addr - Return caller address -  -

SYNOPSIS

- -

-

-    caller_addr:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the address of the calling function. -  -

SEE ALSO

- -tapset::context-caller(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::callers.3stap.html b/man/function::callers.3stap.html deleted file mode 100644 index e3c42b6e..00000000 --- a/man/function::callers.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::CALLERS - -

FUNCTION::CALLERS

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::callers - Return first n elements of kernel stack backtrace -  -

SYNOPSIS

- -

-

-    callers:string(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-number of levels to descend in the stack (not counting the top level). If n is -1, print the entire stack. -
- -  -

DESCRIPTION

- -

- -This function returns a string of the first n hex addresses from the backtrace of the kernel stack. Output may be truncated as per maximum string length (MAXSTRINGLEN). -  -

SEE ALSO

- -tapset::context-caller(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::cmdline_arg.3stap.html b/man/function::cmdline_arg.3stap.html deleted file mode 100644 index 17877fd0..00000000 --- a/man/function::cmdline_arg.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::CMDLINE_AR - -

FUNCTION::CMDLINE_AR

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::cmdline_arg - Fetch a command line argument -  -

SYNOPSIS

- -

-

-    cmdline_arg:string(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-Argument to get (zero is the program itself) -
- -  -

DESCRIPTION

- -

- -Returns argument the requested argument from the current process or the empty string when there are not that many arguments or there is a problem retrieving the argument. Argument zero is traditionally the command itself. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::cmdline_args.3stap.html b/man/function::cmdline_args.3stap.html deleted file mode 100644 index 3e7c3831..00000000 --- a/man/function::cmdline_args.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of FUNCTION::CMDLINE_AR - -

FUNCTION::CMDLINE_AR

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::cmdline_args - Fetch command line arguments from current process -  -

SYNOPSIS

- -

-

-    cmdline_args:string(n:long,m:long,delim:string)
-
- -  -

ARGUMENTS

- -

- -n -

-First argument to get (zero is normally the program itself) -
- -

- -m -

-Last argument to get (or minus one for all arguments after n) -
- -

- -delim -

-String to use to separate arguments when more than one. -
- -  -

DESCRIPTION

- -

- -Returns arguments from the current process starting with argument number n, up to argument m. If there are less than n arguments, or the arguments cannot be retrieved from the current process, the empty string is returned. If m is smaller than n then all arguments starting from argument n are returned. Argument zero is traditionally the command itself. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::cmdline_str.3stap.html b/man/function::cmdline_str.3stap.html deleted file mode 100644 index 49184beb..00000000 --- a/man/function::cmdline_str.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::CMDLINE_ST - -

FUNCTION::CMDLINE_ST

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::cmdline_str - Fetch all command line arguments from current process -  -

SYNOPSIS

- -

-

-    cmdline_str:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Returns all arguments from the current process delimited by spaces. Returns the empty string when the arguments cannot be retrieved. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::commit.3stap.html b/man/function::commit.3stap.html deleted file mode 100644 index 694067a8..00000000 --- a/man/function::commit.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::COMMIT - -

FUNCTION::COMMIT

-Section: Speculation (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::commit - Write out all output related to a speculation buffer -  -

SYNOPSIS

- -

-

-    commit(id:long)
-
- -  -

ARGUMENTS

- -

- -id -

-of the buffer to store the information in -
- -  -

DESCRIPTION

- -

- -Output all the output for -id -in the order that it was entered into the speculative buffer by -speculative. -  -

SEE ALSO

- -tapset::speculative(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::cpu.3stap.html b/man/function::cpu.3stap.html deleted file mode 100644 index 37c6bcfc..00000000 --- a/man/function::cpu.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::CPU - -

FUNCTION::CPU

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::cpu - Returns the current cpu number -  -

SYNOPSIS

- -

-

-    cpu:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the current cpu number. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::cpu_clock_ms.3stap.html b/man/function::cpu_clock_ms.3stap.html deleted file mode 100644 index 891ba1c4..00000000 --- a/man/function::cpu_clock_ms.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::CPU_CLOCK_ - -

FUNCTION::CPU_CLOCK_

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::cpu_clock_ms - Number of milliseconds on the given cpu's clock -  -

SYNOPSIS

- -

-

-    cpu_clock_ms:long(cpu:long)
-
- -  -

ARGUMENTS

- -

- -cpu -

-Which processor's clock to read -
- -  -

DESCRIPTION

- -

- -This function returns the number of milliseconds on the given cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). -  -

SEE ALSO

- -tapset::timestamp_monotonic(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::cpu_clock_ns.3stap.html b/man/function::cpu_clock_ns.3stap.html deleted file mode 100644 index 8b71a232..00000000 --- a/man/function::cpu_clock_ns.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::CPU_CLOCK_ - -

FUNCTION::CPU_CLOCK_

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::cpu_clock_ns - Number of nanoseconds on the given cpu's clock -  -

SYNOPSIS

- -

-

-    cpu_clock_ns:long(cpu:long)
-
- -  -

ARGUMENTS

- -

- -cpu -

-Which processor's clock to read -
- -  -

DESCRIPTION

- -

- -This function returns the number of nanoseconds on the given cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). -  -

SEE ALSO

- -tapset::timestamp_monotonic(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::cpu_clock_s.3stap.html b/man/function::cpu_clock_s.3stap.html deleted file mode 100644 index d0cb953f..00000000 --- a/man/function::cpu_clock_s.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::CPU_CLOCK_ - -

FUNCTION::CPU_CLOCK_

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::cpu_clock_s - Number of seconds on the given cpu's clock -  -

SYNOPSIS

- -

-

-    cpu_clock_s:long(cpu:long)
-
- -  -

ARGUMENTS

- -

- -cpu -

-Which processor's clock to read -
- -  -

DESCRIPTION

- -

- -This function returns the number of seconds on the given cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). -  -

SEE ALSO

- -tapset::timestamp_monotonic(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::cpu_clock_us.3stap.html b/man/function::cpu_clock_us.3stap.html deleted file mode 100644 index d9aa30e0..00000000 --- a/man/function::cpu_clock_us.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::CPU_CLOCK_ - -

FUNCTION::CPU_CLOCK_

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::cpu_clock_us - Number of microseconds on the given cpu's clock -  -

SYNOPSIS

- -

-

-    cpu_clock_us:long(cpu:long)
-
- -  -

ARGUMENTS

- -

- -cpu -

-Which processor's clock to read -
- -  -

DESCRIPTION

- -

- -This function returns the number of microseconds on the given cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). -  -

SEE ALSO

- -tapset::timestamp_monotonic(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::cpuid.3stap.html b/man/function::cpuid.3stap.html deleted file mode 100644 index ca59f10f..00000000 --- a/man/function::cpuid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::CPUID - -

FUNCTION::CPUID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::cpuid - Returns the current cpu number -  -

SYNOPSIS

- -

-

-    cpuid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the current cpu number. Deprecated in SystemTap 1.4 and removed in SystemTap 1.5. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::cputime_to_msecs.3stap.html b/man/function::cputime_to_msecs.3stap.html deleted file mode 100644 index 02e5c2d5..00000000 --- a/man/function::cputime_to_msecs.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::CPUTIME_TO - -

FUNCTION::CPUTIME_TO

-Section: Task Time Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::cputime_to_msecs - Translates the given cputime into milliseconds -  -

SYNOPSIS

- -

-

-    cputime_to_msecs:long(cputime:long)
-
- -  -

ARGUMENTS

- -

- -cputime -

-Time to convert to milliseconds. -
- -  -

SEE ALSO

- -tapset::task_time(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::cputime_to_string.3stap.html b/man/function::cputime_to_string.3stap.html deleted file mode 100644 index 9e228121..00000000 --- a/man/function::cputime_to_string.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::CPUTIME_TO - -

FUNCTION::CPUTIME_TO

-Section: Task Time Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::cputime_to_string - Human readable string for given cputime -  -

SYNOPSIS

- -

-

-    cputime_to_string:string(cputime:long)
-
- -  -

ARGUMENTS

- -

- -cputime -

-Time to translate. -
- -  -

DESCRIPTION

- -

- -Equivalent to calling: msec_to_string (cputime_to_msecs (cputime). -  -

SEE ALSO

- -tapset::task_time(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::cputime_to_usecs.3stap.html b/man/function::cputime_to_usecs.3stap.html deleted file mode 100644 index 4dc961d5..00000000 --- a/man/function::cputime_to_usecs.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::CPUTIME_TO - -

FUNCTION::CPUTIME_TO

-Section: Task Time Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::cputime_to_usecs - Translates the given cputime into microseconds -  -

SYNOPSIS

- -

-

-    cputime_to_usecs:long(cputime:long)
-
- -  -

ARGUMENTS

- -

- -cputime -

-Time to convert to microseconds. -
- -  -

SEE ALSO

- -tapset::task_time(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ctime.3stap.html b/man/function::ctime.3stap.html deleted file mode 100644 index f2fa652b..00000000 --- a/man/function::ctime.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of FUNCTION::CTIME - -

FUNCTION::CTIME

-Section: Time utility functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ctime - Convert seconds since epoch into human readable date/time string -  -

SYNOPSIS

- -

-

-1) ctime:string(epochsecs:long)
-
- -

-

-2) ctime:string()
-
- -  -

ARGUMENTS

- -

- -epochsecs -

-Number of seconds since epoch (as returned by -gettimeofday_s) -
- -  -

DESCRIPTION

- -

- -1) Takes an argument of seconds since the epoch as returned bygettimeofday_s. Returns a string of the form -

- -2) -"Wed Jun 30 21:49:08 1993" -

- -The string will always be exactly 24 characters. If the time would be unreasonable far in the past (before what can be represented with a 32 bit offset in seconds from the epoch) an error will occur (which can be avoided with try/catch). If the time would be unreasonable far in the future, an error will also occur. -

- -Note that the epoch (zero) corresponds to -

- -"Thu Jan 1 00:00:00 1970" -

- -The earliest full date given by ctime, corresponding to epochsecs -2147483648 is -"Fri Dec 13 20:45:52 1901". The latest full date given by ctime, corresponding to epochsecs 2147483647 is -"Tue Jan 19 03:14:07 2038". -

- -The abbreviations for the days of the week are 'Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', and 'Sat'. The abbreviations for the months are 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', and 'Dec'. -

- -Note that the real C library -ctime -function puts a newline ('\n') character at the end of the string that this function does not. Also note that since the kernel has no concept of timezones, the returned time is always in GMT. -

- -

-  -

SEE ALSO

- -tapset::ctime(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::current_exe_file.3stap.html b/man/function::current_exe_file.3stap.html deleted file mode 100644 index b662ae7d..00000000 --- a/man/function::current_exe_file.3stap.html +++ /dev/null @@ -1,70 +0,0 @@ - -Manpage of FUNCTION::CURRENT_EX - -

FUNCTION::CURRENT_EX

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::current_exe_file - get the file struct pointer for the current task's executable file -  -

SYNOPSIS

- -

-

-    current_exe_file:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the file struct pointer for the current task's executable file. Note that the file struct pointer isn't locked on return. The return value of this function can be passed to -fullpath_struct_file -to get the path from the file struct. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::d_name.3stap.html b/man/function::d_name.3stap.html deleted file mode 100644 index 88ea3485..00000000 --- a/man/function::d_name.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::D_NAME - -

FUNCTION::D_NAME

-Section: Directory-entry (dentry) Tapse (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::d_name - get the dirent name -  -

SYNOPSIS

- -

-

-    d_name:string(dentry:long)
-
- -  -

ARGUMENTS

- -

- -dentry -

-Pointer to dentry. -
- -  -

DESCRIPTION

- -

- -

- -Returns the dirent name (path basename). -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::d_path.3stap.html b/man/function::d_path.3stap.html deleted file mode 100644 index 0b889a82..00000000 --- a/man/function::d_path.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::D_PATH - -

FUNCTION::D_PATH

-Section: Directory-entry (dentry) Tapse (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::d_path - get the full nameidata path -  -

SYNOPSIS

- -

-

-    d_path:string(nd:long)
-
- -  -

ARGUMENTS

- -

- -nd -

-Pointer to nameidata. -
- -  -

DESCRIPTION

- -

- -

- -Returns the full dirent name (full path to the root), like the kernel d_path function. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::delete_stopwatch.3stap.html b/man/function::delete_stopwatch.3stap.html deleted file mode 100644 index 20e23ffa..00000000 --- a/man/function::delete_stopwatch.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of FUNCTION::DELETE_STO - -

FUNCTION::DELETE_STO

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::delete_stopwatch - Remove an existing stopwatch -  -

SYNOPSIS

- -

-

-    delete_stopwatch(name:string)
-
- -  -

ARGUMENTS

- -

- -name -

-the stopwatch name -
- -  -

DESCRIPTION

- -

- -Remove stopwatch -name. -  -

SEE ALSO

- -tapset::stopwatch(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::discard.3stap.html b/man/function::discard.3stap.html deleted file mode 100644 index 8fedd8bd..00000000 --- a/man/function::discard.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::DISCARD - -

FUNCTION::DISCARD

-Section: Speculation (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::discard - Discard all output related to a speculation buffer -  -

SYNOPSIS

- -

-

-    discard(id:long)
-
- -  -

ARGUMENTS

- -

- -id -

-of the buffer to store the information in -
- -  -

SEE ALSO

- -tapset::speculative(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::dump_stack.3stap.html b/man/function::dump_stack.3stap.html deleted file mode 100644 index 840a10a8..00000000 --- a/man/function::dump_stack.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::DUMP_STACK - -

FUNCTION::DUMP_STACK

-Section: Logging Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::dump_stack - Send the kernel backtrace to the kernel trace buffer -  -

SYNOPSIS

- -

-

-    dump_stack()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Print the current kernel backtrace to the kernel trace buffer. not be safely called from all kernel probe contexts, so is restricted to guru mode only. Under the hood, it calls the kernel C API function dump_stack directly. -  -

SEE ALSO

- -tapset::logging(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::egid.3stap.html b/man/function::egid.3stap.html deleted file mode 100644 index 74e11086..00000000 --- a/man/function::egid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::EGID - -

FUNCTION::EGID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::egid - Returns the effective gid of a target process -  -

SYNOPSIS

- -

-

-    egid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the effective gid of a target process -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::env_var.3stap.html b/man/function::env_var.3stap.html deleted file mode 100644 index 5de776b4..00000000 --- a/man/function::env_var.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::ENV_VAR - -

FUNCTION::ENV_VAR

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::env_var - Fetch environment variable from current process -  -

SYNOPSIS

- -

-

-    env_var:string(name:string)
-
- -  -

ARGUMENTS

- -

- -name -

-Name of the environment variable to fetch -
- -  -

DESCRIPTION

- -

- -Returns the contents of the specified environment value for the current process. If the variable isn't set an empty string is returned. -  -

SEE ALSO

- -tapset::context-envvar(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::errno_str.3stap.html b/man/function::errno_str.3stap.html deleted file mode 100644 index 3a96d369..00000000 --- a/man/function::errno_str.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::ERRNO_STR - -

FUNCTION::ERRNO_STR

-Section: Errno Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::errno_str - Symbolic string associated with error code -  -

SYNOPSIS

- -

-

-    errno_str:string(err:long)
-
- -  -

ARGUMENTS

- -

- -err -

-The error number received -
- -  -

DESCRIPTION

- -

- -This function returns the symbolic string associated with the giver error code, such as ENOENT for the number 2, or E#3333 for an out-of-range value such as 3333. -  -

SEE ALSO

- -tapset::errno(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::error.3stap.html b/man/function::error.3stap.html deleted file mode 100644 index 9cb99808..00000000 --- a/man/function::error.3stap.html +++ /dev/null @@ -1,80 +0,0 @@ - -Manpage of FUNCTION::ERROR - -

FUNCTION::ERROR

-Section: Logging Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::error - Send an error message -  -

SYNOPSIS

- -

-

-    error(msg:string)
-
- -  -

ARGUMENTS

- -

- -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. -  -

SEE ALSO

- -tapset::logging(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::euid.3stap.html b/man/function::euid.3stap.html deleted file mode 100644 index 458f4b3c..00000000 --- a/man/function::euid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::EUID - -

FUNCTION::EUID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::euid - Return the effective uid of a target process -  -

SYNOPSIS

- -

-

-    euid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Returns the effective user ID of the target process. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::execname.3stap.html b/man/function::execname.3stap.html deleted file mode 100644 index d34b8dfa..00000000 --- a/man/function::execname.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::EXECNAME - -

FUNCTION::EXECNAME

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::execname - Returns the execname of a target process (or group of processes) -  -

SYNOPSIS

- -

-

-    execname:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Returns the execname of a target process (or group of processes). -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::exit.3stap.html b/man/function::exit.3stap.html deleted file mode 100644 index 6da1d183..00000000 --- a/man/function::exit.3stap.html +++ /dev/null @@ -1,76 +0,0 @@ - -Manpage of FUNCTION::EXIT - -

FUNCTION::EXIT

-Section: Logging Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::exit - Start shutting down probing script. -  -

SYNOPSIS

- -

-

-    exit()
-
- -  -

ARGUMENTS

- -

- -None -  -

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. -  -

SEE ALSO

- -tapset::logging(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::fastcall.3stap.html b/man/function::fastcall.3stap.html deleted file mode 100644 index 9273a209..00000000 --- a/man/function::fastcall.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::FASTCALL - -

FUNCTION::FASTCALL

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::fastcall - Mark function as declared fastcall -  -

SYNOPSIS

- -

-

-    fastcall()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Call this function before accessing arguments using the *_arg functions if the probed kernel function was declared fastcall in the source. -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::format_ipaddr.3stap.html b/man/function::format_ipaddr.3stap.html deleted file mode 100644 index 9d7abd90..00000000 --- a/man/function::format_ipaddr.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::FORMAT_IPA - -

FUNCTION::FORMAT_IPA

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::format_ipaddr - Returns a string representation for an IP address -  -

SYNOPSIS

- -

-

-    format_ipaddr:string(addr:long,family:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the IP address -
- -

- -family -

-the IP address family (either AF_INET or AF_INET6) -
- -  -

SEE ALSO

- -tapset::ip(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ftrace.3stap.html b/man/function::ftrace.3stap.html deleted file mode 100644 index 7b89fdcd..00000000 --- a/man/function::ftrace.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::FTRACE - -

FUNCTION::FTRACE

-Section: Logging Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ftrace - Send a message to the ftrace ring-buffer -  -

SYNOPSIS

- -

-

-    ftrace(msg:string)
-
- -  -

ARGUMENTS

- -

- -msg -

-The formatted message string -
- -  -

DESCRIPTION

- -

- -If the ftrace ring-buffer is configured & available, see /debugfs/tracing/trace for the message. Otherwise, the message may be quietly dropped. An implicit end-of-line is added. -  -

SEE ALSO

- -tapset::logging(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::fullpath_struct_file.3stap.html b/man/function::fullpath_struct_file.3stap.html deleted file mode 100644 index 12a002c6..00000000 --- a/man/function::fullpath_struct_file.3stap.html +++ /dev/null @@ -1,82 +0,0 @@ - -Manpage of FUNCTION::FULLPATH_S - -

FUNCTION::FULLPATH_S

-Section: Directory-entry (dentry) Tapse (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::fullpath_struct_file - get the full path -  -

SYNOPSIS

- -

-

-    fullpath_struct_file:string(task:long,file:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer. -
- -

- -file -

-Pointer to -"struct file". -
- -  -

DESCRIPTION

- -

- -

- -Returns the full dirent name (full path to the root), like the kernel d_path function. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::fullpath_struct_nameidata.3stap.html b/man/function::fullpath_struct_nameidata.3stap.html deleted file mode 100644 index a2be5e41..00000000 --- a/man/function::fullpath_struct_nameidata.3stap.html +++ /dev/null @@ -1,76 +0,0 @@ - -Manpage of FUNCTION::FULLPATH_S - -

FUNCTION::FULLPATH_S

-Section: Directory-entry (dentry) Tapse (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::fullpath_struct_nameidata - get the full nameidata path -  -

SYNOPSIS

- -

-

-    fullpath_struct_nameidata(nd:)
-
- -  -

ARGUMENTS

- -

- -nd -

-Pointer to -"struct nameidata". -
- -  -

DESCRIPTION

- -

- -

- -Returns the full dirent name (full path to the root), like the kernel (and systemtap-tapset) d_path function, with a -"/". -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::fullpath_struct_path.3stap.html b/man/function::fullpath_struct_path.3stap.html deleted file mode 100644 index 02fba772..00000000 --- a/man/function::fullpath_struct_path.3stap.html +++ /dev/null @@ -1,75 +0,0 @@ - -Manpage of FUNCTION::FULLPATH_S - -

FUNCTION::FULLPATH_S

-Section: Directory-entry (dentry) Tapse (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::fullpath_struct_path - get the full path -  -

SYNOPSIS

- -

-

-    fullpath_struct_path:string(path:long)
-
- -  -

ARGUMENTS

- -

- -path -

-Pointer to -"struct path". -
- -  -

DESCRIPTION

- -

- -

- -Returns the full dirent name (full path to the root), like the kernel d_path function. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::get_cycles.3stap.html b/man/function::get_cycles.3stap.html deleted file mode 100644 index 3a967b47..00000000 --- a/man/function::get_cycles.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::GET_CYCLES - -

FUNCTION::GET_CYCLES

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::get_cycles - Processor cycle count -  -

SYNOPSIS

- -

-

-    get_cycles:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the processor cycle counter value if available, else it returns zero. The cycle counter is free running and unsynchronized on each processor. Thus, the order of events cannot determined by comparing the results of the get_cycles function on different processors. -  -

SEE ALSO

- -tapset::timestamp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::get_loadavg_index.3stap.html b/man/function::get_loadavg_index.3stap.html deleted file mode 100644 index 076971df..00000000 --- a/man/function::get_loadavg_index.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::GET_LOADAV - -

FUNCTION::GET_LOADAV

-Section: Kernel Process Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::get_loadavg_index - Get the load average for a specified interval -  -

SYNOPSIS

- -

-

-    get_loadavg_index:long(indx:long)
-
- -  -

ARGUMENTS

- -

- -indx -

-The load average interval to capture. -
- -  -

DESCRIPTION

- -

- -This function returns the load average at a specified interval. The three load average values 1, 5 and 15 minute average corresponds to indexes 0, 1 and 2 of the avenrun array - see linux/sched.h. Please note that the truncated-integer portion of the load average is returned. If the specified index is out-of-bounds, then an error message and exception is thrown. -  -

SEE ALSO

- -tapset::loadavg(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::get_sa_flags.3stap.html b/man/function::get_sa_flags.3stap.html deleted file mode 100644 index 3d5f91aa..00000000 --- a/man/function::get_sa_flags.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::GET_SA_FLA - -

FUNCTION::GET_SA_FLA

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::get_sa_flags - Returns the numeric value of sa_flags -  -

SYNOPSIS

- -

-

-    get_sa_flags:long(act:long)
-
- -  -

ARGUMENTS

- -

- -act -

-address of the sigaction to query. -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::get_sa_handler.3stap.html b/man/function::get_sa_handler.3stap.html deleted file mode 100644 index e04df5ba..00000000 --- a/man/function::get_sa_handler.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::GET_SA_HAN - -

FUNCTION::GET_SA_HAN

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::get_sa_handler - Returns the numeric value of sa_handler -  -

SYNOPSIS

- -

-

-    get_sa_handler:long(act:long)
-
- -  -

ARGUMENTS

- -

- -act -

-address of the sigaction to query. -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::gettimeofday_ms.3stap.html b/man/function::gettimeofday_ms.3stap.html deleted file mode 100644 index 03982127..00000000 --- a/man/function::gettimeofday_ms.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::GETTIMEOFD - -

FUNCTION::GETTIMEOFD

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::gettimeofday_ms - Number of milliseconds since UNIX epoch -  -

SYNOPSIS

- -

-

-    gettimeofday_ms:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the number of milliseconds since the UNIX epoch. -  -

SEE ALSO

- -tapset::timestamp_gtod(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::gettimeofday_ns.3stap.html b/man/function::gettimeofday_ns.3stap.html deleted file mode 100644 index b50e94d5..00000000 --- a/man/function::gettimeofday_ns.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::GETTIMEOFD - -

FUNCTION::GETTIMEOFD

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::gettimeofday_ns - Number of nanoseconds since UNIX epoch -  -

SYNOPSIS

- -

-

-    gettimeofday_ns:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the number of nanoseconds since the UNIX epoch. -  -

SEE ALSO

- -tapset::timestamp_gtod(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::gettimeofday_s.3stap.html b/man/function::gettimeofday_s.3stap.html deleted file mode 100644 index a7a03dcb..00000000 --- a/man/function::gettimeofday_s.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::GETTIMEOFD - -

FUNCTION::GETTIMEOFD

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::gettimeofday_s - Number of seconds since UNIX epoch -  -

SYNOPSIS

- -

-

-    gettimeofday_s:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the number of seconds since the UNIX epoch. -  -

SEE ALSO

- -tapset::timestamp_gtod(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::gettimeofday_us.3stap.html b/man/function::gettimeofday_us.3stap.html deleted file mode 100644 index b6f590ae..00000000 --- a/man/function::gettimeofday_us.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::GETTIMEOFD - -

FUNCTION::GETTIMEOFD

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::gettimeofday_us - Number of microseconds since UNIX epoch -  -

SYNOPSIS

- -

-

-    gettimeofday_us:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the number of microseconds since the UNIX epoch. -  -

SEE ALSO

- -tapset::timestamp_gtod(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::gid.3stap.html b/man/function::gid.3stap.html deleted file mode 100644 index e9e9d95e..00000000 --- a/man/function::gid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::GID - -

FUNCTION::GID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::gid - Returns the group ID of a target process -  -

SYNOPSIS

- -

-

-    gid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the group ID of a target process. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::htonl.3stap.html b/man/function::htonl.3stap.html deleted file mode 100644 index c0ea48b0..00000000 --- a/man/function::htonl.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::HTONL - -

FUNCTION::HTONL

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::htonl - Convert 32-bit long from host to network order -  -

SYNOPSIS

- -

-

-    htonl:long(x:long)
-
- -  -

ARGUMENTS

- -

- -x -

-Value to convert -
- -  -

SEE ALSO

- -tapset::inet(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::htonll.3stap.html b/man/function::htonll.3stap.html deleted file mode 100644 index 2c90f2ef..00000000 --- a/man/function::htonll.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::HTONLL - -

FUNCTION::HTONLL

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::htonll - Convert 64-bit long long from host to network order -  -

SYNOPSIS

- -

-

-    htonll:long(x:long)
-
- -  -

ARGUMENTS

- -

- -x -

-Value to convert -
- -  -

SEE ALSO

- -tapset::inet(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::htons.3stap.html b/man/function::htons.3stap.html deleted file mode 100644 index 8aa18d53..00000000 --- a/man/function::htons.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::HTONS - -

FUNCTION::HTONS

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::htons - Convert 16-bit short from host to network order -  -

SYNOPSIS

- -

-

-    htons:long(x:long)
-
- -  -

ARGUMENTS

- -

- -x -

-Value to convert -
- -  -

SEE ALSO

- -tapset::inet(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::indent.3stap.html b/man/function::indent.3stap.html deleted file mode 100644 index ec305b95..00000000 --- a/man/function::indent.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::INDENT - -

FUNCTION::INDENT

-Section: Utility functions for using an (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::indent - returns an amount of space to indent -  -

SYNOPSIS

- -

-

-    indent:string(delta:long)
-
- -  -

ARGUMENTS

- -

- -delta -

-the amount of space added/removed for each call -
- -  -

DESCRIPTION

- -

- -This function returns a string with appropriate indentation. Call it with a small positive or matching negative delta. Unlike the thread_indent function, the indent does not track individual indent values on a per thread basis. -  -

SEE ALSO

- -tapset::indent(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::indent_depth.3stap.html b/man/function::indent_depth.3stap.html deleted file mode 100644 index d507e68a..00000000 --- a/man/function::indent_depth.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of FUNCTION::INDENT_DEP - -

FUNCTION::INDENT_DEP

-Section: Utility functions for using an (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::indent_depth - returns the global nested-depth -  -

SYNOPSIS

- -

-

-    indent_depth:long(delta:long)
-
- -  -

ARGUMENTS

- -

- -delta -

-the amount of depth added/removed for each call -
- -  -

DESCRIPTION

- -

- -This function returns a number for appropriate indentation, similar to -indent. Call it with a small positive or matching negative delta. Unlike the thread_indent_depth function, the indent does not track individual indent values on a per thread basis. -  -

SEE ALSO

- -tapset::indent(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::inet_get_ip_source.3stap.html b/man/function::inet_get_ip_source.3stap.html deleted file mode 100644 index 948cd5a4..00000000 --- a/man/function::inet_get_ip_source.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::INET_GET_I - -

FUNCTION::INET_GET_I

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::inet_get_ip_source - Provide IP source address string for a kernel socket -  -

SYNOPSIS

- -

-

-    inet_get_ip_source:string(sock:long)
-
- -  -

ARGUMENTS

- -

- -sock -

-pointer to the kernel socket -
- -  -

SEE ALSO

- -tapset::inet_sock(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::inet_get_local_port.3stap.html b/man/function::inet_get_local_port.3stap.html deleted file mode 100644 index 5cbf5b67..00000000 --- a/man/function::inet_get_local_port.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::INET_GET_L - -

FUNCTION::INET_GET_L

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::inet_get_local_port - Provide local port number for a kernel socket -  -

SYNOPSIS

- -

-

-    inet_get_local_port:long(sock:long)
-
- -  -

ARGUMENTS

- -

- -sock -

-pointer to the kernel socket -
- -  -

SEE ALSO

- -tapset::inet_sock(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::inode_name.3stap.html b/man/function::inode_name.3stap.html deleted file mode 100644 index c7354ef9..00000000 --- a/man/function::inode_name.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::INODE_NAME - -

FUNCTION::INODE_NAME

-Section: Directory-entry (dentry) Tapse (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::inode_name - get the inode name -  -

SYNOPSIS

- -

-

-    inode_name:string(inode:long)
-
- -  -

ARGUMENTS

- -

- -inode -

-Pointer to inode. -
- -  -

DESCRIPTION

- -

- -

- -Returns the first path basename associated with the given inode. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::inode_path.3stap.html b/man/function::inode_path.3stap.html deleted file mode 100644 index d98afe56..00000000 --- a/man/function::inode_path.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::INODE_PATH - -

FUNCTION::INODE_PATH

-Section: Directory-entry (dentry) Tapse (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::inode_path - get the path to an inode -  -

SYNOPSIS

- -

-

-    inode_path:string(inode:long)
-
- -  -

ARGUMENTS

- -

- -inode -

-Pointer to inode. -
- -  -

DESCRIPTION

- -

- -

- -Returns the full path associated with the given inode. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::int_arg.3stap.html b/man/function::int_arg.3stap.html deleted file mode 100644 index d099e571..00000000 --- a/man/function::int_arg.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::INT_ARG - -

FUNCTION::INT_ARG

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::int_arg - Return function argument as signed int -  -

SYNOPSIS

- -

-

-    int_arg:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-index of argument to return -
- -  -

DESCRIPTION

- -

- -Return the value of argument n as a signed int (i.e., a 32-bit integer sign-extended to 64 bits). -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ip_ntop.3stap.html b/man/function::ip_ntop.3stap.html deleted file mode 100644 index 99fa6e76..00000000 --- a/man/function::ip_ntop.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::IP_NTOP - -

FUNCTION::IP_NTOP

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ip_ntop - Returns a string representation for an IPv4 address -  -

SYNOPSIS

- -

-

-    ip_ntop:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the IPv4 address represented as an integer -
- -  -

SEE ALSO

- -tapset::ip(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ipmib_filter_key.3stap.html b/man/function::ipmib_filter_key.3stap.html deleted file mode 100644 index ad63afdb..00000000 --- a/man/function::ipmib_filter_key.3stap.html +++ /dev/null @@ -1,97 +0,0 @@ - -Manpage of FUNCTION::IPMIB_FILT - -

FUNCTION::IPMIB_FILT

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ipmib_filter_key - Default filter function for ipmib.* probes -  -

SYNOPSIS

- -

-

-    ipmib_filter_key:long(skb:long,op:long,SourceIsLocal:long)
-
- -  -

ARGUMENTS

- -

- -skb -

-pointer to the struct sk_buff -
- -

- -op -

-value to be counted if -skb -passes the filter -
- -

- -SourceIsLocal -

-1 is local operation and 0 is non-local operation -
- -  -

DESCRIPTION

- -

- -This function is a default filter function. The user can replace this function with their own. The user-supplied filter function returns an index key based on the values in -skb. A return value of 0 means this particular -skb -should be not be counted. -  -

SEE ALSO

- -tapset::ipmib-filter-default(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ipmib_get_proto.3stap.html b/man/function::ipmib_get_proto.3stap.html deleted file mode 100644 index 3b1b7a61..00000000 --- a/man/function::ipmib_get_proto.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of FUNCTION::IPMIB_GET_ - -

FUNCTION::IPMIB_GET_

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ipmib_get_proto - Get the protocol value -  -

SYNOPSIS

- -

-

-    ipmib_get_proto:long(skb:long)
-
- -  -

ARGUMENTS

- -

- -skb -

-pointer to a struct sk_buff -
- -  -

DESCRIPTION

- -

- -Returns the protocol value from -skb. -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ipmib_local_addr.3stap.html b/man/function::ipmib_local_addr.3stap.html deleted file mode 100644 index d990d313..00000000 --- a/man/function::ipmib_local_addr.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of FUNCTION::IPMIB_LOCA - -

FUNCTION::IPMIB_LOCA

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ipmib_local_addr - Get the local ip address -  -

SYNOPSIS

- -

-

-    ipmib_local_addr:long(skb:long,SourceIsLocal:long)
-
- -  -

ARGUMENTS

- -

- -skb -

-pointer to a struct sk_buff -
- -

- -SourceIsLocal -

-flag to indicate whether local operation -
- -  -

DESCRIPTION

- -

- -Returns the local ip address -skb. -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ipmib_remote_addr.3stap.html b/man/function::ipmib_remote_addr.3stap.html deleted file mode 100644 index 7a2a3a04..00000000 --- a/man/function::ipmib_remote_addr.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of FUNCTION::IPMIB_REMO - -

FUNCTION::IPMIB_REMO

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ipmib_remote_addr - Get the remote ip address -  -

SYNOPSIS

- -

-

-    ipmib_remote_addr:long(skb:long,SourceIsLocal:long)
-
- -  -

ARGUMENTS

- -

- -skb -

-pointer to a struct sk_buff -
- -

- -SourceIsLocal -

-flag to indicate whether local operation -
- -  -

DESCRIPTION

- -

- -Returns the remote ip address from -skb. -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ipmib_tcp_local_port.3stap.html b/man/function::ipmib_tcp_local_port.3stap.html deleted file mode 100644 index df028d88..00000000 --- a/man/function::ipmib_tcp_local_port.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of FUNCTION::IPMIB_TCP_ - -

FUNCTION::IPMIB_TCP_

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ipmib_tcp_local_port - Get the local tcp port -  -

SYNOPSIS

- -

-

-    ipmib_tcp_local_port:long(skb:long,SourceIsLocal:long)
-
- -  -

ARGUMENTS

- -

- -skb -

-pointer to a struct sk_buff -
- -

- -SourceIsLocal -

-flag to indicate whether local operation -
- -  -

DESCRIPTION

- -

- -Returns the local tcp port from -skb. -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ipmib_tcp_remote_port.3stap.html b/man/function::ipmib_tcp_remote_port.3stap.html deleted file mode 100644 index 57725f4b..00000000 --- a/man/function::ipmib_tcp_remote_port.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of FUNCTION::IPMIB_TCP_ - -

FUNCTION::IPMIB_TCP_

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ipmib_tcp_remote_port - Get the remote tcp port -  -

SYNOPSIS

- -

-

-    ipmib_tcp_remote_port:long(skb:long,SourceIsLocal:long)
-
- -  -

ARGUMENTS

- -

- -skb -

-pointer to a struct sk_buff -
- -

- -SourceIsLocal -

-flag to indicate whether local operation -
- -  -

DESCRIPTION

- -

- -Returns the remote tcp port from -skb. -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::is_myproc.3stap.html b/man/function::is_myproc.3stap.html deleted file mode 100644 index 829e32de..00000000 --- a/man/function::is_myproc.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::IS_MYPROC - -

FUNCTION::IS_MYPROC

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::is_myproc - Determines if the current probe point has occurred in the user's own process -  -

SYNOPSIS

- -

-

-    is_myproc:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns 1 if the current probe point has occurred in the user's own process. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::is_return.3stap.html b/man/function::is_return.3stap.html deleted file mode 100644 index 22f8ed04..00000000 --- a/man/function::is_return.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::IS_RETURN - -

FUNCTION::IS_RETURN

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::is_return - Whether the current probe context is a return probe -  -

SYNOPSIS

- -

-

-    is_return:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Returns 1 if the current probe context is a return probe, returns 0 otherwise. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::is_sig_blocked.3stap.html b/man/function::is_sig_blocked.3stap.html deleted file mode 100644 index 7a41de89..00000000 --- a/man/function::is_sig_blocked.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::IS_SIG_BLO - -

FUNCTION::IS_SIG_BLO

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::is_sig_blocked - Returns 1 if the signal is currently blocked, or 0 if it is not -  -

SYNOPSIS

- -

-

-    is_sig_blocked:long(task:long,sig:long)
-
- -  -

ARGUMENTS

- -

- -task -

-address of the task_struct to query. -
- -

- -sig -

-the signal number to test. -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::isdigit.3stap.html b/man/function::isdigit.3stap.html deleted file mode 100644 index bdf495fe..00000000 --- a/man/function::isdigit.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::ISDIGIT - -

FUNCTION::ISDIGIT

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::isdigit - Checks for a digit -  -

SYNOPSIS

- -

-

-    isdigit:long(str:string)
-
- -  -

ARGUMENTS

- -

- -str -

-string to check -
- -  -

DESCRIPTION

- -

- -Checks for a digit (0 through 9) as the first character of a string. Returns non-zero if true, and a zero if false. -  -

SEE ALSO

- -tapset::string(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::isinstr.3stap.html b/man/function::isinstr.3stap.html deleted file mode 100644 index 897f2c26..00000000 --- a/man/function::isinstr.3stap.html +++ /dev/null @@ -1,88 +0,0 @@ - -Manpage of FUNCTION::ISINSTR - -

FUNCTION::ISINSTR

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::isinstr - Returns whether a string is a substring of another string -  -

SYNOPSIS

- -

-

-    isinstr:long(s1:string,s2:string)
-
- -  -

ARGUMENTS

- -

- -s1 -

-string to search in -
- -

- -s2 -

-substring to find -
- -  -

DESCRIPTION

- -

- -This function returns 1 if string -s1 -contains -s2, otherwise zero. -  -

SEE ALSO

- -tapset::string(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::jiffies.3stap.html b/man/function::jiffies.3stap.html deleted file mode 100644 index 65eb4593..00000000 --- a/man/function::jiffies.3stap.html +++ /dev/null @@ -1,75 +0,0 @@ - -Manpage of FUNCTION::JIFFIES - -

FUNCTION::JIFFIES

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::jiffies - Kernel jiffies count -  -

SYNOPSIS

- -

-

-    jiffies:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the value of the kernel jiffies variable. This value is incremented periodically by timer interrupts, and may wrap around a 32-bit or 64-bit boundary. See -HZ. -  -

SEE ALSO

- -tapset::timestamp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::json_add_array.3stap.html b/man/function::json_add_array.3stap.html deleted file mode 100644 index 3cc5946f..00000000 --- a/man/function::json_add_array.3stap.html +++ /dev/null @@ -1,88 +0,0 @@ - -Manpage of FUNCTION::JSON_ADD_A - -

FUNCTION::JSON_ADD_A

-Section: JSON Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::json_add_array - Add an array -  -

SYNOPSIS

- -

-

-    json_add_array:long(name:string,description:string)
-
- -  -

ARGUMENTS

- -

- -name -

-The name of the array. -
- -

- -description -

-Array description. An empty string can be used. -
- -  -

DESCRIPTION

- -

- -This function adds a array, setting up everything needed. Arrays contain other metrics, added with -json_add_array_numeric_metric -or -json_add_array_string_metric. -  -

SEE ALSO

- -tapset::json(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::json_add_array_numeric_metric.3stap.html b/man/function::json_add_array_numeric_metric.3stap.html deleted file mode 100644 index dce8bfa0..00000000 --- a/man/function::json_add_array_numeric_metric.3stap.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of FUNCTION::JSON_ADD_A - -

FUNCTION::JSON_ADD_A

-Section: JSON Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::json_add_array_numeric_metric - Add a numeric metric to an array -  -

SYNOPSIS

- -

-

-    json_add_array_numeric_metric:long(array_name:string,metric_name:string,metric_description:string,metric_units:string)
-
- -  -

ARGUMENTS

- -

- -array_name -

-The name of the array the numeric metric should be added to. -
- -

- -metric_name -

-The name of the numeric metric. -
- -

- -metric_description -

-Metric description. An empty string can be used. -
- -

- -metric_units -

-Metic units. An empty string can be used. -
- -  -

DESCRIPTION

- -

- -This function adds a numeric metric to an array, setting up everything needed. -  -

SEE ALSO

- -tapset::json(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::json_add_array_string_metric.3stap.html b/man/function::json_add_array_string_metric.3stap.html deleted file mode 100644 index 4b2ff2d5..00000000 --- a/man/function::json_add_array_string_metric.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of FUNCTION::JSON_ADD_A - -

FUNCTION::JSON_ADD_A

-Section: JSON Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::json_add_array_string_metric - Add a string metric to an array -  -

SYNOPSIS

- -

-

-    json_add_array_string_metric:long(array_name:string,metric_name:string,metric_description:string)
-
- -  -

ARGUMENTS

- -

- -array_name -

-The name of the array the string metric should be added to. -
- -

- -metric_name -

-The name of the string metric. -
- -

- -metric_description -

-Metric description. An empty string can be used. -
- -  -

DESCRIPTION

- -

- -This function adds a string metric to an array, setting up everything needed. -  -

SEE ALSO

- -tapset::json(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::json_add_numeric_metric.3stap.html b/man/function::json_add_numeric_metric.3stap.html deleted file mode 100644 index 7257faa3..00000000 --- a/man/function::json_add_numeric_metric.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of FUNCTION::JSON_ADD_N - -

FUNCTION::JSON_ADD_N

-Section: JSON Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::json_add_numeric_metric - Add a numeric metric -  -

SYNOPSIS

- -

-

-    json_add_numeric_metric:long(name:string,description:string,units:string)
-
- -  -

ARGUMENTS

- -

- -name -

-The name of the numeric metric. -
- -

- -description -

-Metric description. An empty string can be used. -
- -

- -units -

-Metic units. An empty string can be used. -
- -  -

DESCRIPTION

- -

- -This function adds a numeric metric, setting up everything needed. -  -

SEE ALSO

- -tapset::json(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::json_add_string_metric.3stap.html b/man/function::json_add_string_metric.3stap.html deleted file mode 100644 index 485ff44a..00000000 --- a/man/function::json_add_string_metric.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::JSON_ADD_S - -

FUNCTION::JSON_ADD_S

-Section: JSON Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::json_add_string_metric - Add a string metric -  -

SYNOPSIS

- -

-

-    json_add_string_metric:long(name:string,description:string)
-
- -  -

ARGUMENTS

- -

- -name -

-The name of the string metric. -
- -

- -description -

-Metric description. An empty string can be used. -
- -  -

DESCRIPTION

- -

- -This function adds a string metric, setting up everything needed. -  -

SEE ALSO

- -tapset::json(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::json_set_prefix.3stap.html b/man/function::json_set_prefix.3stap.html deleted file mode 100644 index 06bace6a..00000000 --- a/man/function::json_set_prefix.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of FUNCTION::JSON_SET_P - -

FUNCTION::JSON_SET_P

-Section: JSON Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::json_set_prefix - Set the metric prefix. -  -

SYNOPSIS

- -

-

-    json_set_prefix:long(prefix:string)
-
- -  -

ARGUMENTS

- -

- -prefix -

-The prefix name to be used. -
- -  -

DESCRIPTION

- -

- -This function sets the -"prefix", which is the name of the base of the metric hierarchy. Calling this function is optional, by default the name of the systemtap module is used. -  -

SEE ALSO

- -tapset::json(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_buffer_quoted.3stap.html b/man/function::kernel_buffer_quoted.3stap.html deleted file mode 100644 index 713e9127..00000000 --- a/man/function::kernel_buffer_quoted.3stap.html +++ /dev/null @@ -1,100 +0,0 @@ - -Manpage of FUNCTION::KERNEL_BUF - -

FUNCTION::KERNEL_BUF

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_buffer_quoted - Retrieves and quotes buffer from kernel space -  -

SYNOPSIS

- -

-

-1) kernel_buffer_quoted:string(addr:long,inlen:long)
-
- -

-

-2) kernel_buffer_quoted:string(addr:long,inlen:long,outlen:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the kernel space address to retrieve the buffer from -
- -

- -inlen -

-the exact length of the buffer to read -
- -

- -outlen -

-the maximum length of the output string -
- -  -

DESCRIPTION

- -

- -1) Reads inlen characters of a buffer from the given kernel space memory address, and returns up to MAXSTRINGLEN characters, where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note that the string will be surrounded by double quotes. On the rare cases when kernel space data is not accessible at the given address, the address itself is returned as a string, without double quotes. -

- -2) Reads inlen characters of a buffer from the given kernel space memory address, and returns up to outlen characters, where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note that the string will be surrounded by double quotes. On the rare cases when kernel space data is not accessible at the given address, the address itself is returned as a string, without double quotes. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_buffer_quoted_error.3stap.html b/man/function::kernel_buffer_quoted_error.3stap.html deleted file mode 100644 index 1d074d0b..00000000 --- a/man/function::kernel_buffer_quoted_error.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of FUNCTION::KERNEL_BUF - -

FUNCTION::KERNEL_BUF

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_buffer_quoted_error - Retrieves and quotes buffer from kernel space -  -

SYNOPSIS

- -

-

-    kernel_buffer_quoted_error:string(addr:long,inlen:long,outlen:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the kernel space address to retrieve the buffer from -
- -

- -inlen -

-the exact length of the buffer to read -
- -

- -outlen -

-the maximum length of the output string -
- -  -

DESCRIPTION

- -

- -Reads inlen characters of a buffer from the given kernel space memory address, and returns up to outlen characters, where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note that the string will be surrounded by double quotes. On the rare cases when kernel space data is not accessible at the given address, an error is thrown. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_char.3stap.html b/man/function::kernel_char.3stap.html deleted file mode 100644 index 8dcb22b5..00000000 --- a/man/function::kernel_char.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::KERNEL_CHA - -

FUNCTION::KERNEL_CHA

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_char - Retrieves a char value stored in kernel memory -  -

SYNOPSIS

- -

-

-    kernel_char:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to retrieve the char from -
- -  -

DESCRIPTION

- -

- -Returns the char value from a given kernel memory address. Reports an error when reading from the given address fails. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_int.3stap.html b/man/function::kernel_int.3stap.html deleted file mode 100644 index 2d6a664b..00000000 --- a/man/function::kernel_int.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::KERNEL_INT - -

FUNCTION::KERNEL_INT

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_int - Retrieves an int value stored in kernel memory -  -

SYNOPSIS

- -

-

-    kernel_int:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to retrieve the int from -
- -  -

DESCRIPTION

- -

- -Returns the int value from a given kernel memory address. Reports an error when reading from the given address fails. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_long.3stap.html b/man/function::kernel_long.3stap.html deleted file mode 100644 index 3c0e31c7..00000000 --- a/man/function::kernel_long.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::KERNEL_LON - -

FUNCTION::KERNEL_LON

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_long - Retrieves a long value stored in kernel memory -  -

SYNOPSIS

- -

-

-    kernel_long:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to retrieve the long from -
- -  -

DESCRIPTION

- -

- -Returns the long value from a given kernel memory address. Reports an error when reading from the given address fails. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_pointer.3stap.html b/man/function::kernel_pointer.3stap.html deleted file mode 100644 index a2cc1bf9..00000000 --- a/man/function::kernel_pointer.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::KERNEL_POI - -

FUNCTION::KERNEL_POI

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_pointer - Retrieves a pointer value stored in kernel memory -  -

SYNOPSIS

- -

-

-    kernel_pointer:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to retrieve the pointer from -
- -  -

DESCRIPTION

- -

- -Returns the pointer value from a given kernel memory address. Reports an error when reading from the given address fails. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_short.3stap.html b/man/function::kernel_short.3stap.html deleted file mode 100644 index e8db7705..00000000 --- a/man/function::kernel_short.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::KERNEL_SHO - -

FUNCTION::KERNEL_SHO

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_short - Retrieves a short value stored in kernel memory -  -

SYNOPSIS

- -

-

-    kernel_short:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to retrieve the short from -
- -  -

DESCRIPTION

- -

- -Returns the short value from a given kernel memory address. Reports an error when reading from the given address fails. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_string.3stap.html b/man/function::kernel_string.3stap.html deleted file mode 100644 index 52b38603..00000000 --- a/man/function::kernel_string.3stap.html +++ /dev/null @@ -1,93 +0,0 @@ - -Manpage of FUNCTION::KERNEL_STR - -

FUNCTION::KERNEL_STR

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_string - Retrieves string from kernel memory -  -

SYNOPSIS

- -

-

-1) kernel_string:string(addr:long)
-
- -

-

-2) kernel_string:string(addr:long,err_msg:string)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to retrieve the string from -
- -

- -err_msg -

-The error message to return when data isn't available -
- -  -

DESCRIPTION

- -

- -1) This function returns the null terminated C string from a given kernel memory address. Reports an error on string copy fault. -

- -2) This function returns the null terminated C string from a given kernel memory address. Reports the given error message on string copy fault. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_string_n.3stap.html b/man/function::kernel_string_n.3stap.html deleted file mode 100644 index 0c6b50d9..00000000 --- a/man/function::kernel_string_n.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::KERNEL_STR - -

FUNCTION::KERNEL_STR

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_string_n - Retrieves string of given length from kernel memory -  -

SYNOPSIS

- -

-

-    kernel_string_n:string(addr:long,n:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to retrieve the string from -
- -

- -n -

-The maximum length of the string (if not null terminated) -
- -  -

DESCRIPTION

- -

- -Returns the C string of a maximum given length from a given kernel memory address. Reports an error on string copy fault. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_string_quoted.3stap.html b/man/function::kernel_string_quoted.3stap.html deleted file mode 100644 index 33a13ad1..00000000 --- a/man/function::kernel_string_quoted.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::KERNEL_STR - -

FUNCTION::KERNEL_STR

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_string_quoted - Retrieves and quotes string from kernel memory -  -

SYNOPSIS

- -

-

-    kernel_string_quoted:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the kernel memory address to retrieve the string from -
- -  -

DESCRIPTION

- -

- -Returns the null terminated C string from a given kernel memory address where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note that the string will be surrounded by double quotes. If the kernel memory data is not accessible at the given address, the address itself is returned as a string, without double quotes. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_string_quoted_utf16.3stap.html b/man/function::kernel_string_quoted_utf16.3stap.html deleted file mode 100644 index 41dc08b7..00000000 --- a/man/function::kernel_string_quoted_utf16.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::KERNEL_STR - -

FUNCTION::KERNEL_STR

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_string_quoted_utf16 - Quote given kernel UTF-16 string. -  -

SYNOPSIS

- -

-

-    kernel_string_quoted_utf16:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to retrieve the string from -
- -  -

DESCRIPTION

- -

- -This function combines quoting as per -string_quoted -and UTF-16 decoding as per -kernel_string_utf16. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_string_quoted_utf32.3stap.html b/man/function::kernel_string_quoted_utf32.3stap.html deleted file mode 100644 index a872a72e..00000000 --- a/man/function::kernel_string_quoted_utf32.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::KERNEL_STR - -

FUNCTION::KERNEL_STR

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_string_quoted_utf32 - Quote given UTF-32 kernel string. -  -

SYNOPSIS

- -

-

-    kernel_string_quoted_utf32:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to retrieve the string from -
- -  -

DESCRIPTION

- -

- -This function combines quoting as per -string_quoted -and UTF-32 decoding as per -kernel_string_utf32. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_string_utf16.3stap.html b/man/function::kernel_string_utf16.3stap.html deleted file mode 100644 index e5c997dc..00000000 --- a/man/function::kernel_string_utf16.3stap.html +++ /dev/null @@ -1,93 +0,0 @@ - -Manpage of FUNCTION::KERNEL_STR - -

FUNCTION::KERNEL_STR

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_string_utf16 - Retrieves UTF-16 string from kernel memory -  -

SYNOPSIS

- -

-

-1) kernel_string_utf16:string(addr:long)
-
- -

-

-2) kernel_string_utf16:string(addr:long,err_msg:string)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to retrieve the string from -
- -

- -err_msg -

-The error message to return when data isn't available -
- -  -

DESCRIPTION

- -

- -1) This function returns a null terminated UTF-8 string converted from the UTF-16 string at a given kernel memory address. Reports an error on string copy fault or conversion error. -

- -2) This function returns a null terminated UTF-8 string converted from the UTF-16 string at a given kernel memory address. Reports the given error message on string copy fault or conversion error. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::kernel_string_utf32.3stap.html b/man/function::kernel_string_utf32.3stap.html deleted file mode 100644 index 66defd8f..00000000 --- a/man/function::kernel_string_utf32.3stap.html +++ /dev/null @@ -1,93 +0,0 @@ - -Manpage of FUNCTION::KERNEL_STR - -

FUNCTION::KERNEL_STR

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::kernel_string_utf32 - Retrieves UTF-32 string from kernel memory -  -

SYNOPSIS

- -

-

-1) kernel_string_utf32:string(addr:long)
-
- -

-

-2) kernel_string_utf32:string(addr:long,err_msg:string)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to retrieve the string from -
- -

- -err_msg -

-The error message to return when data isn't available -
- -  -

DESCRIPTION

- -

- -1) This function returns a null terminated UTF-8 string converted from the UTF-32 string at a given kernel memory address. Reports an error on string copy fault or conversion error. -

- -2) This function returns a null terminated UTF-8 string converted from the UTF-32 string at a given kernel memory address. Reports the given error message on string copy fault or conversion error. -  -

SEE ALSO

- -tapset::conversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ktime_get_ns.3stap.html b/man/function::ktime_get_ns.3stap.html deleted file mode 100644 index ec892613..00000000 --- a/man/function::ktime_get_ns.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::KTIME_GET_ - -

FUNCTION::KTIME_GET_

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ktime_get_ns - Number of nanoseconds since boot -  -

SYNOPSIS

- -

-

-    ktime_get_ns:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the system ktime. -  -

SEE ALSO

- -tapset::timestamp_monotonic(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::linuxmib_filter_key.3stap.html b/man/function::linuxmib_filter_key.3stap.html deleted file mode 100644 index f8ca8070..00000000 --- a/man/function::linuxmib_filter_key.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of FUNCTION::LINUXMIB_F - -

FUNCTION::LINUXMIB_F

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::linuxmib_filter_key - Default filter function for linuxmib.* probes -  -

SYNOPSIS

- -

-

-    linuxmib_filter_key:long(sk:long,op:long)
-
- -  -

ARGUMENTS

- -

- -sk -

-pointer to the struct sock -
- -

- -op -

-value to be counted if -sk -passes the filter -
- -  -

DESCRIPTION

- -

- -This function is a default filter function. The user can replace this function with their own. The user-supplied filter function returns an index key based on the values in -sk. A return value of 0 means this particular -sk -should be not be counted. -  -

SEE ALSO

- -tapset::linuxmib-filter-default(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::local_clock_ms.3stap.html b/man/function::local_clock_ms.3stap.html deleted file mode 100644 index 7139efe0..00000000 --- a/man/function::local_clock_ms.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::LOCAL_CLOC - -

FUNCTION::LOCAL_CLOC

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::local_clock_ms - Number of milliseconds on the local cpu's clock -  -

SYNOPSIS

- -

-

-    local_clock_ms:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the number of milliseconds on the local cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). -  -

SEE ALSO

- -tapset::timestamp_monotonic(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::local_clock_ns.3stap.html b/man/function::local_clock_ns.3stap.html deleted file mode 100644 index c6110a3b..00000000 --- a/man/function::local_clock_ns.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::LOCAL_CLOC - -

FUNCTION::LOCAL_CLOC

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::local_clock_ns - Number of nanoseconds on the local cpu's clock -  -

SYNOPSIS

- -

-

-    local_clock_ns:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the number of nanoseconds on the local cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). -  -

SEE ALSO

- -tapset::timestamp_monotonic(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::local_clock_s.3stap.html b/man/function::local_clock_s.3stap.html deleted file mode 100644 index 13a4035b..00000000 --- a/man/function::local_clock_s.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::LOCAL_CLOC - -

FUNCTION::LOCAL_CLOC

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::local_clock_s - Number of seconds on the local cpu's clock -  -

SYNOPSIS

- -

-

-    local_clock_s:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the number of seconds on the local cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). -  -

SEE ALSO

- -tapset::timestamp_monotonic(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::local_clock_us.3stap.html b/man/function::local_clock_us.3stap.html deleted file mode 100644 index b75add8f..00000000 --- a/man/function::local_clock_us.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::LOCAL_CLOC - -

FUNCTION::LOCAL_CLOC

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::local_clock_us - Number of microseconds on the local cpu's clock -  -

SYNOPSIS

- -

-

-    local_clock_us:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the number of microseconds on the local cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). -  -

SEE ALSO

- -tapset::timestamp_monotonic(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::log.3stap.html b/man/function::log.3stap.html deleted file mode 100644 index 49daceb0..00000000 --- a/man/function::log.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::LOG - -

FUNCTION::LOG

-Section: Logging Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::log - Send a line to the common trace buffer -  -

SYNOPSIS

- -

-

-    log(msg:string)
-
- -  -

ARGUMENTS

- -

- -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. -  -

SEE ALSO

- -tapset::logging(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::long_arg.3stap.html b/man/function::long_arg.3stap.html deleted file mode 100644 index 9decbd96..00000000 --- a/man/function::long_arg.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::LONG_ARG - -

FUNCTION::LONG_ARG

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::long_arg - Return function argument as signed long -  -

SYNOPSIS

- -

-

-    long_arg:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-index of argument to return -
- -  -

DESCRIPTION

- -

- -Return the value of argument n as a signed long. On architectures where a long is 32 bits, the value is sign-extended to 64 bits. -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::longlong_arg.3stap.html b/man/function::longlong_arg.3stap.html deleted file mode 100644 index 1cc198d8..00000000 --- a/man/function::longlong_arg.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::LONGLONG_A - -

FUNCTION::LONGLONG_A

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::longlong_arg - Return function argument as 64-bit value -  -

SYNOPSIS

- -

-

-    longlong_arg:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-index of argument to return -
- -  -

DESCRIPTION

- -

- -Return the value of argument n as a 64-bit value. -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::matched.3stap.html b/man/function::matched.3stap.html deleted file mode 100644 index 34743585..00000000 --- a/man/function::matched.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::MATCHED - -

FUNCTION::MATCHED

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::matched - Return a given matched subexpression. -  -

SYNOPSIS

- -

-

-    matched:string(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-index to the subexpression to return. 0 corresponds to the entire regular expression. -
- -  -

DESCRIPTION

- -

- -returns the content of the n'th subexpression of the last successful use of the =~ regex matching operator. Returns an empty string if the n'th subexpression was not matched (e.g. due to alternation). Throws an error if the last use of =~ was a failed match, or if fewer than n subexpressions are present in the original regexp. -  -

SEE ALSO

- -tapset::regex(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::matched_str.3stap.html b/man/function::matched_str.3stap.html deleted file mode 100644 index 2f08c485..00000000 --- a/man/function::matched_str.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::MATCHED_ST - -

FUNCTION::MATCHED_ST

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::matched_str - Return the last matched string. -  -

SYNOPSIS

- -

-

-    matched_str:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -returns the string matched by the last successful use of the =~ regexp matching operator. Returns an error if the last use of =~ led to a failed match. -  -

SEE ALSO

- -tapset::regex(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::mdelay.3stap.html b/man/function::mdelay.3stap.html deleted file mode 100644 index b59d3e05..00000000 --- a/man/function::mdelay.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::MDELAY - -

FUNCTION::MDELAY

-Section: Guru tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::mdelay - millisecond delay -  -

SYNOPSIS

- -

-

-    mdelay(ms:long)
-
- -  -

ARGUMENTS

- -

- -ms -

-Number of milliseconds to delay. -
- -  -

DESCRIPTION

- -

- -This function inserts a multi-millisecond busy-delay into a probe handler. It requires guru mode. -  -

SEE ALSO

- -tapset::guru-delay(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::mem_page_size.3stap.html b/man/function::mem_page_size.3stap.html deleted file mode 100644 index e693b8a7..00000000 --- a/man/function::mem_page_size.3stap.html +++ /dev/null @@ -1,67 +0,0 @@ - -Manpage of FUNCTION::MEM_PAGE_S - -

FUNCTION::MEM_PAGE_S

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::mem_page_size - Number of bytes in a page for this architecture -  -

SYNOPSIS

- -

-

-    mem_page_size:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

SEE ALSO

- -tapset::proc_mem(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::modname.3stap.html b/man/function::modname.3stap.html deleted file mode 100644 index 860d63cc..00000000 --- a/man/function::modname.3stap.html +++ /dev/null @@ -1,80 +0,0 @@ - -Manpage of FUNCTION::MODNAME - -

FUNCTION::MODNAME

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::modname - Return the kernel module name loaded at the address -  -

SYNOPSIS

- -

-

-    modname:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The address to map to a kernel module name -
- -  -

DESCRIPTION

- -

- -Returns the module name associated with the given address if known. If not known it will raise an error. If the address was not in a kernel module, but in the kernel itself, then the string -"kernel" -will be returned. -  -

SEE ALSO

- -tapset::context-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::module_name.3stap.html b/man/function::module_name.3stap.html deleted file mode 100644 index 2465ceaf..00000000 --- a/man/function::module_name.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::MODULE_NAM - -

FUNCTION::MODULE_NAM

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::module_name - The module name of the current script -  -

SYNOPSIS

- -

-

-    module_name:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the name of the stap module. Either generated randomly (stap_[0-9a-f]+_[0-9a-f]+) or set by stap -m <module_name>. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::module_size.3stap.html b/man/function::module_size.3stap.html deleted file mode 100644 index 1b6526b1..00000000 --- a/man/function::module_size.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::MODULE_SIZ - -

FUNCTION::MODULE_SIZ

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::module_size - The module size of the current script -  -

SYNOPSIS

- -

-

-    module_size:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the sizes of various sections of the stap module. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::msecs_to_string.3stap.html b/man/function::msecs_to_string.3stap.html deleted file mode 100644 index 55846a0b..00000000 --- a/man/function::msecs_to_string.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of FUNCTION::MSECS_TO_S - -

FUNCTION::MSECS_TO_S

-Section: Task Time Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::msecs_to_string - Human readable string for given milliseconds -  -

SYNOPSIS

- -

-

-    msecs_to_string:string(msecs:long)
-
- -  -

ARGUMENTS

- -

- -msecs -

-Number of milliseconds to translate. -
- -  -

DESCRIPTION

- -

- -Returns a string representing the number of milliseconds as a human readable string consisting of -"XmY.ZZZs", where X is the number of minutes, Y is the number of seconds and ZZZ is the number of milliseconds. -  -

SEE ALSO

- -tapset::task_time(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::nfsderror.3stap.html b/man/function::nfsderror.3stap.html deleted file mode 100644 index d95a0924..00000000 --- a/man/function::nfsderror.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::NFSDERROR - -

FUNCTION::NFSDERROR

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::nfsderror - Convert nfsd error number into string -  -

SYNOPSIS

- -

-

-    nfsderror:string(err:long)
-
- -  -

ARGUMENTS

- -

- -err -

-errnum -
- -  -

DESCRIPTION

- -

- -This function returns a string for the error number passed into the function. -  -

SEE ALSO

- -tapset::nfsderrno(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ngroups.3stap.html b/man/function::ngroups.3stap.html deleted file mode 100644 index 7bd8240e..00000000 --- a/man/function::ngroups.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::NGROUPS - -

FUNCTION::NGROUPS

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ngroups - Number of subexpressions in the last match. -  -

SYNOPSIS

- -

-

-    ngroups:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -returns the number of subexpressions from the last successful use of the =~ regex matching operator. -

- -Note that this number includes subexpressions which are present in the regex but did not match any string; for example, given the regex -"a|(b)", the subexpressions will count the group for (b) regardless of whether it matched a string or not. Throws an error if the last use of =~ was a failed match. -  -

SEE ALSO

- -tapset::regex(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ns_egid.3stap.html b/man/function::ns_egid.3stap.html deleted file mode 100644 index 6fe9dd30..00000000 --- a/man/function::ns_egid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::NS_EGID - -

FUNCTION::NS_EGID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ns_egid - Returns the effective gid of a target process as seen in a user namespace -  -

SYNOPSIS

- -

-

-    ns_egid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the effective gid of a target process as seen in the target user namespace if provided, or the stap process namespace -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ns_euid.3stap.html b/man/function::ns_euid.3stap.html deleted file mode 100644 index 52f9d859..00000000 --- a/man/function::ns_euid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::NS_EUID - -

FUNCTION::NS_EUID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ns_euid - Returns the effective user ID of a target process as seen in a user namespace -  -

SYNOPSIS

- -

-

-    ns_euid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the effective user ID of the target process as seen in the target user namespace if provided, or the stap process namespace. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ns_gid.3stap.html b/man/function::ns_gid.3stap.html deleted file mode 100644 index eaba8930..00000000 --- a/man/function::ns_gid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::NS_GID - -

FUNCTION::NS_GID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ns_gid - Returns the group ID of a target process as seen in a user namespace -  -

SYNOPSIS

- -

-

-    ns_gid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the group ID of a target process as seen in the target user namespace if provided, or the stap process namespace. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ns_pgrp.3stap.html b/man/function::ns_pgrp.3stap.html deleted file mode 100644 index aece3ec3..00000000 --- a/man/function::ns_pgrp.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::NS_PGRP - -

FUNCTION::NS_PGRP

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ns_pgrp - Returns the process group ID of the current process as seen in a pid namespace -  -

SYNOPSIS

- -

-

-    ns_pgrp:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the process group ID of the current process as seen in the target pid namespace if provided, or the stap process namespace. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ns_pid.3stap.html b/man/function::ns_pid.3stap.html deleted file mode 100644 index 8617490f..00000000 --- a/man/function::ns_pid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::NS_PID - -

FUNCTION::NS_PID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ns_pid - Returns the ID of a target process as seen in a pid namespace -  -

SYNOPSIS

- -

-

-    ns_pid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the ID of a target process as seen in the target pid namespace. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ns_ppid.3stap.html b/man/function::ns_ppid.3stap.html deleted file mode 100644 index 859c5a34..00000000 --- a/man/function::ns_ppid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::NS_PPID - -

FUNCTION::NS_PPID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ns_ppid - Returns the process ID of a target process's parent process as seen in a pid namespace -  -

SYNOPSIS

- -

-

-    ns_ppid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function return the process ID of the target proccess's parent process as seen in the target pid namespace if provided, or the stap process namespace. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ns_sid.3stap.html b/man/function::ns_sid.3stap.html deleted file mode 100644 index 2763c9cf..00000000 --- a/man/function::ns_sid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::NS_SID - -

FUNCTION::NS_SID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ns_sid - Returns the session ID of the current process as seen in a pid namespace -  -

SYNOPSIS

- -

-

-    ns_sid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -The namespace-aware session ID of a process is the process group ID of the session leader as seen in the target pid namespace if provided, or the stap process namespace. Session ID is stored in the signal_struct since Kernel 2.6.0. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ns_tid.3stap.html b/man/function::ns_tid.3stap.html deleted file mode 100644 index eef87597..00000000 --- a/man/function::ns_tid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::NS_TID - -

FUNCTION::NS_TID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ns_tid - Returns the thread ID of a target process as seen in a pid namespace -  -

SYNOPSIS

- -

-

-    ns_tid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the thread ID of a target process as seen in the target pid namespace if provided, or the stap process namespace. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ns_uid.3stap.html b/man/function::ns_uid.3stap.html deleted file mode 100644 index ffcfad8b..00000000 --- a/man/function::ns_uid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::NS_UID - -

FUNCTION::NS_UID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ns_uid - Returns the user ID of a target process as seen in a user namespace -  -

SYNOPSIS

- -

-

-    ns_uid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the user ID of the target process as seen in the target user namespace if provided, or the stap process namespace. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::nsecs_to_string.3stap.html b/man/function::nsecs_to_string.3stap.html deleted file mode 100644 index 8c9134b2..00000000 --- a/man/function::nsecs_to_string.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of FUNCTION::NSECS_TO_S - -

FUNCTION::NSECS_TO_S

-Section: Task Time Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::nsecs_to_string - Human readable string for given nanoseconds -  -

SYNOPSIS

- -

-

-    nsecs_to_string:string(nsecs:long)
-
- -  -

ARGUMENTS

- -

- -nsecs -

-Number of nanoseconds to translate. -
- -  -

DESCRIPTION

- -

- -Returns a string representing the number of nanoseconds as a human readable string consisting of -"XmY.ZZZZZZs", where X is the number of minutes, Y is the number of seconds and ZZZZZZZZZ is the number of nanoseconds. -  -

SEE ALSO

- -tapset::task_time(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ntohl.3stap.html b/man/function::ntohl.3stap.html deleted file mode 100644 index cefb8c1f..00000000 --- a/man/function::ntohl.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::NTOHL - -

FUNCTION::NTOHL

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ntohl - Convert 32-bit long from network to host order -  -

SYNOPSIS

- -

-

-    ntohl:long(x:long)
-
- -  -

ARGUMENTS

- -

- -x -

-Value to convert -
- -  -

SEE ALSO

- -tapset::inet(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ntohll.3stap.html b/man/function::ntohll.3stap.html deleted file mode 100644 index 1552bf9c..00000000 --- a/man/function::ntohll.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::NTOHLL - -

FUNCTION::NTOHLL

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ntohll - Convert 64-bit long long from network to host order -  -

SYNOPSIS

- -

-

-    ntohll:long(x:long)
-
- -  -

ARGUMENTS

- -

- -x -

-Value to convert -
- -  -

SEE ALSO

- -tapset::inet(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::ntohs.3stap.html b/man/function::ntohs.3stap.html deleted file mode 100644 index 08f20342..00000000 --- a/man/function::ntohs.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::NTOHS - -

FUNCTION::NTOHS

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ntohs - Convert 16-bit short from network to host order -  -

SYNOPSIS

- -

-

-    ntohs:long(x:long)
-
- -  -

ARGUMENTS

- -

- -x -

-Value to convert -
- -  -

SEE ALSO

- -tapset::inet(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::pages_to_string.3stap.html b/man/function::pages_to_string.3stap.html deleted file mode 100644 index c29e2411..00000000 --- a/man/function::pages_to_string.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::PAGES_TO_S - -

FUNCTION::PAGES_TO_S

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::pages_to_string - Turns pages into a human readable string -  -

SYNOPSIS

- -

-

-    pages_to_string:string(pages:long)
-
- -  -

ARGUMENTS

- -

- -pages -

-Number of pages to translate. -
- -  -

DESCRIPTION

- -

- -Multiplies pages by -page_size -to get the number of bytes and returns the result of -bytes_to_string. -  -

SEE ALSO

- -tapset::proc_mem(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::panic.3stap.html b/man/function::panic.3stap.html deleted file mode 100644 index 791ebc4e..00000000 --- a/man/function::panic.3stap.html +++ /dev/null @@ -1,80 +0,0 @@ - -Manpage of FUNCTION::PANIC - -

FUNCTION::PANIC

-Section: Guru tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::panic - trigger a panic -  -

SYNOPSIS

- -

-

-    panic(msg:string)
-
- -  -

ARGUMENTS

- -

- -msg -

-message to pass to kernel's -panic -function -
- -  -

DESCRIPTION

- -

- -This function triggers an immediate panic of the running kernel with a user-specified panic message. It requires guru mode. -  -

SEE ALSO

- -tapset::panic(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::pexecname.3stap.html b/man/function::pexecname.3stap.html deleted file mode 100644 index b775a484..00000000 --- a/man/function::pexecname.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::PEXECNAME - -

FUNCTION::PEXECNAME

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::pexecname - Returns the execname of a target process's parent process -  -

SYNOPSIS

- -

-

-    pexecname:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the execname of a target process's parent procces. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::pgrp.3stap.html b/man/function::pgrp.3stap.html deleted file mode 100644 index 9efca318..00000000 --- a/man/function::pgrp.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::PGRP - -

FUNCTION::PGRP

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::pgrp - Returns the process group ID of the current process -  -

SYNOPSIS

- -

-

-    pgrp:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the process group ID of the current process. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::pid.3stap.html b/man/function::pid.3stap.html deleted file mode 100644 index 42fc8a56..00000000 --- a/man/function::pid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::PID - -

FUNCTION::PID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::pid - Returns the ID of a target process -  -

SYNOPSIS

- -

-

-    pid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the ID of a target process. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::pid2execname.3stap.html b/man/function::pid2execname.3stap.html deleted file mode 100644 index a4567077..00000000 --- a/man/function::pid2execname.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::PID2EXECNA - -

FUNCTION::PID2EXECNA

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::pid2execname - The name of the given process identifier -  -

SYNOPSIS

- -

-

-    pid2execname:string(pid:long)
-
- -  -

ARGUMENTS

- -

- -pid -

-process identifier -
- -  -

DESCRIPTION

- -

- -Return the name of the given process id. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/function::pid2task.3stap.html b/man/function::pid2task.3stap.html deleted file mode 100644 index f29c535a..00000000 --- a/man/function::pid2task.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::PID2TASK - -

FUNCTION::PID2TASK

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::pid2task - The task_struct of the given process identifier -  -

SYNOPSIS

- -

-

-    pid2task:long(pid:long)
-
- -  -

ARGUMENTS

- -

- -pid -

-process identifier -
- -  -

DESCRIPTION

- -

- -Return the task struct of the given process id. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::pn.3stap.html b/man/function::pn.3stap.html deleted file mode 100644 index d194303a..00000000 --- a/man/function::pn.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::PN - -

FUNCTION::PN

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::pn - Returns the active probe name -  -

SYNOPSIS

- -

-

-    pn:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the script-level probe point associated with a currently running probe handler, including wild-card expansion effects. Context: The current probe point. -  -

SEE ALSO

- -tapset::pn(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::pnlabel.3stap.html b/man/function::pnlabel.3stap.html deleted file mode 100644 index e9990816..00000000 --- a/man/function::pnlabel.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::PNLABEL - -

FUNCTION::PNLABEL

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::pnlabel - Returns the label name parsed from the probe name -  -

SYNOPSIS

- -

-

-    pnlabel:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This returns the label name as parsed from the script-level probe point. This function will only work if called directly from the body of a '.label' probe point (i.e. no aliases). -  -

CONTEXT

- -

- -The current probe point. -  -

SEE ALSO

- -tapset::pn(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::pointer_arg.3stap.html b/man/function::pointer_arg.3stap.html deleted file mode 100644 index 0fc2b5a3..00000000 --- a/man/function::pointer_arg.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::POINTER_AR - -

FUNCTION::POINTER_AR

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::pointer_arg - Return function argument as pointer value -  -

SYNOPSIS

- -

-

-    pointer_arg:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-index of argument to return -
- -  -

DESCRIPTION

- -

- -Return the unsigned value of argument n, same as ulong_arg. Can be used with any type of pointer. -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::pp.3stap.html b/man/function::pp.3stap.html deleted file mode 100644 index bfe75fb3..00000000 --- a/man/function::pp.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::PP - -

FUNCTION::PP

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::pp - Returns the active probe point -  -

SYNOPSIS

- -

-

-    pp:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the fully-resolved probe point associated with a currently running probe handler, including alias and wild-card expansion effects. Context: The current probe point. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::ppfunc.3stap.html b/man/function::ppfunc.3stap.html deleted file mode 100644 index 25fcddb0..00000000 --- a/man/function::ppfunc.3stap.html +++ /dev/null @@ -1,77 +0,0 @@ - -Manpage of FUNCTION::PPFUNC - -

FUNCTION::PPFUNC

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ppfunc - Returns the function name parsed from pp -  -

SYNOPSIS

- -

-

-    ppfunc:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This returns the function name from the current -pp. Not all -pp -have functions in them, in which case "" is returned. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::ppid.3stap.html b/man/function::ppid.3stap.html deleted file mode 100644 index 6a0a05f5..00000000 --- a/man/function::ppid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::PPID - -

FUNCTION::PPID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ppid - Returns the process ID of a target process's parent process -  -

SYNOPSIS

- -

-

-    ppid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function return the process ID of the target proccess's parent process. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::print_backtrace.3stap.html b/man/function::print_backtrace.3stap.html deleted file mode 100644 index 690366db..00000000 --- a/man/function::print_backtrace.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::PRINT_BACK - -

FUNCTION::PRINT_BACK

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::print_backtrace - Print kernel stack back trace -  -

SYNOPSIS

- -

-

-    print_backtrace()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function is equivalent to print_stack(backtrace), except that deeper stack nesting may be supported. See print_ubacktrace for user-space backtrace. The function does not return a value. -  -

SEE ALSO

- -tapset::context-unwind(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::print_backtrace_fileline.3stap.html b/man/function::print_backtrace_fileline.3stap.html deleted file mode 100644 index 1f0cdb4b..00000000 --- a/man/function::print_backtrace_fileline.3stap.html +++ /dev/null @@ -1,75 +0,0 @@ - -Manpage of FUNCTION::PRINT_BACK - -

FUNCTION::PRINT_BACK

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::print_backtrace_fileline - Print kernel stack back trace -  -

SYNOPSIS

- -

-

-    print_backtrace_fileline()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function is equivalent to -print_backtrace, but output for each symbol is longer including file names and line numbers. The function does not return a value. -  -

SEE ALSO

- -tapset::context-unwind(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::print_regs.3stap.html b/man/function::print_regs.3stap.html deleted file mode 100644 index d064cce1..00000000 --- a/man/function::print_regs.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::PRINT_REGS - -

FUNCTION::PRINT_REGS

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::print_regs - Print a register dump -  -

SYNOPSIS

- -

-

-    print_regs()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function prints a register dump. Does nothing if no registers are available for the probe point. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::print_stack.3stap.html b/man/function::print_stack.3stap.html deleted file mode 100644 index a88def04..00000000 --- a/man/function::print_stack.3stap.html +++ /dev/null @@ -1,91 +0,0 @@ - -Manpage of FUNCTION::PRINT_STAC - -

FUNCTION::PRINT_STAC

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::print_stack - Print out kernel stack from string -  -

SYNOPSIS

- -

-

-    print_stack(stk:string)
-
- -  -

ARGUMENTS

- -

- -stk -

-String with list of hexadecimal addresses -
- -  -

DESCRIPTION

- -

- -This function performs a symbolic lookup of the addresses in the given string, which is assumed to be the result of a prior call to -backtrace. -

- -Print one line per address, including the address, the name of the function containing the address, and an estimate of its position within that function. Return nothing. -  -

NOTE

- -

- -it is recommended to use -print_syms -instead of this function. -  -

SEE ALSO

- -tapset::context-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
NOTE
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::print_syms.3stap.html b/man/function::print_syms.3stap.html deleted file mode 100644 index e643045b..00000000 --- a/man/function::print_syms.3stap.html +++ /dev/null @@ -1,84 +0,0 @@ - -Manpage of FUNCTION::PRINT_SYMS - -

FUNCTION::PRINT_SYMS

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::print_syms - Print out kernel stack from string -  -

SYNOPSIS

- -

-

-    print_syms(callers:string)
-
- -  -

ARGUMENTS

- -

- -callers -

-String with list of hexadecimal (kernel) addresses -
- -  -

DESCRIPTION

- -

- -This function performs a symbolic lookup of the addresses in the given string, which are assumed to be the result of prior calls to -stack, -callers, and similar functions. -

- -Prints one line per address, including the address, the name of the function containing the address, and an estimate of its position within that function, as obtained by -symdata. Returns nothing. -  -

SEE ALSO

- -tapset::context-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::print_ubacktrace.3stap.html b/man/function::print_ubacktrace.3stap.html deleted file mode 100644 index b5477985..00000000 --- a/man/function::print_ubacktrace.3stap.html +++ /dev/null @@ -1,119 +0,0 @@ - -Manpage of FUNCTION::PRINT_UBAC - -

FUNCTION::PRINT_UBAC

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::print_ubacktrace - Print stack back trace for current user-space task. -  -

SYNOPSIS

- -

-

-1) print_ubacktrace()
-
- -

-

-2) print_ubacktrace(pc:long,sp:long,fp:long)
-
- -  -

ARGUMENTS

- -

- -pc -

-override PC -
- -

- -sp -

-override SP -
- -

- -fp -

-override FP -
- -  -

DESCRIPTION

- -

- -1) -

- -2) Equivalent to print_ustack(ubacktrace), except that deeper stack nesting may be supported. Returns nothing. See -print_backtrace -for kernel backtrace. -

- -Equivalent to -print_ubacktrace, but it performs the backtrace using the pc, sp, and fp provided. Useful -  -

NOTE

- -

- -To get (full) backtraces for user space applications and shared shared libraries not mentioned in the current script run stap with -d /path/to/exe-or-so and/or add --ldd to load all needed unwind data. -  -

SEE ALSO

- -tapset::ucontext-unwind(3stap) - -  -

SEE ALSO

- -tapset::ucontext-unwind(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
NOTE
-
SEE ALSO
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::print_ubacktrace_brief.3stap.html b/man/function::print_ubacktrace_brief.3stap.html deleted file mode 100644 index 27786daa..00000000 --- a/man/function::print_ubacktrace_brief.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::PRINT_UBAC - -

FUNCTION::PRINT_UBAC

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::print_ubacktrace_brief - Print stack back trace for current user-space task. -  -

SYNOPSIS

- -

-

-    print_ubacktrace_brief()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -

- -Equivalent to -print_ubacktrace, but output for each symbol is shorter (just name and offset, or just the hex address of no symbol could be found). -  -

NOTE

- -

- -To get (full) backtraces for user space applications and shared shared libraries not mentioned in the current script run stap with -d /path/to/exe-or-so and/or add --ldd to load all needed unwind data. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
NOTE
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::print_ubacktrace_fileline.3stap.html b/man/function::print_ubacktrace_fileline.3stap.html deleted file mode 100644 index 29fc4be7..00000000 --- a/man/function::print_ubacktrace_fileline.3stap.html +++ /dev/null @@ -1,111 +0,0 @@ - -Manpage of FUNCTION::PRINT_UBAC - -

FUNCTION::PRINT_UBAC

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::print_ubacktrace_fileline - Print stack back trace for current user-space task. -  -

SYNOPSIS

- -

-

-1) print_ubacktrace_fileline()
-
- -

-

-2) print_ubacktrace_fileline(pc:long,sp:long,fp:long)
-
- -  -

ARGUMENTS

- -

- -pc -

-override PC -
- -

- -sp -

-override SP -
- -

- -fp -

-override FP -
- -  -

DESCRIPTION

- -

- -1) -

- -2) Equivalent toprint_ubacktrace, but output for each symbol is longer including file names and line numbers. -

- -Equivalent to -print_ubacktrace_fileline, but it performs the backtrace using the pc, sp, and fp passed in. -  -

NOTE

- -

- -To get (full) backtraces for user space applications and shared shared libraries not mentioned in the current script run stap with -d /path/to/exe-or-so and/or add --ldd to load all needed unwind data. -  -

SEE ALSO

- -tapset::ucontext-unwind(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
NOTE
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::print_ustack.3stap.html b/man/function::print_ustack.3stap.html deleted file mode 100644 index 723cd6e5..00000000 --- a/man/function::print_ustack.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of FUNCTION::PRINT_USTA - -

FUNCTION::PRINT_USTA

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::print_ustack - Print out stack for the current task from string. -  -

SYNOPSIS

- -

-

-    print_ustack(stk:string)
-
- -  -

ARGUMENTS

- -

- -stk -

-String with list of hexadecimal addresses for the current task. -
- -  -

DESCRIPTION

- -

- -Perform a symbolic lookup of the addresses in the given string, which is assumed to be the result of a prior call to -ubacktrace -for the current task. -

- -Print one line per address, including the address, the name of the function containing the address, and an estimate of its position within that function. Return nothing. -  -

NOTE

- -

- -it is recommended to use -print_usyms -instead of this function. -  -

SEE ALSO

- -tapset::ucontext-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
NOTE
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::print_usyms.3stap.html b/man/function::print_usyms.3stap.html deleted file mode 100644 index 88320aee..00000000 --- a/man/function::print_usyms.3stap.html +++ /dev/null @@ -1,84 +0,0 @@ - -Manpage of FUNCTION::PRINT_USYM - -

FUNCTION::PRINT_USYM

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::print_usyms - Print out user stack from string -  -

SYNOPSIS

- -

-

-    print_usyms(callers:string)
-
- -  -

ARGUMENTS

- -

- -callers -

-String with list of hexadecimal (user) addresses -
- -  -

DESCRIPTION

- -

- -This function performs a symbolic lookup of the addresses in the given string, which are assumed to be the result of prior calls to -ustack, -ucallers, and similar functions. -

- -Prints one line per address, including the address, the name of the function containing the address, and an estimate of its position within that function, as obtained by -usymdata. Returns nothing. -  -

SEE ALSO

- -tapset::ucontext-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::printk.3stap.html b/man/function::printk.3stap.html deleted file mode 100644 index 5bd8de98..00000000 --- a/man/function::printk.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::PRINTK - -

FUNCTION::PRINTK

-Section: Logging Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::printk - Send a message to the kernel trace buffer -  -

SYNOPSIS

- -

-

-    printk(level:long,msg:string)
-
- -  -

ARGUMENTS

- -

- -level -

-an integer for the severity level (0=KERN_EMERG ... 7=KERN_DEBUG) -
- -

- -msg -

-The formatted message string -
- -  -

DESCRIPTION

- -

- -Print a line of text to the kernel dmesg/console with the given severity. An implicit end-of-line is added. This function may not be safely called from all kernel probe contexts, so is restricted to guru mode only. -  -

SEE ALSO

- -tapset::logging(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::probe_type.3stap.html b/man/function::probe_type.3stap.html deleted file mode 100644 index b4741910..00000000 --- a/man/function::probe_type.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::PROBE_TYPE - -

FUNCTION::PROBE_TYPE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::probe_type - The low level probe handler type of the current probe. -  -

SYNOPSIS

- -

-

-    probe_type:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Returns a short string describing the low level probe handler type for the current probe point. This is for informational purposes only. Depending on the low level probe handler different context functions can or cannot provide information about the current event (for example some probe handlers only trigger in user space and have no associated kernel context). High-level probes might map to the same or different low-level probes (depending on systemtap version and/or kernel used). -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::probefunc.3stap.html b/man/function::probefunc.3stap.html deleted file mode 100644 index a43d5b6b..00000000 --- a/man/function::probefunc.3stap.html +++ /dev/null @@ -1,89 +0,0 @@ - -Manpage of FUNCTION::PROBEFUNC - -

FUNCTION::PROBEFUNC

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::probefunc - Return the probe point's function name, if known -  -

SYNOPSIS

- -

-

-    probefunc:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the name of the function being probed based on the current address, as computed by symname(addr) or usymname(uaddr) depending on probe context (whether the probe is a user probe or a kernel probe). -  -

PLEASE NOTE

- -

- -this function's behaviour differs between SystemTap 2.0 and earlier versions. Prior to 2.0, -probefunc -obtained the function name from the probe point string as returned by -pp, and used the current address as a fallback. -

- -Consider using -ppfunc -instead. -  -

SEE ALSO

- -tapset::context-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
PLEASE NOTE
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::probemod.3stap.html b/man/function::probemod.3stap.html deleted file mode 100644 index f68a1758..00000000 --- a/man/function::probemod.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::PROBEMOD - -

FUNCTION::PROBEMOD

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::probemod - Return the probe point's kernel module name -  -

SYNOPSIS

- -

-

-    probemod:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the name of the kernel module containing the probe point, if known. -  -

SEE ALSO

- -tapset::context-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::proc_mem_data.3stap.html b/man/function::proc_mem_data.3stap.html deleted file mode 100644 index 03fd6f4a..00000000 --- a/man/function::proc_mem_data.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of FUNCTION::PROC_MEM_D - -

FUNCTION::PROC_MEM_D

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::proc_mem_data - Program data size (data + stack) in pages -  -

SYNOPSIS

- -

-

-1) proc_mem_data:long()
-
- -

-

-2) proc_mem_data:long(pid:long)
-
- -  -

ARGUMENTS

- -

- -pid -

-The pid of process to examine -
- -  -

DESCRIPTION

- -

- -1) Returns the current process data size (data + stack) in pages, or zero when there is no current process or the number of pages couldn't be retrieved. -

- -2) Returns the given process data size (data + stack) in pages, or zero when the process doesn't exist or the number of pages couldn't be retrieved. -  -

SEE ALSO

- -tapset::proc_mem(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::proc_mem_rss.3stap.html b/man/function::proc_mem_rss.3stap.html deleted file mode 100644 index 156f75de..00000000 --- a/man/function::proc_mem_rss.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of FUNCTION::PROC_MEM_R - -

FUNCTION::PROC_MEM_R

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::proc_mem_rss - Program resident set size in pages -  -

SYNOPSIS

- -

-

-1) proc_mem_rss:long()
-
- -

-

-2) proc_mem_rss:long(pid:long)
-
- -  -

ARGUMENTS

- -

- -pid -

-The pid of process to examine -
- -  -

DESCRIPTION

- -

- -1) Returns the resident set size in pages of the current process, or zero when there is no current process or the number of pages couldn't be retrieved. -

- -2) Returns the resident set size in pages of the given process, or zero when the process doesn't exist or the number of pages couldn't be retrieved. -  -

SEE ALSO

- -tapset::proc_mem(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::proc_mem_shr.3stap.html b/man/function::proc_mem_shr.3stap.html deleted file mode 100644 index 87f84d30..00000000 --- a/man/function::proc_mem_shr.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of FUNCTION::PROC_MEM_S - -

FUNCTION::PROC_MEM_S

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::proc_mem_shr - Program shared pages (from shared mappings) -  -

SYNOPSIS

- -

-

-1) proc_mem_shr:long()
-
- -

-

-2) proc_mem_shr:long(pid:long)
-
- -  -

ARGUMENTS

- -

- -pid -

-The pid of process to examine -
- -  -

DESCRIPTION

- -

- -1) Returns the shared pages (from shared mappings) of the current process, or zero when there is no current process or the number of pages couldn't be retrieved. -

- -2) Returns the shared pages (from shared mappings) of the given process, or zero when the process doesn't exist or the number of pages couldn't be retrieved. -  -

SEE ALSO

- -tapset::proc_mem(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::proc_mem_size.3stap.html b/man/function::proc_mem_size.3stap.html deleted file mode 100644 index 90bb4572..00000000 --- a/man/function::proc_mem_size.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of FUNCTION::PROC_MEM_S - -

FUNCTION::PROC_MEM_S

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::proc_mem_size - Total program virtual memory size in pages -  -

SYNOPSIS

- -

-

-1) proc_mem_size:long()
-
- -

-

-2) proc_mem_size:long(pid:long)
-
- -  -

ARGUMENTS

- -

- -pid -

-The pid of process to examine -
- -  -

DESCRIPTION

- -

- -1) Returns the total virtual memory size in pages of the current process, or zero when there is no current process or the number of pages couldn't be retrieved. -

- -2) Returns the total virtual memory size in pages of the given process, or zero when that process doesn't exist or the number of pages couldn't be retrieved. -  -

SEE ALSO

- -tapset::proc_mem(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::proc_mem_string.3stap.html b/man/function::proc_mem_string.3stap.html deleted file mode 100644 index b065a395..00000000 --- a/man/function::proc_mem_string.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of FUNCTION::PROC_MEM_S - -

FUNCTION::PROC_MEM_S

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::proc_mem_string - Human readable string of process memory usage -  -

SYNOPSIS

- -

-

-1) proc_mem_string:string()
-
- -

-

-2) proc_mem_string:string(pid:long)
-
- -  -

ARGUMENTS

- -

- -pid -

-The pid of process to examine -
- -  -

DESCRIPTION

- -

- -1) Returns a human readable string showing the size, rss, shr, txt and data of the memory used by the current process. For example"size: 301m, rss: 11m, shr: 8m, txt: 52k, data: 2248k". -

- -2) Returns a human readable string showing the size, rss, shr, txt and data of the memory used by the given process. For example"size: 301m, rss: 11m, shr: 8m, txt: 52k, data: 2248k". -  -

SEE ALSO

- -tapset::proc_mem(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::proc_mem_txt.3stap.html b/man/function::proc_mem_txt.3stap.html deleted file mode 100644 index 47d9442f..00000000 --- a/man/function::proc_mem_txt.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of FUNCTION::PROC_MEM_T - -

FUNCTION::PROC_MEM_T

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::proc_mem_txt - Program text (code) size in pages -  -

SYNOPSIS

- -

-

-1) proc_mem_txt:long()
-
- -

-

-2) proc_mem_txt:long(pid:long)
-
- -  -

ARGUMENTS

- -

- -pid -

-The pid of process to examine -
- -  -

DESCRIPTION

- -

- -1) Returns the current process text (code) size in pages, or zero when there is no current process or the number of pages couldn't be retrieved. -

- -2) Returns the given process text (code) size in pages, or zero when the process doesn't exist or the number of pages couldn't be retrieved. -  -

SEE ALSO

- -tapset::proc_mem(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::pstrace.3stap.html b/man/function::pstrace.3stap.html deleted file mode 100644 index 17e4bf0a..00000000 --- a/man/function::pstrace.3stap.html +++ /dev/null @@ -1,80 +0,0 @@ - -Manpage of FUNCTION::PSTRACE - -

FUNCTION::PSTRACE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::pstrace - Chain of processes and pids back to init(1) -  -

SYNOPSIS

- -

-

-    pstrace:string(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-Pointer to task struct of process -
- -  -

DESCRIPTION

- -

- -This function returns a string listing execname and pid for each process starting from -task -back to the process ancestor that init(1) spawned. -  -

SEE ALSO

- -tapset::pstrace(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::qs_done.3stap.html b/man/function::qs_done.3stap.html deleted file mode 100644 index b9fb0e78..00000000 --- a/man/function::qs_done.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::QS_DONE - -

FUNCTION::QS_DONE

-Section: Queue Statistics Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::qs_done - Function to record finishing request -  -

SYNOPSIS

- -

-

-    qs_done(qname:string)
-
- -  -

ARGUMENTS

- -

- -qname -

-the name of the service that finished -
- -  -

DESCRIPTION

- -

- -This function records that a request originally from the given queue has completed being serviced. -  -

SEE ALSO

- -tapset::queue_stats(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::qs_run.3stap.html b/man/function::qs_run.3stap.html deleted file mode 100644 index 0a7dc5d5..00000000 --- a/man/function::qs_run.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::QS_RUN - -

FUNCTION::QS_RUN

-Section: Queue Statistics Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::qs_run - Function to record being moved from wait queue to being serviced -  -

SYNOPSIS

- -

-

-    qs_run(qname:string)
-
- -  -

ARGUMENTS

- -

- -qname -

-the name of the service being moved and started -
- -  -

DESCRIPTION

- -

- -This function records that the previous enqueued request was removed from the given wait queue and is now being serviced. -  -

SEE ALSO

- -tapset::queue_stats(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::qs_wait.3stap.html b/man/function::qs_wait.3stap.html deleted file mode 100644 index 11db844d..00000000 --- a/man/function::qs_wait.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::QS_WAIT - -

FUNCTION::QS_WAIT

-Section: Queue Statistics Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::qs_wait - Function to record enqueue requests -  -

SYNOPSIS

- -

-

-    qs_wait(qname:string)
-
- -  -

ARGUMENTS

- -

- -qname -

-the name of the queue requesting enqueue -
- -  -

DESCRIPTION

- -

- -This function records that a new request was enqueued for the given queue name. -  -

SEE ALSO

- -tapset::queue_stats(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::qsq_blocked.3stap.html b/man/function::qsq_blocked.3stap.html deleted file mode 100644 index 3a58916b..00000000 --- a/man/function::qsq_blocked.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::QSQ_BLOCKE - -

FUNCTION::QSQ_BLOCKE

-Section: Queue Statistics Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::qsq_blocked - Returns the time reqest was on the wait queue -  -

SYNOPSIS

- -

-

-    qsq_blocked:long(qname:string,scale:long)
-
- -  -

ARGUMENTS

- -

- -qname -

-queue name -
- -

- -scale -

-scale variable to take account for interval fraction -
- -  -

DESCRIPTION

- -

- -This function returns the fraction of elapsed time during which one or more requests were on the wait queue. -  -

SEE ALSO

- -tapset::queue_stats(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::qsq_print.3stap.html b/man/function::qsq_print.3stap.html deleted file mode 100644 index e85c6aab..00000000 --- a/man/function::qsq_print.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::QSQ_PRINT - -

FUNCTION::QSQ_PRINT

-Section: Queue Statistics Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::qsq_print - Prints a line of statistics for the given queue -  -

SYNOPSIS

- -

-

-    qsq_print(qname:string)
-
- -  -

ARGUMENTS

- -

- -qname -

-queue name -
- -  -

DESCRIPTION

- -

- -This function prints a line containing the following -  -

STATISTICS FOR THE GIVEN QUEUE

- -

- -the queue name, the average rate of requests per second, the average wait queue length, the average time on the wait queue, the average time to service a request, the percentage of time the wait queue was used, and the percentage of time request was being serviced. -  -

SEE ALSO

- -tapset::queue_stats(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
STATISTICS FOR THE GIVEN QUEUE
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::qsq_service_time.3stap.html b/man/function::qsq_service_time.3stap.html deleted file mode 100644 index f55a4d57..00000000 --- a/man/function::qsq_service_time.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::QSQ_SERVIC - -

FUNCTION::QSQ_SERVIC

-Section: Queue Statistics Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::qsq_service_time - Amount of time per request service -  -

SYNOPSIS

- -

-

-    qsq_service_time:long(qname:string,scale:long)
-
- -  -

ARGUMENTS

- -

- -qname -

-queue name -
- -

- -scale -

-scale variable to take account for interval fraction -
- -  -

DESCRIPTION

- -

- -This function returns the average time in microseconds required to service a request once it is removed from the wait queue. -  -

SEE ALSO

- -tapset::queue_stats(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::qsq_start.3stap.html b/man/function::qsq_start.3stap.html deleted file mode 100644 index 008ea364..00000000 --- a/man/function::qsq_start.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::QSQ_START - -

FUNCTION::QSQ_START

-Section: Queue Statistics Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::qsq_start - Function to reset the stats for a queue -  -

SYNOPSIS

- -

-

-    qsq_start(qname:string)
-
- -  -

ARGUMENTS

- -

- -qname -

-the name of the service that finished -
- -  -

DESCRIPTION

- -

- -This function resets the statistics counters for the given queue, and restarts tracking from the moment the function was called. This function is also used to create intialize a queue. -  -

SEE ALSO

- -tapset::queue_stats(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::qsq_throughput.3stap.html b/man/function::qsq_throughput.3stap.html deleted file mode 100644 index f1e5a09f..00000000 --- a/man/function::qsq_throughput.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::QSQ_THROUG - -

FUNCTION::QSQ_THROUG

-Section: Queue Statistics Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::qsq_throughput - Number of requests served per unit time -  -

SYNOPSIS

- -

-

-    qsq_throughput:long(qname:string,scale:long)
-
- -  -

ARGUMENTS

- -

- -qname -

-queue name -
- -

- -scale -

-scale variable to take account for interval fraction -
- -  -

DESCRIPTION

- -

- -This function returns the average number or requests served per microsecond. -  -

SEE ALSO

- -tapset::queue_stats(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::qsq_utilization.3stap.html b/man/function::qsq_utilization.3stap.html deleted file mode 100644 index a4135cf9..00000000 --- a/man/function::qsq_utilization.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::QSQ_UTILIZ - -

FUNCTION::QSQ_UTILIZ

-Section: Queue Statistics Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::qsq_utilization - Fraction of time that any request was being serviced -  -

SYNOPSIS

- -

-

-    qsq_utilization:long(qname:string,scale:long)
-
- -  -

ARGUMENTS

- -

- -qname -

-queue name -
- -

- -scale -

-scale variable to take account for interval fraction -
- -  -

DESCRIPTION

- -

- -This function returns the average time in microseconds that at least one request was being serviced. -  -

SEE ALSO

- -tapset::queue_stats(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::qsq_wait_queue_length.3stap.html b/man/function::qsq_wait_queue_length.3stap.html deleted file mode 100644 index d4e81c31..00000000 --- a/man/function::qsq_wait_queue_length.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::QSQ_WAIT_Q - -

FUNCTION::QSQ_WAIT_Q

-Section: Queue Statistics Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::qsq_wait_queue_length - length of wait queue -  -

SYNOPSIS

- -

-

-    qsq_wait_queue_length:long(qname:string,scale:long)
-
- -  -

ARGUMENTS

- -

- -qname -

-queue name -
- -

- -scale -

-scale variable to take account for interval fraction -
- -  -

DESCRIPTION

- -

- -This function returns the average length of the wait queue -  -

SEE ALSO

- -tapset::queue_stats(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::qsq_wait_time.3stap.html b/man/function::qsq_wait_time.3stap.html deleted file mode 100644 index 83efd6b4..00000000 --- a/man/function::qsq_wait_time.3stap.html +++ /dev/null @@ -1,87 +0,0 @@ - -Manpage of FUNCTION::QSQ_WAIT_T - -

FUNCTION::QSQ_WAIT_T

-Section: Queue Statistics Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::qsq_wait_time - Amount of time in queue + service per request -  -

SYNOPSIS

- -

-

-    qsq_wait_time:long(qname:string,scale:long)
-
- -  -

ARGUMENTS

- -

- -qname -

-queue name -
- -

- -scale -

-scale variable to take account for interval fraction -
- -  -

DESCRIPTION

- -

- -This function returns the average time in microseconds that it took for a request to be serviced (qs_wait -to -qa_done). -  -

SEE ALSO

- -tapset::queue_stats(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::raise.3stap.html b/man/function::raise.3stap.html deleted file mode 100644 index 3f430129..00000000 --- a/man/function::raise.3stap.html +++ /dev/null @@ -1,80 +0,0 @@ - -Manpage of FUNCTION::RAISE - -

FUNCTION::RAISE

-Section: Guru tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::raise - raise a signal in the current thread -  -

SYNOPSIS

- -

-

-    raise(signo:long)
-
- -  -

ARGUMENTS

- -

- -signo -

-signal number -
- -  -

DESCRIPTION

- -

- -This function calls the kernel send_sig routine on the current thread, with the given raw unchecked signal number. It may raise an error if -send_sig -failed. It requires guru mode. -  -

SEE ALSO

- -tapset::guru-signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::randint.3stap.html b/man/function::randint.3stap.html deleted file mode 100644 index 268c8394..00000000 --- a/man/function::randint.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::RANDINT - -

FUNCTION::RANDINT

-Section: Random functions Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::randint - Return a random number between [0,n) -  -

SYNOPSIS

- -

-

-    randint:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-Number past upper limit of range, not larger than 2**20. -
- -  -

SEE ALSO

- -tapset::random(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::read_stopwatch_ms.3stap.html b/man/function::read_stopwatch_ms.3stap.html deleted file mode 100644 index cea43f2d..00000000 --- a/man/function::read_stopwatch_ms.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::READ_STOPW - -

FUNCTION::READ_STOPW

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::read_stopwatch_ms - Reads the time in milliseconds for a stopwatch -  -

SYNOPSIS

- -

-

-    read_stopwatch_ms:long(name:string)
-
- -  -

ARGUMENTS

- -

- -name -

-stopwatch name -
- -  -

DESCRIPTION

- -

- -Returns time in milliseconds for stopwatch -name. Creates stopwatch -name -if it does not currently exist. -  -

SEE ALSO

- -tapset::stopwatch(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::read_stopwatch_ns.3stap.html b/man/function::read_stopwatch_ns.3stap.html deleted file mode 100644 index 5508c773..00000000 --- a/man/function::read_stopwatch_ns.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::READ_STOPW - -

FUNCTION::READ_STOPW

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::read_stopwatch_ns - Reads the time in nanoseconds for a stopwatch -  -

SYNOPSIS

- -

-

-    read_stopwatch_ns:long(name:string)
-
- -  -

ARGUMENTS

- -

- -name -

-stopwatch name -
- -  -

DESCRIPTION

- -

- -Returns time in nanoseconds for stopwatch -name. Creates stopwatch -name -if it does not currently exist. -  -

SEE ALSO

- -tapset::stopwatch(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::read_stopwatch_s.3stap.html b/man/function::read_stopwatch_s.3stap.html deleted file mode 100644 index 3ade3aba..00000000 --- a/man/function::read_stopwatch_s.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::READ_STOPW - -

FUNCTION::READ_STOPW

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::read_stopwatch_s - Reads the time in seconds for a stopwatch -  -

SYNOPSIS

- -

-

-    read_stopwatch_s:long(name:string)
-
- -  -

ARGUMENTS

- -

- -name -

-stopwatch name -
- -  -

DESCRIPTION

- -

- -Returns time in seconds for stopwatch -name. Creates stopwatch -name -if it does not currently exist. -  -

SEE ALSO

- -tapset::stopwatch(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::read_stopwatch_us.3stap.html b/man/function::read_stopwatch_us.3stap.html deleted file mode 100644 index d26e4fbb..00000000 --- a/man/function::read_stopwatch_us.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::READ_STOPW - -

FUNCTION::READ_STOPW

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::read_stopwatch_us - Reads the time in microseconds for a stopwatch -  -

SYNOPSIS

- -

-

-    read_stopwatch_us:long(name:string)
-
- -  -

ARGUMENTS

- -

- -name -

-stopwatch name -
- -  -

DESCRIPTION

- -

- -Returns time in microseconds for stopwatch -name. Creates stopwatch -name -if it does not currently exist. -  -

SEE ALSO

- -tapset::stopwatch(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::real_mount.3stap.html b/man/function::real_mount.3stap.html deleted file mode 100644 index 666e31af..00000000 --- a/man/function::real_mount.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::REAL_MOUNT - -

FUNCTION::REAL_MOUNT

-Section: Directory-entry (dentry) Tapse (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::real_mount - get the 'struct mount' pointer -  -

SYNOPSIS

- -

-

-    real_mount:long(vfsmnt:long)
-
- -  -

ARGUMENTS

- -

- -vfsmnt -

-Pointer to 'struct vfsmount' -
- -  -

DESCRIPTION

- -

- -

- -Returns the 'struct mount' pointer value for a 'struct vfsmount' pointer. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::register.3stap.html b/man/function::register.3stap.html deleted file mode 100644 index 041cb4fc..00000000 --- a/man/function::register.3stap.html +++ /dev/null @@ -1,93 +0,0 @@ - -Manpage of FUNCTION::REGISTER - -

FUNCTION::REGISTER

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::register - Return the signed value of the named CPU register -  -

SYNOPSIS

- -

-

-    register:long(name:string)
-
- -  -

ARGUMENTS

- -

- -name -

-Name of the register to return -
- -  -

DESCRIPTION

- -

- -Return the value of the named CPU register, as it was saved when the current probe point was hit. If the register is 32 bits, it is sign-extended to 64 bits. -

- -For the i386 architecture, the following names are recognized. (name1/name2 indicates that name1 and name2 are alternative names for the same register.) eax/ax, ebp/bp, ebx/bx, ecx/cx, edi/di, edx/dx, eflags/flags, eip/ip, esi/si, esp/sp, orig_eax/orig_ax, xcs/cs, xds/ds, xes/es, xfs/fs, xss/ss. -

- -For the x86_64 architecture, the following names are recognized: 64-bit registers: r8, r9, r10, r11, r12, r13, r14, r15, rax/ax, rbp/bp, rbx/bx, rcx/cx, rdi/di, rdx/dx, rip/ip, rsi/si, rsp/sp; 32-bit registers: eax, ebp, ebx, ecx, edx, edi, edx, eip, esi, esp, flags/eflags, orig_eax; segment registers: xcs/cs, xss/ss. -

- -For powerpc, the following names are recognized: r0, r1, ... r31, nip, msr, orig_gpr3, ctr, link, xer, ccr, softe, trap, dar, dsisr, result. -

- -For s390x, the following names are recognized: r0, r1, ... r15, args, psw.mask, psw.addr, orig_gpr2, ilc, trap. -

- -For AArch64, the following names are recognized: x0, x1, ... x30, fp, lr, sp, pc, and orig_x0. -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::registers_valid.3stap.html b/man/function::registers_valid.3stap.html deleted file mode 100644 index 8b7daf28..00000000 --- a/man/function::registers_valid.3stap.html +++ /dev/null @@ -1,80 +0,0 @@ - -Manpage of FUNCTION::REGISTERS_ - -

FUNCTION::REGISTERS_

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::registers_valid - Determines validity of register and u_register in current context -  -

SYNOPSIS

- -

-

-    registers_valid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns 1 if -register -and -u_register -can be used in the current context, or 0 otherwise. For example, -registers_valid -returns 0 when called from a begin or end probe. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::regparm.3stap.html b/man/function::regparm.3stap.html deleted file mode 100644 index 4ca1389b..00000000 --- a/man/function::regparm.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::REGPARM - -

FUNCTION::REGPARM

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::regparm - Specify regparm value used to compile function -  -

SYNOPSIS

- -

-

-    regparm(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-original regparm value -
- -  -

DESCRIPTION

- -

- -Call this function with argument n before accessing function arguments using the *_arg function is the function was build with the gcc -mregparm=n option. -

- -(The i386 kernel is built with -mregparm=3, so systemtap considers regparm(3) the default for kernel functions on that architecture.) Only valid on i386 and x86_64 (when probing 32bit applications). Produces an error on other architectures. -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::remote_id.3stap.html b/man/function::remote_id.3stap.html deleted file mode 100644 index 170164e5..00000000 --- a/man/function::remote_id.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of FUNCTION::REMOTE_ID - -

FUNCTION::REMOTE_ID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::remote_id - The index of this instance in a remote execution. -  -

SYNOPSIS

- -

-

-    remote_id:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns a number 0..N, which is the unique index of this particular script execution from a swarm of -"stap --remote A --remote B ..." -runs, and is the same number -"stap --remote-prefix" -would print. The function returns -1 if the script was not launched with -"stap --remote", or if the remote staprun/stapsh are older than version 1.7. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::remote_uri.3stap.html b/man/function::remote_uri.3stap.html deleted file mode 100644 index 3ed09115..00000000 --- a/man/function::remote_uri.3stap.html +++ /dev/null @@ -1,77 +0,0 @@ - -Manpage of FUNCTION::REMOTE_URI - -

FUNCTION::REMOTE_URI

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::remote_uri - The name of this instance in a remote execution. -  -

SYNOPSIS

- -

-

-    remote_uri:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the remote host used to invoke this particular script execution from a swarm of -"stap --remote" -runs. It may not be unique among the swarm. The function returns an empty string if the script was not launched with -"stap --remote". -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::return_str.3stap.html b/man/function::return_str.3stap.html deleted file mode 100644 index 4b0fe5ba..00000000 --- a/man/function::return_str.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of FUNCTION::RETURN_STR - -

FUNCTION::RETURN_STR

-Section: Errno Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::return_str - Formats the return value as a string -  -

SYNOPSIS

- -

-

-    return_str:string(format:long,ret:long)
-
- -  -

ARGUMENTS

- -

- -format -

-Variable to determine return type base value -
- -

- -ret -

-Return value (typically -$return) -
- -  -

DESCRIPTION

- -

- -This function is used by the syscall tapset, and returns a string. Set format equal to 1 for a decimal, 2 for hex, 3 for octal. -

- -Note that this function is preferred over -returnstr. -  -

SEE ALSO

- -tapset::errno(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::returnstr.3stap.html b/man/function::returnstr.3stap.html deleted file mode 100644 index 742aacda..00000000 --- a/man/function::returnstr.3stap.html +++ /dev/null @@ -1,82 +0,0 @@ - -Manpage of FUNCTION::RETURNSTR - -

FUNCTION::RETURNSTR

-Section: Errno Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::returnstr - Formats the return value as a string -  -

SYNOPSIS

- -

-

-    returnstr:string(format:long)
-
- -  -

ARGUMENTS

- -

- -format -

-Variable to determine return type base value -
- -  -

DESCRIPTION

- -

- -This function is used by the nd_syscall tapset, and returns a string. Set format equal to 1 for a decimal, 2 for hex, 3 for octal. -

- -Note that this function should only be used in dwarfless probes (i.e. 'kprobe.function("foo")'). Other probes should use -return_str. -  -

SEE ALSO

- -tapset::errno(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::returnval.3stap.html b/man/function::returnval.3stap.html deleted file mode 100644 index fc7888f8..00000000 --- a/man/function::returnval.3stap.html +++ /dev/null @@ -1,76 +0,0 @@ - -Manpage of FUNCTION::RETURNVAL - -

FUNCTION::RETURNVAL

-Section: Errno Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::returnval - Possible return value of probed function -  -

SYNOPSIS

- -

-

-    returnval:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Return the value of the register in which function values are typically returned. Can be used in probes where -$return -isn't available. This is only a guess of the actual return value and can be totally wrong. Normally only used in dwarfless probes. -  -

SEE ALSO

- -tapset::errno(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::reverse_path_walk.3stap.html b/man/function::reverse_path_walk.3stap.html deleted file mode 100644 index 1016266b..00000000 --- a/man/function::reverse_path_walk.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::REVERSE_PA - -

FUNCTION::REVERSE_PA

-Section: Directory-entry (dentry) Tapse (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::reverse_path_walk - get the full dirent path -  -

SYNOPSIS

- -

-

-    reverse_path_walk:string(dentry:long)
-
- -  -

ARGUMENTS

- -

- -dentry -

-Pointer to dentry. -
- -  -

DESCRIPTION

- -

- -

- -Returns the path name (partial path to mount point). -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::rlimit_from_str.3stap.html b/man/function::rlimit_from_str.3stap.html deleted file mode 100644 index 9aa85465..00000000 --- a/man/function::rlimit_from_str.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::RLIMIT_FRO - -

FUNCTION::RLIMIT_FRO

-Section: RLIMIT Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::rlimit_from_str - Symbolic string associated with resource limit code -  -

SYNOPSIS

- -

-

-    rlimit_from_str:long(lim_str:string)
-
- -  -

ARGUMENTS

- -

- -lim_str -

-The string representation of limit -
- -  -

DESCRIPTION

- -

- -This function returns the number associated with the given string, such as 0 for the string RLIMIT_CPU, or -1 for an out-of-range value. -  -

SEE ALSO

- -tapset::rlimit(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::s32_arg.3stap.html b/man/function::s32_arg.3stap.html deleted file mode 100644 index f14c4ef5..00000000 --- a/man/function::s32_arg.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::S32_ARG - -

FUNCTION::S32_ARG

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::s32_arg - Return function argument as signed 32-bit value -  -

SYNOPSIS

- -

-

-    s32_arg:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-index of argument to return -
- -  -

DESCRIPTION

- -

- -Return the signed 32-bit value of argument n, same as int_arg. -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::s64_arg.3stap.html b/man/function::s64_arg.3stap.html deleted file mode 100644 index 011ee480..00000000 --- a/man/function::s64_arg.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::S64_ARG - -

FUNCTION::S64_ARG

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::s64_arg - Return function argument as signed 64-bit value -  -

SYNOPSIS

- -

-

-    s64_arg:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-index of argument to return -
- -  -

DESCRIPTION

- -

- -Return the signed 64-bit value of argument n, same as longlong_arg. -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sa_flags_str.3stap.html b/man/function::sa_flags_str.3stap.html deleted file mode 100644 index 27fda039..00000000 --- a/man/function::sa_flags_str.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::SA_FLAGS_S - -

FUNCTION::SA_FLAGS_S

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sa_flags_str - Returns the string representation of sa_flags -  -

SYNOPSIS

- -

-

-    sa_flags_str:string(sa_flags:long)
-
- -  -

ARGUMENTS

- -

- -sa_flags -

-the set of flags to convert to string. -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sa_handler.3stap.html b/man/function::sa_handler.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/function::sa_handler.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/function::sa_handler_str.3stap.html b/man/function::sa_handler_str.3stap.html deleted file mode 100644 index 64e2fa22..00000000 --- a/man/function::sa_handler_str.3stap.html +++ /dev/null @@ -1,72 +0,0 @@ - -Manpage of FUNCTION::SA_HANDLER - -

FUNCTION::SA_HANDLER

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sa_handler_str - Returns the string representation of an sa_handler -  -

SYNOPSIS

- -

-

-    sa_handler_str(handler:)
-
- -  -

ARGUMENTS

- -

- -handler -

-the sa_handler to convert to string. -
- -  -

DESCRIPTION

- -

- -Returns the string representation of an sa_handler. If it is not SIG_DFL, SIG_IGN or SIG_ERR, it will return the address of the handler. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_kernel_char.3stap.html b/man/function::set_kernel_char.3stap.html deleted file mode 100644 index b45c9f10..00000000 --- a/man/function::set_kernel_char.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SET_KERNEL - -

FUNCTION::SET_KERNEL

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_kernel_char - Writes a char value to kernel memory -  -

SYNOPSIS

- -

-

-    set_kernel_char(addr:long,val:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to write the char to -
- -

- -val -

-The char which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the char value to a given kernel memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::conversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_kernel_int.3stap.html b/man/function::set_kernel_int.3stap.html deleted file mode 100644 index 1ebc6af1..00000000 --- a/man/function::set_kernel_int.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SET_KERNEL - -

FUNCTION::SET_KERNEL

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_kernel_int - Writes an int value to kernel memory -  -

SYNOPSIS

- -

-

-    set_kernel_int(addr:long,val:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to write the int to -
- -

- -val -

-The int which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the int value to a given kernel memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::conversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_kernel_long.3stap.html b/man/function::set_kernel_long.3stap.html deleted file mode 100644 index 98850d63..00000000 --- a/man/function::set_kernel_long.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SET_KERNEL - -

FUNCTION::SET_KERNEL

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_kernel_long - Writes a long value to kernel memory -  -

SYNOPSIS

- -

-

-    set_kernel_long(addr:long,val:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to write the long to -
- -

- -val -

-The long which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the long value to a given kernel memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::conversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_kernel_pointer.3stap.html b/man/function::set_kernel_pointer.3stap.html deleted file mode 100644 index 14409523..00000000 --- a/man/function::set_kernel_pointer.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SET_KERNEL - -

FUNCTION::SET_KERNEL

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_kernel_pointer - Writes a pointer value to kernel memory. -  -

SYNOPSIS

- -

-

-    set_kernel_pointer(addr:long,val:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to write the pointer to -
- -

- -val -

-The pointer which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the pointer value to a given kernel memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::conversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_kernel_short.3stap.html b/man/function::set_kernel_short.3stap.html deleted file mode 100644 index 69ed333b..00000000 --- a/man/function::set_kernel_short.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SET_KERNEL - -

FUNCTION::SET_KERNEL

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_kernel_short - Writes a short value to kernel memory -  -

SYNOPSIS

- -

-

-    set_kernel_short(addr:long,val:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to write the short to -
- -

- -val -

-The short which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the short value to a given kernel memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::conversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_kernel_string.3stap.html b/man/function::set_kernel_string.3stap.html deleted file mode 100644 index f35adcac..00000000 --- a/man/function::set_kernel_string.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SET_KERNEL - -

FUNCTION::SET_KERNEL

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_kernel_string - Writes a string to kernel memory -  -

SYNOPSIS

- -

-

-    set_kernel_string(addr:long,val:string)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to write the string to -
- -

- -val -

-The string which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the given string to a given kernel memory address. Reports an error on string copy fault. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::conversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_kernel_string_n.3stap.html b/man/function::set_kernel_string_n.3stap.html deleted file mode 100644 index 4b682cc9..00000000 --- a/man/function::set_kernel_string_n.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of FUNCTION::SET_KERNEL - -

FUNCTION::SET_KERNEL

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_kernel_string_n - Writes a string of given length to kernel memory -  -

SYNOPSIS

- -

-

-    set_kernel_string_n(addr:long,n:long,val:string)
-
- -  -

ARGUMENTS

- -

- -addr -

-The kernel address to write the string to -
- -

- -n -

-The maximum length of the string -
- -

- -val -

-The string which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the given string up to a maximum given length to a given kernel memory address. Reports an error on string copy fault. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::conversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_user_char.3stap.html b/man/function::set_user_char.3stap.html deleted file mode 100644 index c8b650a0..00000000 --- a/man/function::set_user_char.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SET_USER_C - -

FUNCTION::SET_USER_C

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_user_char - Writes a char value to user memory -  -

SYNOPSIS

- -

-

-    set_user_char(addr:long,val:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The user address to write the char to -
- -

- -val -

-The char which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the char value to a given user memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::uconversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_user_int.3stap.html b/man/function::set_user_int.3stap.html deleted file mode 100644 index 6431193f..00000000 --- a/man/function::set_user_int.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SET_USER_I - -

FUNCTION::SET_USER_I

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_user_int - Writes an int value to user memory -  -

SYNOPSIS

- -

-

-    set_user_int(addr:long,val:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The user address to write the int to -
- -

- -val -

-The int which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the int value to a given user memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::uconversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_user_long.3stap.html b/man/function::set_user_long.3stap.html deleted file mode 100644 index aa022748..00000000 --- a/man/function::set_user_long.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SET_USER_L - -

FUNCTION::SET_USER_L

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_user_long - Writes a long value to user memory -  -

SYNOPSIS

- -

-

-    set_user_long(addr:long,val:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The user address to write the long to -
- -

- -val -

-The long which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the long value to a given user memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::uconversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_user_pointer.3stap.html b/man/function::set_user_pointer.3stap.html deleted file mode 100644 index 47de0489..00000000 --- a/man/function::set_user_pointer.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SET_USER_P - -

FUNCTION::SET_USER_P

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_user_pointer - Writes a pointer value to user memory. -  -

SYNOPSIS

- -

-

-    set_user_pointer(addr:long,val:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The user address to write the pointer to -
- -

- -val -

-The pointer which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the pointer value to a given user memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::uconversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_user_short.3stap.html b/man/function::set_user_short.3stap.html deleted file mode 100644 index 4accb983..00000000 --- a/man/function::set_user_short.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SET_USER_S - -

FUNCTION::SET_USER_S

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_user_short - Writes a short value to user memory -  -

SYNOPSIS

- -

-

-    set_user_short(addr:long,val:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The user address to write the short to -
- -

- -val -

-The short which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the short value to a given user memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::uconversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_user_string.3stap.html b/man/function::set_user_string.3stap.html deleted file mode 100644 index 6a56e6a4..00000000 --- a/man/function::set_user_string.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SET_USER_S - -

FUNCTION::SET_USER_S

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_user_string - Writes a string to user memory -  -

SYNOPSIS

- -

-

-    set_user_string(addr:long,val:string)
-
- -  -

ARGUMENTS

- -

- -addr -

-The user address to write the string to -
- -

- -val -

-The string which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the given string to a given user memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::uconversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::set_user_string_n.3stap.html b/man/function::set_user_string_n.3stap.html deleted file mode 100644 index 69707547..00000000 --- a/man/function::set_user_string_n.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of FUNCTION::SET_USER_S - -

FUNCTION::SET_USER_S

-Section: String and data writing functi (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::set_user_string_n - Writes a string of given length to user memory -  -

SYNOPSIS

- -

-

-    set_user_string_n(addr:long,n:long,val:string)
-
- -  -

ARGUMENTS

- -

- -addr -

-The user address to write the string to -
- -

- -n -

-The maximum length of the string -
- -

- -val -

-The string which is to be written -
- -  -

DESCRIPTION

- -

- -Writes the given string up to a maximum given length to a given user memory address. Reports an error on string copy fault. Requires the use of guru mode (-g). -  -

SEE ALSO

- -tapset::uconversions-guru(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sid.3stap.html b/man/function::sid.3stap.html deleted file mode 100644 index 133ce450..00000000 --- a/man/function::sid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::SID - -

FUNCTION::SID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sid - Returns the session ID of the current process -  -

SYNOPSIS

- -

-

-    sid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -The session ID of a process is the process group ID of the session leader. Session ID is stored in the signal_struct since Kernel 2.6.0. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::signal_str.3stap.html b/man/function::signal_str.3stap.html deleted file mode 100644 index 169a49c0..00000000 --- a/man/function::signal_str.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::SIGNAL_STR - -

FUNCTION::SIGNAL_STR

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::signal_str - Returns the string representation of a signal number -  -

SYNOPSIS

- -

-

-    signal_str(num:)
-
- -  -

ARGUMENTS

- -

- -num -

-the signal number to convert to string. -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sigset_mask_str.3stap.html b/man/function::sigset_mask_str.3stap.html deleted file mode 100644 index 349abfd1..00000000 --- a/man/function::sigset_mask_str.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::SIGSET_MAS - -

FUNCTION::SIGSET_MAS

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sigset_mask_str - Returns the string representation of a sigset -  -

SYNOPSIS

- -

-

-    sigset_mask_str:string(mask:long)
-
- -  -

ARGUMENTS

- -

- -mask -

-the sigset to convert to string. -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sock_fam_num2str.3stap.html b/man/function::sock_fam_num2str.3stap.html deleted file mode 100644 index efdb923f..00000000 --- a/man/function::sock_fam_num2str.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::SOCK_FAM_N - -

FUNCTION::SOCK_FAM_N

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sock_fam_num2str - Given a protocol family number, return a string representation -  -

SYNOPSIS

- -

-

-    sock_fam_num2str:string(family:long)
-
- -  -

ARGUMENTS

- -

- -family -

-The family number -
- -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sock_fam_str2num.3stap.html b/man/function::sock_fam_str2num.3stap.html deleted file mode 100644 index 485b13ec..00000000 --- a/man/function::sock_fam_str2num.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::SOCK_FAM_S - -

FUNCTION::SOCK_FAM_S

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sock_fam_str2num - Given a protocol family name (string), return the corresponding protocol family number -  -

SYNOPSIS

- -

-

-    sock_fam_str2num:long(family:string)
-
- -  -

ARGUMENTS

- -

- -family -

-The family name -
- -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sock_prot_num2str.3stap.html b/man/function::sock_prot_num2str.3stap.html deleted file mode 100644 index 2da09fac..00000000 --- a/man/function::sock_prot_num2str.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::SOCK_PROT_ - -

FUNCTION::SOCK_PROT_

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sock_prot_num2str - Given a protocol number, return a string representation -  -

SYNOPSIS

- -

-

-    sock_prot_num2str:string(proto:long)
-
- -  -

ARGUMENTS

- -

- -proto -

-The protocol number -
- -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sock_prot_str2num.3stap.html b/man/function::sock_prot_str2num.3stap.html deleted file mode 100644 index a3d5a37b..00000000 --- a/man/function::sock_prot_str2num.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::SOCK_PROT_ - -

FUNCTION::SOCK_PROT_

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sock_prot_str2num - Given a protocol name (string), return the corresponding protocol number -  -

SYNOPSIS

- -

-

-    sock_prot_str2num:long(proto:string)
-
- -  -

ARGUMENTS

- -

- -proto -

-The protocol name -
- -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sock_state_num2str.3stap.html b/man/function::sock_state_num2str.3stap.html deleted file mode 100644 index a1e47e59..00000000 --- a/man/function::sock_state_num2str.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::SOCK_STATE - -

FUNCTION::SOCK_STATE

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sock_state_num2str - Given a socket state number, return a string representation -  -

SYNOPSIS

- -

-

-    sock_state_num2str:string(state:long)
-
- -  -

ARGUMENTS

- -

- -state -

-The state number -
- -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sock_state_str2num.3stap.html b/man/function::sock_state_str2num.3stap.html deleted file mode 100644 index 56f8d837..00000000 --- a/man/function::sock_state_str2num.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::SOCK_STATE - -

FUNCTION::SOCK_STATE

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sock_state_str2num - Given a socket state string, return the corresponding state number -  -

SYNOPSIS

- -

-

-    sock_state_str2num:long(state:string)
-
- -  -

ARGUMENTS

- -

- -state -

-The state name -
- -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::speculate.3stap.html b/man/function::speculate.3stap.html deleted file mode 100644 index f9ef972f..00000000 --- a/man/function::speculate.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SPECULATE - -

FUNCTION::SPECULATE

-Section: Speculation (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::speculate - Store a string for possible output later -  -

SYNOPSIS

- -

-

-    speculate(id:long,output:string)
-
- -  -

ARGUMENTS

- -

- -id -

-buffer id to store the information in -
- -

- -output -

-string to write out when commit occurs -
- -  -

DESCRIPTION

- -

- -Add a string to the speculaive buffer for id. -  -

SEE ALSO

- -tapset::speculative(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::speculation.3stap.html b/man/function::speculation.3stap.html deleted file mode 100644 index 1915ba3f..00000000 --- a/man/function::speculation.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::SPECULATIO - -

FUNCTION::SPECULATIO

-Section: Speculation (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::speculation - Allocate a new id for speculative output -  -

SYNOPSIS

- -

-

-    speculation:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -

- -The -speculation -function is called when a new speculation buffer is needed. It returns an id for the speculative output. There can be multiple threads being speculated on concurrently. This id is used by other speculation functions to keep the threads separate. -  -

SEE ALSO

- -tapset::speculative(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sprint_backtrace.3stap.html b/man/function::sprint_backtrace.3stap.html deleted file mode 100644 index 683a1f9f..00000000 --- a/man/function::sprint_backtrace.3stap.html +++ /dev/null @@ -1,77 +0,0 @@ - -Manpage of FUNCTION::SPRINT_BAC - -

FUNCTION::SPRINT_BAC

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sprint_backtrace - Return stack back trace as string -  -

SYNOPSIS

- -

-

-    sprint_backtrace:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -

- -Returns a simple (kernel) backtrace. One line per address. Includes the symbol name (or hex address if symbol couldn't be resolved) and module name (if found). Includes the offset from the start of the function if found, otherwise the offset will be added to the module (if found, between brackets). Returns the backtrace as string (each line terminated by a newline character). Note that the returned stack will be truncated to MAXSTRINGLEN, to print fuller and richer stacks use -print_backtrace. Equivalent to sprint_stack(backtrace), but more efficient (no need to translate between hex strings and final backtrace string). -  -

SEE ALSO

- -tapset::context-unwind(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sprint_loadavg.3stap.html b/man/function::sprint_loadavg.3stap.html deleted file mode 100644 index b2a43039..00000000 --- a/man/function::sprint_loadavg.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::SPRINT_LOA - -

FUNCTION::SPRINT_LOA

-Section: Kernel Process Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sprint_loadavg - Report a pretty-printed load average -  -

SYNOPSIS

- -

-

-    sprint_loadavg:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Returns the a string with three decimal numbers in the usual format for 1-, 5- and 15-minute load averages. -  -

SEE ALSO

- -tapset::loadavg(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sprint_stack.3stap.html b/man/function::sprint_stack.3stap.html deleted file mode 100644 index fcf227ac..00000000 --- a/man/function::sprint_stack.3stap.html +++ /dev/null @@ -1,91 +0,0 @@ - -Manpage of FUNCTION::SPRINT_STA - -

FUNCTION::SPRINT_STA

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sprint_stack - Return stack for kernel addresses from string -  -

SYNOPSIS

- -

-

-    sprint_stack:string(stk:string)
-
- -  -

ARGUMENTS

- -

- -stk -

-String with list of hexadecimal (kernel) addresses -
- -  -

DESCRIPTION

- -

- -Perform a symbolic lookup of the addresses in the given string, which is assumed to be the result of a prior call to -backtrace. -

- -Returns a simple backtrace from the given hex string. One line per address. Includes the symbol name (or hex address if symbol couldn't be resolved) and module name (if found). Includes the offset from the start of the function if found, otherwise the offset will be added to the module (if found, between brackets). Returns the backtrace as string (each line terminated by a newline character). Note that the returned stack will be truncated to MAXSTRINGLEN, to print fuller and richer stacks use print_stack. -  -

NOTE

- -

- -it is recommended to use -sprint_syms -instead of this function. -  -

SEE ALSO

- -tapset::context-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
NOTE
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sprint_syms.3stap.html b/man/function::sprint_syms.3stap.html deleted file mode 100644 index 1ad4a6a4..00000000 --- a/man/function::sprint_syms.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SPRINT_SYM - -

FUNCTION::SPRINT_SYM

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sprint_syms - Return stack for kernel addresses from string -  -

SYNOPSIS

- -

-

-    sprint_syms(callers:string)
-
- -  -

ARGUMENTS

- -

- -callers -

-String with list of hexadecimal (kernel) addresses -
- -  -

DESCRIPTION

- -

- -Perform a symbolic lookup of the addresses in the given string, which are assumed to be the result of a prior calls to -stack, -callers, and similar functions. -

- -Returns a simple backtrace from the given hex string. One line per address. Includes the symbol name (or hex address if symbol couldn't be resolved) and module name (if found), as obtained from -symdata. Includes the offset from the start of the function if found, otherwise the offset will be added to the module (if found, between brackets). Returns the backtrace as string (each line terminated by a newline character). Note that the returned stack will be truncated to MAXSTRINGLEN, to print fuller and richer stacks use -print_syms. -  -

SEE ALSO

- -tapset::context-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sprint_ubacktrace.3stap.html b/man/function::sprint_ubacktrace.3stap.html deleted file mode 100644 index 9947fc60..00000000 --- a/man/function::sprint_ubacktrace.3stap.html +++ /dev/null @@ -1,84 +0,0 @@ - -Manpage of FUNCTION::SPRINT_UBA - -

FUNCTION::SPRINT_UBA

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sprint_ubacktrace - Return stack back trace for current user-space task as string. -  -

SYNOPSIS

- -

-

-    sprint_ubacktrace:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -

- -Returns a simple backtrace for the current task. One line per address. Includes the symbol name (or hex address if symbol couldn't be resolved) and module name (if found). Includes the offset from the start of the function if found, otherwise the offset will be added to the module (if found, between brackets). Returns the backtrace as string (each line terminated by a newline character). Note that the returned stack will be truncated to MAXSTRINGLEN, to print fuller and richer stacks use -print_ubacktrace. Equivalent to sprint_ustack(ubacktrace), but more efficient (no need to translate between hex strings and final backtrace string). -  -

NOTE

- -

- -To get (full) backtraces for user space applications and shared shared libraries not mentioned in the current script run stap with -d /path/to/exe-or-so and/or add --ldd to load all needed unwind data. -  -

SEE ALSO

- -tapset::ucontext-unwind(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
NOTE
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sprint_ustack.3stap.html b/man/function::sprint_ustack.3stap.html deleted file mode 100644 index f08c5a3f..00000000 --- a/man/function::sprint_ustack.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of FUNCTION::SPRINT_UST - -

FUNCTION::SPRINT_UST

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sprint_ustack - Return stack for the current task from string. -  -

SYNOPSIS

- -

-

-    sprint_ustack:string(stk:string)
-
- -  -

ARGUMENTS

- -

- -stk -

-String with list of hexadecimal addresses for the current task. -
- -  -

DESCRIPTION

- -

- -Perform a symbolic lookup of the addresses in the given string, which is assumed to be the result of a prior call to -ubacktrace -for the current task. -

- -Returns a simple backtrace from the given hex string. One line per address. Includes the symbol name (or hex address if symbol couldn't be resolved) and module name (if found). Includes the offset from the start of the function if found, otherwise the offset will be added to the module (if found, between brackets). Returns the backtrace as string (each line terminated by a newline character). Note that the returned stack will be truncated to MAXSTRINGLEN, to print fuller and richer stacks use print_ustack. -  -

NOTE

- -

- -it is recommended to use -sprint_usyms -instead of this function. -  -

SEE ALSO

- -tapset::ucontext-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
NOTE
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::sprint_usyms.3stap.html b/man/function::sprint_usyms.3stap.html deleted file mode 100644 index 4caeac0d..00000000 --- a/man/function::sprint_usyms.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::SPRINT_USY - -

FUNCTION::SPRINT_USY

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::sprint_usyms - Return stack for user addresses from string -  -

SYNOPSIS

- -

-

-    sprint_usyms(callers:string)
-
- -  -

ARGUMENTS

- -

- -callers -

-String with list of hexadecimal (user) addresses -
- -  -

DESCRIPTION

- -

- -Perform a symbolic lookup of the addresses in the given string, which are assumed to be the result of a prior calls to -ustack, -ucallers, and similar functions. -

- -Returns a simple backtrace from the given hex string. One line per address. Includes the symbol name (or hex address if symbol couldn't be resolved) and module name (if found), as obtained from -usymdata. Includes the offset from the start of the function if found, otherwise the offset will be added to the module (if found, between brackets). Returns the backtrace as string (each line terminated by a newline character). Note that the returned stack will be truncated to MAXSTRINGLEN, to print fuller and richer stacks use -print_usyms. -  -

SEE ALSO

- -tapset::ucontext-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::stack.3stap.html b/man/function::stack.3stap.html deleted file mode 100644 index 5b291c92..00000000 --- a/man/function::stack.3stap.html +++ /dev/null @@ -1,80 +0,0 @@ - -Manpage of FUNCTION::STACK - -

FUNCTION::STACK

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::stack - Return address at given depth of kernel stack backtrace -  -

SYNOPSIS

- -

-

-    stack:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-number of levels to descend in the stack. -
- -  -

DESCRIPTION

- -

- -Performs a simple (kernel) backtrace, and returns the element at the specified position. The results of the backtrace itself are cached, so that the backtrace computation is performed at most once no matter how many times -stack -is called, or in what order. -  -

SEE ALSO

- -tapset::context-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::stack_size.3stap.html b/man/function::stack_size.3stap.html deleted file mode 100644 index 57dc76de..00000000 --- a/man/function::stack_size.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::STACK_SIZE - -

FUNCTION::STACK_SIZE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::stack_size - Return the size of the kernel stack -  -

SYNOPSIS

- -

-

-    stack_size:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the size of the kernel stack. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::stack_unused.3stap.html b/man/function::stack_unused.3stap.html deleted file mode 100644 index 3a9b06d0..00000000 --- a/man/function::stack_unused.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::STACK_UNUS - -

FUNCTION::STACK_UNUS

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::stack_unused - Returns the amount of kernel stack currently available -  -

SYNOPSIS

- -

-

-    stack_unused:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function determines how many bytes are currently available in the kernel stack. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::stack_used.3stap.html b/man/function::stack_used.3stap.html deleted file mode 100644 index c74d5016..00000000 --- a/man/function::stack_used.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::STACK_USED - -

FUNCTION::STACK_USED

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::stack_used - Returns the amount of kernel stack used -  -

SYNOPSIS

- -

-

-    stack_used:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function determines how many bytes are currently used in the kernel stack. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::start_stopwatch.3stap.html b/man/function::start_stopwatch.3stap.html deleted file mode 100644 index 07f08200..00000000 --- a/man/function::start_stopwatch.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::START_STOP - -

FUNCTION::START_STOP

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::start_stopwatch - Start a stopwatch -  -

SYNOPSIS

- -

-

-    start_stopwatch(name:string)
-
- -  -

ARGUMENTS

- -

- -name -

-the stopwatch name -
- -  -

DESCRIPTION

- -

- -Start stopwatch -name. Creates stopwatch -name -if it does not currently exist. -  -

SEE ALSO

- -tapset::stopwatch(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::stop_stopwatch.3stap.html b/man/function::stop_stopwatch.3stap.html deleted file mode 100644 index d85e0020..00000000 --- a/man/function::stop_stopwatch.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::STOP_STOPW - -

FUNCTION::STOP_STOPW

-Section: Timestamp Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::stop_stopwatch - Stop a stopwatch -  -

SYNOPSIS

- -

-

-    stop_stopwatch(name:string)
-
- -  -

ARGUMENTS

- -

- -name -

-the stopwatch name -
- -  -

DESCRIPTION

- -

- -Stop stopwatch -name. Creates stopwatch -name -if it does not currently exist. -  -

SEE ALSO

- -tapset::stopwatch(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::stp_pid.3stap.html b/man/function::stp_pid.3stap.html deleted file mode 100644 index 15067078..00000000 --- a/man/function::stp_pid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::STP_PID - -

FUNCTION::STP_PID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::stp_pid - The process id of the stapio process -  -

SYNOPSIS

- -

-

-    stp_pid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the process id of the stapio process that launched this script. There could be other SystemTap scripts and stapio processes running on the system. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::str_replace.3stap.html b/man/function::str_replace.3stap.html deleted file mode 100644 index 47e1b22a..00000000 --- a/man/function::str_replace.3stap.html +++ /dev/null @@ -1,89 +0,0 @@ - -Manpage of FUNCTION::STR_REPLAC - -

FUNCTION::STR_REPLAC

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::str_replace - str_replace Replaces all instances of a substring with another -  -

SYNOPSIS

- -

-

-    str_replace:string(prnt_str:string,srch_str:string,rplc_str:string)
-
- -  -

ARGUMENTS

- -

- -prnt_str -

-the string to search and replace in -
- -

- -srch_str -

-the substring which is used to search in -prnt_str -string -
- -

- -rplc_str -

-the substring which is used to replace -srch_str -
- -  -

DESCRIPTION

- -

- -This function returns the given string with substrings replaced. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::string_quoted.3stap.html b/man/function::string_quoted.3stap.html deleted file mode 100644 index ead1116e..00000000 --- a/man/function::string_quoted.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::STRING_QUO - -

FUNCTION::STRING_QUO

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::string_quoted - Quotes a given string -  -

SYNOPSIS

- -

-

-    string_quoted:string(str:string)
-
- -  -

ARGUMENTS

- -

- -str -

-The kernel address to retrieve the string from -
- -  -

DESCRIPTION

- -

- -Returns the quoted string version of the given string, with characters where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note that the string will be surrounded by double quotes. -  -

SEE ALSO

- -tapset::string(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::stringat.3stap.html b/man/function::stringat.3stap.html deleted file mode 100644 index 160b9f14..00000000 --- a/man/function::stringat.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::STRINGAT - -

FUNCTION::STRINGAT

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::stringat - Returns the char at a given position in the string -  -

SYNOPSIS

- -

-

-    stringat:long(str:string,pos:long)
-
- -  -

ARGUMENTS

- -

- -str -

-the string to fetch the character from -
- -

- -pos -

-the position to get the character from (first character is 0) -
- -  -

DESCRIPTION

- -

- -This function returns the character at a given position in the string or zero if the string doesn't have as many characters. Reports an error if pos is out of bounds. -  -

SEE ALSO

- -tapset::string(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::strlen.3stap.html b/man/function::strlen.3stap.html deleted file mode 100644 index 58208db0..00000000 --- a/man/function::strlen.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::STRLEN - -

FUNCTION::STRLEN

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::strlen - Returns the length of a string -  -

SYNOPSIS

- -

-

-    strlen:long(s:string)
-
- -  -

ARGUMENTS

- -

- -s -

-the string -
- -  -

DESCRIPTION

- -

- -This function returns the length of the string, which can be zero up to MAXSTRINGLEN. -  -

SEE ALSO

- -tapset::string(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::strpos.3stap.html b/man/function::strpos.3stap.html deleted file mode 100644 index 7402b011..00000000 --- a/man/function::strpos.3stap.html +++ /dev/null @@ -1,94 +0,0 @@ - -Manpage of FUNCTION::STRPOS - -

FUNCTION::STRPOS

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::strpos - Returns location of a substring within another string -  -

SYNOPSIS

- -

-

-    strpos:long(s1:string,s2:string)
-
- -  -

ARGUMENTS

- -

- -s1 -

-string to search in -
- -

- -s2 -

-substring to find -
- -  -

DESCRIPTION

- -

- -This function returns location of the first occurence of string -s2 -within -s1, namely the return value is 0 in case -s2 -is a prefix of -s1. If -s2 -is not a substring of -s1, then the return value is -1. -  -

SEE ALSO

- -tapset::string(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::strtol.3stap.html b/man/function::strtol.3stap.html deleted file mode 100644 index 276f2b92..00000000 --- a/man/function::strtol.3stap.html +++ /dev/null @@ -1,87 +0,0 @@ - -Manpage of FUNCTION::STRTOL - -

FUNCTION::STRTOL

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::strtol - strtol - Convert a string to a long -  -

SYNOPSIS

- -

-

-    strtol:long(str:string,base:long)
-
- -  -

ARGUMENTS

- -

- -str -

-string to convert -
- -

- -base -

-the base to use -
- -  -

DESCRIPTION

- -

- -This function converts the string representation of a number to an integer. The -base -parameter indicates the number base to assume for the string (eg. 16 for hex, 8 for octal, 2 for binary). -  -

SEE ALSO

- -tapset::string(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::substr.3stap.html b/man/function::substr.3stap.html deleted file mode 100644 index 6824f768..00000000 --- a/man/function::substr.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of FUNCTION::SUBSTR - -

FUNCTION::SUBSTR

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::substr - Returns a substring -  -

SYNOPSIS

- -

-

-    substr:string(str:string,start:long,length:long)
-
- -  -

ARGUMENTS

- -

- -str -

-the string to take a substring from -
- -

- -start -

-starting position of the extracted string (first character is 0) -
- -

- -length -

-length of string to return -
- -  -

DESCRIPTION

- -

- -Returns the substring of the given string at the given start position with the given length (or smaller if the length of the original string is less than start + length, or length is bigger than MAXSTRINGLEN). -  -

SEE ALSO

- -tapset::string(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::switch_file.3stap.html b/man/function::switch_file.3stap.html deleted file mode 100644 index fe245625..00000000 --- a/man/function::switch_file.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::SWITCH_FIL - -

FUNCTION::SWITCH_FIL

-Section: Output file switching Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::switch_file - switch to the next output file -  -

SYNOPSIS

- -

-

-    switch_file()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function sends a signal to the stapio process, commanding it to rotate to the next output file when output is sent to file(s). -  -

SEE ALSO

- -tapset::switchfile(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::symdata.3stap.html b/man/function::symdata.3stap.html deleted file mode 100644 index 64a9aa3b..00000000 --- a/man/function::symdata.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::SYMDATA - -

FUNCTION::SYMDATA

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::symdata - Return the kernel symbol and module offset for the address -  -

SYNOPSIS

- -

-

-    symdata:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The address to translate -
- -  -

DESCRIPTION

- -

- -Returns the (function) symbol name associated with the given address if known, the offset from the start and size of the symbol, plus module name (between brackets). If symbol is unknown, but module is known, the offset inside the module, plus the size of the module is added. If any element is not known it will be omitted and if the symbol name is unknown it will return the hex string for the given address. -  -

SEE ALSO

- -tapset::context-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::symfile.3stap.html b/man/function::symfile.3stap.html deleted file mode 100644 index 0a3863f5..00000000 --- a/man/function::symfile.3stap.html +++ /dev/null @@ -1,72 +0,0 @@ - -Manpage of FUNCTION::SYMFILE - -

FUNCTION::SYMFILE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::symfile - Return the file name of a given address. -  -

SYNOPSIS

- -

-

-    symfile:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The address to translate. -
- -  -

DESCRIPTION

- -

- -Returns the file name of the given address, if known. If the file name cannot be found, the hex string representation of the address will be returned. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::symfileline.3stap.html b/man/function::symfileline.3stap.html deleted file mode 100644 index 0cd101ba..00000000 --- a/man/function::symfileline.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::SYMFILELIN - -

FUNCTION::SYMFILELIN

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::symfileline - Return the file name and line number of an address. -  -

SYNOPSIS

- -

-

-    symfileline:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The address to translate. -
- -  -

DESCRIPTION

- -

- -Returns the file name and the (approximate) line number of the given address, if known. If the file name or the line number cannot be found, the hex string representation of the address will be returned. -  -

SEE ALSO

- -tapset::context-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::symline.3stap.html b/man/function::symline.3stap.html deleted file mode 100644 index 674cdbd7..00000000 --- a/man/function::symline.3stap.html +++ /dev/null @@ -1,72 +0,0 @@ - -Manpage of FUNCTION::SYMLINE - -

FUNCTION::SYMLINE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::symline - Return the line number of an address. -  -

SYNOPSIS

- -

-

-    symline:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The address to translate. -
- -  -

DESCRIPTION

- -

- -Returns the (approximate) line number of the given address, if known. If the line number cannot be found, the hex string representation of the address will be returned. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::symname.3stap.html b/man/function::symname.3stap.html deleted file mode 100644 index d1cca34b..00000000 --- a/man/function::symname.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::SYMNAME - -

FUNCTION::SYMNAME

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::symname - Return the kernel symbol associated with the given address -  -

SYNOPSIS

- -

-

-    symname:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The address to translate -
- -  -

DESCRIPTION

- -

- -Returns the (function) symbol name associated with the given address if known. If not known it will return the hex string representation of addr. -  -

SEE ALSO

- -tapset::context-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::system.3stap.html b/man/function::system.3stap.html deleted file mode 100644 index 7794ecf3..00000000 --- a/man/function::system.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::SYSTEM - -

FUNCTION::SYSTEM

-Section: Shell command functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::system - Issue a command to the system -  -

SYNOPSIS

- -

-

-    system(cmd:string)
-
- -  -

ARGUMENTS

- -

- -cmd -

-the command to issue to the system -
- -  -

DESCRIPTION

- -

- -This function runs a command on the system. The command is started in the background some time after the current probe completes. The command is run with the same UID as the user running the stap or staprun command. The runtime may impose a relatively short length limit on the command string. Exceeding it may print a warning. -  -

SEE ALSO

- -tapset::system(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::target.3stap.html b/man/function::target.3stap.html deleted file mode 100644 index ec7ee215..00000000 --- a/man/function::target.3stap.html +++ /dev/null @@ -1,84 +0,0 @@ - -Manpage of FUNCTION::TARGET - -

FUNCTION::TARGET

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::target - Return the process ID of the target process -  -

SYNOPSIS

- -

-

-    target:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the process ID of the target process. This is useful in conjunction with the -x PID or -c CMD command-line options to stap. An example of its use is to create scripts that filter on a specific process. -

- --x <pid> -target -returns the pid specified by -x -

- --c <command> -target -returns the pid for the executed command specified by -c -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::target_set_pid.3stap.html b/man/function::target_set_pid.3stap.html deleted file mode 100644 index 70852772..00000000 --- a/man/function::target_set_pid.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::TARGET_SET - -

FUNCTION::TARGET_SET

-Section: Kernel Process Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::target_set_pid - Does pid descend from target process? -  -

SYNOPSIS

- -

-

-    target_set_pid(pid:)
-
- -  -

ARGUMENTS

- -

- -pid -

-The pid of the process to query -
- -  -

DESCRIPTION

- -

- -This function returns whether the given process-id is within the -"target set", that is whether it is a descendant of the top-level -target -process. -  -

SEE ALSO

- -tapset::target_set(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::target_set_report.3stap.html b/man/function::target_set_report.3stap.html deleted file mode 100644 index 356e0ac5..00000000 --- a/man/function::target_set_report.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::TARGET_SET - -

FUNCTION::TARGET_SET

-Section: Kernel Process Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::target_set_report - Print a report about the target set -  -

SYNOPSIS

- -

-

-    target_set_report()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function prints a report about the processes in the target set, and their ancestry. -  -

SEE ALSO

- -tapset::target_set(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_ancestry.3stap.html b/man/function::task_ancestry.3stap.html deleted file mode 100644 index d78ea2b4..00000000 --- a/man/function::task_ancestry.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of FUNCTION::TASK_ANCES - -

FUNCTION::TASK_ANCES

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_ancestry - The ancestry of the given task -  -

SYNOPSIS

- -

-

-    task_ancestry:string(task:long,with_time:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -

- -with_time -

-set to 1 to also print the start time of processes (given as a delta from boot time) -
- -  -

DESCRIPTION

- -

- -Return the ancestry of the given task in the form of -"grandparent_process=>parent_process=>process". -  -

SEE ALSO

- -tapset::task_ancestry(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_backtrace.3stap.html b/man/function::task_backtrace.3stap.html deleted file mode 100644 index d0e682d5..00000000 --- a/man/function::task_backtrace.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_BACKT - -

FUNCTION::TASK_BACKT

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_backtrace - Hex backtrace of an arbitrary task -  -

SYNOPSIS

- -

-

-    task_backtrace:string(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-pointer to task_struct -
- -  -

DESCRIPTION

- -

- -This function returns a string of hex addresses that are a backtrace of the stack of a particular task Output may be truncated as per maximum string length. Deprecated in SystemTap 1.6. -  -

SEE ALSO

- -tapset::context-unwind(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_cpu.3stap.html b/man/function::task_cpu.3stap.html deleted file mode 100644 index 2df8a7aa..00000000 --- a/man/function::task_cpu.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_CPU - -

FUNCTION::TASK_CPU

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_cpu - The scheduled cpu of the task -  -

SYNOPSIS

- -

-

-    task_cpu:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the scheduled cpu for the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_current.3stap.html b/man/function::task_current.3stap.html deleted file mode 100644 index 6f0b5ccd..00000000 --- a/man/function::task_current.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::TASK_CURRE - -

FUNCTION::TASK_CURRE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_current - The current task_struct of the current task -  -

SYNOPSIS

- -

-

-    task_current:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the task_struct representing the current process. This address can be passed to the various task_*() functions to extract more task-specific data. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_cwd_path.3stap.html b/man/function::task_cwd_path.3stap.html deleted file mode 100644 index 067b319f..00000000 --- a/man/function::task_cwd_path.3stap.html +++ /dev/null @@ -1,65 +0,0 @@ - -Manpage of FUNCTION::TASK_CWD_P - -

FUNCTION::TASK_CWD_P

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_cwd_path - get the path struct pointer for a task's current working directory -  -

SYNOPSIS

- -

-

-    task_cwd_path:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer. -
- -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_dentry_path.3stap.html b/man/function::task_dentry_path.3stap.html deleted file mode 100644 index a36d009d..00000000 --- a/man/function::task_dentry_path.3stap.html +++ /dev/null @@ -1,88 +0,0 @@ - -Manpage of FUNCTION::TASK_DENTR - -

FUNCTION::TASK_DENTR

-Section: Directory-entry (dentry) Tapse (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_dentry_path - get the full dentry path -  -

SYNOPSIS

- -

-

-    task_dentry_path:string(task:long,dentry:long,vfsmnt:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer. -
- -

- -dentry -

-direntry pointer. -
- -

- -vfsmnt -

-vfsmnt pointer. -
- -  -

DESCRIPTION

- -

- -

- -Returns the full dirent name (full path to the root), like the kernel d_path function. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_egid.3stap.html b/man/function::task_egid.3stap.html deleted file mode 100644 index 8eb7bd05..00000000 --- a/man/function::task_egid.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_EGID - -

FUNCTION::TASK_EGID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_egid - The effective group identifier of the task -  -

SYNOPSIS

- -

-

-    task_egid:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the effective group id of the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_euid.3stap.html b/man/function::task_euid.3stap.html deleted file mode 100644 index fb3c4f92..00000000 --- a/man/function::task_euid.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_EUID - -

FUNCTION::TASK_EUID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_euid - The effective user identifier of the task -  -

SYNOPSIS

- -

-

-    task_euid:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the effective user id of the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_exe_file.3stap.html b/man/function::task_exe_file.3stap.html deleted file mode 100644 index 31244f75..00000000 --- a/man/function::task_exe_file.3stap.html +++ /dev/null @@ -1,65 +0,0 @@ - -Manpage of FUNCTION::TASK_EXE_F - -

FUNCTION::TASK_EXE_F

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_exe_file - get the file struct pointer for a task's executable file -  -

SYNOPSIS

- -

-

-    task_exe_file:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer. -
- -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_execname.3stap.html b/man/function::task_execname.3stap.html deleted file mode 100644 index 96858a1e..00000000 --- a/man/function::task_execname.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_EXECN - -

FUNCTION::TASK_EXECN

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_execname - The name of the task -  -

SYNOPSIS

- -

-

-    task_execname:string(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -Return the name of the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_fd_lookup.3stap.html b/man/function::task_fd_lookup.3stap.html deleted file mode 100644 index 72164a49..00000000 --- a/man/function::task_fd_lookup.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of FUNCTION::TASK_FD_LO - -

FUNCTION::TASK_FD_LO

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_fd_lookup - get the file struct for a task's fd -  -

SYNOPSIS

- -

-

-    task_fd_lookup:long(task:long,fd:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer. -
- -

- -fd -

-file descriptor number. -
- -  -

DESCRIPTION

- -

- -Returns the file struct pointer for a task's file descriptor. -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_gid.3stap.html b/man/function::task_gid.3stap.html deleted file mode 100644 index 577b0fca..00000000 --- a/man/function::task_gid.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_GID - -

FUNCTION::TASK_GID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_gid - The group identifier of the task -  -

SYNOPSIS

- -

-

-    task_gid:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the group id of the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_max_file_handles.3stap.html b/man/function::task_max_file_handles.3stap.html deleted file mode 100644 index a15b8022..00000000 --- a/man/function::task_max_file_handles.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_MAX_F - -

FUNCTION::TASK_MAX_F

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_max_file_handles - The max number of open files for the task -  -

SYNOPSIS

- -

-

-    task_max_file_handles:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the maximum number of file handlers for the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_nice.3stap.html b/man/function::task_nice.3stap.html deleted file mode 100644 index a7f3fa5e..00000000 --- a/man/function::task_nice.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_NICE - -

FUNCTION::TASK_NICE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_nice - The nice value of the task -  -

SYNOPSIS

- -

-

-    task_nice:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the nice value of the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_ns_egid.3stap.html b/man/function::task_ns_egid.3stap.html deleted file mode 100644 index dd5e7e2a..00000000 --- a/man/function::task_ns_egid.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_NS_EG - -

FUNCTION::TASK_NS_EG

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_ns_egid - The effective group identifier of the task -  -

SYNOPSIS

- -

-

-    task_ns_egid:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the effective group id of the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_ns_euid.3stap.html b/man/function::task_ns_euid.3stap.html deleted file mode 100644 index 166c1382..00000000 --- a/man/function::task_ns_euid.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_NS_EU - -

FUNCTION::TASK_NS_EU

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_ns_euid - The effective user identifier of the task -  -

SYNOPSIS

- -

-

-    task_ns_euid:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the effective user id of the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_ns_gid.3stap.html b/man/function::task_ns_gid.3stap.html deleted file mode 100644 index 763081ad..00000000 --- a/man/function::task_ns_gid.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_NS_GI - -

FUNCTION::TASK_NS_GI

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_ns_gid - The group identifier of the task as seen in a namespace -  -

SYNOPSIS

- -

-

-    task_ns_gid:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the group id of the given task as seen in in the given user namespace. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_ns_pid.3stap.html b/man/function::task_ns_pid.3stap.html deleted file mode 100644 index 72e27e86..00000000 --- a/man/function::task_ns_pid.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_NS_PI - -

FUNCTION::TASK_NS_PI

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_ns_pid - The process identifier of the task -  -

SYNOPSIS

- -

-

-    task_ns_pid:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This fucntion returns the process id of the given task based on the specified pid namespace.. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_ns_tid.3stap.html b/man/function::task_ns_tid.3stap.html deleted file mode 100644 index a6cf1f8e..00000000 --- a/man/function::task_ns_tid.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_NS_TI - -

FUNCTION::TASK_NS_TI

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_ns_tid - The thread identifier of the task as seen in a namespace -  -

SYNOPSIS

- -

-

-    task_ns_tid:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the thread id of the given task as seen in the pid namespace. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_ns_uid.3stap.html b/man/function::task_ns_uid.3stap.html deleted file mode 100644 index 70a19af8..00000000 --- a/man/function::task_ns_uid.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_NS_UI - -

FUNCTION::TASK_NS_UI

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_ns_uid - The user identifier of the task -  -

SYNOPSIS

- -

-

-    task_ns_uid:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the user id of the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_open_file_handles.3stap.html b/man/function::task_open_file_handles.3stap.html deleted file mode 100644 index 7cc1651d..00000000 --- a/man/function::task_open_file_handles.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_OPEN_ - -

FUNCTION::TASK_OPEN_

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_open_file_handles - The number of open files of the task -  -

SYNOPSIS

- -

-

-    task_open_file_handles:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the number of open file handlers for the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_parent.3stap.html b/man/function::task_parent.3stap.html deleted file mode 100644 index 70d618b5..00000000 --- a/man/function::task_parent.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_PAREN - -

FUNCTION::TASK_PAREN

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_parent - The task_struct of the parent task -  -

SYNOPSIS

- -

-

-    task_parent:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the parent task_struct of the given task. This address can be passed to the various task_*() functions to extract more task-specific data. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_pid.3stap.html b/man/function::task_pid.3stap.html deleted file mode 100644 index 42b4bdd9..00000000 --- a/man/function::task_pid.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_PID - -

FUNCTION::TASK_PID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_pid - The process identifier of the task -  -

SYNOPSIS

- -

-

-    task_pid:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This fucntion returns the process id of the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_prio.3stap.html b/man/function::task_prio.3stap.html deleted file mode 100644 index 554de30a..00000000 --- a/man/function::task_prio.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_PRIO - -

FUNCTION::TASK_PRIO

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_prio - The priority value of the task -  -

SYNOPSIS

- -

-

-    task_prio:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the priority value of the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_start_time.3stap.html b/man/function::task_start_time.3stap.html deleted file mode 100644 index ca84dde4..00000000 --- a/man/function::task_start_time.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_START - -

FUNCTION::TASK_START

-Section: Task Time Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_start_time - Start time of the given task -  -

SYNOPSIS

- -

-

-    task_start_time:long(tid:long)
-
- -  -

ARGUMENTS

- -

- -tid -

-Thread id of the given task -
- -  -

DESCRIPTION

- -

- -Returns the start time of the given task in nanoseconds since boot time or 0 if the task does not exist. -  -

SEE ALSO

- -tapset::task_time(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_state.3stap.html b/man/function::task_state.3stap.html deleted file mode 100644 index cb61cd76..00000000 --- a/man/function::task_state.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_STATE - -

FUNCTION::TASK_STATE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_state - The state of the task -  -

SYNOPSIS

- -

-

-    task_state:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -Return the state of the given task, one of: TASK_RUNNING (0), TASK_INTERRUPTIBLE (1), TASK_UNINTERRUPTIBLE (2), TASK_STOPPED (4), TASK_TRACED (8), EXIT_ZOMBIE (16), or EXIT_DEAD (32). -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_stime.3stap.html b/man/function::task_stime.3stap.html deleted file mode 100644 index 288dee0d..00000000 --- a/man/function::task_stime.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of FUNCTION::TASK_STIME - -

FUNCTION::TASK_STIME

-Section: Task Time Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_stime - System time of the task -  -

SYNOPSIS

- -

-

-1) task_stime:long()
-
- -

-

-2) task_stime:long(tid:long)
-
- -  -

ARGUMENTS

- -

- -tid -

-Thread id of the given task -
- -  -

DESCRIPTION

- -

- -1) Returns the system time of the current task in cputime. Does not include any time used by other tasks in this process, nor does it include any time of the children of this task. -

- -2) Returns the system time of the given task in cputime, or zero if the task doesn't exist. Does not include any time used by other tasks in this process, nor does it include any time of the children of this task. -  -

SEE ALSO

- -tapset::task_time(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_tid.3stap.html b/man/function::task_tid.3stap.html deleted file mode 100644 index 2ecb8a8b..00000000 --- a/man/function::task_tid.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_TID - -

FUNCTION::TASK_TID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_tid - The thread identifier of the task -  -

SYNOPSIS

- -

-

-    task_tid:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the thread id of the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_time_string.3stap.html b/man/function::task_time_string.3stap.html deleted file mode 100644 index 088bf7a6..00000000 --- a/man/function::task_time_string.3stap.html +++ /dev/null @@ -1,75 +0,0 @@ - -Manpage of FUNCTION::TASK_TIME_ - -

FUNCTION::TASK_TIME_

-Section: Task Time Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_time_string - Human readable string of task time usage -  -

SYNOPSIS

- -

-

-    task_time_string:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Returns a human readable string showing the user and system time the current task has used up to now. For example -"usr: 0m12.908s, sys: 1m6.851s". -  -

SEE ALSO

- -tapset::task_time(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_time_string_tid.3stap.html b/man/function::task_time_string_tid.3stap.html deleted file mode 100644 index e03e25f9..00000000 --- a/man/function::task_time_string_tid.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of FUNCTION::TASK_TIME_ - -

FUNCTION::TASK_TIME_

-Section: Task Time Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_time_string_tid - Human readable string of task time usage -  -

SYNOPSIS

- -

-

-    task_time_string_tid:string(tid:long)
-
- -  -

ARGUMENTS

- -

- -tid -

-Thread id of the given task -
- -  -

DESCRIPTION

- -

- -Returns a human readable string showing the user and system time the given task has used up to now. For example -"usr: 0m12.908s, sys: 1m6.851s". -  -

SEE ALSO

- -tapset::task_time(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_uid.3stap.html b/man/function::task_uid.3stap.html deleted file mode 100644 index 2c6a91d4..00000000 --- a/man/function::task_uid.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TASK_UID - -

FUNCTION::TASK_UID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_uid - The user identifier of the task -  -

SYNOPSIS

- -

-

-    task_uid:long(task:long)
-
- -  -

ARGUMENTS

- -

- -task -

-task_struct pointer -
- -  -

DESCRIPTION

- -

- -This function returns the user id of the given task. -  -

SEE ALSO

- -tapset::task(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::task_utime.3stap.html b/man/function::task_utime.3stap.html deleted file mode 100644 index 52471f39..00000000 --- a/man/function::task_utime.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of FUNCTION::TASK_UTIME - -

FUNCTION::TASK_UTIME

-Section: Task Time Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::task_utime - User time of the task -  -

SYNOPSIS

- -

-

-1) task_utime:long()
-
- -

-

-2) task_utime:long(tid:long)
-
- -  -

ARGUMENTS

- -

- -tid -

-Thread id of the given task -
- -  -

DESCRIPTION

- -

- -1) Returns the user time of the current task in cputime. Does not include any time used by other tasks in this process, nor does it include any time of the children of this task. -

- -2) Returns the user time of the given task in cputime, or zero if the task doesn't exist. Does not include any time used by other tasks in this process, nor does it include any time of the children of this task. -  -

SEE ALSO

- -tapset::task_time(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::tcpmib_filter_key.3stap.html b/man/function::tcpmib_filter_key.3stap.html deleted file mode 100644 index 6246d4bb..00000000 --- a/man/function::tcpmib_filter_key.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of FUNCTION::TCPMIB_FIL - -

FUNCTION::TCPMIB_FIL

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::tcpmib_filter_key - Default filter function for tcpmib.* probes -  -

SYNOPSIS

- -

-

-    tcpmib_filter_key:long(sk:long,op:long)
-
- -  -

ARGUMENTS

- -

- -sk -

-pointer to the struct sock being acted on -
- -

- -op -

-value to be counted if -sk -passes the filter -
- -  -

DESCRIPTION

- -

- -This function is a default filter function. The user can replace this function with their own. The user-supplied filter function returns an index key based on the values in -sk. A return value of 0 means this particular -sk -should be not be counted. -  -

SEE ALSO

- -tapset::tcpmib-filter-default(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::tcpmib_get_state.3stap.html b/man/function::tcpmib_get_state.3stap.html deleted file mode 100644 index c62cca06..00000000 --- a/man/function::tcpmib_get_state.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TCPMIB_GET - -

FUNCTION::TCPMIB_GET

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::tcpmib_get_state - Get a socket's state -  -

SYNOPSIS

- -

-

-    tcpmib_get_state:long(sk:long)
-
- -  -

ARGUMENTS

- -

- -sk -

-pointer to a struct sock -
- -  -

DESCRIPTION

- -

- -Returns the sk_state from a struct sock. -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::tcpmib_local_addr.3stap.html b/man/function::tcpmib_local_addr.3stap.html deleted file mode 100644 index 8688e265..00000000 --- a/man/function::tcpmib_local_addr.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TCPMIB_LOC - -

FUNCTION::TCPMIB_LOC

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::tcpmib_local_addr - Get the source address -  -

SYNOPSIS

- -

-

-    tcpmib_local_addr:long(sk:long)
-
- -  -

ARGUMENTS

- -

- -sk -

-pointer to a struct inet_sock -
- -  -

DESCRIPTION

- -

- -Returns the saddr from a struct inet_sock in host order. -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::tcpmib_local_port.3stap.html b/man/function::tcpmib_local_port.3stap.html deleted file mode 100644 index 47733349..00000000 --- a/man/function::tcpmib_local_port.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TCPMIB_LOC - -

FUNCTION::TCPMIB_LOC

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::tcpmib_local_port - Get the local port -  -

SYNOPSIS

- -

-

-    tcpmib_local_port:long(sk:long)
-
- -  -

ARGUMENTS

- -

- -sk -

-pointer to a struct inet_sock -
- -  -

DESCRIPTION

- -

- -Returns the sport from a struct inet_sock in host order. -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::tcpmib_remote_addr.3stap.html b/man/function::tcpmib_remote_addr.3stap.html deleted file mode 100644 index 1e015d52..00000000 --- a/man/function::tcpmib_remote_addr.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TCPMIB_REM - -

FUNCTION::TCPMIB_REM

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::tcpmib_remote_addr - Get the remote address -  -

SYNOPSIS

- -

-

-    tcpmib_remote_addr:long(sk:long)
-
- -  -

ARGUMENTS

- -

- -sk -

-pointer to a struct inet_sock -
- -  -

DESCRIPTION

- -

- -Returns the daddr from a struct inet_sock in host order. -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::tcpmib_remote_port.3stap.html b/man/function::tcpmib_remote_port.3stap.html deleted file mode 100644 index fba4ebc7..00000000 --- a/man/function::tcpmib_remote_port.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TCPMIB_REM - -

FUNCTION::TCPMIB_REM

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::tcpmib_remote_port - Get the remote port -  -

SYNOPSIS

- -

-

-    tcpmib_remote_port:long(sk:long)
-
- -  -

ARGUMENTS

- -

- -sk -

-pointer to a struct inet_sock -
- -  -

DESCRIPTION

- -

- -Returns the dport from a struct inet_sock in host order. -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::text_str.3stap.html b/man/function::text_str.3stap.html deleted file mode 100644 index 5795e240..00000000 --- a/man/function::text_str.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::TEXT_STR - -

FUNCTION::TEXT_STR

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::text_str - Escape any non-printable chars in a string -  -

SYNOPSIS

- -

-

-    text_str:string(input:string)
-
- -  -

ARGUMENTS

- -

- -input -

-the string to escape -
- -  -

DESCRIPTION

- -

- -This function accepts a string argument, and any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. -  -

SEE ALSO

- -tapset::string(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::text_strn.3stap.html b/man/function::text_strn.3stap.html deleted file mode 100644 index fd640a2a..00000000 --- a/man/function::text_strn.3stap.html +++ /dev/null @@ -1,94 +0,0 @@ - -Manpage of FUNCTION::TEXT_STRN - -

FUNCTION::TEXT_STRN

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::text_strn - Escape any non-printable chars in a string -  -

SYNOPSIS

- -

-

-    text_strn:string(input:string,len:long,quoted:long)
-
- -  -

ARGUMENTS

- -

- -input -

-the string to escape -
- -

- -len -

-maximum length of string to return (0 implies MAXSTRINGLEN) -
- -

- -quoted -

-put double quotes around the string. If input string is truncated it will have -"..." -after the second quote -
- -  -

DESCRIPTION

- -

- -This function accepts a string of designated length, and any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. -  -

SEE ALSO

- -tapset::string(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::thread_indent.3stap.html b/man/function::thread_indent.3stap.html deleted file mode 100644 index 5213a75b..00000000 --- a/man/function::thread_indent.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::THREAD_IND - -

FUNCTION::THREAD_IND

-Section: Utility functions for using an (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::thread_indent - returns an amount of space with the current task information -  -

SYNOPSIS

- -

-

-    thread_indent:string(delta:long)
-
- -  -

ARGUMENTS

- -

- -delta -

-the amount of space added/removed for each call -
- -  -

DESCRIPTION

- -

- -This function returns a string with appropriate indentation for a thread. Call it with a small positive or matching negative delta. If this is the real outermost, initial level of indentation, then the function resets the relative timestamp base to zero. The timestamp is as per provided by the __indent_timestamp function, which by default measures microseconds. -  -

SEE ALSO

- -tapset::indent(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::thread_indent_depth.3stap.html b/man/function::thread_indent_depth.3stap.html deleted file mode 100644 index 7317a39c..00000000 --- a/man/function::thread_indent_depth.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of FUNCTION::THREAD_IND - -

FUNCTION::THREAD_IND

-Section: Utility functions for using an (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::thread_indent_depth - returns the nested-depth of the current task -  -

SYNOPSIS

- -

-

-    thread_indent_depth:long(delta:long)
-
- -  -

ARGUMENTS

- -

- -delta -

-the amount of depth added/removed for each call -
- -  -

DESCRIPTION

- -

- -This function returns an integer equal to the nested function-call depth starting from the outermost initial level. This function is useful for saving space (consumed by whitespace) in traces with long nested function calls. Use this function in a similar fashion to -thread_indent, i.e., in call-probe, use thread_indent_depth(1) and in return-probe, use thread_indent_depth(-1) -  -

SEE ALSO

- -tapset::indent(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::tid.3stap.html b/man/function::tid.3stap.html deleted file mode 100644 index bb4199d8..00000000 --- a/man/function::tid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::TID - -

FUNCTION::TID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::tid - Returns the thread ID of a target process -  -

SYNOPSIS

- -

-

-    tid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the thread ID of the target process. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::tokenize.3stap.html b/man/function::tokenize.3stap.html deleted file mode 100644 index b3d31680..00000000 --- a/man/function::tokenize.3stap.html +++ /dev/null @@ -1,94 +0,0 @@ - -Manpage of FUNCTION::TOKENIZE - -

FUNCTION::TOKENIZE

-Section: A collection of standard strin (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::tokenize - Return the next non-empty token in a string -  -

SYNOPSIS

- -

-

-1) tokenize:string(delim:string)
-
- -

-

-2) tokenize:string(input:string,delim:string)
-
- -  -

ARGUMENTS

- -

- -delim -

-set of characters that delimit the tokens -
- -

- -input -

-string to tokenize. If empty, returns the next non-empty token in the string passed in the previous call to -tokenize. -
- -  -

DESCRIPTION

- -

- -1) This function returns the next token in the string passed in the previous call to tokenize. If no delimiter is found, the entire remaining input string is * returned. It returns empty when no more tokens are available. -

- -2) This function returns the next non-empty token in the given input string, where the tokens are delimited by characters in the delim string. If the input string is non-empty, it returns the first token. If the input string is empty, it returns the next token in the string passed in the previous call to tokenize. If no delimiter is found, the entire remaining input string is returned. It returns empty when no more tokens are available. -  -

SEE ALSO

- -tapset::tokenize(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::tz_ctime.3stap.html b/man/function::tz_ctime.3stap.html deleted file mode 100644 index b6668136..00000000 --- a/man/function::tz_ctime.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::TZ_CTIME - -

FUNCTION::TZ_CTIME

-Section: Time utility functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::tz_ctime - Convert seconds since epoch into human readable date/time string, with local time zone -  -

SYNOPSIS

- -

-

-    tz_ctime(epochsecs:)
-
- -  -

ARGUMENTS

- -

- -epochsecs -

-number of seconds since epoch (as returned by -gettimeofday_s) -
- -  -

DESCRIPTION

- -

- -Takes an argument of seconds since the epoch as returned by -gettimeofday_s. Returns a string of the same form as -ctime, but offsets the epoch time for the local time zone, and appends the name of the local time zone. The string length may vary. The time zone information is passed by staprun at script startup only. -  -

SEE ALSO

- -tapset::tzinfo(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::tz_gmtoff.3stap.html b/man/function::tz_gmtoff.3stap.html deleted file mode 100644 index 2f6bf8c2..00000000 --- a/man/function::tz_gmtoff.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::TZ_GMTOFF - -

FUNCTION::TZ_GMTOFF

-Section: Time utility functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::tz_gmtoff - Return local time zone offset -  -

SYNOPSIS

- -

-

-    tz_gmtoff()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Returns the local time zone offset (seconds west of UTC), as passed by staprun at script startup only. -  -

SEE ALSO

- -tapset::tzinfo(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::tz_name.3stap.html b/man/function::tz_name.3stap.html deleted file mode 100644 index 1c7ed960..00000000 --- a/man/function::tz_name.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::TZ_NAME - -

FUNCTION::TZ_NAME

-Section: Time utility functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::tz_name - Return local time zone name -  -

SYNOPSIS

- -

-

-    tz_name()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Returns the local time zone name, as passed by staprun at script startup only. -  -

SEE ALSO

- -tapset::tzinfo(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::u32_arg.3stap.html b/man/function::u32_arg.3stap.html deleted file mode 100644 index 357897f2..00000000 --- a/man/function::u32_arg.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::U32_ARG - -

FUNCTION::U32_ARG

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::u32_arg - Return function argument as unsigned 32-bit value -  -

SYNOPSIS

- -

-

-    u32_arg:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-index of argument to return -
- -  -

DESCRIPTION

- -

- -Return the unsigned 32-bit value of argument n, same as uint_arg. -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::u64_arg.3stap.html b/man/function::u64_arg.3stap.html deleted file mode 100644 index b1e83af3..00000000 --- a/man/function::u64_arg.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::U64_ARG - -

FUNCTION::U64_ARG

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::u64_arg - Return function argument as unsigned 64-bit value -  -

SYNOPSIS

- -

-

-    u64_arg:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-index of argument to return -
- -  -

DESCRIPTION

- -

- -Return the unsigned 64-bit value of argument n, same as ulonglong_arg. -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::u_register.3stap.html b/man/function::u_register.3stap.html deleted file mode 100644 index 18d6f56c..00000000 --- a/man/function::u_register.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::U_REGISTER - -

FUNCTION::U_REGISTER

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::u_register - Return the unsigned value of the named CPU register -  -

SYNOPSIS

- -

-

-    u_register:long(name:string)
-
- -  -

ARGUMENTS

- -

- -name -

-Name of the register to return -
- -  -

DESCRIPTION

- -

- -Same as register(name), except that if the register is 32 bits wide, it is zero-extended to 64 bits. -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::uaddr.3stap.html b/man/function::uaddr.3stap.html deleted file mode 100644 index 24bb9c23..00000000 --- a/man/function::uaddr.3stap.html +++ /dev/null @@ -1,77 +0,0 @@ - -Manpage of FUNCTION::UADDR - -

FUNCTION::UADDR

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::uaddr - User space address of current running task -  -

SYNOPSIS

- -

-

-    uaddr:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -Returns the address in userspace that the current task was at when the probe occurred. When the current running task isn't a user space thread, or the address cannot be found, zero is returned. Can be used to see where the current task is combined with -usymname -or -usymdata. Often the task will be in the VDSO where it entered the kernel. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::ubacktrace.3stap.html b/man/function::ubacktrace.3stap.html deleted file mode 100644 index cd0c7633..00000000 --- a/man/function::ubacktrace.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::UBACKTRACE - -

FUNCTION::UBACKTRACE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ubacktrace - Hex backtrace of current user-space task stack. -  -

SYNOPSIS

- -

-

-    ubacktrace:string()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -

- -Return a string of hex addresses that are a backtrace of the stack of the current task. Output may be truncated as per maximum string length. Returns empty string when current probe point cannot determine user backtrace. See -backtrace -for kernel traceback. -  -

NOTE

- -

- -To get (full) backtraces for user space applications and shared shared libraries not mentioned in the current script run stap with -d /path/to/exe-or-so and/or add --ldd to load all needed unwind data. -  -

SEE ALSO

- -tapset::ucontext-unwind(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
NOTE
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::ucallers.3stap.html b/man/function::ucallers.3stap.html deleted file mode 100644 index 940bbe17..00000000 --- a/man/function::ucallers.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of FUNCTION::UCALLERS - -

FUNCTION::UCALLERS

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ucallers - Return first n elements of user stack backtrace -  -

SYNOPSIS

- -

-

-    ucallers:string(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-number of levels to descend in the stack (not counting the top level). If n is -1, print the entire stack. -
- -  -

DESCRIPTION

- -

- -This function returns a string of the first n hex addresses from the backtrace of the user stack. Output may be truncated as per maximum string length (MAXSTRINGLEN). -  -

NOTE

- -

- -To get (full) backtraces for user space applications and shared shared libraries not mentioned in the current script run stap with -d /path/to/exe-or-so and/or add --ldd to load all needed unwind data. -  -

SEE ALSO

- -tapset::ucontext(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
NOTE
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::udelay.3stap.html b/man/function::udelay.3stap.html deleted file mode 100644 index 44929c4a..00000000 --- a/man/function::udelay.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::UDELAY - -

FUNCTION::UDELAY

-Section: Guru tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::udelay - microsecond delay -  -

SYNOPSIS

- -

-

-    udelay(us:long)
-
- -  -

ARGUMENTS

- -

- -us -

-Number of microseconds to delay. -
- -  -

DESCRIPTION

- -

- -This function inserts a multi-microsecond busy-delay into a probe handler. It requires guru mode. -  -

SEE ALSO

- -tapset::guru-delay(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::uid.3stap.html b/man/function::uid.3stap.html deleted file mode 100644 index aaf3b845..00000000 --- a/man/function::uid.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of FUNCTION::UID - -

FUNCTION::UID

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::uid - Returns the user ID of a target process -  -

SYNOPSIS

- -

-

-    uid:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -This function returns the user ID of the target process. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::uint_arg.3stap.html b/man/function::uint_arg.3stap.html deleted file mode 100644 index e43d49c9..00000000 --- a/man/function::uint_arg.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::UINT_ARG - -

FUNCTION::UINT_ARG

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::uint_arg - Return function argument as unsigned int -  -

SYNOPSIS

- -

-

-    uint_arg:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-index of argument to return -
- -  -

DESCRIPTION

- -

- -Return the value of argument n as an unsigned int (i.e., a 32-bit integer zero-extended to 64 bits). -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::ulong_arg.3stap.html b/man/function::ulong_arg.3stap.html deleted file mode 100644 index a14a9199..00000000 --- a/man/function::ulong_arg.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::ULONG_ARG - -

FUNCTION::ULONG_ARG

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ulong_arg - Return function argument as unsigned long -  -

SYNOPSIS

- -

-

-    ulong_arg:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-index of argument to return -
- -  -

DESCRIPTION

- -

- -Return the value of argument n as an unsigned long. On architectures where a long is 32 bits, the value is zero-extended to 64 bits. -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::ulonglong_arg.3stap.html b/man/function::ulonglong_arg.3stap.html deleted file mode 100644 index 1b6308cf..00000000 --- a/man/function::ulonglong_arg.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::ULONGLONG_ - -

FUNCTION::ULONGLONG_

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ulonglong_arg - Return function argument as 64-bit value -  -

SYNOPSIS

- -

-

-    ulonglong_arg:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-index of argument to return -
- -  -

DESCRIPTION

- -

- -Return the value of argument n as a 64-bit value. (Same as longlong_arg.) -  -

SEE ALSO

- -tapset::registers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::umodname.3stap.html b/man/function::umodname.3stap.html deleted file mode 100644 index fa558d2a..00000000 --- a/man/function::umodname.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::UMODNAME - -

FUNCTION::UMODNAME

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::umodname - Returns the (short) name of the user module. -  -

SYNOPSIS

- -

-

-    umodname:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-User-space address -
- -  -

DESCRIPTION

- -

- -Returns the short name of the user space module for the current task that that the given address is part of. Reports an error when the address isn't in a (mapped in) module, or the module cannot be found for some reason. -  -

SEE ALSO

- -tapset::ucontext(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::usecs_to_string.3stap.html b/man/function::usecs_to_string.3stap.html deleted file mode 100644 index fc953b2b..00000000 --- a/man/function::usecs_to_string.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of FUNCTION::USECS_TO_S - -

FUNCTION::USECS_TO_S

-Section: Task Time Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::usecs_to_string - Human readable string for given microseconds -  -

SYNOPSIS

- -

-

-    usecs_to_string:string(usecs:long)
-
- -  -

ARGUMENTS

- -

- -usecs -

-Number of microseconds to translate. -
- -  -

DESCRIPTION

- -

- -Returns a string representing the number of microseconds as a human readable string consisting of -"XmY.ZZZZZZs", where X is the number of minutes, Y is the number of seconds and ZZZZZZ is the number of microseconds. -  -

SEE ALSO

- -tapset::task_time(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::user_buffer_quoted.3stap.html b/man/function::user_buffer_quoted.3stap.html deleted file mode 100644 index 6417a4d6..00000000 --- a/man/function::user_buffer_quoted.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of FUNCTION::USER_BUFFE - -

FUNCTION::USER_BUFFE

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_buffer_quoted - Retrieves and quotes buffer from user space -  -

SYNOPSIS

- -

-

-    user_buffer_quoted:string(addr:long,inlen:long,outlen:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the buffer from -
- -

- -inlen -

-the exact length of the buffer to read -
- -

- -outlen -

-the maximum length of the output string -
- -  -

DESCRIPTION

- -

- -Reads inlen characters of a buffer from the given user space memory address, and returns up to outlen characters, where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note that the string will be surrounded by double quotes. On the rare cases when user space data is not accessible at the given address, the address itself is returned as a string, without double quotes. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::user_buffer_quoted_error.3stap.html b/man/function::user_buffer_quoted_error.3stap.html deleted file mode 100644 index 7ec133fa..00000000 --- a/man/function::user_buffer_quoted_error.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of FUNCTION::USER_BUFFE - -

FUNCTION::USER_BUFFE

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_buffer_quoted_error - Retrieves and quotes buffer from user space -  -

SYNOPSIS

- -

-

-    user_buffer_quoted_error:string(addr:long,inlen:long,outlen:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the buffer from -
- -

- -inlen -

-the exact length of the buffer to read -
- -

- -outlen -

-the maximum length of the output string -
- -  -

DESCRIPTION

- -

- -Reads inlen characters of a buffer from the given user space memory address, and returns up to outlen characters, where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note that the string will be surrounded by double quotes. On the rare cases when user space data is not accessible at the given address, an error is thrown. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::user_char.3stap.html b/man/function::user_char.3stap.html deleted file mode 100644 index a05347c3..00000000 --- a/man/function::user_char.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_CHAR - -

FUNCTION::USER_CHAR

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_char - Retrieves a char value stored in user space -  -

SYNOPSIS

- -

-

-    user_char:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the char from -
- -  -

DESCRIPTION

- -

- -Returns the char value from a given user space address. Returns zero when user space data is not accessible. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::user_char_error.3stap.html b/man/function::user_char_error.3stap.html deleted file mode 100644 index 6a8ba2e9..00000000 --- a/man/function::user_char_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_CHAR_ - -

FUNCTION::USER_CHAR_

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_char_error - Retrieves a char value stored in user space -  -

SYNOPSIS

- -

-

-    user_char_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the char from -
- -  -

DESCRIPTION

- -

- -Returns the char value from a given user space address. If the user space data is not accessible, an error will occur. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::user_char_warn.3stap.html b/man/function::user_char_warn.3stap.html deleted file mode 100644 index 3b221564..00000000 --- a/man/function::user_char_warn.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_CHAR_ - -

FUNCTION::USER_CHAR_

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_char_warn - Retrieves a char value stored in user space -  -

SYNOPSIS

- -

-

-    user_char_warn:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the char from -
- -  -

DESCRIPTION

- -

- -Returns the char value from a given user space address. Returns zero when user space data is not accessible and warns about the failure (but does not error). -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::user_int.3stap.html b/man/function::user_int.3stap.html deleted file mode 100644 index ab225503..00000000 --- a/man/function::user_int.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_INT - -

FUNCTION::USER_INT

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_int - Retrieves an int value stored in user space -  -

SYNOPSIS

- -

-

-    user_int:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the int from -
- -  -

DESCRIPTION

- -

- -Returns the int value from a given user space address. Returns zero when user space data is not accessible. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::user_int16.3stap.html b/man/function::user_int16.3stap.html deleted file mode 100644 index 28373f79..00000000 --- a/man/function::user_int16.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_INT16 - -

FUNCTION::USER_INT16

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_int16 - Retrieves a 16-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_int16:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the 16-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the 16-bit integer value from a given user space address. Returns zero when user space data is not accessible. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::user_int16_error.3stap.html b/man/function::user_int16_error.3stap.html deleted file mode 100644 index 4d13c3b8..00000000 --- a/man/function::user_int16_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_INT16 - -

FUNCTION::USER_INT16

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_int16_error - Retrieves a 16-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_int16_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the 16-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the 16-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::user_int32.3stap.html b/man/function::user_int32.3stap.html deleted file mode 100644 index 8411878b..00000000 --- a/man/function::user_int32.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_INT32 - -

FUNCTION::USER_INT32

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_int32 - Retrieves a 32-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_int32:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the 32-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the 32-bit integer value from a given user space address. Returns zero when user space data is not accessible. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::user_int32_error.3stap.html b/man/function::user_int32_error.3stap.html deleted file mode 100644 index 4d72ee48..00000000 --- a/man/function::user_int32_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_INT32 - -

FUNCTION::USER_INT32

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_int32_error - Retrieves a 32-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_int32_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the 32-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the 32-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::user_int64.3stap.html b/man/function::user_int64.3stap.html deleted file mode 100644 index 0ea390fd..00000000 --- a/man/function::user_int64.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_INT64 - -

FUNCTION::USER_INT64

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_int64 - Retrieves a 64-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_int64:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the 64-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the 64-bit integer value from a given user space address. Returns zero when user space data is not accessible. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:46 GMT, June 11, 2020 - - diff --git a/man/function::user_int64_error.3stap.html b/man/function::user_int64_error.3stap.html deleted file mode 100644 index b9ca8d25..00000000 --- a/man/function::user_int64_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_INT64 - -

FUNCTION::USER_INT64

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_int64_error - Retrieves a 64-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_int64_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the 64-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the 64-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_int8.3stap.html b/man/function::user_int8.3stap.html deleted file mode 100644 index 0bd7d034..00000000 --- a/man/function::user_int8.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_INT8 - -

FUNCTION::USER_INT8

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_int8 - Retrieves a 8-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_int8:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the 8-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the 8-bit integer value from a given user space address. Returns zero when user space data is not accessible. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_int8_error.3stap.html b/man/function::user_int8_error.3stap.html deleted file mode 100644 index 7f460a8f..00000000 --- a/man/function::user_int8_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_INT8_ - -

FUNCTION::USER_INT8_

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_int8_error - Retrieves a 8-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_int8_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the 8-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the 8-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_int_error.3stap.html b/man/function::user_int_error.3stap.html deleted file mode 100644 index 13dd1a4f..00000000 --- a/man/function::user_int_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_INT_E - -

FUNCTION::USER_INT_E

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_int_error - Retrieves an int value stored in user space -  -

SYNOPSIS

- -

-

-    user_int_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the int from -
- -  -

DESCRIPTION

- -

- -Returns the int value from a given user space address. If the user space data is not accessible, an error will occur. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_int_warn.3stap.html b/man/function::user_int_warn.3stap.html deleted file mode 100644 index 5276b8f4..00000000 --- a/man/function::user_int_warn.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_INT_W - -

FUNCTION::USER_INT_W

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_int_warn - Retrieves an int value stored in user space -  -

SYNOPSIS

- -

-

-    user_int_warn:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the int from -
- -  -

DESCRIPTION

- -

- -Returns the int value from a given user space address. Returns zero when user space data is not accessible and warns about the failure (but does not error). -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_long.3stap.html b/man/function::user_long.3stap.html deleted file mode 100644 index a7d61cd7..00000000 --- a/man/function::user_long.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_LONG - -

FUNCTION::USER_LONG

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_long - Retrieves a long value stored in user space -  -

SYNOPSIS

- -

-

-    user_long:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the long from -
- -  -

DESCRIPTION

- -

- -Returns the long value from a given user space address. Returns zero when user space data is not accessible. Note that the size of the long depends on the architecture of the current user space task (for those architectures that support both 64/32 bit compat tasks). -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_long_error.3stap.html b/man/function::user_long_error.3stap.html deleted file mode 100644 index 02dca562..00000000 --- a/man/function::user_long_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_LONG_ - -

FUNCTION::USER_LONG_

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_long_error - Retrieves a long value stored in user space -  -

SYNOPSIS

- -

-

-    user_long_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the long from -
- -  -

DESCRIPTION

- -

- -Returns the long value from a given user space address. If the user space data is not accessible, an error will occur. Note that the size of the long depends on the architecture of the current user space task (for those architectures that support both 64/32 bit compat tasks). -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_long_warn.3stap.html b/man/function::user_long_warn.3stap.html deleted file mode 100644 index 7f24b6a6..00000000 --- a/man/function::user_long_warn.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_LONG_ - -

FUNCTION::USER_LONG_

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_long_warn - Retrieves a long value stored in user space -  -

SYNOPSIS

- -

-

-    user_long_warn:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the long from -
- -  -

DESCRIPTION

- -

- -Returns the long value from a given user space address. Returns zero when user space data is not accessible and warns about the failure (but does not error). Note that the size of the long depends on the architecture of the current user space task (for those architectures that support both 64/32 bit compat tasks). -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_mode.3stap.html b/man/function::user_mode.3stap.html deleted file mode 100644 index fdbf4e14..00000000 --- a/man/function::user_mode.3stap.html +++ /dev/null @@ -1,76 +0,0 @@ - -Manpage of FUNCTION::USER_MODE - -

FUNCTION::USER_MODE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_mode - Determines if probe point occurs in user-mode -  -

SYNOPSIS

- -

-

-    user_mode:long()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -

- -Return 1 if the probe point occurred in user-mode. -  -

SEE ALSO

- -tapset::context(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_short.3stap.html b/man/function::user_short.3stap.html deleted file mode 100644 index b99c8605..00000000 --- a/man/function::user_short.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_SHORT - -

FUNCTION::USER_SHORT

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_short - Retrieves a short value stored in user space -  -

SYNOPSIS

- -

-

-    user_short:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the short from -
- -  -

DESCRIPTION

- -

- -Returns the short value from a given user space address. Returns zero when user space data is not accessible. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_short_error.3stap.html b/man/function::user_short_error.3stap.html deleted file mode 100644 index 353a6fcb..00000000 --- a/man/function::user_short_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_SHORT - -

FUNCTION::USER_SHORT

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_short_error - Retrieves a short value stored in user space -  -

SYNOPSIS

- -

-

-    user_short_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the short from -
- -  -

DESCRIPTION

- -

- -Returns the short value from a given user space address. If the user space data is not accessible, an error will occur. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_short_warn.3stap.html b/man/function::user_short_warn.3stap.html deleted file mode 100644 index 03e78e60..00000000 --- a/man/function::user_short_warn.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_SHORT - -

FUNCTION::USER_SHORT

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_short_warn - Retrieves a short value stored in user space -  -

SYNOPSIS

- -

-

-    user_short_warn:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the short from -
- -  -

DESCRIPTION

- -

- -Returns the short value from a given user space address. Returns zero when user space data is not accessible and warns about the failure (but does not error). -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_string.3stap.html b/man/function::user_string.3stap.html deleted file mode 100644 index d86fc41f..00000000 --- a/man/function::user_string.3stap.html +++ /dev/null @@ -1,93 +0,0 @@ - -Manpage of FUNCTION::USER_STRIN - -

FUNCTION::USER_STRIN

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_string - Retrieves string from user space -  -

SYNOPSIS

- -

-

-1) user_string:string(addr:long)
-
- -

-

-2) user_string:string(addr:long,err_msg:string)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the string from -
- -

- -err_msg -

-the error message to return when data isn't available -
- -  -

DESCRIPTION

- -

- -1) Returns the null terminated C string from a given user space memory address. Reports an error on the rare cases when userspace data is not accessible. -

- -2) Returns the null terminated C string from a given user space memory address. Reports the given error message on the rare cases when userspace data is not accessible. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_string_n.3stap.html b/man/function::user_string_n.3stap.html deleted file mode 100644 index 01a3166f..00000000 --- a/man/function::user_string_n.3stap.html +++ /dev/null @@ -1,100 +0,0 @@ - -Manpage of FUNCTION::USER_STRIN - -

FUNCTION::USER_STRIN

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_string_n - Retrieves string of given length from user space -  -

SYNOPSIS

- -

-

-1) user_string_n:string(addr:long,n:long)
-
- -

-

-2) user_string_n:string(addr:long,n:long,err_msg:string)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the string from -
- -

- -n -

-the maximum length of the string (if not null terminated) -
- -

- -err_msg -

-the error message to return when data isn't available -
- -  -

DESCRIPTION

- -

- -1) Returns the C string of a maximum given length from a given user space address. Reports an error on the rare cases when userspace data is not accessible at the given address. -

- -2) Returns the C string of a maximum given length from a given user space address. Returns the given error message string on the rare cases when userspace data is not accessible at the given address. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_string_n_quoted.3stap.html b/man/function::user_string_n_quoted.3stap.html deleted file mode 100644 index f75c95b4..00000000 --- a/man/function::user_string_n_quoted.3stap.html +++ /dev/null @@ -1,107 +0,0 @@ - -Manpage of FUNCTION::USER_STRIN - -

FUNCTION::USER_STRIN

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_string_n_quoted - Retrieves and quotes string from user space -  -

SYNOPSIS

- -

-

-1) user_string_n_quoted:string(addr:long,n:long)
-
- -

-

-2) user_string_n_quoted:string(addr:long,inlen:long,outlen:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the string from -
- -

- -n -

-the maximum length of the string (if not null terminated) -
- -

- -inlen -

-the maximum length of the string to read (if not null terminated) -
- -

- -outlen -

-the maximum length of the output string -
- -  -

DESCRIPTION

- -

- -1) Returns up to n characters of a C string from the given user space memory address where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note that the string will be surrounded by double quotes. On the rare cases when userspace data is not accessible at the given address, the address itself is returned as a string, without double quotes. -

- -2) Reads up to inlen characters of a C string from the given user space memory address, and returns up to outlen characters, where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note that the string will be surrounded by double quotes. On the rare cases when userspace data is not accessible at the given address, the address itself is returned as a string, without double quotes. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_string_n_warn.3stap.html b/man/function::user_string_n_warn.3stap.html deleted file mode 100644 index a91fca95..00000000 --- a/man/function::user_string_n_warn.3stap.html +++ /dev/null @@ -1,101 +0,0 @@ - -Manpage of FUNCTION::USER_STRIN - -

FUNCTION::USER_STRIN

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_string_n_warn - Retrieves string from user space -  -

SYNOPSIS

- -

-

-1) user_string_n_warn:string(addr:long,n:long)
-
- -

-

-2) user_string_n_warn:string(addr:long,n:long,warn_msg:string)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the string from -
- -

- -n -

-the maximum length of the string (if not null terminated) -
- -

- -warn_msg -

-the warning message to return when data isn't available -
- -  -

DESCRIPTION

- -

- -1) Returns up to n characters of a C string from a given user space memory address. Reports"<unknown>" -on the rare cases when userspace data is not accessible and warns (but does not abort) about the failure. -

- -2) Returns up to n characters of a C string from a given user space memory address. Reports the given warning message on the rare cases when userspace data is not accessible and warns (but does not abort) about the failure. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_string_quoted.3stap.html b/man/function::user_string_quoted.3stap.html deleted file mode 100644 index 6184fa38..00000000 --- a/man/function::user_string_quoted.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_STRIN - -

FUNCTION::USER_STRIN

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_string_quoted - Retrieves and quotes string from user space -  -

SYNOPSIS

- -

-

-    user_string_quoted:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the string from -
- -  -

DESCRIPTION

- -

- -Returns the null terminated C string from a given user space memory address where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note that the string will be surrounded by double quotes. On the rare cases when userspace data is not accessible at the given address, the address itself is returned as a string, without double quotes. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_string_quoted_utf16.3stap.html b/man/function::user_string_quoted_utf16.3stap.html deleted file mode 100644 index ede3f52c..00000000 --- a/man/function::user_string_quoted_utf16.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::USER_STRIN - -

FUNCTION::USER_STRIN

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_string_quoted_utf16 - Quote given user UTF-16 string. -  -

SYNOPSIS

- -

-

-    user_string_quoted_utf16:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The user address to retrieve the string from -
- -  -

DESCRIPTION

- -

- -This function combines quoting as per -string_quoted -and UTF-16 decoding as per -user_string_utf16. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_string_quoted_utf32.3stap.html b/man/function::user_string_quoted_utf32.3stap.html deleted file mode 100644 index adbfd2fd..00000000 --- a/man/function::user_string_quoted_utf32.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of FUNCTION::USER_STRIN - -

FUNCTION::USER_STRIN

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_string_quoted_utf32 - Quote given user UTF-32 string. -  -

SYNOPSIS

- -

-

-    user_string_quoted_utf32:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The user address to retrieve the string from -
- -  -

DESCRIPTION

- -

- -This function combines quoting as per -string_quoted -and UTF-32 decoding as per -user_string_utf32. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_string_utf16.3stap.html b/man/function::user_string_utf16.3stap.html deleted file mode 100644 index a249f1a9..00000000 --- a/man/function::user_string_utf16.3stap.html +++ /dev/null @@ -1,93 +0,0 @@ - -Manpage of FUNCTION::USER_STRIN - -

FUNCTION::USER_STRIN

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_string_utf16 - Retrieves UTF-16 string from user memory -  -

SYNOPSIS

- -

-

-1) user_string_utf16:string(addr:long)
-
- -

-

-2) user_string_utf16:string(addr:long,err_msg:string)
-
- -  -

ARGUMENTS

- -

- -addr -

-The user address to retrieve the string from -
- -

- -err_msg -

-The error message to return when data isn't available -
- -  -

DESCRIPTION

- -

- -1) This function returns a null terminated UTF-8 string converted from the UTF-16 string at a given user memory address. Reports an error on string copy fault or conversion error. -

- -2) This function returns a null terminated UTF-8 string converted from the UTF-16 string at a given user memory address. Reports the given error message on string copy fault or conversion error. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_string_utf32.3stap.html b/man/function::user_string_utf32.3stap.html deleted file mode 100644 index 302ee38c..00000000 --- a/man/function::user_string_utf32.3stap.html +++ /dev/null @@ -1,93 +0,0 @@ - -Manpage of FUNCTION::USER_STRIN - -

FUNCTION::USER_STRIN

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_string_utf32 - Retrieves UTF-32 string from user memory -  -

SYNOPSIS

- -

-

-1) user_string_utf32:string(addr:long)
-
- -

-

-2) user_string_utf32:string(addr:long,err_msg:string)
-
- -  -

ARGUMENTS

- -

- -addr -

-The user address to retrieve the string from -
- -

- -err_msg -

-The error message to return when data isn't available -
- -  -

DESCRIPTION

- -

- -1) This function returns a null terminated UTF-8 string converted from the UTF-32 string at a given user memory address. Reports an error on string copy fault or conversion error. -

- -2) This function returns a null terminated UTF-8 string converted from the UTF-32 string at a given user memory address. Reports the given error message on string copy fault or conversion error. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_string_warn.3stap.html b/man/function::user_string_warn.3stap.html deleted file mode 100644 index 682d57f6..00000000 --- a/man/function::user_string_warn.3stap.html +++ /dev/null @@ -1,93 +0,0 @@ - -Manpage of FUNCTION::USER_STRIN - -

FUNCTION::USER_STRIN

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_string_warn - Retrieves string from user space -  -

SYNOPSIS

- -

-

-1) user_string_warn:string(addr:long)
-
- -

-

-2) user_string_warn:string(addr:long,warn_msg:string)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the string from -
- -

- -warn_msg -

-the warning message to return when data isn't available -
- -  -

DESCRIPTION

- -

- -1) Returns the null terminated C string from a given user space memory address. Reports "" on the rare cases when userspace data is not accessible and warns (but does not abort) about the failure. -

- -2) Returns the null terminated C string from a given user space memory address. Reports the given warning message on the rare cases when userspace data is not accessible and warns (but does not abort) about the failure. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_uint16.3stap.html b/man/function::user_uint16.3stap.html deleted file mode 100644 index 16d24c0a..00000000 --- a/man/function::user_uint16.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_UINT1 - -

FUNCTION::USER_UINT1

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_uint16 - Retrieves an unsigned 16-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_uint16:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned 16-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned 16-bit integer value from a given user space address. Returns zero when user space data is not accessible. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_uint16_error.3stap.html b/man/function::user_uint16_error.3stap.html deleted file mode 100644 index b60243de..00000000 --- a/man/function::user_uint16_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_UINT1 - -

FUNCTION::USER_UINT1

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_uint16_error - Retrieves an unsigned 16-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_uint16_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned 16-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned 16-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_uint32.3stap.html b/man/function::user_uint32.3stap.html deleted file mode 100644 index 76bc560e..00000000 --- a/man/function::user_uint32.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_UINT3 - -

FUNCTION::USER_UINT3

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_uint32 - Retrieves an unsigned 32-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_uint32:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned 32-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned 32-bit integer value from a given user space address. Returns zero when user space data is not accessible. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_uint32_error.3stap.html b/man/function::user_uint32_error.3stap.html deleted file mode 100644 index daf2e9cd..00000000 --- a/man/function::user_uint32_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_UINT3 - -

FUNCTION::USER_UINT3

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_uint32_error - Retrieves an unsigned 32-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_uint32_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned 32-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned 32-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_uint64.3stap.html b/man/function::user_uint64.3stap.html deleted file mode 100644 index e95095a7..00000000 --- a/man/function::user_uint64.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_UINT6 - -

FUNCTION::USER_UINT6

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_uint64 - Retrieves an unsigned 64-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_uint64:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned 64-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned 64-bit integer value from a given user space address. Returns zero when user space data is not accessible. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_uint64_error.3stap.html b/man/function::user_uint64_error.3stap.html deleted file mode 100644 index 8205a861..00000000 --- a/man/function::user_uint64_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_UINT6 - -

FUNCTION::USER_UINT6

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_uint64_error - Retrieves an unsigned 64-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_uint64_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned 64-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned 64-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_uint8.3stap.html b/man/function::user_uint8.3stap.html deleted file mode 100644 index 9db4bdc4..00000000 --- a/man/function::user_uint8.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_UINT8 - -

FUNCTION::USER_UINT8

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_uint8 - Retrieves a unsigned 8-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_uint8:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned 8-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned 8-bit integer value from a given user space address. Returns zero when user space data is not accessible. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_uint8_error.3stap.html b/man/function::user_uint8_error.3stap.html deleted file mode 100644 index 1d1c7bbc..00000000 --- a/man/function::user_uint8_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_UINT8 - -

FUNCTION::USER_UINT8

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_uint8_error - Retrieves a unsigned 8-bit integer value stored in user space -  -

SYNOPSIS

- -

-

-    user_uint8_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned 8-bit integer from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned 8-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_ulong.3stap.html b/man/function::user_ulong.3stap.html deleted file mode 100644 index d14fd76a..00000000 --- a/man/function::user_ulong.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_ULONG - -

FUNCTION::USER_ULONG

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_ulong - Retrieves an unsigned long value stored in user space -  -

SYNOPSIS

- -

-

-    user_ulong:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned long from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned long value from a given user space address. Returns zero when user space data is not accessible. Note that the size of the unsigned long depends on the architecture of the current user space task (for those architectures that support both 64/32 bit compat tasks). -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_ulong_error.3stap.html b/man/function::user_ulong_error.3stap.html deleted file mode 100644 index 99f1a35a..00000000 --- a/man/function::user_ulong_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_ULONG - -

FUNCTION::USER_ULONG

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_ulong_error - Retrieves a unsigned long value stored in user space -  -

SYNOPSIS

- -

-

-    user_ulong_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned long from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned long value from a given user space address. If the user space data is not accessible, an error will occur. Note that the size of the unsigned long depends on the architecture of the current user space task (for those architectures that support both 64/32 bit compat tasks). -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_ulong_warn.3stap.html b/man/function::user_ulong_warn.3stap.html deleted file mode 100644 index 85282164..00000000 --- a/man/function::user_ulong_warn.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_ULONG - -

FUNCTION::USER_ULONG

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_ulong_warn - Retrieves an unsigned long value stored in user space -  -

SYNOPSIS

- -

-

-    user_ulong_warn:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned long from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned long value from a given user space address. Returns zero when user space data is not accessible and warns about the failure (but does not error). Note that the size of the unsigned long depends on the architecture of the current user space task (for those architectures that support both 64/32 bit compat tasks). -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_ushort.3stap.html b/man/function::user_ushort.3stap.html deleted file mode 100644 index 0b9f0466..00000000 --- a/man/function::user_ushort.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_USHOR - -

FUNCTION::USER_USHOR

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_ushort - Retrieves an unsigned short value stored in user space -  -

SYNOPSIS

- -

-

-    user_ushort:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned short from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned short value from a given user space address. Returns zero when user space data is not accessible. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_ushort_error.3stap.html b/man/function::user_ushort_error.3stap.html deleted file mode 100644 index a2402b78..00000000 --- a/man/function::user_ushort_error.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_USHOR - -

FUNCTION::USER_USHOR

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_ushort_error - Retrieves an unsigned short value stored in user space -  -

SYNOPSIS

- -

-

-    user_ushort_error:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned short from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned short value from a given user space address. If the user space data is not accessible, an error will occur. -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::user_ushort_warn.3stap.html b/man/function::user_ushort_warn.3stap.html deleted file mode 100644 index 31861d4d..00000000 --- a/man/function::user_ushort_warn.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USER_USHOR - -

FUNCTION::USER_USHOR

-Section: String and data retrieving fun (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::user_ushort_warn - Retrieves an unsigned short value stored in user space -  -

SYNOPSIS

- -

-

-    user_ushort_warn:long(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-the user space address to retrieve the unsigned short from -
- -  -

DESCRIPTION

- -

- -Returns the unsigned short value from a given user space address. Returns zero when user space data is not accessible and warns about the failure (but does not error). -  -

SEE ALSO

- -tapset::uconversions(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::usrdev2kerndev.3stap.html b/man/function::usrdev2kerndev.3stap.html deleted file mode 100644 index ff18ec06..00000000 --- a/man/function::usrdev2kerndev.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of FUNCTION::USRDEV2KER - -

FUNCTION::USRDEV2KER

-Section: Device Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::usrdev2kerndev - Converts a user-space device number into the format used in the kernel -  -

SYNOPSIS

- -

-

-    usrdev2kerndev:long(dev:long)
-
- -  -

ARGUMENTS

- -

- -dev -

-Device number in user-space format. -
- -  -

SEE ALSO

- -tapset::dev(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::ustack.3stap.html b/man/function::ustack.3stap.html deleted file mode 100644 index d4142ed4..00000000 --- a/man/function::ustack.3stap.html +++ /dev/null @@ -1,80 +0,0 @@ - -Manpage of FUNCTION::USTACK - -

FUNCTION::USTACK

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::ustack - Return address at given depth of user stack backtrace -  -

SYNOPSIS

- -

-

-    ustack:long(n:long)
-
- -  -

ARGUMENTS

- -

- -n -

-number of levels to descend in the stack. -
- -  -

DESCRIPTION

- -

- -Performs a simple (user space) backtrace, and returns the element at the specified position. The results of the backtrace itself are cached, so that the backtrace computation is performed at most once no matter how many times -ustack -is called, or in what order. -  -

SEE ALSO

- -tapset::ucontext-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::usymdata.3stap.html b/man/function::usymdata.3stap.html deleted file mode 100644 index 7893c394..00000000 --- a/man/function::usymdata.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USYMDATA - -

FUNCTION::USYMDATA

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::usymdata - Return the symbol and module offset of an address. -  -

SYNOPSIS

- -

-

-    usymdata:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The address to translate. -
- -  -

DESCRIPTION

- -

- -Returns the (function) symbol name associated with the given address in the current task if known, the offset from the start and the size of the symbol, plus the module name (between brackets). If symbol is unknown, but module is known, the offset inside the module, plus the size of the module is added. If any element is not known it will be omitted and if the symbol name is unknown it will return the hex string for the given address. -  -

SEE ALSO

- -tapset::ucontext-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::usymfile.3stap.html b/man/function::usymfile.3stap.html deleted file mode 100644 index b02aab1e..00000000 --- a/man/function::usymfile.3stap.html +++ /dev/null @@ -1,84 +0,0 @@ - -Manpage of FUNCTION::USYMFILE - -

FUNCTION::USYMFILE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::usymfile - Return the file name of a given address. -  -

SYNOPSIS

- -

-

-    usymfile:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The address to translate. -
- -  -

DESCRIPTION

- -

- -Returns the file name of the given address, if known. If the file name cannot be found, the hex string representation of the address will be returned. -  -

SEE ALSO

- -tapset::context-symbols(3stap) - -  -

SEE ALSO

- -tapset::ucontext-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::usymfileline.3stap.html b/man/function::usymfileline.3stap.html deleted file mode 100644 index 6888b5a8..00000000 --- a/man/function::usymfileline.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USYMFILELI - -

FUNCTION::USYMFILELI

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::usymfileline - Return the file name and line number of an address. -  -

SYNOPSIS

- -

-

-    usymfileline:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The address to translate. -
- -  -

DESCRIPTION

- -

- -Returns the file name and the (approximate) line number of the given address, if known. If the file name or the line number cannot be found, the hex string representation of the address will be returned. -  -

SEE ALSO

- -tapset::ucontext-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::usymline.3stap.html b/man/function::usymline.3stap.html deleted file mode 100644 index 2204b6d7..00000000 --- a/man/function::usymline.3stap.html +++ /dev/null @@ -1,84 +0,0 @@ - -Manpage of FUNCTION::USYMLINE - -

FUNCTION::USYMLINE

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::usymline - Return the line number of an address. -  -

SYNOPSIS

- -

-

-    usymline:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The address to translate. -
- -  -

DESCRIPTION

- -

- -Returns the (approximate) line number of the given address, if known. If the line number cannot be found, the hex string representation of the address will be returned. -  -

SEE ALSO

- -tapset::context-symbols(3stap) - -  -

SEE ALSO

- -tapset::ucontext-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::usymname.3stap.html b/man/function::usymname.3stap.html deleted file mode 100644 index d0e98479..00000000 --- a/man/function::usymname.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::USYMNAME - -

FUNCTION::USYMNAME

-Section: Context Functions (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::usymname - Return the symbol of an address in the current task. -  -

SYNOPSIS

- -

-

-    usymname:string(addr:long)
-
- -  -

ARGUMENTS

- -

- -addr -

-The address to translate. -
- -  -

DESCRIPTION

- -

- -Returns the (function) symbol name associated with the given address if known. If not known it will return the hex string representation of addr. -  -

SEE ALSO

- -tapset::ucontext-symbols(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::vm_fault_contains.3stap.html b/man/function::vm_fault_contains.3stap.html deleted file mode 100644 index 7d9e9dea..00000000 --- a/man/function::vm_fault_contains.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::VM_FAULT_C - -

FUNCTION::VM_FAULT_C

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::vm_fault_contains - Test return value for page fault reason -  -

SYNOPSIS

- -

-

-    vm_fault_contains:long(value:long,test:long)
-
- -  -

ARGUMENTS

- -

- -value -

-the fault_type returned by vm.page_fault.return -
- -

- -test -

-the type of fault to test for (VM_FAULT_OOM or similar) -
- -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/function::warn.3stap.html b/man/function::warn.3stap.html deleted file mode 100644 index a586f285..00000000 --- a/man/function::warn.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of FUNCTION::WARN - -

FUNCTION::WARN

-Section: Logging Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -function::warn - Send a line to the warning stream -  -

SYNOPSIS

- -

-

-    warn(msg:string)
-
- -  -

ARGUMENTS

- -

- -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. -  -

SEE ALSO

- -tapset::logging(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/index.html b/man/index.html deleted file mode 100644 index a819f81f..00000000 --- a/man/index.html +++ /dev/null @@ -1,832 +0,0 @@ -systemtap man page index diff --git a/man/macro::json_output_array_numeric_value.3stap.html b/man/macro::json_output_array_numeric_value.3stap.html deleted file mode 100644 index 10542d81..00000000 --- a/man/macro::json_output_array_numeric_value.3stap.html +++ /dev/null @@ -1,100 +0,0 @@ - -Manpage of MACRO::JSON_OUTPUT_A - -

MACRO::JSON_OUTPUT_A

-Section: JSON Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -macro::json_output_array_numeric_value - Output a numeric value for metric in an array. -  -

SYNOPSIS

- -

-

-    @json_output_array_numeric_value(array_name,array_index,metric_name,value)
-
- -  -

ARGUMENTS

- -

- -array_name -

-The name of the array. -
- -

- -array_index -

-The array index (as a string) indicating where to store the numeric value. -
- -

- -metric_name -

-The name of the numeric metric. -
- -

- -value -

-The numeric value to output. -
- -  -

DESCRIPTION

- -

- -The json_output_array_numeric_value macro is designed to be called from the 'json_data' probe in the user's script to output a metric's numeric value that is in an array. This metric should have been added with -json_add_array_numeric_metric. -  -

SEE ALSO

- -tapset::json(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/macro::json_output_array_string_value.3stap.html b/man/macro::json_output_array_string_value.3stap.html deleted file mode 100644 index b2f81b82..00000000 --- a/man/macro::json_output_array_string_value.3stap.html +++ /dev/null @@ -1,100 +0,0 @@ - -Manpage of MACRO::JSON_OUTPUT_A - -

MACRO::JSON_OUTPUT_A

-Section: JSON Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -macro::json_output_array_string_value - Output a string value for metric in an array. -  -

SYNOPSIS

- -

-

-    @json_output_array_string_value(array_name,array_index,metric_name,value)
-
- -  -

ARGUMENTS

- -

- -array_name -

-The name of the array. -
- -

- -array_index -

-The array index (as a string) indicating where to store the string value. -
- -

- -metric_name -

-The name of the string metric. -
- -

- -value -

-The string value to output. -
- -  -

DESCRIPTION

- -

- -The json_output_array_string_value macro is designed to be called from the 'json_data' probe in the user's script to output a metric's string value that is in an array. This metric should have been added with -json_add_array_string_metric. -  -

SEE ALSO

- -tapset::json(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/macro::json_output_data_end.3stap.html b/man/macro::json_output_data_end.3stap.html deleted file mode 100644 index 123e92dc..00000000 --- a/man/macro::json_output_data_end.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of MACRO::JSON_OUTPUT_D - -

MACRO::JSON_OUTPUT_D

-Section: JSON Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -macro::json_output_data_end - End the json output. -  -

SYNOPSIS

- -

-

-    @json_output_data_end()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -The json_output_data_end macro is designed to be called from the 'json_data' probe from the user's script. It marks the end of the JSON output. -  -

SEE ALSO

- -tapset::json(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/macro::json_output_data_start.3stap.html b/man/macro::json_output_data_start.3stap.html deleted file mode 100644 index 9fc0a5f0..00000000 --- a/man/macro::json_output_data_start.3stap.html +++ /dev/null @@ -1,74 +0,0 @@ - -Manpage of MACRO::JSON_OUTPUT_D - -

MACRO::JSON_OUTPUT_D

-Section: JSON Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -macro::json_output_data_start - Start the json output. -  -

SYNOPSIS

- -

-

-    @json_output_data_start()
-
- -  -

ARGUMENTS

- -

- -None -  -

DESCRIPTION

- -

- -The json_output_data_start macro is designed to be called from the 'json_data' probe from the user's script. It marks the start of the JSON output. -  -

SEE ALSO

- -tapset::json(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/macro::json_output_numeric_value.3stap.html b/man/macro::json_output_numeric_value.3stap.html deleted file mode 100644 index ac5d227e..00000000 --- a/man/macro::json_output_numeric_value.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of MACRO::JSON_OUTPUT_N - -

MACRO::JSON_OUTPUT_N

-Section: JSON Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -macro::json_output_numeric_value - Output a numeric value. -  -

SYNOPSIS

- -

-

-    @json_output_numeric_value(name,value)
-
- -  -

ARGUMENTS

- -

- -name -

-The name of the numeric metric. -
- -

- -value -

-The numeric value to output. -
- -  -

DESCRIPTION

- -

- -The json_output_numeric_value macro is designed to be called from the 'json_data' probe in the user's script to output a metric's numeric value. This metric should have been added with -json_add_numeric_metric. -  -

SEE ALSO

- -tapset::json(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/macro::json_output_string_value.3stap.html b/man/macro::json_output_string_value.3stap.html deleted file mode 100644 index fb396f9b..00000000 --- a/man/macro::json_output_string_value.3stap.html +++ /dev/null @@ -1,86 +0,0 @@ - -Manpage of MACRO::JSON_OUTPUT_S - -

MACRO::JSON_OUTPUT_S

-Section: JSON Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -macro::json_output_string_value - Output a string value. -  -

SYNOPSIS

- -

-

-    @json_output_string_value(name,value)
-
- -  -

ARGUMENTS

- -

- -name -

-The name of the string metric. -
- -

- -value -

-The string value to output. -
- -  -

DESCRIPTION

- -

- -The json_output_string_value macro is designed to be called from the 'json_data' probe in the user's script to output a metric's string value. This metric should have been added with -json_add_string_metric. -  -

SEE ALSO

- -tapset::json(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
ARGUMENTS
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioblock.end.3stap.html b/man/probe::ioblock.end.3stap.html deleted file mode 100644 index 07b99bae..00000000 --- a/man/probe::ioblock.end.3stap.html +++ /dev/null @@ -1,169 +0,0 @@ - -Manpage of PROBE::IOBLOCK\&.END - -

PROBE::IOBLOCK\&.END

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioblock.end - Fires whenever a block I/O transfer is complete. -  -

SYNOPSIS

- -

-

-ioblock.end 
-
- -  -

VALUES

- -

- -sector -

-beginning sector for the entire bio -
- -

- -idx -

-offset into the bio vector array -
- -

- -error -

-0 on success -
- -

- -hw_segments -

-number of segments after physical and DMA remapping hardware coalescing is performed -
- -

- -bytes_done -

-number of bytes transferred -
- -

- -rw -

-binary trace for read/write request -
- -

- -name -

-name of the probe point -
- -

- -opf -

-operations and flags -
- -

- -phys_segments -

-number of segments in this bio after physical address coalescing is performed. -
- -

- -size -

-total size in bytes -
- -

- -flags -

-see below BIO_UPTODATE 0 ok after I/O completion BIO_RW_BLOCK 1 RW_AHEAD set, and read/write would block BIO_EOF 2 out-out-bounds error BIO_SEG_VALID 3 nr_hw_seg valid BIO_CLONED 4 doesn't own data BIO_BOUNCED 5 bio is a bounce bio BIO_USER_MAPPED 6 contains user pages BIO_EOPNOTSUPP 7 not supported -
- -

- -vcnt -

-bio vector count which represents number of array element (page, offset, length) which makes up this I/O request -
- -

- -ino -

-i-node number of the mapped file -
- -

- -devname -

-block device name -
- -  -

CONTEXT

- -

- -The process signals the transfer is done. -  -

SEE ALSO

- -tapset::ioblock(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioblock.request.3stap.html b/man/probe::ioblock.request.3stap.html deleted file mode 100644 index d2c595c1..00000000 --- a/man/probe::ioblock.request.3stap.html +++ /dev/null @@ -1,176 +0,0 @@ - -Manpage of PROBE::IOBLOCK\&.REQ - -

PROBE::IOBLOCK\&.REQ

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioblock.request - Fires whenever making a generic block I/O request. -  -

SYNOPSIS

- -

-

-ioblock.request 
-
- -  -

VALUES

- -

- -size -

-total size in bytes -
- -

- -bdev -

-target block device -
- -

- -flags -

-see below BIO_UPTODATE 0 ok after I/O completion BIO_RW_BLOCK 1 RW_AHEAD set, and read/write would block BIO_EOF 2 out-out-bounds error BIO_SEG_VALID 3 nr_hw_seg valid BIO_CLONED 4 doesn't own data BIO_BOUNCED 5 bio is a bounce bio BIO_USER_MAPPED 6 contains user pages BIO_EOPNOTSUPP 7 not supported -
- -

- -vcnt -

-bio vector count which represents number of array element (page, offset, length) which make up this I/O request -
- -

- -ino -

-i-node number of the mapped file -
- -

- -devname -

-block device name -
- -

- -opf -

-operations and flags -
- -

- -phys_segments -

-number of segments in this bio after physical address coalescing is performed -
- -

- -hw_segments -

-number of segments after physical and DMA remapping hardware coalescing is performed -
- -

- -name -

-name of the probe point -
- -

- -rw -

-binary trace for read/write request -
- -

- -p_start_sect -

-points to the start sector of the partition structure of the device -
- -

- -bdev_contains -

-points to the device object which contains the partition (when bio structure represents a partition) -
- -

- -sector -

-beginning sector for the entire bio -
- -

- -idx -

-offset into the bio vector array -
- -  -

CONTEXT

- -

- -The process makes block I/O request -  -

SEE ALSO

- -tapset::ioblock(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioblock_trace.bounce.3stap.html b/man/probe::ioblock_trace.bounce.3stap.html deleted file mode 100644 index cc523f2d..00000000 --- a/man/probe::ioblock_trace.bounce.3stap.html +++ /dev/null @@ -1,178 +0,0 @@ - -Manpage of PROBE::IOBLOCK_TRACE - -

PROBE::IOBLOCK_TRACE

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioblock_trace.bounce - Fires whenever a buffer bounce is needed for at least one page of a block IO request. -  -

SYNOPSIS

- -

-

-ioblock_trace.bounce 
-
- -  -

VALUES

- -

- -idx -

-offset into the bio vector array -phys_segments -- number of segments in this bio after physical address coalescing is performed. -
- -

- -sector -

-beginning sector for the entire bio -
- -

- -q -

-request queue on which this bio was queued. -
- -

- -bytes_done -

-number of bytes transferred -
- -

- -p_start_sect -

-points to the start sector of the partition structure of the device -
- -

- -bdev_contains -

-points to the device object which contains the partition (when bio structure represents a partition) -
- -

- -rw -

-binary trace for read/write request -
- -

- -name -

-name of the probe point -
- -

- -opf -

-operations and flags -
- -

- -bdev -

-target block device -
- -

- -flags -

-see below BIO_UPTODATE 0 ok after I/O completion BIO_RW_BLOCK 1 RW_AHEAD set, and read/write would block BIO_EOF 2 out-out-bounds error BIO_SEG_VALID 3 nr_hw_seg valid BIO_CLONED 4 doesn't own data BIO_BOUNCED 5 bio is a bounce bio BIO_USER_MAPPED 6 contains user pages BIO_EOPNOTSUPP 7 not supported -
- -

- -size -

-total size in bytes -
- -

- -ino -

-i-node number of the mapped file -
- -

- -vcnt -

-bio vector count which represents number of array element (page, offset, length) which makes up this I/O request -
- -

- -devname -

-device for which a buffer bounce was needed. -
- -  -

CONTEXT

- -

- -The process creating a block IO request. -  -

SEE ALSO

- -tapset::ioblock(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioblock_trace.end.3stap.html b/man/probe::ioblock_trace.end.3stap.html deleted file mode 100644 index 4520868b..00000000 --- a/man/probe::ioblock_trace.end.3stap.html +++ /dev/null @@ -1,178 +0,0 @@ - -Manpage of PROBE::IOBLOCK_TRACE - -

PROBE::IOBLOCK_TRACE

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioblock_trace.end - Fires whenever a block I/O transfer is complete. -  -

SYNOPSIS

- -

-

-ioblock_trace.end 
-
- -  -

VALUES

- -

- -vcnt -

-bio vector count which represents number of array element (page, offset, length) which makes up this I/O request -
- -

- -ino -

-i-node number of the mapped file -
- -

- -devname -

-block device name -
- -

- -bdev -

-target block device -
- -

- -flags -

-see below BIO_UPTODATE 0 ok after I/O completion BIO_RW_BLOCK 1 RW_AHEAD set, and read/write would block BIO_EOF 2 out-out-bounds error BIO_SEG_VALID 3 nr_hw_seg valid BIO_CLONED 4 doesn't own data BIO_BOUNCED 5 bio is a bounce bio BIO_USER_MAPPED 6 contains user pages BIO_EOPNOTSUPP 7 not supported -
- -

- -size -

-total size in bytes -
- -

- -opf -

-operations and flags -
- -

- -p_start_sect -

-points to the start sector of the partition structure of the device -
- -

- -bdev_contains -

-points to the device object which contains the partition (when bio structure represents a partition) -
- -

- -name -

-name of the probe point -
- -

- -rw -

-binary trace for read/write request -
- -

- -bytes_done -

-number of bytes transferred -
- -

- -idx -

-offset into the bio vector array -phys_segments -- number of segments in this bio after physical address coalescing is performed. -
- -

- -q -

-request queue on which this bio was queued. -
- -

- -sector -

-beginning sector for the entire bio -
- -  -

CONTEXT

- -

- -The process signals the transfer is done. -  -

SEE ALSO

- -tapset::ioblock(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioblock_trace.request.3stap.html b/man/probe::ioblock_trace.request.3stap.html deleted file mode 100644 index 43f1be7f..00000000 --- a/man/probe::ioblock_trace.request.3stap.html +++ /dev/null @@ -1,178 +0,0 @@ - -Manpage of PROBE::IOBLOCK_TRACE - -

PROBE::IOBLOCK_TRACE

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioblock_trace.request - Fires just as a generic block I/O request is created for a bio. -  -

SYNOPSIS

- -

-

-ioblock_trace.request 
-
- -  -

VALUES

- -

- -flags -

-see below BIO_UPTODATE 0 ok after I/O completion BIO_RW_BLOCK 1 RW_AHEAD set, and read/write would block BIO_EOF 2 out-out-bounds error BIO_SEG_VALID 3 nr_hw_seg valid BIO_CLONED 4 doesn't own data BIO_BOUNCED 5 bio is a bounce bio BIO_USER_MAPPED 6 contains user pages BIO_EOPNOTSUPP 7 not supported -
- -

- -bdev -

-target block device -
- -

- -size -

-total size in bytes -
- -

- -devname -

-block device name -
- -

- -ino -

-i-node number of the mapped file -
- -

- -vcnt -

-bio vector count which represents number of array element (page, offset, length) which make up this I/O request -
- -

- -opf -

-operations and flags -
- -

- -bytes_done -

-number of bytes transferred -
- -

- -p_start_sect -

-points to the start sector of the partition structure of the device -
- -

- -bdev_contains -

-points to the device object which contains the partition (when bio structure represents a partition) -
- -

- -rw -

-binary trace for read/write request -
- -

- -name -

-name of the probe point -
- -

- -idx -

-offset into the bio vector array -phys_segments -- number of segments in this bio after physical address coalescing is performed. -
- -

- -sector -

-beginning sector for the entire bio -
- -

- -q -

-request queue on which this bio was queued. -
- -  -

CONTEXT

- -

- -The process makes block I/O request -  -

SEE ALSO

- -tapset::ioblock(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioscheduler.elv_add_request.3stap.html b/man/probe::ioscheduler.elv_add_request.3stap.html deleted file mode 100644 index 37864463..00000000 --- a/man/probe::ioscheduler.elv_add_request.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::IOSCHEDULER\& - -

PROBE::IOSCHEDULER\&

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioscheduler.elv_add_request - probe to indicate request is added to the request queue. -  -

SYNOPSIS

- -

-

-ioscheduler.elv_add_request 
-
- -  -

VALUES

- -

- -elevator_name -

-The type of I/O elevator currently enabled. -
- -

- -q -

-Pointer to request queue. -
- -

- -rq -

-Address of request. -
- -

- -disk_major -

-Disk major no of request. -
- -

- -rq_flags -

-Request flags. -
- -

- -disk_minor -

-Disk minor number of request. -
- -  -

SEE ALSO

- -tapset::ioscheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioscheduler.elv_add_request.kp.3stap.html b/man/probe::ioscheduler.elv_add_request.kp.3stap.html deleted file mode 100644 index 48c725e3..00000000 --- a/man/probe::ioscheduler.elv_add_request.kp.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::IOSCHEDULER\& - -

PROBE::IOSCHEDULER\&

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioscheduler.elv_add_request.kp - kprobe based probe to indicate that a request was added to the request queue -  -

SYNOPSIS

- -

-

-ioscheduler.elv_add_request.kp 
-
- -  -

VALUES

- -

- -rq_flags -

-Request flags -
- -

- -disk_minor -

-Disk minor number of the request -
- -

- -elevator_name -

-The type of I/O elevator currently enabled -
- -

- -name -

-Name of the probe point -
- -

- -disk_major -

-Disk major number of the request -
- -

- -rq -

-Address of the request -
- -

- -q -

-pointer to request queue -
- -  -

SEE ALSO

- -tapset::ioscheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioscheduler.elv_add_request.tp.3stap.html b/man/probe::ioscheduler.elv_add_request.tp.3stap.html deleted file mode 100644 index 68b3a7fe..00000000 --- a/man/probe::ioscheduler.elv_add_request.tp.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::IOSCHEDULER\& - -

PROBE::IOSCHEDULER\&

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioscheduler.elv_add_request.tp - tracepoint based probe to indicate a request is added to the request queue. -  -

SYNOPSIS

- -

-

-ioscheduler.elv_add_request.tp 
-
- -  -

VALUES

- -

- -disk_minor -

-Disk minor number of request. -
- -

- -rq_flags -

-Request flags. -
- -

- -q -

-Pointer to request queue. -
- -

- -rq -

-Address of request. -
- -

- -disk_major -

-Disk major no of request. -
- -

- -name -

-Name of the probe point -
- -

- -elevator_name -

-The type of I/O elevator currently enabled. -
- -  -

SEE ALSO

- -tapset::ioscheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioscheduler.elv_completed_request.3stap.html b/man/probe::ioscheduler.elv_completed_request.3stap.html deleted file mode 100644 index 26e538d9..00000000 --- a/man/probe::ioscheduler.elv_completed_request.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::IOSCHEDULER\& - -

PROBE::IOSCHEDULER\&

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioscheduler.elv_completed_request - Fires when a request is completed -  -

SYNOPSIS

- -

-

-ioscheduler.elv_completed_request 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -rq_flags -

-Request flags -
- -

- -elevator_name -

-The type of I/O elevator currently enabled -
- -

- -disk_minor -

-Disk minor number of the request -
- -

- -rq -

-Address of the request -
- -

- -disk_major -

-Disk major number of the request -
- -  -

SEE ALSO

- -tapset::ioscheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioscheduler.elv_next_request.3stap.html b/man/probe::ioscheduler.elv_next_request.3stap.html deleted file mode 100644 index 281fa9fc..00000000 --- a/man/probe::ioscheduler.elv_next_request.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::IOSCHEDULER\& - -

PROBE::IOSCHEDULER\&

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioscheduler.elv_next_request - Fires when a request is retrieved from the request queue -  -

SYNOPSIS

- -

-

-ioscheduler.elv_next_request 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -elevator_name -

-The type of I/O elevator currently enabled -
- -  -

SEE ALSO

- -tapset::ioscheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioscheduler.elv_next_request.return.3stap.html b/man/probe::ioscheduler.elv_next_request.return.3stap.html deleted file mode 100644 index e3d0e5a4..00000000 --- a/man/probe::ioscheduler.elv_next_request.return.3stap.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of PROBE::IOSCHEDULER\& - -

PROBE::IOSCHEDULER\&

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioscheduler.elv_next_request.return - Fires when a request retrieval issues a return signal -  -

SYNOPSIS

- -

-

-ioscheduler.elv_next_request.return 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -rq_flags -

-Request flags -
- -

- -disk_minor -

-Disk minor number of the request -
- -

- -rq -

-Address of the request -
- -

- -disk_major -

-Disk major number of the request -
- -  -

SEE ALSO

- -tapset::ioscheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioscheduler_trace.elv_abort_request.3stap.html b/man/probe::ioscheduler_trace.elv_abort_request.3stap.html deleted file mode 100644 index cdae78cc..00000000 --- a/man/probe::ioscheduler_trace.elv_abort_request.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::IOSCHEDULER_T - -

PROBE::IOSCHEDULER_T

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioscheduler_trace.elv_abort_request - Fires when a request is aborted. -  -

SYNOPSIS

- -

-

-ioscheduler_trace.elv_abort_request 
-
- -  -

VALUES

- -

- -elevator_name -

-The type of I/O elevator currently enabled. -
- -

- -name -

-Name of the probe point -
- -

- -disk_major -

-Disk major no of request. -
- -

- -rq -

-Address of request. -
- -

- -rq_flags -

-Request flags. -
- -

- -disk_minor -

-Disk minor number of request. -
- -  -

SEE ALSO

- -tapset::ioscheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioscheduler_trace.elv_completed_request.3stap.html b/man/probe::ioscheduler_trace.elv_completed_request.3stap.html deleted file mode 100644 index 80a3f35a..00000000 --- a/man/probe::ioscheduler_trace.elv_completed_request.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::IOSCHEDULER_T - -

PROBE::IOSCHEDULER_T

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioscheduler_trace.elv_completed_request - Fires when a request is -  -

SYNOPSIS

- -

-

-ioscheduler_trace.elv_completed_request 
-
- -  -

VALUES

- -

- -elevator_name -

-The type of I/O elevator currently enabled. -
- -

- -name -

-Name of the probe point -
- -

- -disk_major -

-Disk major no of request. -
- -

- -rq -

-Address of request. -
- -

- -rq_flags -

-Request flags. -
- -

- -disk_minor -

-Disk minor number of request. -
- -  -

DESCRIPTION

- -

- -completed. -  -

SEE ALSO

- -tapset::ioscheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioscheduler_trace.elv_issue_request.3stap.html b/man/probe::ioscheduler_trace.elv_issue_request.3stap.html deleted file mode 100644 index cc1eabb8..00000000 --- a/man/probe::ioscheduler_trace.elv_issue_request.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::IOSCHEDULER_T - -

PROBE::IOSCHEDULER_T

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioscheduler_trace.elv_issue_request - Fires when a request is -  -

SYNOPSIS

- -

-

-ioscheduler_trace.elv_issue_request 
-
- -  -

VALUES

- -

- -elevator_name -

-The type of I/O elevator currently enabled. -
- -

- -name -

-Name of the probe point -
- -

- -disk_major -

-Disk major no of request. -
- -

- -rq -

-Address of request. -
- -

- -rq_flags -

-Request flags. -
- -

- -disk_minor -

-Disk minor number of request. -
- -  -

DESCRIPTION

- -

- -scheduled. -  -

SEE ALSO

- -tapset::ioscheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioscheduler_trace.elv_requeue_request.3stap.html b/man/probe::ioscheduler_trace.elv_requeue_request.3stap.html deleted file mode 100644 index b91acd89..00000000 --- a/man/probe::ioscheduler_trace.elv_requeue_request.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::IOSCHEDULER_T - -

PROBE::IOSCHEDULER_T

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioscheduler_trace.elv_requeue_request - Fires when a request is -  -

SYNOPSIS

- -

-

-ioscheduler_trace.elv_requeue_request 
-
- -  -

VALUES

- -

- -disk_minor -

-Disk minor number of request. -
- -

- -rq_flags -

-Request flags. -
- -

- -disk_major -

-Disk major no of request. -
- -

- -rq -

-Address of request. -
- -

- -elevator_name -

-The type of I/O elevator currently enabled. -
- -

- -name -

-Name of the probe point -
- -  -

DESCRIPTION

- -

- -put back on the queue, when the hadware cannot accept more requests. -  -

SEE ALSO

- -tapset::ioscheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioscheduler_trace.plug.3stap.html b/man/probe::ioscheduler_trace.plug.3stap.html deleted file mode 100644 index ba1fb782..00000000 --- a/man/probe::ioscheduler_trace.plug.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::IOSCHEDULER_T - -

PROBE::IOSCHEDULER_T

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioscheduler_trace.plug - Fires when a request queue is plugged; -  -

SYNOPSIS

- -

-

-ioscheduler_trace.plug 
-
- -  -

VALUES

- -

- -rq_queue -

-request queue -
- -

- -name -

-Name of the probe point -
- -  -

DESCRIPTION

- -

- -ie, requests in the queue cannot be serviced by block driver. -  -

SEE ALSO

- -tapset::ioscheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioscheduler_trace.unplug_io.3stap.html b/man/probe::ioscheduler_trace.unplug_io.3stap.html deleted file mode 100644 index 26e19ddb..00000000 --- a/man/probe::ioscheduler_trace.unplug_io.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::IOSCHEDULER_T - -

PROBE::IOSCHEDULER_T

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioscheduler_trace.unplug_io - Fires when a request queue is unplugged; -  -

SYNOPSIS

- -

-

-ioscheduler_trace.unplug_io 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -rq_queue -

-request queue -
- -  -

DESCRIPTION

- -

- -Either, when number of pending requests in the queue exceeds threshold or, upon expiration of timer that was activated when queue was plugged. -  -

SEE ALSO

- -tapset::ioscheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ioscheduler_trace.unplug_timer.3stap.html b/man/probe::ioscheduler_trace.unplug_timer.3stap.html deleted file mode 100644 index 7aa7256c..00000000 --- a/man/probe::ioscheduler_trace.unplug_timer.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::IOSCHEDULER_T - -

PROBE::IOSCHEDULER_T

-Section: IO Scheduler and block IO Taps (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ioscheduler_trace.unplug_timer - Fires when unplug timer associated -  -

SYNOPSIS

- -

-

-ioscheduler_trace.unplug_timer 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -rq_queue -

-request queue -
- -  -

DESCRIPTION

- -

- -with a request queue expires. -  -

SEE ALSO

- -tapset::ioscheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ipmib.ForwDatagrams.3stap.html b/man/probe::ipmib.ForwDatagrams.3stap.html deleted file mode 100644 index d255e3f0..00000000 --- a/man/probe::ipmib.ForwDatagrams.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::IPMIB\&.FORWD - -

PROBE::IPMIB\&.FORWD

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ipmib.ForwDatagrams - Count forwarded packet -  -

SYNOPSIS

- -

-

-ipmib.ForwDatagrams 
-
- -  -

VALUES

- -

- -op -

-value to be added to the counter (default value of 1) -
- -

- -skb -

-pointer to the struct sk_buff being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -ipmib_filter_key. If the packet passes the filter is is counted in the global -ForwDatagrams -(equivalent to SNMP's MIB IPSTATS_MIB_OUTFORWDATAGRAMS) -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ipmib.FragFails.3stap.html b/man/probe::ipmib.FragFails.3stap.html deleted file mode 100644 index ce9eca57..00000000 --- a/man/probe::ipmib.FragFails.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::IPMIB\&.FRAGF - -

PROBE::IPMIB\&.FRAGF

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ipmib.FragFails - Count datagram fragmented unsuccessfully -  -

SYNOPSIS

- -

-

-ipmib.FragFails 
-
- -  -

VALUES

- -

- -op -

-Value to be added to the counter (default value of 1) -
- -

- -skb -

-pointer to the struct sk_buff being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -ipmib_filter_key. If the packet passes the filter is is counted in the global -FragFails -(equivalent to SNMP's MIB IPSTATS_MIB_FRAGFAILS) -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ipmib.FragOKs.3stap.html b/man/probe::ipmib.FragOKs.3stap.html deleted file mode 100644 index fb2b1c0c..00000000 --- a/man/probe::ipmib.FragOKs.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::IPMIB\&.FRAGO - -

PROBE::IPMIB\&.FRAGO

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ipmib.FragOKs - Count datagram fragmented successfully -  -

SYNOPSIS

- -

-

-ipmib.FragOKs 
-
- -  -

VALUES

- -

- -skb -

-pointer to the struct sk_buff being acted on -
- -

- -op -

-value to be added to the counter (default value of 1) -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -ipmib_filter_key. If the packet passes the filter is is counted in the global -FragOKs -(equivalent to SNMP's MIB IPSTATS_MIB_FRAGOKS) -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ipmib.InAddrErrors.3stap.html b/man/probe::ipmib.InAddrErrors.3stap.html deleted file mode 100644 index ddda715e..00000000 --- a/man/probe::ipmib.InAddrErrors.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::IPMIB\&.INADD - -

PROBE::IPMIB\&.INADD

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ipmib.InAddrErrors - Count arriving packets with an incorrect address -  -

SYNOPSIS

- -

-

-ipmib.InAddrErrors 
-
- -  -

VALUES

- -

- -op -

-value to be added to the counter (default value of 1) -
- -

- -skb -

-pointer to the struct sk_buff being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -ipmib_filter_key. If the packet passes the filter is is counted in the global -InAddrErrors -(equivalent to SNMP's MIB IPSTATS_MIB_INADDRERRORS) -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ipmib.InDiscards.3stap.html b/man/probe::ipmib.InDiscards.3stap.html deleted file mode 100644 index 1aa33711..00000000 --- a/man/probe::ipmib.InDiscards.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::IPMIB\&.INDIS - -

PROBE::IPMIB\&.INDIS

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ipmib.InDiscards - Count discarded inbound packets -  -

SYNOPSIS

- -

-

-ipmib.InDiscards 
-
- -  -

VALUES

- -

- -op -

-value to be added to the counter (default value of 1) -
- -

- -skb -

-pointer to the struct sk_buff being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -ipmib_filter_key. If the packet passes the filter is is counted in the global -InDiscards -(equivalent to SNMP's MIB STATS_MIB_INDISCARDS) -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ipmib.InNoRoutes.3stap.html b/man/probe::ipmib.InNoRoutes.3stap.html deleted file mode 100644 index 2d9839b2..00000000 --- a/man/probe::ipmib.InNoRoutes.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::IPMIB\&.INNOR - -

PROBE::IPMIB\&.INNOR

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ipmib.InNoRoutes - Count an arriving packet with no matching socket -  -

SYNOPSIS

- -

-

-ipmib.InNoRoutes 
-
- -  -

VALUES

- -

- -op -

-value to be added to the counter (default value of 1) -
- -

- -skb -

-pointer to the struct sk_buff being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -ipmib_filter_key. If the packet passes the filter is is counted in the global -InNoRoutes -(equivalent to SNMP's MIB IPSTATS_MIB_INNOROUTES) -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ipmib.InReceives.3stap.html b/man/probe::ipmib.InReceives.3stap.html deleted file mode 100644 index 0c181fa1..00000000 --- a/man/probe::ipmib.InReceives.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::IPMIB\&.INREC - -

PROBE::IPMIB\&.INREC

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ipmib.InReceives - Count an arriving packet -  -

SYNOPSIS

- -

-

-ipmib.InReceives 
-
- -  -

VALUES

- -

- -op -

-value to be added to the counter (default value of 1) -
- -

- -skb -

-pointer to the struct sk_buff being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -ipmib_filter_key. If the packet passes the filter is is counted in the global -InReceives -(equivalent to SNMP's MIB IPSTATS_MIB_INRECEIVES) -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ipmib.InUnknownProtos.3stap.html b/man/probe::ipmib.InUnknownProtos.3stap.html deleted file mode 100644 index 42758101..00000000 --- a/man/probe::ipmib.InUnknownProtos.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::IPMIB\&.INUNK - -

PROBE::IPMIB\&.INUNK

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ipmib.InUnknownProtos - Count arriving packets with an unbound proto -  -

SYNOPSIS

- -

-

-ipmib.InUnknownProtos 
-
- -  -

VALUES

- -

- -op -

-value to be added to the counter (default value of 1) -
- -

- -skb -

-pointer to the struct sk_buff being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -ipmib_filter_key. If the packet passes the filter is is counted in the global -InUnknownProtos -(equivalent to SNMP's MIB IPSTATS_MIB_INUNKNOWNPROTOS) -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ipmib.OutRequests.3stap.html b/man/probe::ipmib.OutRequests.3stap.html deleted file mode 100644 index e0fa4afc..00000000 --- a/man/probe::ipmib.OutRequests.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::IPMIB\&.OUTRE - -

PROBE::IPMIB\&.OUTRE

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ipmib.OutRequests - Count a request to send a packet -  -

SYNOPSIS

- -

-

-ipmib.OutRequests 
-
- -  -

VALUES

- -

- -op -

-value to be added to the counter (default value of 1) -
- -

- -skb -

-pointer to the struct sk_buff being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -ipmib_filter_key. If the packet passes the filter is is counted in the global -OutRequests -(equivalent to SNMP's MIB IPSTATS_MIB_OUTREQUESTS) -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ipmib.ReasmReqds.3stap.html b/man/probe::ipmib.ReasmReqds.3stap.html deleted file mode 100644 index b3314e39..00000000 --- a/man/probe::ipmib.ReasmReqds.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::IPMIB\&.REASM - -

PROBE::IPMIB\&.REASM

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ipmib.ReasmReqds - Count number of packet fragments reassembly requests -  -

SYNOPSIS

- -

-

-ipmib.ReasmReqds 
-
- -  -

VALUES

- -

- -skb -

-pointer to the struct sk_buff being acted on -
- -

- -op -

-value to be added to the counter (default value of 1) -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -ipmib_filter_key. If the packet passes the filter is is counted in the global -ReasmReqds -(equivalent to SNMP's MIB IPSTATS_MIB_REASMREQDS) -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::ipmib.ReasmTimeout.3stap.html b/man/probe::ipmib.ReasmTimeout.3stap.html deleted file mode 100644 index 95357e01..00000000 --- a/man/probe::ipmib.ReasmTimeout.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::IPMIB\&.REASM - -

PROBE::IPMIB\&.REASM

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::ipmib.ReasmTimeout - Count Reassembly Timeouts -  -

SYNOPSIS

- -

-

-ipmib.ReasmTimeout 
-
- -  -

VALUES

- -

- -op -

-value to be added to the counter (default value of 1) -
- -

- -skb -

-pointer to the struct sk_buff being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -ipmib_filter_key. If the packet passes the filter is is counted in the global -ReasmTimeout -(equivalent to SNMP's MIB IPSTATS_MIB_REASMTIMEOUT) -  -

SEE ALSO

- -tapset::ipmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::irq_handler.entry.3stap.html b/man/probe::irq_handler.entry.3stap.html deleted file mode 100644 index bf45bf53..00000000 --- a/man/probe::irq_handler.entry.3stap.html +++ /dev/null @@ -1,148 +0,0 @@ - -Manpage of PROBE::IRQ_HANDLER\& - -

PROBE::IRQ_HANDLER\&

-Section: Interrupt Request (IRQ) Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::irq_handler.entry - Execution of interrupt handler starting -  -

SYNOPSIS

- -

-

-irq_handler.entry 
-
- -  -

VALUES

- -

- -thread -

-thread pointer for threaded interrupts -
- -

- -irq -

-irq number -
- -

- -dev_name -

-name of device -
- -

- -dev_id -

-Cookie to identify device -
- -

- -action -

-struct irqaction* for this interrupt num -
- -

- -next_irqaction -

-pointer to next irqaction for shared interrupts -
- -

- -handler -

-interrupt handler function -
- -

- -dir -

-pointer to the proc/irq/NN/name entry -
- -

- -flags -

-Flags for IRQ handler -
- -

- -thread_flags -

-Flags related to thread -
- -

- -flags_str -

-symbolic string representation of IRQ flags -
- -

- -thread_fn -

-interrupt handler function for threaded interrupts -
- -  -

SEE ALSO

- -tapset::irq(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::irq_handler.exit.3stap.html b/man/probe::irq_handler.exit.3stap.html deleted file mode 100644 index 3c64dbb4..00000000 --- a/man/probe::irq_handler.exit.3stap.html +++ /dev/null @@ -1,155 +0,0 @@ - -Manpage of PROBE::IRQ_HANDLER\& - -

PROBE::IRQ_HANDLER\&

-Section: Interrupt Request (IRQ) Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::irq_handler.exit - Execution of interrupt handler completed -  -

SYNOPSIS

- -

-

-irq_handler.exit 
-
- -  -

VALUES

- -

- -thread_fn -

-interrupt handler function for threaded interrupts -
- -

- -flags_str -

-symbolic string representation of IRQ flags -
- -

- -ret -

-return value of the handler -
- -

- -thread_flags -

-Flags related to thread -
- -

- -action -

-struct irqaction* -
- -

- -next_irqaction -

-pointer to next irqaction for shared interrupts -
- -

- -flags -

-flags for IRQ handler -
- -

- -dir -

-pointer to the proc/irq/NN/name entry -
- -

- -handler -

-interrupt handler function that was executed -
- -

- -dev_id -

-Cookie to identify device -
- -

- -thread -

-thread pointer for threaded interrupts -
- -

- -irq -

-interrupt number -
- -

- -dev_name -

-name of device -
- -  -

SEE ALSO

- -tapset::irq(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::json_data.3stap.html b/man/probe::json_data.3stap.html deleted file mode 100644 index 43338490..00000000 --- a/man/probe::json_data.3stap.html +++ /dev/null @@ -1,76 +0,0 @@ - -Manpage of PROBE::JSON_DATA - -

PROBE::JSON_DATA

-Section: JSON Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::json_data - Fires whenever JSON data is wanted by a reader. -  -

SYNOPSIS

- -

-

-json_data 
-
- -  -

VALUES

- -

- -None -  -

CONTEXT

- -

- -This probe fires when the JSON data is about to be read. This probe must gather up data and then call the following macros to output the data in JSON format. First, @json_output_data_start -must be called. That call is followed by one or more of the following (one call for each data item): @json_output_string_value, @json_output_numeric_value, @json_output_array_string_value, and @json_output_array_numeric_value. Finally @json_output_data_end -must be called. -  -

SEE ALSO

- -tapset::json(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::kprocess.create.3stap.html b/man/probe::kprocess.create.3stap.html deleted file mode 100644 index 57cc0564..00000000 --- a/man/probe::kprocess.create.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::KPROCESS\&.CR - -

PROBE::KPROCESS\&.CR

-Section: Kernel Process Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::kprocess.create - Fires whenever a new process or thread is successfully created -  -

SYNOPSIS

- -

-

-kprocess.create 
-
- -  -

VALUES

- -

- -new_tid -

-The TID of the newly created task -
- -

- -new_pid -

-The PID of the newly created process -
- -  -

CONTEXT

- -

- -Parent of the created process. -  -

DESCRIPTION

- -

- -Fires whenever a new process is successfully created, either as a result of fork (or one of its syscall variants), or a new kernel thread. -  -

SEE ALSO

- -tapset::kprocess(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::kprocess.exec.3stap.html b/man/probe::kprocess.exec.3stap.html deleted file mode 100644 index 789ea421..00000000 --- a/man/probe::kprocess.exec.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::KPROCESS\&.EX - -

PROBE::KPROCESS\&.EX

-Section: Kernel Process Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::kprocess.exec - Attempt to exec to a new program -  -

SYNOPSIS

- -

-

-kprocess.exec 
-
- -  -

VALUES

- -

- -filename -

-The path to the new executable -
- -

- -argstr -

-A string containing the filename followed by the arguments to pass, excluding 0th arg (SystemTap v2.5+) -
- -

- -args -

-The arguments to pass to the new executable, including the 0th arg (SystemTap v2.5+) -
- -

- -name -

-Name of the system call ("execve") (SystemTap v2.5+) -
- -  -

CONTEXT

- -

- -The caller of exec. -  -

DESCRIPTION

- -

- -Fires whenever a process attempts to exec to a new program. Aliased to the syscall.execve probe in SystemTap v2.5+. -  -

SEE ALSO

- -tapset::kprocess(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::kprocess.exec_complete.3stap.html b/man/probe::kprocess.exec_complete.3stap.html deleted file mode 100644 index 94bf674d..00000000 --- a/man/probe::kprocess.exec_complete.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::KPROCESS\&.EX - -

PROBE::KPROCESS\&.EX

-Section: Kernel Process Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::kprocess.exec_complete - Return from exec to a new program -  -

SYNOPSIS

- -

-

-kprocess.exec_complete 
-
- -  -

VALUES

- -

- -success -

-A boolean indicating whether the exec was successful -
- -

- -errno -

-The error number resulting from the exec -
- -

- -retstr -

-A string representation of errno (SystemTap v2.5+) -
- -

- -name -

-Name of the system call ("execve") (SystemTap v2.5+) -
- -  -

CONTEXT

- -

- -On success, the context of the new executable. On failure, remains in the context of the caller. -  -

DESCRIPTION

- -

- -Fires at the completion of an exec call. Aliased to the syscall.execve.return probe in SystemTap v2.5+. -  -

SEE ALSO

- -tapset::kprocess(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::kprocess.exit.3stap.html b/man/probe::kprocess.exit.3stap.html deleted file mode 100644 index 7291d220..00000000 --- a/man/probe::kprocess.exit.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::KPROCESS\&.EX - -

PROBE::KPROCESS\&.EX

-Section: Kernel Process Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::kprocess.exit - Exit from process -  -

SYNOPSIS

- -

-

-kprocess.exit 
-
- -  -

VALUES

- -

- -code -

-The exit code of the process -
- -  -

CONTEXT

- -

- -The process which is terminating. -  -

DESCRIPTION

- -

- -Fires when a process terminates. This will always be followed by a kprocess.release, though the latter may be delayed if the process waits in a zombie state. -  -

SEE ALSO

- -tapset::kprocess(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::kprocess.release.3stap.html b/man/probe::kprocess.release.3stap.html deleted file mode 100644 index 345e3658..00000000 --- a/man/probe::kprocess.release.3stap.html +++ /dev/null @@ -1,108 +0,0 @@ - -Manpage of PROBE::KPROCESS\&.RE - -

PROBE::KPROCESS\&.RE

-Section: Kernel Process Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::kprocess.release - Process released -  -

SYNOPSIS

- -

-

-kprocess.release 
-
- -  -

VALUES

- -

- -pid -

-Same as -released_pid -for compatibility (deprecated) -
- -

- -released_pid -

-PID of the process being released -
- -

- -released_tid -

-TID of the task being released -
- -

- -task -

-A task handle to the process being released -
- -  -

CONTEXT

- -

- -The context of the parent, if it wanted notification of this process' termination, else the context of the process itself. -  -

DESCRIPTION

- -

- -Fires when a process is released from the kernel. This always follows a kprocess.exit, though it may be delayed somewhat if the process waits in a zombie state. -  -

SEE ALSO

- -tapset::kprocess(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::kprocess.start.3stap.html b/man/probe::kprocess.start.3stap.html deleted file mode 100644 index 25879c5f..00000000 --- a/man/probe::kprocess.start.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of PROBE::KPROCESS\&.ST - -

PROBE::KPROCESS\&.ST

-Section: Kernel Process Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::kprocess.start - Starting new process -  -

SYNOPSIS

- -

-

-kprocess.start 
-
- -  -

VALUES

- -

- -None -  -

CONTEXT

- -

- -Newly created process. -  -

DESCRIPTION

- -

- -Fires immediately before a new process begins execution. -  -

SEE ALSO

- -tapset::kprocess(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::linuxmib.DelayedACKs.3stap.html b/man/probe::linuxmib.DelayedACKs.3stap.html deleted file mode 100644 index 11350c28..00000000 --- a/man/probe::linuxmib.DelayedACKs.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::LINUXMIB\&.DE - -

PROBE::LINUXMIB\&.DE

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::linuxmib.DelayedACKs - Count of delayed acks -  -

SYNOPSIS

- -

-

-linuxmib.DelayedACKs 
-
- -  -

VALUES

- -

- -sk -

-Pointer to the struct sock being acted on -
- -

- -op -

-Value to be added to the counter (default value of 1) -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -linuxmib_filter_key. If the packet passes the filter is is counted in the global -DelayedACKs -(equivalent to SNMP's MIB LINUX_MIB_DELAYEDACKS) -  -

SEE ALSO

- -tapset::linuxmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::linuxmib.ListenDrops.3stap.html b/man/probe::linuxmib.ListenDrops.3stap.html deleted file mode 100644 index ffddaa44..00000000 --- a/man/probe::linuxmib.ListenDrops.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::LINUXMIB\&.LI - -

PROBE::LINUXMIB\&.LI

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::linuxmib.ListenDrops - Count of times conn request that were dropped -  -

SYNOPSIS

- -

-

-linuxmib.ListenDrops 
-
- -  -

VALUES

- -

- -op -

-Value to be added to the counter (default value of 1) -
- -

- -sk -

-Pointer to the struct sock being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -linuxmib_filter_key. If the packet passes the filter is is counted in the global -ListenDrops -(equivalent to SNMP's MIB LINUX_MIB_LISTENDROPS) -  -

SEE ALSO

- -tapset::linuxmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::linuxmib.ListenOverflows.3stap.html b/man/probe::linuxmib.ListenOverflows.3stap.html deleted file mode 100644 index 51e962c8..00000000 --- a/man/probe::linuxmib.ListenOverflows.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::LINUXMIB\&.LI - -

PROBE::LINUXMIB\&.LI

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::linuxmib.ListenOverflows - Count of times a listen queue overflowed -  -

SYNOPSIS

- -

-

-linuxmib.ListenOverflows 
-
- -  -

VALUES

- -

- -op -

-Value to be added to the counter (default value of 1) -
- -

- -sk -

-Pointer to the struct sock being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -linuxmib_filter_key. If the packet passes the filter is is counted in the global -ListenOverflows -(equivalent to SNMP's MIB LINUX_MIB_LISTENOVERFLOWS) -  -

SEE ALSO

- -tapset::linuxmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::linuxmib.TCPMemoryPressures.3stap.html b/man/probe::linuxmib.TCPMemoryPressures.3stap.html deleted file mode 100644 index 6d11adb3..00000000 --- a/man/probe::linuxmib.TCPMemoryPressures.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::LINUXMIB\&.TC - -

PROBE::LINUXMIB\&.TC

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::linuxmib.TCPMemoryPressures - Count of times memory pressure was used -  -

SYNOPSIS

- -

-

-linuxmib.TCPMemoryPressures 
-
- -  -

VALUES

- -

- -sk -

-Pointer to the struct sock being acted on -
- -

- -op -

-Value to be added to the counter (default value of 1) -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -linuxmib_filter_key. If the packet passes the filter is is counted in the global -TCPMemoryPressures -(equivalent to SNMP's MIB LINUX_MIB_TCPMEMORYPRESSURES) -  -

SEE ALSO

- -tapset::linuxmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.change_mac.3stap.html b/man/probe::netdev.change_mac.3stap.html deleted file mode 100644 index 397c8b79..00000000 --- a/man/probe::netdev.change_mac.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::NETDEV\&.CHAN - -

PROBE::NETDEV\&.CHAN

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.change_mac - Called when the netdev_name has the MAC changed -  -

SYNOPSIS

- -

-

-netdev.change_mac 
-
- -  -

VALUES

- -

- -new_mac -

-The new MAC address -
- -

- -mac_len -

-The MAC length -
- -

- -dev_name -

-The device that will have the MAC changed -
- -

- -old_mac -

-The current MAC address -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.change_mtu.3stap.html b/man/probe::netdev.change_mtu.3stap.html deleted file mode 100644 index 2d2b48a0..00000000 --- a/man/probe::netdev.change_mtu.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::NETDEV\&.CHAN - -

PROBE::NETDEV\&.CHAN

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.change_mtu - Called when the netdev MTU is changed -  -

SYNOPSIS

- -

-

-netdev.change_mtu 
-
- -  -

VALUES

- -

- -old_mtu -

-The current MTU -
- -

- -dev_name -

-The device that will have the MTU changed -
- -

- -new_mtu -

-The new MTU -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.change_rx_flag.3stap.html b/man/probe::netdev.change_rx_flag.3stap.html deleted file mode 100644 index 6d41b882..00000000 --- a/man/probe::netdev.change_rx_flag.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::NETDEV\&.CHAN - -

PROBE::NETDEV\&.CHAN

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.change_rx_flag - Called when the device RX flag will be changed -  -

SYNOPSIS

- -

-

-netdev.change_rx_flag 
-
- -  -

VALUES

- -

- -flags -

-The new flags -
- -

- -dev_name -

-The device that will be changed -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.close.3stap.html b/man/probe::netdev.close.3stap.html deleted file mode 100644 index 8014bb57..00000000 --- a/man/probe::netdev.close.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of PROBE::NETDEV\&.CLOS - -

PROBE::NETDEV\&.CLOS

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.close - Called when the device is closed -  -

SYNOPSIS

- -

-

-netdev.close 
-
- -  -

VALUES

- -

- -dev_name -

-The device that is going to be closed -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.get_stats.3stap.html b/man/probe::netdev.get_stats.3stap.html deleted file mode 100644 index 1b2b7001..00000000 --- a/man/probe::netdev.get_stats.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of PROBE::NETDEV\&.GET_ - -

PROBE::NETDEV\&.GET_

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.get_stats - Called when someone asks the device statistics -  -

SYNOPSIS

- -

-

-netdev.get_stats 
-
- -  -

VALUES

- -

- -dev_name -

-The device that is going to provide the statistics -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.hard_transmit.3stap.html b/man/probe::netdev.hard_transmit.3stap.html deleted file mode 100644 index 0619cb3d..00000000 --- a/man/probe::netdev.hard_transmit.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::NETDEV\&.HARD - -

PROBE::NETDEV\&.HARD

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.hard_transmit - Called when the devices is going to TX (hard) -  -

SYNOPSIS

- -

-

-netdev.hard_transmit 
-
- -  -

VALUES

- -

- -protocol -

-The protocol used in the transmission -
- -

- -dev_name -

-The device scheduled to transmit -
- -

- -truesize -

-The size of the data to be transmitted. -
- -

- -length -

-The length of the transmit buffer. -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.ioctl.3stap.html b/man/probe::netdev.ioctl.3stap.html deleted file mode 100644 index b5865190..00000000 --- a/man/probe::netdev.ioctl.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::NETDEV\&.IOCT - -

PROBE::NETDEV\&.IOCT

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.ioctl - Called when the device suffers an IOCTL -  -

SYNOPSIS

- -

-

-netdev.ioctl 
-
- -  -

VALUES

- -

- -cmd -

-The IOCTL request -
- -

- -arg -

-The IOCTL argument (usually the netdev interface) -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.open.3stap.html b/man/probe::netdev.open.3stap.html deleted file mode 100644 index 8992efd6..00000000 --- a/man/probe::netdev.open.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of PROBE::NETDEV\&.OPEN - -

PROBE::NETDEV\&.OPEN

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.open - Called when the device is opened -  -

SYNOPSIS

- -

-

-netdev.open 
-
- -  -

VALUES

- -

- -dev_name -

-The device that is going to be opened -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.receive.3stap.html b/man/probe::netdev.receive.3stap.html deleted file mode 100644 index 2e6e22e0..00000000 --- a/man/probe::netdev.receive.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::NETDEV\&.RECE - -

PROBE::NETDEV\&.RECE

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.receive - Data received from network device. -  -

SYNOPSIS

- -

-

-netdev.receive 
-
- -  -

VALUES

- -

- -dev_name -

-The name of the device. e.g: eth0, ath1. -
- -

- -protocol -

-Protocol of received packet. -
- -

- -length -

-The length of the receiving buffer. -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.register.3stap.html b/man/probe::netdev.register.3stap.html deleted file mode 100644 index 841a7eda..00000000 --- a/man/probe::netdev.register.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of PROBE::NETDEV\&.REGI - -

PROBE::NETDEV\&.REGI

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.register - Called when the device is registered -  -

SYNOPSIS

- -

-

-netdev.register 
-
- -  -

VALUES

- -

- -dev_name -

-The device that is going to be registered -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.rx.3stap.html b/man/probe::netdev.rx.3stap.html deleted file mode 100644 index 80b93411..00000000 --- a/man/probe::netdev.rx.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::NETDEV\&.RX - -

PROBE::NETDEV\&.RX

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.rx - Called when the device is going to receive a packet -  -

SYNOPSIS

- -

-

-netdev.rx 
-
- -  -

VALUES

- -

- -dev_name -

-The device received the packet -
- -

- -protocol -

-The packet protocol -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.set_promiscuity.3stap.html b/man/probe::netdev.set_promiscuity.3stap.html deleted file mode 100644 index 690ac78f..00000000 --- a/man/probe::netdev.set_promiscuity.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::NETDEV\&.SET_ - -

PROBE::NETDEV\&.SET_

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.set_promiscuity - Called when the device enters/leaves promiscuity -  -

SYNOPSIS

- -

-

-netdev.set_promiscuity 
-
- -  -

VALUES

- -

- -inc -

-Count the number of promiscuity openers -
- -

- -enable -

-If the device is entering promiscuity mode -
- -

- -disable -

-If the device is leaving promiscuity mode -
- -

- -dev_name -

-The device that is entering/leaving promiscuity mode -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.transmit.3stap.html b/man/probe::netdev.transmit.3stap.html deleted file mode 100644 index 8166ce01..00000000 --- a/man/probe::netdev.transmit.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::NETDEV\&.TRAN - -

PROBE::NETDEV\&.TRAN

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.transmit - Network device transmitting buffer -  -

SYNOPSIS

- -

-

-netdev.transmit 
-
- -  -

VALUES

- -

- -protocol -

-The protocol of this packet(defined in include/linux/if_ether.h). -
- -

- -dev_name -

-The name of the device. e.g: eth0, ath1. -
- -

- -truesize -

-The size of the data to be transmitted. -
- -

- -length -

-The length of the transmit buffer. -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netdev.unregister.3stap.html b/man/probe::netdev.unregister.3stap.html deleted file mode 100644 index fd99d203..00000000 --- a/man/probe::netdev.unregister.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of PROBE::NETDEV\&.UNRE - -

PROBE::NETDEV\&.UNRE

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netdev.unregister - Called when the device is being unregistered -  -

SYNOPSIS

- -

-

-netdev.unregister 
-
- -  -

VALUES

- -

- -dev_name -

-The device that is going to be unregistered -
- -  -

SEE ALSO

- -tapset::networking(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netfilter.arp.forward.3stap.html b/man/probe::netfilter.arp.forward.3stap.html deleted file mode 100644 index f267da9d..00000000 --- a/man/probe::netfilter.arp.forward.3stap.html +++ /dev/null @@ -1,240 +0,0 @@ - -Manpage of PROBE::NETFILTER\&.A - -

PROBE::NETFILTER\&.A

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netfilter.arp.forward - - Called for each ARP packet to be forwarded -  -

SYNOPSIS

- -

-

-netfilter.arp.forward 
-
- -  -

VALUES

- -

- -indev_name -

-Name of network device packet was received on (if known) -
- -

- -ar_pln -

-Length of protocol address -
- -

- -outdev_name -

-Name of network device packet will be routed to (if known) -
- -

- -arphdr -

-Address of ARP header -
- -

- -ar_sip -

-Ethernet+IP only (ar_pro==0x800): source IP address -
- -

- -outdev -

-Address of net_device representing output device, 0 if unknown -
- -

- -nf_stolen -

-Constant used to signify a 'stolen' verdict -
- -

- -data_str -

-A string representing the packet buffer contents -
- -

- -nf_drop -

-Constant used to signify a 'drop' verdict -
- -

- -data_hex -

-A hexadecimal string representing the packet buffer contents -
- -

- -ar_op -

-ARP opcode (command) -
- -

- -length -

-The length of the packet buffer contents, in bytes -
- -

- -ar_tip -

-Ethernet+IP only (ar_pro==0x800): target IP address -
- -

- -ar_pro -

-Format of protocol address -
- -

- -nf_stop -

-Constant used to signify a 'stop' verdict -
- -

- -nf_repeat -

-Constant used to signify a 'repeat' verdict -
- -

- -ar_tha -

-Ethernet+IP only (ar_pro==0x800): target hardware (MAC) address -
- -

- -ar_data -

-Address of ARP packet data region (after the header) -
- -

- -ar_hrd -

-Format of hardware address -
- -

- -pf -

-Protocol family -- always -"arp" -
- -

- -ar_hln -

-Length of hardware address -
- -

- -indev -

-Address of net_device representing input device, 0 if unknown -
- -

- -ar_sha -

-Ethernet+IP only (ar_pro==0x800): source hardware (MAC) address -
- -

- -nf_accept -

-Constant used to signify an 'accept' verdict -
- -

- -nf_queue -

-Constant used to signify a 'queue' verdict -
- -  -

SEE ALSO

- -tapset::netfilter(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netfilter.arp.in.3stap.html b/man/probe::netfilter.arp.in.3stap.html deleted file mode 100644 index b57fc785..00000000 --- a/man/probe::netfilter.arp.in.3stap.html +++ /dev/null @@ -1,240 +0,0 @@ - -Manpage of PROBE::NETFILTER\&.A - -

PROBE::NETFILTER\&.A

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netfilter.arp.in - - Called for each incoming ARP packet -  -

SYNOPSIS

- -

-

-netfilter.arp.in 
-
- -  -

VALUES

- -

- -pf -

-Protocol family -- always -"arp" -
- -

- -ar_hln -

-Length of hardware address -
- -

- -nf_queue -

-Constant used to signify a 'queue' verdict -
- -

- -indev -

-Address of net_device representing input device, 0 if unknown -
- -

- -ar_sha -

-Ethernet+IP only (ar_pro==0x800): source hardware (MAC) address -
- -

- -nf_accept -

-Constant used to signify an 'accept' verdict -
- -

- -ar_pro -

-Format of protocol address -
- -

- -nf_stop -

-Constant used to signify a 'stop' verdict -
- -

- -ar_tha -

-Ethernet+IP only (ar_pro==0x800): target hardware (MAC) address -
- -

- -ar_data -

-Address of ARP packet data region (after the header) -
- -

- -ar_hrd -

-Format of hardware address -
- -

- -nf_repeat -

-Constant used to signify a 'repeat' verdict -
- -

- -data_hex -

-A hexadecimal string representing the packet buffer contents -
- -

- -data_str -

-A string representing the packet buffer contents -
- -

- -nf_drop -

-Constant used to signify a 'drop' verdict -
- -

- -ar_tip -

-Ethernet+IP only (ar_pro==0x800): target IP address -
- -

- -ar_op -

-ARP opcode (command) -
- -

- -length -

-The length of the packet buffer contents, in bytes -
- -

- -outdev_name -

-Name of network device packet will be routed to (if known) -
- -

- -arphdr -

-Address of ARP header -
- -

- -indev_name -

-Name of network device packet was received on (if known) -
- -

- -ar_pln -

-Length of protocol address -
- -

- -outdev -

-Address of net_device representing output device, 0 if unknown -
- -

- -nf_stolen -

-Constant used to signify a 'stolen' verdict -
- -

- -ar_sip -

-Ethernet+IP only (ar_pro==0x800): source IP address -
- -  -

SEE ALSO

- -tapset::netfilter(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netfilter.arp.out.3stap.html b/man/probe::netfilter.arp.out.3stap.html deleted file mode 100644 index 451c125d..00000000 --- a/man/probe::netfilter.arp.out.3stap.html +++ /dev/null @@ -1,240 +0,0 @@ - -Manpage of PROBE::NETFILTER\&.A - -

PROBE::NETFILTER\&.A

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netfilter.arp.out - - Called for each outgoing ARP packet -  -

SYNOPSIS

- -

-

-netfilter.arp.out 
-
- -  -

VALUES

- -

- -indev_name -

-Name of network device packet was received on (if known) -
- -

- -ar_pln -

-Length of protocol address -
- -

- -outdev_name -

-Name of network device packet will be routed to (if known) -
- -

- -arphdr -

-Address of ARP header -
- -

- -ar_sip -

-Ethernet+IP only (ar_pro==0x800): source IP address -
- -

- -outdev -

-Address of net_device representing output device, 0 if unknown -
- -

- -nf_stolen -

-Constant used to signify a 'stolen' verdict -
- -

- -data_str -

-A string representing the packet buffer contents -
- -

- -nf_drop -

-Constant used to signify a 'drop' verdict -
- -

- -data_hex -

-A hexadecimal string representing the packet buffer contents -
- -

- -ar_op -

-ARP opcode (command) -
- -

- -length -

-The length of the packet buffer contents, in bytes -
- -

- -ar_tip -

-Ethernet+IP only (ar_pro==0x800): target IP address -
- -

- -ar_pro -

-Format of protocol address -
- -

- -nf_stop -

-Constant used to signify a 'stop' verdict -
- -

- -nf_repeat -

-Constant used to signify a 'repeat' verdict -
- -

- -ar_data -

-Address of ARP packet data region (after the header) -
- -

- -ar_tha -

-Ethernet+IP only (ar_pro==0x800): target hardware (MAC) address -
- -

- -ar_hrd -

-Format of hardware address -
- -

- -ar_hln -

-Length of hardware address -
- -

- -pf -

-Protocol family -- always -"arp" -
- -

- -indev -

-Address of net_device representing input device, 0 if unknown -
- -

- -nf_accept -

-Constant used to signify an 'accept' verdict -
- -

- -ar_sha -

-Ethernet+IP only (ar_pro==0x800): source hardware (MAC) address -
- -

- -nf_queue -

-Constant used to signify a 'queue' verdict -
- -  -

SEE ALSO

- -tapset::netfilter(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netfilter.bridge.forward.3stap.html b/man/probe::netfilter.bridge.forward.3stap.html deleted file mode 100644 index 511df522..00000000 --- a/man/probe::netfilter.bridge.forward.3stap.html +++ /dev/null @@ -1,289 +0,0 @@ - -Manpage of PROBE::NETFILTER\&.B - -

PROBE::NETFILTER\&.B

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netfilter.bridge.forward - Called on an incoming bridging packet destined for some other computer -  -

SYNOPSIS

- -

-

-netfilter.bridge.forward 
-
- -  -

VALUES

- -

- -pf -

-Protocol family -- always -"bridge" -
- -

- -br_poid -

-Port identifier -
- -

- -br_flags -

-BPDU flags -
- -

- -protocol -

-Packet protocol -
- -

- -nf_accept -

-Constant used to signify an 'accept' verdict -
- -

- -br_max -

-Max age in 1/256 secs -
- -

- -br_bid -

-Identity of bridge -
- -

- -indev -

-Address of net_device representing input device, 0 if unknown -
- -

- -br_type -

-BPDU type -
- -

- -br_msg -

-Message age in 1/256 secs -
- -

- -nf_queue -

-Constant used to signify a 'queue' verdict -
- -

- -nf_stop -

-Constant used to signify a 'stop' verdict -
- -

- -br_rid -

-Identity of root bridge -
- -

- -nf_repeat -

-Constant used to signify a 'repeat' verdict -
- -

- -br_vid -

-Protocol version identifier -
- -

- -nf_drop -

-Constant used to signify a 'drop' verdict -
- -

- -llcpdu -

-Address of LLC Protocol Data Unit -
- -

- -data_str -

-A string representing the packet buffer contents -
- -

- -br_fd -

-Forward delay in 1/256 secs -
- -

- -data_hex -

-A hexadecimal string representing the packet buffer contents -
- -

- -brhdr -

-Address of bridge header -
- -

- -length -

-The length of the packet buffer contents, in bytes -
- -

- -br_rmac -

-Root bridge MAC address -
- -

- -llcproto_stp -

-Constant used to signify Bridge Spanning Tree Protocol packet -
- -

- -indev_name -

-Name of network device packet was received on (if known) -
- -

- -br_cost -

-Total cost from transmitting bridge to root -
- -

- -outdev_name -

-Name of network device packet will be routed to (if known) -
- -

- -br_mac -

-Bridge MAC address -
- -

- -br_prid -

-Protocol identifier -
- -

- -br_htime -

-Hello time in 1/256 secs -
- -

- -nf_stolen -

-Constant used to signify a 'stolen' verdict -
- -

- -outdev -

-Address of net_device representing output device, 0 if unknown -
- -  -

SEE ALSO

- -tapset::netfilter(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netfilter.bridge.local_in.3stap.html b/man/probe::netfilter.bridge.local_in.3stap.html deleted file mode 100644 index 95034834..00000000 --- a/man/probe::netfilter.bridge.local_in.3stap.html +++ /dev/null @@ -1,289 +0,0 @@ - -Manpage of PROBE::NETFILTER\&.B - -

PROBE::NETFILTER\&.B

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netfilter.bridge.local_in - Called on a bridging packet destined for the local computer -  -

SYNOPSIS

- -

-

-netfilter.bridge.local_in 
-
- -  -

VALUES

- -

- -br_rid -

-Identity of root bridge -
- -

- -nf_stop -

-Constant used to signify a 'stop' verdict -
- -

- -nf_repeat -

-Constant used to signify a 'repeat' verdict -
- -

- -br_poid -

-Port identifier -
- -

- -br_flags -

-BPDU flags -
- -

- -pf -

-Protocol family -- always -"bridge" -
- -

- -protocol -

-Packet protocol -
- -

- -br_msg -

-Message age in 1/256 secs -
- -

- -nf_queue -

-Constant used to signify a 'queue' verdict -
- -

- -br_bid -

-Identity of bridge -
- -

- -nf_accept -

-Constant used to signify an 'accept' verdict -
- -

- -br_max -

-Max age in 1/256 secs -
- -

- -indev -

-Address of net_device representing input device, 0 if unknown -
- -

- -br_type -

-BPDU type -
- -

- -outdev_name -

-Name of network device packet will be routed to (if known) -
- -

- -indev_name -

-Name of network device packet was received on (if known) -
- -

- -br_cost -

-Total cost from transmitting bridge to root -
- -

- -br_prid -

-Protocol identifier -
- -

- -br_htime -

-Hello time in 1/256 secs -
- -

- -nf_stolen -

-Constant used to signify a 'stolen' verdict -
- -

- -outdev -

-Address of net_device representing output device, 0 if unknown -
- -

- -br_mac -

-Bridge MAC address -
- -

- -data_hex -

-A hexadecimal string representing the packet buffer contents -
- -

- -br_fd -

-Forward delay in 1/256 secs -
- -

- -brhdr -

-Address of bridge header -
- -

- -br_vid -

-Protocol version identifier -
- -

- -nf_drop -

-Constant used to signify a 'drop' verdict -
- -

- -llcpdu -

-Address of LLC Protocol Data Unit -
- -

- -data_str -

-A string representing the packet buffer contents -
- -

- -length -

-The length of the packet buffer contents, in bytes -
- -

- -br_rmac -

-Root bridge MAC address -
- -

- -llcproto_stp -

-Constant used to signify Bridge Spanning Tree Protocol packet -
- -  -

SEE ALSO

- -tapset::netfilter(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netfilter.bridge.local_out.3stap.html b/man/probe::netfilter.bridge.local_out.3stap.html deleted file mode 100644 index 9180d232..00000000 --- a/man/probe::netfilter.bridge.local_out.3stap.html +++ /dev/null @@ -1,289 +0,0 @@ - -Manpage of PROBE::NETFILTER\&.B - -

PROBE::NETFILTER\&.B

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netfilter.bridge.local_out - Called on a bridging packet coming from a local process -  -

SYNOPSIS

- -

-

-netfilter.bridge.local_out 
-
- -  -

VALUES

- -

- -br_vid -

-Protocol version identifier -
- -

- -nf_drop -

-Constant used to signify a 'drop' verdict -
- -

- -llcpdu -

-Address of LLC Protocol Data Unit -
- -

- -data_str -

-A string representing the packet buffer contents -
- -

- -br_fd -

-Forward delay in 1/256 secs -
- -

- -data_hex -

-A hexadecimal string representing the packet buffer contents -
- -

- -brhdr -

-Address of bridge header -
- -

- -length -

-The length of the packet buffer contents, in bytes -
- -

- -br_rmac -

-Root bridge MAC address -
- -

- -llcproto_stp -

-Constant used to signify Bridge Spanning Tree Protocol packet -
- -

- -br_cost -

-Total cost from transmitting bridge to root -
- -

- -indev_name -

-Name of network device packet was received on (if known) -
- -

- -outdev_name -

-Name of network device packet will be routed to (if known) -
- -

- -br_mac -

-Bridge MAC address -
- -

- -br_prid -

-Protocol identifier -
- -

- -br_htime -

-Hello time in 1/256 secs -
- -

- -nf_stolen -

-Constant used to signify a 'stolen' verdict -
- -

- -outdev -

-Address of net_device representing output device, 0 if unknown -
- -

- -br_poid -

-Port identifier -
- -

- -pf -

-Protocol family -- always -"bridge" -
- -

- -br_flags -

-BPDU flags -
- -

- -protocol -

-Packet protocol -
- -

- -nf_accept -

-Constant used to signify an 'accept' verdict -
- -

- -br_bid -

-Identity of bridge -
- -

- -br_max -

-Max age in 1/256 secs -
- -

- -indev -

-Address of net_device representing input device, 0 if unknown -
- -

- -br_type -

-BPDU type -
- -

- -br_msg -

-Message age in 1/256 secs -
- -

- -nf_queue -

-Constant used to signify a 'queue' verdict -
- -

- -nf_stop -

-Constant used to signify a 'stop' verdict -
- -

- -br_rid -

-Identity of root bridge -
- -

- -nf_repeat -

-Constant used to signify a 'repeat' verdict -
- -  -

SEE ALSO

- -tapset::netfilter(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netfilter.bridge.post_routing.3stap.html b/man/probe::netfilter.bridge.post_routing.3stap.html deleted file mode 100644 index 05eb05aa..00000000 --- a/man/probe::netfilter.bridge.post_routing.3stap.html +++ /dev/null @@ -1,289 +0,0 @@ - -Manpage of PROBE::NETFILTER\&.B - -

PROBE::NETFILTER\&.B

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netfilter.bridge.post_routing - - Called before a bridging packet hits the wire -  -

SYNOPSIS

- -

-

-netfilter.bridge.post_routing 
-
- -  -

VALUES

- -

- -nf_accept -

-Constant used to signify an 'accept' verdict -
- -

- -br_max -

-Max age in 1/256 secs -
- -

- -br_bid -

-Identity of bridge -
- -

- -br_type -

-BPDU type -
- -

- -indev -

-Address of net_device representing input device, 0 if unknown -
- -

- -br_msg -

-Message age in 1/256 secs -
- -

- -nf_queue -

-Constant used to signify a 'queue' verdict -
- -

- -protocol -

-Packet protocol -
- -

- -br_flags -

-BPDU flags -
- -

- -br_poid -

-Port identifier -
- -

- -pf -

-Protocol family -- always -"bridge" -
- -

- -nf_repeat -

-Constant used to signify a 'repeat' verdict -
- -

- -nf_stop -

-Constant used to signify a 'stop' verdict -
- -

- -br_rid -

-Identity of root bridge -
- -

- -length -

-The length of the packet buffer contents, in bytes -
- -

- -llcproto_stp -

-Constant used to signify Bridge Spanning Tree Protocol packet -
- -

- -br_rmac -

-Root bridge MAC address -
- -

- -br_vid -

-Protocol version identifier -
- -

- -nf_drop -

-Constant used to signify a 'drop' verdict -
- -

- -data_str -

-A string representing the packet buffer contents -
- -

- -llcpdu -

-Address of LLC Protocol Data Unit -
- -

- -brhdr -

-Address of bridge header -
- -

- -data_hex -

-A hexadecimal string representing the packet buffer contents -
- -

- -br_fd -

-Forward delay in 1/256 secs -
- -

- -br_mac -

-Bridge MAC address -
- -

- -nf_stolen -

-Constant used to signify a 'stolen' verdict -
- -

- -br_htime -

-Hello time in 1/256 secs -
- -

- -br_prid -

-Protocol identifier -
- -

- -outdev -

-Address of net_device representing output device, 0 if unknown -
- -

- -br_cost -

-Total cost from transmitting bridge to root -
- -

- -indev_name -

-Name of network device packet was received on (if known) -
- -

- -outdev_name -

-Name of network device packet will be routed to (if known) -
- -  -

SEE ALSO

- -tapset::netfilter(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netfilter.bridge.pre_routing.3stap.html b/man/probe::netfilter.bridge.pre_routing.3stap.html deleted file mode 100644 index eb4d61a3..00000000 --- a/man/probe::netfilter.bridge.pre_routing.3stap.html +++ /dev/null @@ -1,289 +0,0 @@ - -Manpage of PROBE::NETFILTER\&.B - -

PROBE::NETFILTER\&.B

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netfilter.bridge.pre_routing - - Called before a bridging packet is routed -  -

SYNOPSIS

- -

-

-netfilter.bridge.pre_routing 
-
- -  -

VALUES

- -

- -length -

-The length of the packet buffer contents, in bytes -
- -

- -llcproto_stp -

-Constant used to signify Bridge Spanning Tree Protocol packet -
- -

- -br_rmac -

-Root bridge MAC address -
- -

- -br_vid -

-Protocol version identifier -
- -

- -nf_drop -

-Constant used to signify a 'drop' verdict -
- -

- -data_str -

-A string representing the packet buffer contents -
- -

- -llcpdu -

-Address of LLC Protocol Data Unit -
- -

- -brhdr -

-Address of bridge header -
- -

- -br_fd -

-Forward delay in 1/256 secs -
- -

- -data_hex -

-A hexadecimal string representing the packet buffer contents -
- -

- -br_mac -

-Bridge MAC address -
- -

- -nf_stolen -

-Constant used to signify a 'stolen' verdict -
- -

- -br_prid -

-Protocol identifier -
- -

- -br_htime -

-Hello time in 1/256 secs -
- -

- -outdev -

-Address of net_device representing output device, 0 if unknown -
- -

- -indev_name -

-Name of network device packet was received on (if known) -
- -

- -br_cost -

-Total cost from transmitting bridge to root -
- -

- -outdev_name -

-Name of network device packet will be routed to (if known) -
- -

- -br_max -

-Max age in 1/256 secs -
- -

- -nf_accept -

-Constant used to signify an 'accept' verdict -
- -

- -br_bid -

-Identity of bridge -
- -

- -br_type -

-BPDU type -
- -

- -indev -

-Address of net_device representing input device, 0 if unknown -
- -

- -br_msg -

-Message age in 1/256 secs -
- -

- -nf_queue -

-Constant used to signify a 'queue' verdict -
- -

- -protocol -

-Packet protocol -
- -

- -br_flags -

-BPDU flags -
- -

- -br_poid -

-Port identifier -
- -

- -pf -

-Protocol family -- always -"bridge" -
- -

- -nf_repeat -

-Constant used to signify a 'repeat' verdict -
- -

- -nf_stop -

-Constant used to signify a 'stop' verdict -
- -

- -br_rid -

-Identity of root bridge -
- -  -

SEE ALSO

- -tapset::netfilter(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netfilter.ip.forward.3stap.html b/man/probe::netfilter.ip.forward.3stap.html deleted file mode 100644 index fc3564fc..00000000 --- a/man/probe::netfilter.ip.forward.3stap.html +++ /dev/null @@ -1,270 +0,0 @@ - -Manpage of PROBE::NETFILTER\&.I - -

PROBE::NETFILTER\&.I

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netfilter.ip.forward - Called on an incoming IP packet addressed to some other computer -  -

SYNOPSIS

- -

-

-netfilter.ip.forward 
-
- -  -

VALUES

- -

- -outdev_name -

-Name of network device packet will be routed to (if known) -
- -

- -syn -

-TCP SYN flag (if protocol is TCP; ipv4 only) -
- -

- -indev_name -

-Name of network device packet was received on (if known) -
- -

- -daddr -

-A string representing the destination IP address -
- -

- -outdev -

-Address of net_device representing output device, 0 if unknown -
- -

- -nf_stolen -

-Constant used to signify a 'stolen' verdict -
- -

- -dport -

-TCP or UDP destination port (ipv4 only) -
- -

- -data_hex -

-A hexadecimal string representing the packet buffer contents -
- -

- -data_str -

-A string representing the packet buffer contents -
- -

- -family -

-IP address family -
- -

- -rst -

-TCP RST flag (if protocol is TCP; ipv4 only) -
- -

- -nf_drop -

-Constant used to signify a 'drop' verdict -
- -

- -length -

-The length of the packet buffer contents, in bytes -
- -

- -ipproto_tcp -

-Constant used to signify that the packet protocol is TCP -
- -

- -psh -

-TCP PSH flag (if protocol is TCP; ipv4 only) -
- -

- -nf_stop -

-Constant used to signify a 'stop' verdict -
- -

- -nf_repeat -

-Constant used to signify a 'repeat' verdict -
- -

- -protocol -

-Packet protocol from driver (ipv4 only) -
- -

- -pf -

-Protocol family -- either -"ipv4" -or -"ipv6" -
- -

- -ipproto_udp -

-Constant used to signify that the packet protocol is UDP -
- -

- -ack -

-TCP ACK flag (if protocol is TCP; ipv4 only) -
- -

- -saddr -

-A string representing the source IP address -
- -

- -nf_queue -

-Constant used to signify a 'queue' verdict -
- -

- -iphdr -

-Address of IP header -
- -

- -indev -

-Address of net_device representing input device, 0 if unknown -
- -

- -sport -

-TCP or UDP source port (ipv4 only) -
- -

- -nf_accept -

-Constant used to signify an 'accept' verdict -
- -

- -fin -

-TCP FIN flag (if protocol is TCP; ipv4 only) -
- -

- -urg -

-TCP URG flag (if protocol is TCP; ipv4 only) -
- -  -

SEE ALSO

- -tapset::netfilter(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netfilter.ip.local_in.3stap.html b/man/probe::netfilter.ip.local_in.3stap.html deleted file mode 100644 index caed90b9..00000000 --- a/man/probe::netfilter.ip.local_in.3stap.html +++ /dev/null @@ -1,270 +0,0 @@ - -Manpage of PROBE::NETFILTER\&.I - -

PROBE::NETFILTER\&.I

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netfilter.ip.local_in - Called on an incoming IP packet addressed to the local computer -  -

SYNOPSIS

- -

-

-netfilter.ip.local_in 
-
- -  -

VALUES

- -

- -length -

-The length of the packet buffer contents, in bytes -
- -

- -data_hex -

-A hexadecimal string representing the packet buffer contents -
- -

- -nf_drop -

-Constant used to signify a 'drop' verdict -
- -

- -family -

-IP address family -
- -

- -rst -

-TCP RST flag (if protocol is TCP; ipv4 only) -
- -

- -data_str -

-A string representing the packet buffer contents -
- -

- -nf_stolen -

-Constant used to signify a 'stolen' verdict -
- -

- -outdev -

-Address of net_device representing output device, 0 if unknown -
- -

- -dport -

-TCP or UDP destination port (ipv4 only) -
- -

- -outdev_name -

-Name of network device packet will be routed to (if known) -
- -

- -daddr -

-A string representing the destination IP address -
- -

- -syn -

-TCP SYN flag (if protocol is TCP; ipv4 only) -
- -

- -indev_name -

-Name of network device packet was received on (if known) -
- -

- -iphdr -

-Address of IP header -
- -

- -nf_queue -

-Constant used to signify a 'queue' verdict -
- -

- -urg -

-TCP URG flag (if protocol is TCP; ipv4 only) -
- -

- -fin -

-TCP FIN flag (if protocol is TCP; ipv4 only) -
- -

- -nf_accept -

-Constant used to signify an 'accept' verdict -
- -

- -indev -

-Address of net_device representing input device, 0 if unknown -
- -

- -sport -

-TCP or UDP source port (ipv4 only) -
- -

- -pf -

-Protocol family -- either -"ipv4" -or -"ipv6" -
- -

- -protocol -

-Packet protocol from driver (ipv4 only) -
- -

- -saddr -

-A string representing the source IP address -
- -

- -ack -

-TCP ACK flag (if protocol is TCP; ipv4 only) -
- -

- -ipproto_udp -

-Constant used to signify that the packet protocol is UDP -
- -

- -nf_repeat -

-Constant used to signify a 'repeat' verdict -
- -

- -psh -

-TCP PSH flag (if protocol is TCP; ipv4 only) -
- -

- -ipproto_tcp -

-Constant used to signify that the packet protocol is TCP -
- -

- -nf_stop -

-Constant used to signify a 'stop' verdict -
- -  -

SEE ALSO

- -tapset::netfilter(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netfilter.ip.local_out.3stap.html b/man/probe::netfilter.ip.local_out.3stap.html deleted file mode 100644 index 71c48efb..00000000 --- a/man/probe::netfilter.ip.local_out.3stap.html +++ /dev/null @@ -1,270 +0,0 @@ - -Manpage of PROBE::NETFILTER\&.I - -

PROBE::NETFILTER\&.I

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netfilter.ip.local_out - Called on an outgoing IP packet -  -

SYNOPSIS

- -

-

-netfilter.ip.local_out 
-
- -  -

VALUES

- -

- -saddr -

-A string representing the source IP address -
- -

- -ack -

-TCP ACK flag (if protocol is TCP; ipv4 only) -
- -

- -ipproto_udp -

-Constant used to signify that the packet protocol is UDP -
- -

- -pf -

-Protocol family -- either -"ipv4" -or -"ipv6" -
- -

- -protocol -

-Packet protocol from driver (ipv4 only) -
- -

- -urg -

-TCP URG flag (if protocol is TCP; ipv4 only) -
- -

- -fin -

-TCP FIN flag (if protocol is TCP; ipv4 only) -
- -

- -nf_accept -

-Constant used to signify an 'accept' verdict -
- -

- -sport -

-TCP or UDP source port (ipv4 only) -
- -

- -indev -

-Address of net_device representing input device, 0 if unknown -
- -

- -iphdr -

-Address of IP header -
- -

- -nf_queue -

-Constant used to signify a 'queue' verdict -
- -

- -nf_stop -

-Constant used to signify a 'stop' verdict -
- -

- -psh -

-TCP PSH flag (if protocol is TCP; ipv4 only) -
- -

- -ipproto_tcp -

-Constant used to signify that the packet protocol is TCP -
- -

- -nf_repeat -

-Constant used to signify a 'repeat' verdict -
- -

- -nf_drop -

-Constant used to signify a 'drop' verdict -
- -

- -rst -

-TCP RST flag (if protocol is TCP; ipv4 only) -
- -

- -family -

-IP address family -
- -

- -data_str -

-A string representing the packet buffer contents -
- -

- -data_hex -

-A hexadecimal string representing the packet buffer contents -
- -

- -length -

-The length of the packet buffer contents, in bytes -
- -

- -daddr -

-A string representing the destination IP address -
- -

- -indev_name -

-Name of network device packet was received on (if known) -
- -

- -syn -

-TCP SYN flag (if protocol is TCP; ipv4 only) -
- -

- -outdev_name -

-Name of network device packet will be routed to (if known) -
- -

- -dport -

-TCP or UDP destination port (ipv4 only) -
- -

- -nf_stolen -

-Constant used to signify a 'stolen' verdict -
- -

- -outdev -

-Address of net_device representing output device, 0 if unknown -
- -  -

SEE ALSO

- -tapset::netfilter(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netfilter.ip.post_routing.3stap.html b/man/probe::netfilter.ip.post_routing.3stap.html deleted file mode 100644 index 54641aa0..00000000 --- a/man/probe::netfilter.ip.post_routing.3stap.html +++ /dev/null @@ -1,270 +0,0 @@ - -Manpage of PROBE::NETFILTER\&.I - -

PROBE::NETFILTER\&.I

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netfilter.ip.post_routing - Called immediately before an outgoing IP packet leaves the computer -  -

SYNOPSIS

- -

-

-netfilter.ip.post_routing 
-
- -  -

VALUES

- -

- -nf_repeat -

-Constant used to signify a 'repeat' verdict -
- -

- -nf_stop -

-Constant used to signify a 'stop' verdict -
- -

- -ipproto_tcp -

-Constant used to signify that the packet protocol is TCP -
- -

- -psh -

-TCP PSH flag (if protocol is TCP; ipv4 only) -
- -

- -indev -

-Address of net_device representing input device, 0 if unknown -
- -

- -sport -

-TCP or UDP source port (ipv4 only) -
- -

- -nf_accept -

-Constant used to signify an 'accept' verdict -
- -

- -fin -

-TCP FIN flag (if protocol is TCP; ipv4 only) -
- -

- -urg -

-TCP URG flag (if protocol is TCP; ipv4 only) -
- -

- -nf_queue -

-Constant used to signify a 'queue' verdict -
- -

- -iphdr -

-Address of IP header -
- -

- -ipproto_udp -

-Constant used to signify that the packet protocol is UDP -
- -

- -ack -

-TCP ACK flag (if protocol is TCP; ipv4 only) -
- -

- -saddr -

-A string representing the source IP address -
- -

- -protocol -

-Packet protocol from driver (ipv4 only) -
- -

- -pf -

-Protocol family -- either -"ipv4" -or -"ipv6" -
- -

- -dport -

-TCP or UDP destination port (ipv4 only) -
- -

- -outdev -

-Address of net_device representing output device, 0 if unknown -
- -

- -nf_stolen -

-Constant used to signify a 'stolen' verdict -
- -

- -syn -

-TCP SYN flag (if protocol is TCP; ipv4 only) -
- -

- -indev_name -

-Name of network device packet was received on (if known) -
- -

- -daddr -

-A string representing the destination IP address -
- -

- -outdev_name -

-Name of network device packet will be routed to (if known) -
- -

- -length -

-The length of the packet buffer contents, in bytes -
- -

- -data_str -

-A string representing the packet buffer contents -
- -

- -rst -

-TCP RST flag (if protocol is TCP; ipv4 only) -
- -

- -family -

-IP address family -
- -

- -nf_drop -

-Constant used to signify a 'drop' verdict -
- -

- -data_hex -

-A hexadecimal string representing the packet buffer contents -
- -  -

SEE ALSO

- -tapset::netfilter(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::netfilter.ip.pre_routing.3stap.html b/man/probe::netfilter.ip.pre_routing.3stap.html deleted file mode 100644 index 0115da24..00000000 --- a/man/probe::netfilter.ip.pre_routing.3stap.html +++ /dev/null @@ -1,267 +0,0 @@ - -Manpage of PROBE::NETFILTER\&.I - -

PROBE::NETFILTER\&.I

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::netfilter.ip.pre_routing - Called before an IP packet is routed -  -

SYNOPSIS

- -

-

-netfilter.ip.pre_routing 
-
- -  -

VALUES

- -

- -iphdr -

-Address of IP header -
- -

- -nf_queue -

-Constant used to signify a 'queue' verdict -
- -

- -urg -

-TCP URG flag (if protocol is TCP; ipv4 only) -
- -

- -fin -

-TCP FIN flag (if protocol is TCP; ipv4 only) -
- -

- -nf_accept -

-Constant used to signify an 'accept' verdict -
- -

- -sport -

-TCP or UDP source port (ipv4 only) -
- -

- -indev -

-Address of net_device representing input device, 0 if unknown -
- -

- -pf -

-Protocol family - either 'ipv4' or 'ipv6' -
- -

- -protocol -

-Packet protocol from driver (ipv4 only) -
- -

- -saddr -

-A string representing the source IP address -
- -

- -ack -

-TCP ACK flag (if protocol is TCP; ipv4 only) -
- -

- -ipproto_udp -

-Constant used to signify that the packet protocol is UDP -
- -

- -nf_repeat -

-Constant used to signify a 'repeat' verdict -
- -

- -psh -

-TCP PSH flag (if protocol is TCP; ipv4 only) -
- -

- -ipproto_tcp -

-Constant used to signify that the packet protocol is TCP -
- -

- -nf_stop -

-Constant used to signify a 'stop' verdict -
- -

- -length -

-The length of the packet buffer contents, in bytes -
- -

- -data_hex -

-A hexadecimal string representing the packet buffer contents -
- -

- -nf_drop -

-Constant used to signify a 'drop' verdict -
- -

- -family -

-IP address family -
- -

- -rst -

-TCP RST flag (if protocol is TCP; ipv4 only) -
- -

- -data_str -

-A string representing the packet buffer contents -
- -

- -nf_stolen -

-Constant used to signify a 'stolen' verdict -
- -

- -outdev -

-Address of net_device representing output device, 0 if unknown -
- -

- -dport -

-TCP or UDP destination port (ipv4 only) -
- -

- -outdev_name -

-Name of network device packet will be routed to (if known) -
- -

- -daddr -

-A string representing the destination IP address -
- -

- -indev_name -

-Name of network device packet was received on (if known) -
- -

- -syn -

-TCP SYN flag (if protocol is TCP; ipv4 only) -
- -  -

SEE ALSO

- -tapset::netfilter(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.aop.readpage.3stap.html b/man/probe::nfs.aop.readpage.3stap.html deleted file mode 100644 index f257a402..00000000 --- a/man/probe::nfs.aop.readpage.3stap.html +++ /dev/null @@ -1,141 +0,0 @@ - -Manpage of PROBE::NFS\&.AOP\&.R - -

PROBE::NFS\&.AOP\&.R

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.aop.readpage - NFS client synchronously reading a page -  -

SYNOPSIS

- -

-

-nfs.aop.readpage 
-
- -  -

VALUES

- -

- -rsize -

-read size (in bytes) -
- -

- -dev -

-device identifier -
- -

- -i_flag -

-file flags -
- -

- -file -

-file argument -
- -

- -__page -

-the address of page -
- -

- -size -

-number of pages to be read in this execution -
- -

- -page_index -

-offset within mapping, can used a page identifier and position identifier in the page frame -
- -

- -i_size -

-file length in bytes -
- -

- -sb_flag -

-super block flags -
- -

- -ino -

-inode number -
- -  -

DESCRIPTION

- -

- -Read the page over, only fires when a previous async read operation failed -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.aop.readpages.3stap.html b/man/probe::nfs.aop.readpages.3stap.html deleted file mode 100644 index 82c2a811..00000000 --- a/man/probe::nfs.aop.readpages.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::NFS\&.AOP\&.R - -

PROBE::NFS\&.AOP\&.R

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.aop.readpages - NFS client reading multiple pages -  -

SYNOPSIS

- -

-

-nfs.aop.readpages 
-
- -  -

VALUES

- -

- -nr_pages -

-number of pages attempted to read in this execution -
- -

- -ino -

-inode number -
- -

- -file -

-filp argument -
- -

- -size -

-number of pages attempted to read in this execution -
- -

- -dev -

-device identifier -
- -

- -rpages -

-read size (in pages) -
- -

- -rsize -

-read size (in bytes) -
- -  -

DESCRIPTION

- -

- -Fires when in readahead way, read several pages once -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.aop.release_page.3stap.html b/man/probe::nfs.aop.release_page.3stap.html deleted file mode 100644 index 3dc96369..00000000 --- a/man/probe::nfs.aop.release_page.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::NFS\&.AOP\&.R - -

PROBE::NFS\&.AOP\&.R

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.aop.release_page - NFS client releasing page -  -

SYNOPSIS

- -

-

-nfs.aop.release_page 
-
- -  -

VALUES

- -

- -dev -

-device identifier -
- -

- -__page -

-the address of page -
- -

- -ino -

-inode number -
- -

- -page_index -

-offset within mapping, can used a page identifier and position identifier in the page frame -
- -

- -size -

-release pages -
- -  -

DESCRIPTION

- -

- -Fires when do a release operation on NFS. -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.aop.set_page_dirty.3stap.html b/man/probe::nfs.aop.set_page_dirty.3stap.html deleted file mode 100644 index 9af79005..00000000 --- a/man/probe::nfs.aop.set_page_dirty.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::NFS\&.AOP\&.S - -

PROBE::NFS\&.AOP\&.S

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.aop.set_page_dirty - NFS client marking page as dirty -  -

SYNOPSIS

- -

-

-nfs.aop.set_page_dirty 
-
- -  -

VALUES

- -

- -page_flag -

-page flags -
- -

- -__page -

-the address of page -
- -  -

DESCRIPTION

- -

- -This probe attaches to the generic __set_page_dirty_nobuffers function. Thus, this probe is going to fire on many other file systems in addition to the NFS client. -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.aop.write_begin.3stap.html b/man/probe::nfs.aop.write_begin.3stap.html deleted file mode 100644 index 6923a6a4..00000000 --- a/man/probe::nfs.aop.write_begin.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::NFS\&.AOP\&.W - -

PROBE::NFS\&.AOP\&.W

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.aop.write_begin - NFS client begin to write data -  -

SYNOPSIS

- -

-

-nfs.aop.write_begin 
-
- -  -

VALUES

- -

- -offset -

-start address of this write operation -
- -

- -to -

-end address of this write operation -
- -

- -dev -

-device identifier -
- -

- -__page -

-the address of page -
- -

- -ino -

-inode number -
- -

- -page_index -

-offset within mapping, can used a page identifier and position identifier in the page frame -
- -

- -size -

-write bytes -
- -  -

DESCRIPTION

- -

- -Occurs when write operation occurs on nfs. It prepare a page for writing, look for a request corresponding to the page. If there is one, and it belongs to another file, it flush it out before it tries to copy anything into the page. Also do the same if it finds a request from an existing dropped page -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.aop.write_end.3stap.html b/man/probe::nfs.aop.write_end.3stap.html deleted file mode 100644 index 45e4be00..00000000 --- a/man/probe::nfs.aop.write_end.3stap.html +++ /dev/null @@ -1,144 +0,0 @@ - -Manpage of PROBE::NFS\&.AOP\&.W - -

PROBE::NFS\&.AOP\&.W

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.aop.write_end - NFS client complete writing data -  -

SYNOPSIS

- -

-

-nfs.aop.write_end 
-
- -  -

VALUES

- -

- -dev -

-device identifier -
- -

- -to -

-end address of this write operation -
- -

- -offset -

-start address of this write operation -
- -

- -i_size -

-file length in bytes -
- -

- -ino -

-inode number -
- -

- -sb_flag -

-super block flags -
- -

- -i_flag -

-file flags -
- -

- -__page -

-the address of page -
- -

- -page_index -

-offset within mapping, can used a page identifier and position identifier in the page frame -
- -

- -size -

-write bytes -
- -  -

DESCRIPTION

- -

- -Fires when do a write operation on nfs, often after prepare_write -

- -Update and possibly write a cached page of an NFS file. -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.aop.writepage.3stap.html b/man/probe::nfs.aop.writepage.3stap.html deleted file mode 100644 index 2f9decd9..00000000 --- a/man/probe::nfs.aop.writepage.3stap.html +++ /dev/null @@ -1,158 +0,0 @@ - -Manpage of PROBE::NFS\&.AOP\&.W - -

PROBE::NFS\&.AOP\&.W

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.aop.writepage - NFS client writing a mapped page to the NFS server -  -

SYNOPSIS

- -

-

-nfs.aop.writepage 
-
- -  -

VALUES

- -

- -i_flag -

-file flags -
- -

- -__page -

-the address of page -
- -

- -i_size -

-file length in bytes -
- -

- -sb_flag -

-super block flags -
- -

- -ino -

-inode number -
- -

- -i_state -

-inode state flags -
- -

- -for_reclaim -

-a flag of writeback_control, indicates if it's invoked from the page allocator -
- -

- -dev -

-device identifier -
- -

- -page_index -

-offset within mapping, can used a page identifier and position identifier in the page frame -
- -

- -size -

-number of pages to be written in this execution -
- -

- -for_kupdate -

-a flag of writeback_control, indicates if it's a kupdate writeback -
- -

- -wsize -

-write size -
- -  -

DESCRIPTION

- -

- -The priority of wb is decided by the flags -for_reclaim -and -for_kupdate. -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.aop.writepages.3stap.html b/man/probe::nfs.aop.writepages.3stap.html deleted file mode 100644 index d0ebbd44..00000000 --- a/man/probe::nfs.aop.writepages.3stap.html +++ /dev/null @@ -1,130 +0,0 @@ - -Manpage of PROBE::NFS\&.AOP\&.W - -

PROBE::NFS\&.AOP\&.W

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.aop.writepages - NFS client writing several dirty pages to the NFS server -  -

SYNOPSIS

- -

-

-nfs.aop.writepages 
-
- -  -

VALUES

- -

- -wsize -

-write size -
- -

- -for_kupdate -

-a flag of writeback_control, indicates if it's a kupdate writeback -
- -

- -size -

-number of pages attempted to be written in this execution -
- -

- -wpages -

-write size (in pages) -
- -

- -dev -

-device identifier -
- -

- -for_reclaim -

-a flag of writeback_control, indicates if it's invoked from the page allocator -
- -

- -ino -

-inode number -
- -

- -nr_to_write -

-number of pages attempted to be written in this execution -
- -  -

DESCRIPTION

- -

- -The priority of wb is decided by the flags -for_reclaim -and -for_kupdate. -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.aio_read.3stap.html b/man/probe::nfs.fop.aio_read.3stap.html deleted file mode 100644 index ec344082..00000000 --- a/man/probe::nfs.fop.aio_read.3stap.html +++ /dev/null @@ -1,134 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.A - -

PROBE::NFS\&.FOP\&.A

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.aio_read - NFS client aio_read file operation -  -

SYNOPSIS

- -

-

-nfs.fop.aio_read 
-
- -  -

VALUES

- -

- -file_name -

-file name -
- -

- -attrtimeo -

-how long the cached information is assumed to be valid. We need to revalidate the cached attrs for this inode if jiffies - read_cache_jiffies > attrtimeo. -
- -

- -cache_time -

-when we started read-caching this inode -
- -

- -ino -

-inode number -
- -

- -parent_name -

-parent dir name -
- -

- -buf -

-the address of buf in user space -
- -

- -pos -

-current position of file -
- -

- -count -

-read bytes -
- -

- -dev -

-device identifier -
- -

- -cache_valid -

-cache related bit mask flag -
- -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.aio_write.3stap.html b/man/probe::nfs.fop.aio_write.3stap.html deleted file mode 100644 index a8eecf2a..00000000 --- a/man/probe::nfs.fop.aio_write.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.A - -

PROBE::NFS\&.FOP\&.A

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.aio_write - NFS client aio_write file operation -  -

SYNOPSIS

- -

-

-nfs.fop.aio_write 
-
- -  -

VALUES

- -

- -dev -

-device identifier -
- -

- -pos -

-offset of the file -
- -

- -buf -

-the address of buf in user space -
- -

- -count -

-read bytes -
- -

- -ino -

-inode number -
- -

- -parent_name -

-parent dir name -
- -

- -file_name -

-file name -
- -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.check_flags.3stap.html b/man/probe::nfs.fop.check_flags.3stap.html deleted file mode 100644 index d348ec42..00000000 --- a/man/probe::nfs.fop.check_flags.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.C - -

PROBE::NFS\&.FOP\&.C

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.check_flags - NFS client checking flag operation -  -

SYNOPSIS

- -

-

-nfs.fop.check_flags 
-
- -  -

VALUES

- -

- -flag -

-file flag -
- -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.flush.3stap.html b/man/probe::nfs.fop.flush.3stap.html deleted file mode 100644 index 5f2e2e0e..00000000 --- a/man/probe::nfs.fop.flush.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.F - -

PROBE::NFS\&.FOP\&.F

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.flush - NFS client flush file operation -  -

SYNOPSIS

- -

-

-nfs.fop.flush 
-
- -  -

VALUES

- -

- -ndirty -

-number of dirty page -
- -

- -ino -

-inode number -
- -

- -mode -

-file mode -
- -

- -dev -

-device identifier -
- -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.fsync.3stap.html b/man/probe::nfs.fop.fsync.3stap.html deleted file mode 100644 index 7c466303..00000000 --- a/man/probe::nfs.fop.fsync.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.F - -

PROBE::NFS\&.FOP\&.F

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.fsync - NFS client fsync operation -  -

SYNOPSIS

- -

-

-nfs.fop.fsync 
-
- -  -

VALUES

- -

- -dev -

-device identifier -
- -

- -ino -

-inode number -
- -

- -ndirty -

-number of dirty pages -
- -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.llseek.3stap.html b/man/probe::nfs.fop.llseek.3stap.html deleted file mode 100644 index 6927c6ae..00000000 --- a/man/probe::nfs.fop.llseek.3stap.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.L - -

PROBE::NFS\&.FOP\&.L

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.llseek - NFS client llseek operation -  -

SYNOPSIS

- -

-

-nfs.fop.llseek 
-
- -  -

VALUES

- -

- -offset -

-the offset of the file will be repositioned -
- -

- -whence_str -

-symbolic string representation of the position to seek from -
- -

- -dev -

-device identifier -
- -

- -whence -

-the position to seek from -
- -

- -ino -

-inode number -
- -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.lock.3stap.html b/man/probe::nfs.fop.lock.3stap.html deleted file mode 100644 index 6ed5c737..00000000 --- a/man/probe::nfs.fop.lock.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.L - -

PROBE::NFS\&.FOP\&.L

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.lock - NFS client file lock operation -  -

SYNOPSIS

- -

-

-nfs.fop.lock 
-
- -  -

VALUES

- -

- -dev -

-device identifier -
- -

- -fl_start -

-starting offset of locked region -
- -

- -fl_type -

-lock type -
- -

- -fl_flag -

-lock flags -
- -

- -ino -

-inode number -
- -

- -fl_end -

-ending offset of locked region -
- -

- -i_mode -

-file type and access rights -
- -

- -cmd -

-cmd arguments -
- -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.mmap.3stap.html b/man/probe::nfs.fop.mmap.3stap.html deleted file mode 100644 index e408f154..00000000 --- a/man/probe::nfs.fop.mmap.3stap.html +++ /dev/null @@ -1,141 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.M - -

PROBE::NFS\&.FOP\&.M

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.mmap - NFS client mmap operation -  -

SYNOPSIS

- -

-

-nfs.fop.mmap 
-
- -  -

VALUES

- -

- -file_name -

-file name -
- -

- -attrtimeo -

-how long the cached information is assumed to be valid. We need to revalidate the cached attrs for this inode if jiffies - read_cache_jiffies > attrtimeo. -
- -

- -vm_start -

-start address within vm_mm -
- -

- -parent_name -

-parent dir name -
- -

- -cache_time -

-when we started read-caching this inode -
- -

- -vm_flag -

-vm flags -
- -

- -ino -

-inode number -
- -

- -buf -

-the address of buf in user space -
- -

- -vm_end -

-the first byte after end address within vm_mm -
- -

- -cache_valid -

-cache related bit mask flag -
- -

- -dev -

-device identifier -
- -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.open.3stap.html b/man/probe::nfs.fop.open.3stap.html deleted file mode 100644 index 9aef68e8..00000000 --- a/man/probe::nfs.fop.open.3stap.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.O - -

PROBE::NFS\&.FOP\&.O

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.open - NFS client file open operation -  -

SYNOPSIS

- -

-

-nfs.fop.open 
-
- -  -

VALUES

- -

- -file_name -

-file name -
- -

- -ino -

-inode number -
- -

- -flag -

-file flag -
- -

- -i_size -

-file length in bytes -
- -

- -dev -

-device identifier -
- -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.read.3stap.html b/man/probe::nfs.fop.read.3stap.html deleted file mode 100644 index 7ba5ddc5..00000000 --- a/man/probe::nfs.fop.read.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.R - -

PROBE::NFS\&.FOP\&.R

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.read - NFS client read operation -  -

SYNOPSIS

- -

-

-nfs.fop.read 
-
- -  -

VALUES

- -

- -devname -

-block device name -
- -  -

DESCRIPTION

- -

- -SystemTap uses the vfs.do_sync_read probe to implement this probe and as a result will get operations other than the NFS client read operations. -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.read_iter.3stap.html b/man/probe::nfs.fop.read_iter.3stap.html deleted file mode 100644 index 7642a7b0..00000000 --- a/man/probe::nfs.fop.read_iter.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.R - -

PROBE::NFS\&.FOP\&.R

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.read_iter - NFS client read_iter file operation -  -

SYNOPSIS

- -

-

-nfs.fop.read_iter 
-
- -  -

VALUES

- -

- -file_name -

-file name -
- -

- -attrtimeo -

-how long the cached information is assumed to be valid. We need to revalidate the cached attrs for this inode if jiffies - read_cache_jiffies > attrtimeo. -
- -

- -cache_time -

-when we started read-caching this inode -
- -

- -ino -

-inode number -
- -

- -parent_name -

-parent dir name -
- -

- -pos -

-current position of file -
- -

- -count -

-read bytes -
- -

- -cache_valid -

-cache related bit mask flag -
- -

- -dev -

-device identifier -
- -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.release.3stap.html b/man/probe::nfs.fop.release.3stap.html deleted file mode 100644 index 8fbc4b07..00000000 --- a/man/probe::nfs.fop.release.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.R - -

PROBE::NFS\&.FOP\&.R

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.release - NFS client release page operation -  -

SYNOPSIS

- -

-

-nfs.fop.release 
-
- -  -

VALUES

- -

- -dev -

-device identifier -
- -

- -mode -

-file mode -
- -

- -ino -

-inode number -
- -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.sendfile.3stap.html b/man/probe::nfs.fop.sendfile.3stap.html deleted file mode 100644 index 5deae8c0..00000000 --- a/man/probe::nfs.fop.sendfile.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.S - -

PROBE::NFS\&.FOP\&.S

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.sendfile - NFS client send file operation -  -

SYNOPSIS

- -

-

-nfs.fop.sendfile 
-
- -  -

VALUES

- -

- -attrtimeo -

-how long the cached information is assumed to be valid. We need to revalidate the cached attrs for this inode if jiffies - read_cache_jiffies > attrtimeo. -
- -

- -ino -

-inode number -
- -

- -cache_time -

-when we started read-caching this inode -
- -

- -count -

-read bytes -
- -

- -ppos -

-current position of file -
- -

- -cache_valid -

-cache related bit mask flag -
- -

- -dev -

-device identifier -
- -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.write.3stap.html b/man/probe::nfs.fop.write.3stap.html deleted file mode 100644 index 9f8be996..00000000 --- a/man/probe::nfs.fop.write.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.W - -

PROBE::NFS\&.FOP\&.W

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.write - NFS client write operation -  -

SYNOPSIS

- -

-

-nfs.fop.write 
-
- -  -

VALUES

- -

- -devname -

-block device name -
- -  -

DESCRIPTION

- -

- -SystemTap uses the vfs.do_sync_write probe to implement this probe and as a result will get operations other than the NFS client write operations. -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.fop.write_iter.3stap.html b/man/probe::nfs.fop.write_iter.3stap.html deleted file mode 100644 index 06de179d..00000000 --- a/man/probe::nfs.fop.write_iter.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::NFS\&.FOP\&.W - -

PROBE::NFS\&.FOP\&.W

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.fop.write_iter - NFS client write_iter file operation -  -

SYNOPSIS

- -

-

-nfs.fop.write_iter 
-
- -  -

VALUES

- -

- -count -

-read bytes -
- -

- -pos -

-offset of the file -
- -

- -dev -

-device identifier -
- -

- -file_name -

-file name -
- -

- -ino -

-inode number -
- -

- -parent_name -

-parent dir name -
- -  -

SEE ALSO

- -tapset::nfs(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.commit.3stap.html b/man/probe::nfs.proc.commit.3stap.html deleted file mode 100644 index 3f38293e..00000000 --- a/man/probe::nfs.proc.commit.3stap.html +++ /dev/null @@ -1,123 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.commit - NFS client committing data on server -  -

SYNOPSIS

- -

-

-nfs.proc.commit 
-
- -  -

VALUES

- -

- -bitmask1 -

-V4 bitmask representing the set of attributes supported on this filesystem -
- -

- -offset -

-the file offset -
- -

- -prot -

-transfer protocol -
- -

- -bitmask0 -

-V4 bitmask representing the set of attributes supported on this filesystem -
- -

- -version -

-NFS version -
- -

- -server_ip -

-IP address of server -
- -

- -size -

-read bytes in this execution -
- -  -

DESCRIPTION

- -

- -All the nfs.proc.commit kernel functions were removed in kernel commit 200baa in December 2006, so these probes do not exist on Linux 2.6.21 and newer kernels. -

- -Fires when client writes the buffered data to disk. The buffered data is asynchronously written by client earlier. The commit function works in sync way. This probe point does not exist in NFSv2. -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.commit_done.3stap.html b/man/probe::nfs.proc.commit_done.3stap.html deleted file mode 100644 index 51a436ec..00000000 --- a/man/probe::nfs.proc.commit_done.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.commit_done - NFS client response to a commit RPC task -  -

SYNOPSIS

- -

-

-nfs.proc.commit_done 
-
- -  -

VALUES

- -

- -count -

-number of bytes committed -
- -

- -status -

-result of last operation -
- -

- -valid -

-fattr->valid, indicates which fields are valid -
- -

- -prot -

-transfer protocol -
- -

- -timestamp -

-V4 timestamp, which is used for lease renewal -
- -

- -version -

-NFS version -
- -

- -server_ip -

-IP address of server -
- -  -

DESCRIPTION

- -

- -Fires when a reply to a commit RPC task is received or some commit operation error occur (timeout or socket shutdown). -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.commit_setup.3stap.html b/man/probe::nfs.proc.commit_setup.3stap.html deleted file mode 100644 index 48b56f72..00000000 --- a/man/probe::nfs.proc.commit_setup.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.commit_setup - NFS client setting up a commit RPC task -  -

SYNOPSIS

- -

-

-nfs.proc.commit_setup 
-
- -  -

VALUES

- -

- -bitmask0 -

-V4 bitmask representing the set of attributes supported on this filesystem -
- -

- -offset -

-the file offset -
- -

- -prot -

-transfer protocol -
- -

- -version -

-NFS version -
- -

- -server_ip -

-IP address of server -
- -

- -size -

-bytes in this commit -
- -

- -count -

-bytes in this commit -
- -

- -bitmask1 -

-V4 bitmask representing the set of attributes supported on this filesystem -
- -  -

DESCRIPTION

- -

- -The commit_setup function is used to setup a commit RPC task. Is is not doing the actual commit operation. It does not exist in NFSv2. -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.create.3stap.html b/man/probe::nfs.proc.create.3stap.html deleted file mode 100644 index 4fc41c37..00000000 --- a/man/probe::nfs.proc.create.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.create - NFS client creating file on server -  -

SYNOPSIS

- -

-

-nfs.proc.create 
-
- -  -

VALUES

- -

- -filelen -

-length of file name -
- -

- -prot -

-transfer protocol -
- -

- -fh -

-file handle of parent dir -
- -

- -filename -

-file name -
- -

- -flag -

-indicates create mode (only for NFSv3 and NFSv4) -
- -

- -version -

-NFS version (the function is used for all NFS version) -
- -

- -server_ip -

-IP address of server -
- -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.handle_exception.3stap.html b/man/probe::nfs.proc.handle_exception.3stap.html deleted file mode 100644 index 9ea4faf8..00000000 --- a/man/probe::nfs.proc.handle_exception.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.handle_exception - NFS client handling an NFSv4 exception -  -

SYNOPSIS

- -

-

-nfs.proc.handle_exception 
-
- -  -

VALUES

- -

- -errorcode -

-indicates the type of error -
- -  -

DESCRIPTION

- -

- -This is the error handling routine for processes for NFSv4. -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.lookup.3stap.html b/man/probe::nfs.proc.lookup.3stap.html deleted file mode 100644 index 5886e4f6..00000000 --- a/man/probe::nfs.proc.lookup.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.lookup - NFS client opens/searches a file on server -  -

SYNOPSIS

- -

-

-nfs.proc.lookup 
-
- -  -

VALUES

- -

- -bitmask1 -

-V4 bitmask representing the set of attributes supported on this filesystem -
- -

- -name_len -

-the length of file name -
- -

- -version -

-NFS version -
- -

- -server_ip -

-IP address of server -
- -

- -filename -

-the name of file which client opens/searches on server -
- -

- -bitmask0 -

-V4 bitmask representing the set of attributes supported on this filesystem -
- -

- -prot -

-transfer protocol -
- -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.open.3stap.html b/man/probe::nfs.proc.open.3stap.html deleted file mode 100644 index 3bf23c7b..00000000 --- a/man/probe::nfs.proc.open.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.open - NFS client allocates file read/write context information -  -

SYNOPSIS

- -

-

-nfs.proc.open 
-
- -  -

VALUES

- -

- -mode -

-file mode -
- -

- -filename -

-file name -
- -

- -flag -

-file flag -
- -

- -version -

-NFS version (the function is used for all NFS version) -
- -

- -server_ip -

-IP address of server -
- -

- -prot -

-transfer protocol -
- -  -

DESCRIPTION

- -

- -Allocate file read/write context information -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.read.3stap.html b/man/probe::nfs.proc.read.3stap.html deleted file mode 100644 index 723cbe7e..00000000 --- a/man/probe::nfs.proc.read.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.read - NFS client synchronously reads file from server -  -

SYNOPSIS

- -

-

-nfs.proc.read 
-
- -  -

VALUES

- -

- -version -

-NFS version -
- -

- -server_ip -

-IP address of server -
- -

- -flags -

-used to set task->tk_flags in rpc_init_task function -
- -

- -offset -

-the file offset -
- -

- -prot -

-transfer protocol -
- -

- -count -

-read bytes in this execution -
- -  -

DESCRIPTION

- -

- -All the nfs.proc.read kernel functions were removed in kernel commit 8e0969 in December 2006, so these probes do not exist on Linux 2.6.21 and newer kernels. -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.read_done.3stap.html b/man/probe::nfs.proc.read_done.3stap.html deleted file mode 100644 index 0b14d983..00000000 --- a/man/probe::nfs.proc.read_done.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.read_done - NFS client response to a read RPC task -  -

SYNOPSIS

- -

-

-nfs.proc.read_done 
-
- -  -

VALUES

- -

- -count -

-number of bytes read -
- -

- -status -

-result of last operation -
- -

- -version -

-NFS version -
- -

- -timestamp -

-V4 timestamp, which is used for lease renewal -
- -

- -server_ip -

-IP address of server -
- -

- -prot -

-transfer protocol -
- -  -

DESCRIPTION

- -

- -Fires when a reply to a read RPC task is received or some read error occurs (timeout or socket shutdown). -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.read_setup.3stap.html b/man/probe::nfs.proc.read_setup.3stap.html deleted file mode 100644 index 58f59435..00000000 --- a/man/probe::nfs.proc.read_setup.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.read_setup - NFS client setting up a read RPC task -  -

SYNOPSIS

- -

-

-nfs.proc.read_setup 
-
- -  -

VALUES

- -

- -count -

-read bytes in this execution -
- -

- -prot -

-transfer protocol -
- -

- -offset -

-the file offset -
- -

- -size -

-read bytes in this execution -
- -

- -server_ip -

-IP address of server -
- -

- -version -

-NFS version -
- -  -

DESCRIPTION

- -

- -The read_setup function is used to setup a read RPC task. It is not doing the actual read operation. -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.release.3stap.html b/man/probe::nfs.proc.release.3stap.html deleted file mode 100644 index 8094f198..00000000 --- a/man/probe::nfs.proc.release.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.release - NFS client releases file read/write context information -  -

SYNOPSIS

- -

-

-nfs.proc.release 
-
- -  -

VALUES

- -

- -mode -

-file mode -
- -

- -server_ip -

-IP address of server -
- -

- -version -

-NFS version (the function is used for all NFS version) -
- -

- -flag -

-file flag -
- -

- -filename -

-file name -
- -

- -prot -

-transfer protocol -
- -  -

DESCRIPTION

- -

- -Release file read/write context information -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.remove.3stap.html b/man/probe::nfs.proc.remove.3stap.html deleted file mode 100644 index 96bd2cdd..00000000 --- a/man/probe::nfs.proc.remove.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.remove - NFS client removes a file on server -  -

SYNOPSIS

- -

-

-nfs.proc.remove 
-
- -  -

VALUES

- -

- -filelen -

-length of file name -
- -

- -prot -

-transfer protocol -
- -

- -fh -

-file handle of parent dir -
- -

- -filename -

-file name -
- -

- -server_ip -

-IP address of server -
- -

- -version -

-NFS version (the function is used for all NFS version) -
- -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.rename.3stap.html b/man/probe::nfs.proc.rename.3stap.html deleted file mode 100644 index 633be54e..00000000 --- a/man/probe::nfs.proc.rename.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.rename - NFS client renames a file on server -  -

SYNOPSIS

- -

-

-nfs.proc.rename 
-
- -  -

VALUES

- -

- -prot -

-transfer protocol -
- -

- -server_ip -

-IP address of server -
- -

- -version -

-NFS version (the function is used for all NFS version) -
- -

- -old_name -

-old file name -
- -

- -new_name -

-new file name -
- -

- -old_fh -

-file handle of old parent dir -
- -

- -new_fh -

-file handle of new parent dir -
- -

- -new_filelen -

-length of new file name -
- -

- -old_filelen -

-length of old file name -
- -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.rename_done.3stap.html b/man/probe::nfs.proc.rename_done.3stap.html deleted file mode 100644 index 8438806b..00000000 --- a/man/probe::nfs.proc.rename_done.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.rename_done - NFS client response to a rename RPC task -  -

SYNOPSIS

- -

-

-nfs.proc.rename_done 
-
- -  -

VALUES

- -

- -server_ip -

-IP address of server -
- -

- -version -

-NFS version -
- -

- -timestamp -

-V4 timestamp, which is used for lease renewal -
- -

- -prot -

-transfer protocol -
- -

- -old_fh -

-file handle of old parent dir -
- -

- -status -

-result of last operation -
- -

- -new_fh -

-file handle of new parent dir -
- -  -

DESCRIPTION

- -

- -Fires when a reply to a rename RPC task is received or some rename error occurs (timeout or socket shutdown). -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.rename_setup.3stap.html b/man/probe::nfs.proc.rename_setup.3stap.html deleted file mode 100644 index 7cc2196e..00000000 --- a/man/probe::nfs.proc.rename_setup.3stap.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.rename_setup - NFS client setting up a rename RPC task -  -

SYNOPSIS

- -

-

-nfs.proc.rename_setup 
-
- -  -

VALUES

- -

- -fh -

-file handle of parent dir -
- -

- -prot -

-transfer protocol -
- -

- -version -

-NFS version -
- -

- -server_ip -

-IP address of server -
- -  -

DESCRIPTION

- -

- -The rename_setup function is used to setup a rename RPC task. Is is not doing the actual rename operation. -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.write.3stap.html b/man/probe::nfs.proc.write.3stap.html deleted file mode 100644 index 6daa26b5..00000000 --- a/man/probe::nfs.proc.write.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.write - NFS client synchronously writes file to server -  -

SYNOPSIS

- -

-

-nfs.proc.write 
-
- -  -

VALUES

- -

- -bitmask1 -

-V4 bitmask representing the set of attributes supported on this filesystem -
- -

- -flags -

-used to set task->tk_flags in rpc_init_task function -
- -

- -size -

-read bytes in this execution -
- -

- -server_ip -

-IP address of server -
- -

- -version -

-NFS version -
- -

- -prot -

-transfer protocol -
- -

- -offset -

-the file offset -
- -

- -bitmask0 -

-V4 bitmask representing the set of attributes supported on this filesystem -
- -  -

DESCRIPTION

- -

- -All the nfs.proc.write kernel functions were removed in kernel commit 200baa in December 2006, so these probes do not exist on Linux 2.6.21 and newer kernels. -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.write_done.3stap.html b/man/probe::nfs.proc.write_done.3stap.html deleted file mode 100644 index 63e598d0..00000000 --- a/man/probe::nfs.proc.write_done.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.write_done - NFS client response to a write RPC task -  -

SYNOPSIS

- -

-

-nfs.proc.write_done 
-
- -  -

VALUES

- -

- -prot -

-transfer protocol -
- -

- -server_ip -

-IP address of server -
- -

- -version -

-NFS version -
- -

- -timestamp -

-V4 timestamp, which is used for lease renewal -
- -

- -valid -

-fattr->valid, indicates which fields are valid -
- -

- -status -

-result of last operation -
- -

- -count -

-number of bytes written -
- -  -

DESCRIPTION

- -

- -Fires when a reply to a write RPC task is received or some write error occurs (timeout or socket shutdown). -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfs.proc.write_setup.3stap.html b/man/probe::nfs.proc.write_setup.3stap.html deleted file mode 100644 index 7e4e97fb..00000000 --- a/man/probe::nfs.proc.write_setup.3stap.html +++ /dev/null @@ -1,134 +0,0 @@ - -Manpage of PROBE::NFS\&.PROC\&. - -

PROBE::NFS\&.PROC\&.

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfs.proc.write_setup - NFS client setting up a write RPC task -  -

SYNOPSIS

- -

-

-nfs.proc.write_setup 
-
- -  -

VALUES

- -

- -bitmask1 -

-V4 bitmask representing the set of attributes supported on this filesystem -
- -

- -count -

-bytes written in this execution -
- -

- -how -

-used to set args.stable. The stable value could be: NFS_UNSTABLE,NFS_DATA_SYNC,NFS_FILE_SYNC (in nfs.proc3.write_setup and nfs.proc4.write_setup) -
- -

- -offset -

-the file offset -
- -

- -prot -

-transfer protocol -
- -

- -bitmask0 -

-V4 bitmask representing the set of attributes supported on this filesystem -
- -

- -version -

-NFS version -
- -

- -size -

-bytes written in this execution -
- -

- -server_ip -

-IP address of server -
- -  -

DESCRIPTION

- -

- -The write_setup function is used to setup a write RPC task. It is not doing the actual write operation. -  -

SEE ALSO

- -tapset::nfs_proc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.close.3stap.html b/man/probe::nfsd.close.3stap.html deleted file mode 100644 index 79c7dd4b..00000000 --- a/man/probe::nfsd.close.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::NFSD\&.CLOSE - -

PROBE::NFSD\&.CLOSE

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.close - NFS server closing a file for client -  -

SYNOPSIS

- -

-

-nfsd.close 
-
- -  -

VALUES

- -

- -filename -

-file name -
- -  -

DESCRIPTION

- -

- -This probe point does not exist in kernels starting with 4.2. -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.commit.3stap.html b/man/probe::nfsd.commit.3stap.html deleted file mode 100644 index 2f938a63..00000000 --- a/man/probe::nfsd.commit.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::NFSD\&.COMMIT - -

PROBE::NFSD\&.COMMIT

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.commit - NFS server committing all pending writes to stable storage -  -

SYNOPSIS

- -

-

-nfsd.commit 
-
- -  -

VALUES

- -

- -count -

-read bytes -
- -

- -offset -

-the offset of file -
- -

- -flag -

-indicates whether this execution is a sync operation -
- -

- -fh -

-file handle (the first part is the length of the file handle) -
- -

- -client_ip -

-the ip address of client -
- -

- -size -

-read bytes -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.create.3stap.html b/man/probe::nfsd.create.3stap.html deleted file mode 100644 index b80c5e81..00000000 --- a/man/probe::nfsd.create.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::NFSD\&.CREATE - -

PROBE::NFSD\&.CREATE

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.create - NFS server creating a file(regular,dir,device,fifo) for client -  -

SYNOPSIS

- -

-

-nfsd.create 
-
- -  -

VALUES

- -

- -type -

-file type(regular,dir,device,fifo ...) -
- -

- -iap_mode -

-file access mode -
- -

- -filelen -

-the length of file name -
- -

- -iap_valid -

-Attribute flags -
- -

- -fh -

-file handle (the first part is the length of the file handle) -
- -

- -client_ip -

-the ip address of client -
- -

- -filename -

-file name -
- -  -

DESCRIPTION

- -

- -Sometimes nfsd will call nfsd_create_v3 instead of this this probe point. -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.createv3.3stap.html b/man/probe::nfsd.createv3.3stap.html deleted file mode 100644 index eb94eb46..00000000 --- a/man/probe::nfsd.createv3.3stap.html +++ /dev/null @@ -1,134 +0,0 @@ - -Manpage of PROBE::NFSD\&.CREATE - -

PROBE::NFSD\&.CREATE

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.createv3 - NFS server creating a regular file or set file attributes for client -  -

SYNOPSIS

- -

-

-nfsd.createv3 
-
- -  -

VALUES

- -

- -filename -

-file name -
- -

- -createmode -

-create mode .The possible values could be: NFS3_CREATE_EXCLUSIVE, NFS3_CREATE_UNCHECKED, or NFS3_CREATE_GUARDED -
- -

- -client_ip -

-the ip address of client -
- -

- -fh -

-file handle (the first part is the length of the file handle) -
- -

- -iap_valid -

-Attribute flags -
- -

- -filelen -

-the length of file name -
- -

- -iap_mode -

-file access mode -
- -

- -truncp -

-trunp arguments, indicates if the file shouldbe truncate -
- -

- -verifier -

-file attributes (atime,mtime,mode). It's used to reset file attributes for CREATE_EXCLUSIVE -
- -  -

DESCRIPTION

- -

- -This probepoints is only called by nfsd3_proc_create and nfsd4_open when op_claim_type is NFS4_OPEN_CLAIM_NULL. -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.dispatch.3stap.html b/man/probe::nfsd.dispatch.3stap.html deleted file mode 100644 index 143aa7d4..00000000 --- a/man/probe::nfsd.dispatch.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::NFSD\&.DISPAT - -

PROBE::NFSD\&.DISPAT

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.dispatch - NFS server receives an operation from client -  -

SYNOPSIS

- -

-

-nfsd.dispatch 
-
- -  -

VALUES

- -

- -client_ip -

-the ip address of client -
- -

- -proc -

-procedure number -
- -

- -proto -

-transfer protocol -
- -

- -xid -

-transmission id -
- -

- -prog -

-program number -
- -

- -version -

-nfs version -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.lookup.3stap.html b/man/probe::nfsd.lookup.3stap.html deleted file mode 100644 index 44219dfa..00000000 --- a/man/probe::nfsd.lookup.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::NFSD\&.LOOKUP - -

PROBE::NFSD\&.LOOKUP

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.lookup - NFS server opening or searching file for a file for client -  -

SYNOPSIS

- -

-

-nfsd.lookup 
-
- -  -

VALUES

- -

- -filelen -

-the length of file name -
- -

- -fh -

-file handle of parent dir(the first part is the length of the file handle) -
- -

- -filename -

-file name -
- -

- -client_ip -

-the ip address of client -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.open.3stap.html b/man/probe::nfsd.open.3stap.html deleted file mode 100644 index e4d8f864..00000000 --- a/man/probe::nfsd.open.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::NFSD\&.OPEN - -

PROBE::NFSD\&.OPEN

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.open - NFS server opening a file for client -  -

SYNOPSIS

- -

-

-nfsd.open 
-
- -  -

VALUES

- -

- -type -

-type of file (regular file or dir) -
- -

- -fh -

-file handle (the first part is the length of the file handle) -
- -

- -access -

-indicates the type of open (read/write/commit/readdir...) -
- -

- -client_ip -

-the ip address of client -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.proc.commit.3stap.html b/man/probe::nfsd.proc.commit.3stap.html deleted file mode 100644 index e125bdea..00000000 --- a/man/probe::nfsd.proc.commit.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::NFSD\&.PROC\& - -

PROBE::NFSD\&.PROC\&

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.proc.commit - NFS server performing a commit operation for client -  -

SYNOPSIS

- -

-

-nfsd.proc.commit 
-
- -  -

VALUES

- -

- -offset -

-the offset of file -
- -

- -count -

-read bytes -
- -

- -client_ip -

-the ip address of client -
- -

- -fh -

-file handle (the first part is the length of the file handle) -
- -

- -proto -

-transfer protocol -
- -

- -version -

-nfs version -
- -

- -size -

-read bytes -
- -

- -gid -

-requester's group id -
- -

- -uid -

-requester's user id -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.proc.create.3stap.html b/man/probe::nfsd.proc.create.3stap.html deleted file mode 100644 index a87ceeda..00000000 --- a/man/probe::nfsd.proc.create.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::NFSD\&.PROC\& - -

PROBE::NFSD\&.PROC\&

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.proc.create - NFS server creating a file for client -  -

SYNOPSIS

- -

-

-nfsd.proc.create 
-
- -  -

VALUES

- -

- -version -

-nfs version -
- -

- -uid -

-requester's user id -
- -

- -gid -

-requester's group id -
- -

- -filelen -

-length of file name -
- -

- -fh -

-file handle (the first part is the length of the file handle) -
- -

- -proto -

-transfer protocol -
- -

- -client_ip -

-the ip address of client -
- -

- -filename -

-file name -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.proc.lookup.3stap.html b/man/probe::nfsd.proc.lookup.3stap.html deleted file mode 100644 index 66358b83..00000000 --- a/man/probe::nfsd.proc.lookup.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::NFSD\&.PROC\& - -

PROBE::NFSD\&.PROC\&

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.proc.lookup - NFS server opening or searching for a file for client -  -

SYNOPSIS

- -

-

-nfsd.proc.lookup 
-
- -  -

VALUES

- -

- -filename -

-file name -
- -

- -gid -

-requester's group id -
- -

- -client_ip -

-the ip address of client -
- -

- -proto -

-transfer protocol -
- -

- -fh -

-file handle of parent dir (the first part is the length of the file handle) -
- -

- -uid -

-requester's user id -
- -

- -filelen -

-the length of file name -
- -

- -version -

-nfs version -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.proc.read.3stap.html b/man/probe::nfsd.proc.read.3stap.html deleted file mode 100644 index aa509c2c..00000000 --- a/man/probe::nfsd.proc.read.3stap.html +++ /dev/null @@ -1,141 +0,0 @@ - -Manpage of PROBE::NFSD\&.PROC\& - -

PROBE::NFSD\&.PROC\&

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.proc.read - NFS server reading file for client -  -

SYNOPSIS

- -

-

-nfsd.proc.read 
-
- -  -

VALUES

- -

- -proto -

-transfer protocol -
- -

- -vec -

-struct kvec, includes buf address in kernel address and length of each buffer -
- -

- -fh -

-file handle (the first part is the length of the file handle) -
- -

- -uid -

-requester's user id -
- -

- -gid -

-requester's group id -
- -

- -client_ip -

-the ip address of client -
- -

- -count -

-read bytes -
- -

- -version -

-nfs version -
- -

- -size -

-read bytes -
- -

- -vlen -

-read blocks -
- -

- -offset -

-the offset of file -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.proc.remove.3stap.html b/man/probe::nfsd.proc.remove.3stap.html deleted file mode 100644 index c245160e..00000000 --- a/man/probe::nfsd.proc.remove.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::NFSD\&.PROC\& - -

PROBE::NFSD\&.PROC\&

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.proc.remove - NFS server removing a file for client -  -

SYNOPSIS

- -

-

-nfsd.proc.remove 
-
- -  -

VALUES

- -

- -filename -

-file name -
- -

- -client_ip -

-the ip address of client -
- -

- -proto -

-transfer protocol -
- -

- -fh -

-file handle (the first part is the length of the file handle) -
- -

- -filelen -

-length of file name -
- -

- -gid -

-requester's group id -
- -

- -uid -

-requester's user id -
- -

- -version -

-nfs version -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.proc.rename.3stap.html b/man/probe::nfsd.proc.rename.3stap.html deleted file mode 100644 index 0fb89c16..00000000 --- a/man/probe::nfsd.proc.rename.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::NFSD\&.PROC\& - -

PROBE::NFSD\&.PROC\&

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.proc.rename - NFS Server renaming a file for client -  -

SYNOPSIS

- -

-

-nfsd.proc.rename 
-
- -  -

VALUES

- -

- -tname -

-new file name -
- -

- -gid -

-requester's group id -
- -

- -flen -

-length of old file name -
- -

- -uid -

-requester's user id -
- -

- -filename -

-old file name -
- -

- -client_ip -

-the ip address of client -
- -

- -tfh -

-file handler of new path -
- -

- -fh -

-file handler of old path -
- -

- -tlen -

-length of new file name -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.proc.write.3stap.html b/man/probe::nfsd.proc.write.3stap.html deleted file mode 100644 index eff0abe1..00000000 --- a/man/probe::nfsd.proc.write.3stap.html +++ /dev/null @@ -1,148 +0,0 @@ - -Manpage of PROBE::NFSD\&.PROC\& - -

PROBE::NFSD\&.PROC\&

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.proc.write - NFS server writing data to file for client -  -

SYNOPSIS

- -

-

-nfsd.proc.write 
-
- -  -

VALUES

- -

- -count -

-read bytes -
- -

- -offset -

-the offset of file -
- -

- -fh -

-file handle (the first part is the length of the file handle) -
- -

- -proto -

-transfer protocol -
- -

- -vec -

-struct kvec, includes buf address in kernel address and length of each buffer -
- -

- -client_ip -

-the ip address of client -
- -

- -version -

-nfs version -
- -

- -size -

-read bytes -
- -

- -vlen -

-read blocks -
- -

- -uid -

-requester's user id -
- -

- -stable -

-argp->stable -
- -

- -gid -

-requester's group id -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.read.3stap.html b/man/probe::nfsd.read.3stap.html deleted file mode 100644 index 446940b9..00000000 --- a/man/probe::nfsd.read.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::NFSD\&.READ - -

PROBE::NFSD\&.READ

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.read - NFS server reading data from a file for client -  -

SYNOPSIS

- -

-

-nfsd.read 
-
- -  -

VALUES

- -

- -vlen -

-read blocks -
- -

- -size -

-read bytes -
- -

- -file -

-argument file, indicates if the file has been opened. -
- -

- -offset -

-the offset of file -
- -

- -count -

-read bytes -
- -

- -client_ip -

-the ip address of client -
- -

- -vec -

-struct kvec, includes buf address in kernel address and length of each buffer -
- -

- -fh -

-file handle (the first part is the length of the file handle) -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.rename.3stap.html b/man/probe::nfsd.rename.3stap.html deleted file mode 100644 index b89f28cb..00000000 --- a/man/probe::nfsd.rename.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::NFSD\&.RENAME - -

PROBE::NFSD\&.RENAME

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.rename - NFS server renaming a file for client -  -

SYNOPSIS

- -

-

-nfsd.rename 
-
- -  -

VALUES

- -

- -flen -

-length of old file name -
- -

- -tname -

-new file name -
- -

- -fh -

-file handler of old path -
- -

- -tfh -

-file handler of new path -
- -

- -client_ip -

-the ip address of client -
- -

- -filename -

-old file name -
- -

- -tlen -

-length of new file name -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.unlink.3stap.html b/man/probe::nfsd.unlink.3stap.html deleted file mode 100644 index 36834762..00000000 --- a/man/probe::nfsd.unlink.3stap.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of PROBE::NFSD\&.UNLINK - -

PROBE::NFSD\&.UNLINK

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.unlink - NFS server removing a file or a directory for client -  -

SYNOPSIS

- -

-

-nfsd.unlink 
-
- -  -

VALUES

- -

- -type -

-file type (file or dir) -
- -

- -fh -

-file handle (the first part is the length of the file handle) -
- -

- -client_ip -

-the ip address of client -
- -

- -filename -

-file name -
- -

- -filelen -

-the length of file name -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::nfsd.write.3stap.html b/man/probe::nfsd.write.3stap.html deleted file mode 100644 index fbd65e52..00000000 --- a/man/probe::nfsd.write.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::NFSD\&.WRITE - -

PROBE::NFSD\&.WRITE

-Section: Network File Storage Tapsets (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::nfsd.write - NFS server writing data to a file for client -  -

SYNOPSIS

- -

-

-nfsd.write 
-
- -  -

VALUES

- -

- -size -

-read bytes -
- -

- -vlen -

-read blocks -
- -

- -file -

-argument file, indicates if the file has been opened. -
- -

- -count -

-read bytes -
- -

- -offset -

-the offset of file -
- -

- -vec -

-struct kvec, includes buf address in kernel address and length of each buffer -
- -

- -fh -

-file handle (the first part is the length of the file handle) -
- -

- -client_ip -

-the ip address of client -
- -  -

SEE ALSO

- -tapset::nfsd(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.balance.3stap.html b/man/probe::scheduler.balance.3stap.html deleted file mode 100644 index c6dfb727..00000000 --- a/man/probe::scheduler.balance.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.B - -

PROBE::SCHEDULER\&.B

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.balance - A cpu attempting to find more work. -  -

SYNOPSIS

- -

-

-scheduler.balance 
-
- -  -

VALUES

- -

- -name -

-name of the probe point -
- -  -

CONTEXT

- -

- -The cpu looking for more work. -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.cpu_off.3stap.html b/man/probe::scheduler.cpu_off.3stap.html deleted file mode 100644 index a100b5ef..00000000 --- a/man/probe::scheduler.cpu_off.3stap.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.C - -

PROBE::SCHEDULER\&.C

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.cpu_off - Process is about to stop running on a cpu -  -

SYNOPSIS

- -

-

-scheduler.cpu_off 
-
- -  -

VALUES

- -

- -task_prev -

-the process leaving the cpu (same as current) -
- -

- -task_next -

-the process replacing current -
- -

- -idle -

-boolean indicating whether current is the idle process -
- -

- -name -

-name of the probe point -
- -  -

CONTEXT

- -

- -The process leaving the cpu. -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.cpu_on.3stap.html b/man/probe::scheduler.cpu_on.3stap.html deleted file mode 100644 index 469b61f8..00000000 --- a/man/probe::scheduler.cpu_on.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.C - -

PROBE::SCHEDULER\&.C

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.cpu_on - Process is beginning execution on a cpu -  -

SYNOPSIS

- -

-

-scheduler.cpu_on 
-
- -  -

VALUES

- -

- -idle -

-- boolean indicating whether current is the idle process -
- -

- -name -

-name of the probe point -
- -

- -task_prev -

-the process that was previously running on this cpu -
- -  -

CONTEXT

- -

- -The resuming process. -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.ctxswitch.3stap.html b/man/probe::scheduler.ctxswitch.3stap.html deleted file mode 100644 index 727a71d0..00000000 --- a/man/probe::scheduler.ctxswitch.3stap.html +++ /dev/null @@ -1,141 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.C - -

PROBE::SCHEDULER\&.C

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.ctxswitch - A context switch is occuring. -  -

SYNOPSIS

- -

-

-scheduler.ctxswitch 
-
- -  -

VALUES

- -

- -prev_priority -

-The priority of the process to be switched out -
- -

- -prev_task_name -

-The name of the process to be switched out -
- -

- -next_tid -

-The TID of the process to be switched in -
- -

- -next_pid -

-The PID of the process to be switched in -
- -

- -nexttsk_state -

-the state of the process to be switched in -
- -

- -next_priority -

-The priority of the process to be switched in -
- -

- -name -

-name of the probe point -
- -

- -next_task_name -

-The name of the process to be switched in -
- -

- -prev_tid -

-The TID of the process to be switched out -
- -

- -prev_pid -

-The PID of the process to be switched out -
- -

- -prevtsk_state -

-the state of the process to be switched out -
- -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.kthread_stop.3stap.html b/man/probe::scheduler.kthread_stop.3stap.html deleted file mode 100644 index 9771f559..00000000 --- a/man/probe::scheduler.kthread_stop.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.K - -

PROBE::SCHEDULER\&.K

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.kthread_stop - A thread created by kthread_create is being stopped -  -

SYNOPSIS

- -

-

-scheduler.kthread_stop 
-
- -  -

VALUES

- -

- -thread_pid -

-PID of the thread being stopped -
- -

- -thread_priority -

-priority of the thread -
- -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.kthread_stop.return.3stap.html b/man/probe::scheduler.kthread_stop.return.3stap.html deleted file mode 100644 index d4acea40..00000000 --- a/man/probe::scheduler.kthread_stop.return.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.K - -

PROBE::SCHEDULER\&.K

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.kthread_stop.return - A kthread is stopped and gets the return value -  -

SYNOPSIS

- -

-

-scheduler.kthread_stop.return 
-
- -  -

VALUES

- -

- -name -

-name of the probe point -
- -

- -return_value -

-return value after stopping the thread -
- -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.migrate.3stap.html b/man/probe::scheduler.migrate.3stap.html deleted file mode 100644 index 989a3559..00000000 --- a/man/probe::scheduler.migrate.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.M - -

PROBE::SCHEDULER\&.M

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.migrate - Task migrating across cpus -  -

SYNOPSIS

- -

-

-scheduler.migrate 
-
- -  -

VALUES

- -

- -priority -

-priority of the task being migrated -
- -

- -cpu_to -

-the destination cpu -
- -

- -name -

-name of the probe point -
- -

- -cpu_from -

-the original cpu -
- -

- -task -

-the process that is being migrated -
- -

- -pid -

-PID of the task being migrated -
- -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.process_exit.3stap.html b/man/probe::scheduler.process_exit.3stap.html deleted file mode 100644 index 9d2fc5cf..00000000 --- a/man/probe::scheduler.process_exit.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.P - -

PROBE::SCHEDULER\&.P

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.process_exit - Process exiting -  -

SYNOPSIS

- -

-

-scheduler.process_exit 
-
- -  -

VALUES

- -

- -pid -

-PID of the process exiting -
- -

- -name -

-name of the probe point -
- -

- -priority -

-priority of the process exiting -
- -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.process_fork.3stap.html b/man/probe::scheduler.process_fork.3stap.html deleted file mode 100644 index b43056ea..00000000 --- a/man/probe::scheduler.process_fork.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.P - -

PROBE::SCHEDULER\&.P

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.process_fork - Process forked -  -

SYNOPSIS

- -

-

-scheduler.process_fork 
-
- -  -

VALUES

- -

- -name -

-name of the probe point -
- -

- -parent_pid -

-PID of the parent process -
- -

- -child_pid -

-PID of the child process -
- -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.process_free.3stap.html b/man/probe::scheduler.process_free.3stap.html deleted file mode 100644 index 789c69d6..00000000 --- a/man/probe::scheduler.process_free.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.P - -

PROBE::SCHEDULER\&.P

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.process_free - Scheduler freeing a data structure for a process -  -

SYNOPSIS

- -

-

-scheduler.process_free 
-
- -  -

VALUES

- -

- -priority -

-priority of the process getting freed -
- -

- -name -

-name of the probe point -
- -

- -pid -

-PID of the process getting freed -
- -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:47 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.process_wait.3stap.html b/man/probe::scheduler.process_wait.3stap.html deleted file mode 100644 index d7bc6935..00000000 --- a/man/probe::scheduler.process_wait.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.P - -

PROBE::SCHEDULER\&.P

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.process_wait - Scheduler starting to wait on a process -  -

SYNOPSIS

- -

-

-scheduler.process_wait 
-
- -  -

VALUES

- -

- -pid -

-PID of the process scheduler is waiting on -
- -

- -name -

-name of the probe point -
- -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.signal_send.3stap.html b/man/probe::scheduler.signal_send.3stap.html deleted file mode 100644 index f3a62d3a..00000000 --- a/man/probe::scheduler.signal_send.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.S - -

PROBE::SCHEDULER\&.S

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.signal_send - Sending a signal -  -

SYNOPSIS

- -

-

-scheduler.signal_send 
-
- -  -

VALUES

- -

- -pid -

-pid of the process sending signal -
- -

- -name -

-name of the probe point -
- -

- -signal_number -

-signal number -
- -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.tick.3stap.html b/man/probe::scheduler.tick.3stap.html deleted file mode 100644 index 72a150f9..00000000 --- a/man/probe::scheduler.tick.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.T - -

PROBE::SCHEDULER\&.T

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.tick - Schedulers internal tick, a processes timeslice accounting is updated -  -

SYNOPSIS

- -

-

-scheduler.tick 
-
- -  -

VALUES

- -

- -idle -

-boolean indicating whether current is the idle process -
- -

- -name -

-name of the probe point -
- -  -

CONTEXT

- -

- -The process whose accounting will be updated. -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.wait_task.3stap.html b/man/probe::scheduler.wait_task.3stap.html deleted file mode 100644 index bb7e52b8..00000000 --- a/man/probe::scheduler.wait_task.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.W - -

PROBE::SCHEDULER\&.W

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.wait_task - Waiting on a task to unschedule (become inactive) -  -

SYNOPSIS

- -

-

-scheduler.wait_task 
-
- -  -

VALUES

- -

- -task_pid -

-PID of the task the scheduler is waiting on -
- -

- -name -

-name of the probe point -
- -

- -task_priority -

-priority of the task -
- -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.wakeup.3stap.html b/man/probe::scheduler.wakeup.3stap.html deleted file mode 100644 index ee483d4c..00000000 --- a/man/probe::scheduler.wakeup.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.W - -

PROBE::SCHEDULER\&.W

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.wakeup - Task is woken up -  -

SYNOPSIS

- -

-

-scheduler.wakeup 
-
- -  -

VALUES

- -

- -task_priority -

-priority of the task being woken up -
- -

- -name -

-name of the probe point -
- -

- -task_state -

-state of the task being woken up -
- -

- -task_tid -

-tid of the task being woken up -
- -

- -task_pid -

-PID of the task being woken up -
- -

- -task_cpu -

-cpu of the task being woken up -
- -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::scheduler.wakeup_new.3stap.html b/man/probe::scheduler.wakeup_new.3stap.html deleted file mode 100644 index 3e471263..00000000 --- a/man/probe::scheduler.wakeup_new.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::SCHEDULER\&.W - -

PROBE::SCHEDULER\&.W

-Section: Scheduler Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scheduler.wakeup_new - Newly created task is woken up for the first time -  -

SYNOPSIS

- -

-

-scheduler.wakeup_new 
-
- -  -

VALUES

- -

- -task_state -

-state of the task woken up -
- -

- -task_tid -

-TID of the new task woken up -
- -

- -task_pid -

-PID of the new task woken up -
- -

- -task_cpu -

-cpu of the task woken up -
- -

- -task_priority -

-priority of the new task -
- -

- -name -

-name of the probe point -
- -  -

SEE ALSO

- -tapset::scheduler(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::scsi.iocompleted.3stap.html b/man/probe::scsi.iocompleted.3stap.html deleted file mode 100644 index 67935f33..00000000 --- a/man/probe::scsi.iocompleted.3stap.html +++ /dev/null @@ -1,134 +0,0 @@ - -Manpage of PROBE::SCSI\&.IOCOMP - -

PROBE::SCSI\&.IOCOMP

-Section: SCSI Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scsi.iocompleted - SCSI mid-layer running the completion processing for block device I/O requests -  -

SYNOPSIS

- -

-

-scsi.iocompleted 
-
- -  -

VALUES

- -

- -goodbytes -

-The bytes completed -
- -

- -host_no -

-The host number -
- -

- -req_addr -

-The current struct request pointer, as a number -
- -

- -dev_id -

-The scsi device id -
- -

- -data_direction_str -

-Data direction, as a string -
- -

- -device_state -

-The current state of the device -
- -

- -lun -

-The lun number -
- -

- -channel -

-The channel number -
- -

- -data_direction -

-The data_direction specifies whether this command is from/to the device -
- -

- -device_state_str -

-The current state of the device, as a string -
- -  -

SEE ALSO

- -tapset::scsi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::scsi.iodispatching.3stap.html b/man/probe::scsi.iodispatching.3stap.html deleted file mode 100644 index aa886c69..00000000 --- a/man/probe::scsi.iodispatching.3stap.html +++ /dev/null @@ -1,141 +0,0 @@ - -Manpage of PROBE::SCSI\&.IODISP - -

PROBE::SCSI\&.IODISP

-Section: SCSI Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scsi.iodispatching - SCSI mid-layer dispatched low-level SCSI command -  -

SYNOPSIS

- -

-

-scsi.iodispatching 
-
- -  -

VALUES

- -

- -request_bufflen -

-The request buffer length -
- -

- -device_state_str -

-The current state of the device, as a string -
- -

- -data_direction -

-The data_direction specifies whether this command is from/to the device 0 (DMA_BIDIRECTIONAL), 1 (DMA_TO_DEVICE), 2 (DMA_FROM_DEVICE), 3 (DMA_NONE) -
- -

- -request_buffer -

-The request buffer address -
- -

- -channel -

-The channel number -
- -

- -device_state -

-The current state of the device -
- -

- -lun -

-The lun number -
- -

- -data_direction_str -

-Data direction, as a string -
- -

- -dev_id -

-The scsi device id -
- -

- -req_addr -

-The current struct request pointer, as a number -
- -

- -host_no -

-The host number -
- -  -

SEE ALSO

- -tapset::scsi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::scsi.iodone.3stap.html b/man/probe::scsi.iodone.3stap.html deleted file mode 100644 index 05b53f9f..00000000 --- a/man/probe::scsi.iodone.3stap.html +++ /dev/null @@ -1,134 +0,0 @@ - -Manpage of PROBE::SCSI\&.IODONE - -

PROBE::SCSI\&.IODONE

-Section: SCSI Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scsi.iodone - SCSI command completed by low level driver and enqueued into the done queue. -  -

SYNOPSIS

- -

-

-scsi.iodone 
-
- -  -

VALUES

- -

- -host_no -

-The host number -
- -

- -req_addr -

-The current struct request pointer, as a number -
- -

- -dev_id -

-The scsi device id -
- -

- -data_direction_str -

-Data direction, as a string -
- -

- -lun -

-The lun number -
- -

- -scsi_timer_pending -

-1 if a timer is pending on this request -
- -

- -device_state -

-The current state of the device -
- -

- -channel -

-The channel number -
- -

- -device_state_str -

-The current state of the device, as a string -
- -

- -data_direction -

-The data_direction specifies whether this command is from/to the device. -
- -  -

SEE ALSO

- -tapset::scsi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::scsi.ioentry.3stap.html b/man/probe::scsi.ioentry.3stap.html deleted file mode 100644 index c47b8c02..00000000 --- a/man/probe::scsi.ioentry.3stap.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of PROBE::SCSI\&.IOENTR - -

PROBE::SCSI\&.IOENTR

-Section: SCSI Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scsi.ioentry - Prepares a SCSI mid-layer request -  -

SYNOPSIS

- -

-

-scsi.ioentry 
-
- -  -

VALUES

- -

- -device_state_str -

-The current state of the device, as a string -
- -

- -device_state -

-The current state of the device -
- -

- -disk_major -

-The major number of the disk (-1 if no information) -
- -

- -disk_minor -

-The minor number of the disk (-1 if no information) -
- -

- -req_addr -

-The current struct request pointer, as a number -
- -  -

SEE ALSO

- -tapset::scsi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::scsi.ioexecute.3stap.html b/man/probe::scsi.ioexecute.3stap.html deleted file mode 100644 index b4854a74..00000000 --- a/man/probe::scsi.ioexecute.3stap.html +++ /dev/null @@ -1,148 +0,0 @@ - -Manpage of PROBE::SCSI\&.IOEXEC - -

PROBE::SCSI\&.IOEXEC

-Section: SCSI Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scsi.ioexecute - Create mid-layer SCSI request and wait for the result -  -

SYNOPSIS

- -

-

-scsi.ioexecute 
-
- -  -

VALUES

- -

- -request_bufflen -

-The data buffer buffer length -
- -

- -request_buffer -

-The data buffer address -
- -

- -channel -

-The channel number -
- -

- -device_state -

-The current state of the device -
- -

- -retries -

-Number of times to retry request -
- -

- -dev_id -

-The scsi device id -
- -

- -data_direction_str -

-Data direction, as a string -
- -

- -host_no -

-The host number -
- -

- -timeout -

-Request timeout in seconds -
- -

- -device_state_str -

-The current state of the device, as a string -
- -

- -data_direction -

-The data_direction specifies whether this command is from/to the device. -
- -

- -lun -

-The lun number -
- -  -

SEE ALSO

- -tapset::scsi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::scsi.set_state.3stap.html b/man/probe::scsi.set_state.3stap.html deleted file mode 100644 index 2ac7b323..00000000 --- a/man/probe::scsi.set_state.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::SCSI\&.SET_ST - -

PROBE::SCSI\&.SET_ST

-Section: SCSI Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::scsi.set_state - Order SCSI device state change -  -

SYNOPSIS

- -

-

-scsi.set_state 
-
- -  -

VALUES

- -

- -lun -

-The lun number -
- -

- -old_state -

-The current state of the device -
- -

- -host_no -

-The host number -
- -

- -dev_id -

-The scsi device id -
- -

- -state -

-The new state of the device -
- -

- -old_state_str -

-The current state of the device, as a string -
- -

- -channel -

-The channel number -
- -

- -state_str -

-The new state of the device, as a string -
- -  -

SEE ALSO

- -tapset::scsi(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.check_ignored.3stap.html b/man/probe::signal.check_ignored.3stap.html deleted file mode 100644 index 701de227..00000000 --- a/man/probe::signal.check_ignored.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.CHEC - -

PROBE::SIGNAL\&.CHEC

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.check_ignored - Checking to see signal is ignored -  -

SYNOPSIS

- -

-

-signal.check_ignored 
-
- -  -

VALUES

- -

- -sig_name -

-A string representation of the signal -
- -

- -pid_name -

-Name of the process receiving the signal -
- -

- -sig_pid -

-The PID of the process receiving the signal -
- -

- -sig -

-The number of the signal -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.check_ignored.return.3stap.html b/man/probe::signal.check_ignored.return.3stap.html deleted file mode 100644 index 4c72dd2b..00000000 --- a/man/probe::signal.check_ignored.return.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.CHEC - -

PROBE::SIGNAL\&.CHEC

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.check_ignored.return - Check to see signal is ignored completed -  -

SYNOPSIS

- -

-

-signal.check_ignored.return 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -retstr -

-Return value as a string -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.checkperm.3stap.html b/man/probe::signal.checkperm.3stap.html deleted file mode 100644 index 66d08fe0..00000000 --- a/man/probe::signal.checkperm.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.CHEC - -

PROBE::SIGNAL\&.CHEC

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.checkperm - Check being performed on a sent signal -  -

SYNOPSIS

- -

-

-signal.checkperm 
-
- -  -

VALUES

- -

- -pid_name -

-Name of the process receiving the signal -
- -

- -name -

-Name of the probe point -
- -

- -sig_name -

-A string representation of the signal -
- -

- -sig_pid -

-The PID of the process receiving the signal -
- -

- -sinfo -

-The address of the siginfo structure -
- -

- -si_code -

-Indicates the signal type -
- -

- -task -

-A task handle to the signal recipient -
- -

- -sig -

-The number of the signal -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.checkperm.return.3stap.html b/man/probe::signal.checkperm.return.3stap.html deleted file mode 100644 index 639c0007..00000000 --- a/man/probe::signal.checkperm.return.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.CHEC - -

PROBE::SIGNAL\&.CHEC

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.checkperm.return - Check performed on a sent signal completed -  -

SYNOPSIS

- -

-

-signal.checkperm.return 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -retstr -

-Return value as a string -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.do_action.3stap.html b/man/probe::signal.do_action.3stap.html deleted file mode 100644 index 217f7a08..00000000 --- a/man/probe::signal.do_action.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.DO_A - -

PROBE::SIGNAL\&.DO_A

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.do_action - Examining or changing a signal action -  -

SYNOPSIS

- -

-

-signal.do_action 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -oldsigact_addr -

-The address of the old sigaction struct associated with the signal -
- -

- -sig_name -

-A string representation of the signal -
- -

- -sa_handler -

-The new handler of the signal -
- -

- -sigact_addr -

-The address of the new sigaction struct associated with the signal -
- -

- -sa_mask -

-The new mask of the signal -
- -

- -sig -

-The signal to be examined/changed -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.do_action.return.3stap.html b/man/probe::signal.do_action.return.3stap.html deleted file mode 100644 index a500ab52..00000000 --- a/man/probe::signal.do_action.return.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.DO_A - -

PROBE::SIGNAL\&.DO_A

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.do_action.return - Examining or changing a signal action completed -  -

SYNOPSIS

- -

-

-signal.do_action.return 
-
- -  -

VALUES

- -

- -retstr -

-Return value as a string -
- -

- -name -

-Name of the probe point -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.flush.3stap.html b/man/probe::signal.flush.3stap.html deleted file mode 100644 index 30a41fcf..00000000 --- a/man/probe::signal.flush.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.FLUS - -

PROBE::SIGNAL\&.FLUS

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.flush - Flushing all pending signals for a task -  -

SYNOPSIS

- -

-

-signal.flush 
-
- -  -

VALUES

- -

- -sig_pid -

-The PID of the process associated with the task performing the flush -
- -

- -task -

-The task handler of the process performing the flush -
- -

- -name -

-Name of the probe point -
- -

- -pid_name -

-The name of the process associated with the task performing the flush -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.force_segv.3stap.html b/man/probe::signal.force_segv.3stap.html deleted file mode 100644 index f019c2e2..00000000 --- a/man/probe::signal.force_segv.3stap.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.FORC - -

PROBE::SIGNAL\&.FORC

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.force_segv - Forcing send of SIGSEGV -  -

SYNOPSIS

- -

-

-signal.force_segv 
-
- -  -

VALUES

- -

- -sig_pid -

-The PID of the process receiving the signal -
- -

- -sig -

-The number of the signal -
- -

- -name -

-Name of the probe point -
- -

- -pid_name -

-Name of the process receiving the signal -
- -

- -sig_name -

-A string representation of the signal -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.force_segv.return.3stap.html b/man/probe::signal.force_segv.return.3stap.html deleted file mode 100644 index 96d38fe6..00000000 --- a/man/probe::signal.force_segv.return.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.FORC - -

PROBE::SIGNAL\&.FORC

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.force_segv.return - Forcing send of SIGSEGV complete -  -

SYNOPSIS

- -

-

-signal.force_segv.return 
-
- -  -

VALUES

- -

- -retstr -

-Return value as a string -
- -

- -name -

-Name of the probe point -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.handle.3stap.html b/man/probe::signal.handle.3stap.html deleted file mode 100644 index e7f79ce6..00000000 --- a/man/probe::signal.handle.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.HAND - -

PROBE::SIGNAL\&.HAND

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.handle - Signal handler being invoked -  -

SYNOPSIS

- -

-

-signal.handle 
-
- -  -

VALUES

- -

- -ka_addr -

-The address of the k_sigaction table associated with the signal -
- -

- -sig_mode -

-Indicates whether the signal was a user-mode or kernel-mode signal -
- -

- -oldset_addr -

-The address of the bitmask array of blocked signals (deprecated in SystemTap 2.1) -
- -

- -sinfo -

-The address of the siginfo table -
- -

- -sig -

-The signal number that invoked the signal handler -
- -

- -sig_name -

-A string representation of the signal -
- -

- -regs -

-The address of the kernel-mode stack area (deprecated in SystemTap 2.1) -
- -

- -name -

-Name of the probe point -
- -

- -sig_code -

-The si_code value of the siginfo signal -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.handle.return.3stap.html b/man/probe::signal.handle.return.3stap.html deleted file mode 100644 index f871979d..00000000 --- a/man/probe::signal.handle.return.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.HAND - -

PROBE::SIGNAL\&.HAND

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.handle.return - Signal handler invocation completed -  -

SYNOPSIS

- -

-

-signal.handle.return 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -retstr -

-Return value as a string -
- -  -

DESCRIPTION

- -

- -(deprecated in SystemTap 2.1) -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.pending.3stap.html b/man/probe::signal.pending.3stap.html deleted file mode 100644 index fe39f341..00000000 --- a/man/probe::signal.pending.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.PEND - -

PROBE::SIGNAL\&.PEND

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.pending - Examining pending signal -  -

SYNOPSIS

- -

-

-signal.pending 
-
- -  -

VALUES

- -

- -sigset_size -

-The size of the user-space signal set -
- -

- -name -

-Name of the probe point -
- -

- -sigset_add -

-The address of the user-space signal set (sigset_t) -
- -  -

DESCRIPTION

- -

- -This probe is used to examine a set of signals pending for delivery to a specific thread. This normally occurs when the do_sigpending kernel function is executed. -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.pending.return.3stap.html b/man/probe::signal.pending.return.3stap.html deleted file mode 100644 index 0c177250..00000000 --- a/man/probe::signal.pending.return.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.PEND - -

PROBE::SIGNAL\&.PEND

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.pending.return - Examination of pending signal completed -  -

SYNOPSIS

- -

-

-signal.pending.return 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -retstr -

-Return value as a string -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.procmask.3stap.html b/man/probe::signal.procmask.3stap.html deleted file mode 100644 index d8a10db1..00000000 --- a/man/probe::signal.procmask.3stap.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.PROC - -

PROBE::SIGNAL\&.PROC

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.procmask - Examining or changing blocked signals -  -

SYNOPSIS

- -

-

-signal.procmask 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -sigset -

-The actual value to be set for sigset_t (correct?) -
- -

- -sigset_addr -

-The address of the signal set (sigset_t) to be implemented -
- -

- -oldsigset_addr -

-The old address of the signal set (sigset_t) -
- -

- -how -

-Indicates how to change the blocked signals; possible values are SIG_BLOCK=0 (for blocking signals), SIG_UNBLOCK=1 (for unblocking signals), and SIG_SETMASK=2 for setting the signal mask. -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.procmask.return.3stap.html b/man/probe::signal.procmask.return.3stap.html deleted file mode 100644 index 70feccdf..00000000 --- a/man/probe::signal.procmask.return.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.PROC - -

PROBE::SIGNAL\&.PROC

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.procmask.return - Examining or changing blocked signals completed -  -

SYNOPSIS

- -

-

-signal.procmask.return 
-
- -  -

VALUES

- -

- -retstr -

-Return value as a string -
- -

- -name -

-Name of the probe point -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.send.3stap.html b/man/probe::signal.send.3stap.html deleted file mode 100644 index fddeec37..00000000 --- a/man/probe::signal.send.3stap.html +++ /dev/null @@ -1,141 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.SEND - -

PROBE::SIGNAL\&.SEND

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.send - Signal being sent to a process -  -

SYNOPSIS

- -

-

-signal.send 
-
- -  -

VALUES

- -

- -shared -

-Indicates whether the signal is shared by the thread group -
- -

- -name -

-The name of the function used to send out the signal -
- -

- -pid_name -

-The name of the signal recipient -
- -

- -sig_name -

-A string representation of the signal -
- -

- -send2queue -

-Indicates whether the signal is sent to an existing sigqueue (deprecated in SystemTap 2.1) -
- -

- -sig -

-The number of the signal -
- -

- -sinfo -

-The address of siginfo struct -
- -

- -si_code -

-Indicates the signal type -
- -

- -sig_pid -

-The PID of the process receiving the signal -
- -

- -task -

-A task handle to the signal recipient -
- -  -

CONTEXT

- -

- -The signal's sender. -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.send.return.3stap.html b/man/probe::signal.send.return.3stap.html deleted file mode 100644 index 7972a568..00000000 --- a/man/probe::signal.send.return.3stap.html +++ /dev/null @@ -1,125 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.SEND - -

PROBE::SIGNAL\&.SEND

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.send.return - Signal being sent to a process completed (deprecated in SystemTap 2.1) -  -

SYNOPSIS

- -

-

-signal.send.return 
-
- -  -

VALUES

- -

- -retstr -

-The return value to either __group_send_sig_info, specific_send_sig_info, or send_sigqueue -
- -

- -shared -

-Indicates whether the sent signal is shared by the thread group. -
- -

- -send2queue -

-Indicates whether the sent signal was sent to an existing sigqueue -
- -

- -name -

-The name of the function used to send out the signal -
- -  -

CONTEXT

- -

- -The signal's sender. (correct?) -  -

DESCRIPTION

- -

- -Possible __group_send_sig_info and specific_send_sig_info return values are as follows; -

- -0 -- The signal is successfully sent to a process, which means that, (1) the signal was ignored by the receiving process, (2) this is a non-RT signal and the system already has one queued, and (3) the signal was successfully added to the sigqueue of the receiving process. -

- --EAGAIN -- The sigqueue of the receiving process is overflowing, the signal was RT, and the signal was sent by a user using something other than -kill. -

- -Possible send_group_sigqueue and send_sigqueue return values are as follows; -

- -0 -- The signal was either successfully added into the sigqueue of the receiving process, or a SI_TIMER entry is already queued (in which case, the overrun count will be simply incremented). -

- -1 -- The signal was ignored by the receiving process. -

- --1 -- (send_sigqueue only) The task was marked exiting, allowing * posix_timer_event to redirect it to the group leader. -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.send_sig_queue.3stap.html b/man/probe::signal.send_sig_queue.3stap.html deleted file mode 100644 index 97e126d7..00000000 --- a/man/probe::signal.send_sig_queue.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.SEND - -

PROBE::SIGNAL\&.SEND

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.send_sig_queue - Queuing a signal to a process -  -

SYNOPSIS

- -

-

-signal.send_sig_queue 
-
- -  -

VALUES

- -

- -sigqueue_addr -

-The address of the signal queue -
- -

- -pid_name -

-Name of the process to which the signal is queued -
- -

- -name -

-Name of the probe point -
- -

- -sig_name -

-A string representation of the signal -
- -

- -sig -

-The queued signal -
- -

- -sig_pid -

-The PID of the process to which the signal is queued -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.send_sig_queue.return.3stap.html b/man/probe::signal.send_sig_queue.return.3stap.html deleted file mode 100644 index f0303e24..00000000 --- a/man/probe::signal.send_sig_queue.return.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.SEND - -

PROBE::SIGNAL\&.SEND

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.send_sig_queue.return - Queuing a signal to a process completed -  -

SYNOPSIS

- -

-

-signal.send_sig_queue.return 
-
- -  -

VALUES

- -

- -retstr -

-Return value as a string -
- -

- -name -

-Name of the probe point -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.sys_tgkill.3stap.html b/man/probe::signal.sys_tgkill.3stap.html deleted file mode 100644 index cfe8b8e2..00000000 --- a/man/probe::signal.sys_tgkill.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.SYS_ - -

PROBE::SIGNAL\&.SYS_

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.sys_tgkill - Sending kill signal to a thread group -  -

SYNOPSIS

- -

-

-signal.sys_tgkill 
-
- -  -

VALUES

- -

- -sig_pid -

-The PID of the thread receiving the kill signal -
- -

- -task -

-A task handle to the signal recipient -
- -

- -tgid -

-The thread group ID of the thread receiving the kill signal -
- -

- -sig -

-The specific kill signal sent to the process -
- -

- -pid_name -

-The name of the signal recipient -
- -

- -name -

-Name of the probe point -
- -

- -sig_name -

-A string representation of the signal -
- -  -

DESCRIPTION

- -

- -The tgkill call is similar to tkill, except that it also allows the caller to specify the thread group ID of the thread to be signalled. This protects against TID reuse. -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.sys_tgkill.return.3stap.html b/man/probe::signal.sys_tgkill.return.3stap.html deleted file mode 100644 index 6eb1d455..00000000 --- a/man/probe::signal.sys_tgkill.return.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.SYS_ - -

PROBE::SIGNAL\&.SYS_

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.sys_tgkill.return - Sending kill signal to a thread group completed -  -

SYNOPSIS

- -

-

-signal.sys_tgkill.return 
-
- -  -

VALUES

- -

- -retstr -

-The return value to either __group_send_sig_info, -
- -

- -name -

-Name of the probe point -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.sys_tkill.3stap.html b/man/probe::signal.sys_tkill.3stap.html deleted file mode 100644 index f973cef6..00000000 --- a/man/probe::signal.sys_tkill.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.SYS_ - -

PROBE::SIGNAL\&.SYS_

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.sys_tkill - Sending a kill signal to a thread -  -

SYNOPSIS

- -

-

-signal.sys_tkill 
-
- -  -

VALUES

- -

- -sig -

-The specific signal sent to the process -
- -

- -sig_pid -

-The PID of the process receiving the kill signal -
- -

- -task -

-A task handle to the signal recipient -
- -

- -name -

-Name of the probe point -
- -

- -pid_name -

-The name of the signal recipient -
- -

- -sig_name -

-A string representation of the signal -
- -  -

DESCRIPTION

- -

- -The tkill call is analogous to kill(2), except that it also allows a process within a specific thread group to be targeted. Such processes are targeted through their unique thread IDs (TID). -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.syskill.3stap.html b/man/probe::signal.syskill.3stap.html deleted file mode 100644 index 7e238280..00000000 --- a/man/probe::signal.syskill.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.SYSK - -

PROBE::SIGNAL\&.SYSK

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.syskill - Sending kill signal to a process -  -

SYNOPSIS

- -

-

-signal.syskill 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -pid_name -

-The name of the signal recipient -
- -

- -sig_name -

-A string representation of the signal -
- -

- -sig_pid -

-The PID of the process receiving the signal -
- -

- -task -

-A task handle to the signal recipient -
- -

- -sig -

-The specific signal sent to the process -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.syskill.return.3stap.html b/man/probe::signal.syskill.return.3stap.html deleted file mode 100644 index a3f5e2e8..00000000 --- a/man/probe::signal.syskill.return.3stap.html +++ /dev/null @@ -1,67 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.SYSK - -

PROBE::SIGNAL\&.SYSK

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.syskill.return - Sending kill signal completed -  -

SYNOPSIS

- -

-

-signal.syskill.return 
-
- -  -

VALUES

- -

- -None -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.systkill.return.3stap.html b/man/probe::signal.systkill.return.3stap.html deleted file mode 100644 index a5f81320..00000000 --- a/man/probe::signal.systkill.return.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.SYST - -

PROBE::SIGNAL\&.SYST

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.systkill.return - Sending kill signal to a thread completed -  -

SYNOPSIS

- -

-

-signal.systkill.return 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -retstr -

-The return value to either __group_send_sig_info, -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::signal.wakeup.3stap.html b/man/probe::signal.wakeup.3stap.html deleted file mode 100644 index d268bbbd..00000000 --- a/man/probe::signal.wakeup.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::SIGNAL\&.WAKE - -

PROBE::SIGNAL\&.WAKE

-Section: Signal Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::signal.wakeup - Sleeping process being wakened for signal -  -

SYNOPSIS

- -

-

-signal.wakeup 
-
- -  -

VALUES

- -

- -pid_name -

-Name of the process to wake -
- -

- -state_mask -

-A string representation indicating the mask of task states to wake. Possible values are TASK_INTERRUPTIBLE, TASK_STOPPED, TASK_TRACED, TASK_WAKEKILL, and TASK_INTERRUPTIBLE. -
- -

- -resume -

-Indicates whether to wake up a task in a STOPPED or TRACED state -
- -

- -sig_pid -

-The PID of the process to wake -
- -  -

SEE ALSO

- -tapset::signal(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.aio_read.3stap.html b/man/probe::socket.aio_read.3stap.html deleted file mode 100644 index f325883b..00000000 --- a/man/probe::socket.aio_read.3stap.html +++ /dev/null @@ -1,129 +0,0 @@ - -Manpage of PROBE::SOCKET\&.AIO_ - -

PROBE::SOCKET\&.AIO_

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.aio_read - Receiving message via sock_aio_read -  -

SYNOPSIS

- -

-

-socket.aio_read 
-
- -  -

VALUES

- -

- -family -

-Protocol family value -
- -

- -name -

-Name of this probe -
- -

- -size -

-Message size in bytes -
- -

- -state -

-Socket state value -
- -

- -protocol -

-Protocol value -
- -

- -flags -

-Socket flags value -
- -

- -type -

-Socket type value -
- -  -

CONTEXT

- -

- -The message sender -  -

DESCRIPTION

- -

- -Fires at the beginning of receiving a message on a socket via the -sock_aio_read -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.aio_read.return.3stap.html b/man/probe::socket.aio_read.return.3stap.html deleted file mode 100644 index ea4aad1e..00000000 --- a/man/probe::socket.aio_read.return.3stap.html +++ /dev/null @@ -1,136 +0,0 @@ - -Manpage of PROBE::SOCKET\&.AIO_ - -

PROBE::SOCKET\&.AIO_

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.aio_read.return - Conclusion of message received via sock_aio_read -  -

SYNOPSIS

- -

-

-socket.aio_read.return 
-
- -  -

VALUES

- -

- -type -

-Socket type value -
- -

- -success -

-Was receive successful? (1 = yes, 0 = no) -
- -

- -flags -

-Socket flags value -
- -

- -protocol -

-Protocol value -
- -

- -state -

-Socket state value -
- -

- -size -

-Size of message received (in bytes) or error code if success = 0 -
- -

- -name -

-Name of this probe -
- -

- -family -

-Protocol family value -
- -  -

CONTEXT

- -

- -The message receiver. -  -

DESCRIPTION

- -

- -Fires at the conclusion of receiving a message on a socket via the -sock_aio_read -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.aio_write.3stap.html b/man/probe::socket.aio_write.3stap.html deleted file mode 100644 index 8e4075c6..00000000 --- a/man/probe::socket.aio_write.3stap.html +++ /dev/null @@ -1,129 +0,0 @@ - -Manpage of PROBE::SOCKET\&.AIO_ - -

PROBE::SOCKET\&.AIO_

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.aio_write - Message send via sock_aio_write -  -

SYNOPSIS

- -

-

-socket.aio_write 
-
- -  -

VALUES

- -

- -flags -

-Socket flags value -
- -

- -protocol -

-Protocol value -
- -

- -type -

-Socket type value -
- -

- -name -

-Name of this probe -
- -

- -size -

-Message size in bytes -
- -

- -family -

-Protocol family value -
- -

- -state -

-Socket state value -
- -  -

CONTEXT

- -

- -The message sender -  -

DESCRIPTION

- -

- -Fires at the beginning of sending a message on a socket via the -sock_aio_write -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.aio_write.return.3stap.html b/man/probe::socket.aio_write.return.3stap.html deleted file mode 100644 index c9804786..00000000 --- a/man/probe::socket.aio_write.return.3stap.html +++ /dev/null @@ -1,136 +0,0 @@ - -Manpage of PROBE::SOCKET\&.AIO_ - -

PROBE::SOCKET\&.AIO_

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.aio_write.return - Conclusion of message send via sock_aio_write -  -

SYNOPSIS

- -

-

-socket.aio_write.return 
-
- -  -

VALUES

- -

- -state -

-Socket state value -
- -

- -family -

-Protocol family value -
- -

- -name -

-Name of this probe -
- -

- -size -

-Size of message received (in bytes) or error code if success = 0 -
- -

- -type -

-Socket type value -
- -

- -protocol -

-Protocol value -
- -

- -flags -

-Socket flags value -
- -

- -success -

-Was receive successful? (1 = yes, 0 = no) -
- -  -

CONTEXT

- -

- -The message receiver. -  -

DESCRIPTION

- -

- -Fires at the conclusion of sending a message on a socket via the -sock_aio_write -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.close.3stap.html b/man/probe::socket.close.3stap.html deleted file mode 100644 index 23ac4c45..00000000 --- a/man/probe::socket.close.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::SOCKET\&.CLOS - -

PROBE::SOCKET\&.CLOS

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.close - Close a socket -  -

SYNOPSIS

- -

-

-socket.close 
-
- -  -

VALUES

- -

- -state -

-Socket state value -
- -

- -family -

-Protocol family value -
- -

- -name -

-Name of this probe -
- -

- -type -

-Socket type value -
- -

- -protocol -

-Protocol value -
- -

- -flags -

-Socket flags value -
- -  -

CONTEXT

- -

- -The requester (user process or kernel) -  -

DESCRIPTION

- -

- -Fires at the beginning of closing a socket. -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.close.return.3stap.html b/man/probe::socket.close.return.3stap.html deleted file mode 100644 index 020a6cd3..00000000 --- a/man/probe::socket.close.return.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::SOCKET\&.CLOS - -

PROBE::SOCKET\&.CLOS

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.close.return - Return from closing a socket -  -

SYNOPSIS

- -

-

-socket.close.return 
-
- -  -

VALUES

- -

- -name -

-Name of this probe -
- -  -

CONTEXT

- -

- -The requester (user process or kernel) -  -

DESCRIPTION

- -

- -Fires at the conclusion of closing a socket. -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.create.3stap.html b/man/probe::socket.create.3stap.html deleted file mode 100644 index 1f6bb797..00000000 --- a/man/probe::socket.create.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::SOCKET\&.CREA - -

PROBE::SOCKET\&.CREA

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.create - Creation of a socket -  -

SYNOPSIS

- -

-

-socket.create 
-
- -  -

VALUES

- -

- -type -

-Socket type value -
- -

- -protocol -

-Protocol value -
- -

- -requester -

-Requested by user process or the kernel (1 = kernel, 0 = user) -
- -

- -name -

-Name of this probe -
- -

- -family -

-Protocol family value -
- -  -

CONTEXT

- -

- -The requester (see requester variable) -  -

DESCRIPTION

- -

- -Fires at the beginning of creating a socket. -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.create.return.3stap.html b/man/probe::socket.create.return.3stap.html deleted file mode 100644 index 7f332718..00000000 --- a/man/probe::socket.create.return.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::SOCKET\&.CREA - -

PROBE::SOCKET\&.CREA

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.create.return - Return from Creation of a socket -  -

SYNOPSIS

- -

-

-socket.create.return 
-
- -  -

VALUES

- -

- -name -

-Name of this probe -
- -

- -requester -

-Requested by user process or the kernel (1 = kernel, 0 = user) -
- -

- -err -

-Error code if success == 0 -
- -

- -family -

-Protocol family value -
- -

- -type -

-Socket type value -
- -

- -success -

-Was socket creation successful? (1 = yes, 0 = no) -
- -

- -protocol -

-Protocol value -
- -  -

CONTEXT

- -

- -The requester (user process or kernel) -  -

DESCRIPTION

- -

- -Fires at the conclusion of creating a socket. -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.read_iter.3stap.html b/man/probe::socket.read_iter.3stap.html deleted file mode 100644 index 34ae395b..00000000 --- a/man/probe::socket.read_iter.3stap.html +++ /dev/null @@ -1,129 +0,0 @@ - -Manpage of PROBE::SOCKET\&.READ - -

PROBE::SOCKET\&.READ

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.read_iter - Receiving message via sock_read_iter -  -

SYNOPSIS

- -

-

-socket.read_iter 
-
- -  -

VALUES

- -

- -type -

-Socket type value -
- -

- -protocol -

-Protocol value -
- -

- -flags -

-Socket flags value -
- -

- -state -

-Socket state value -
- -

- -family -

-Protocol family value -
- -

- -name -

-Name of this probe -
- -

- -size -

-Message size in bytes -
- -  -

CONTEXT

- -

- -The message sender -  -

DESCRIPTION

- -

- -Fires at the beginning of receiving a message on a socket via the -sock_read_iter -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.read_iter.return.3stap.html b/man/probe::socket.read_iter.return.3stap.html deleted file mode 100644 index c9b8a467..00000000 --- a/man/probe::socket.read_iter.return.3stap.html +++ /dev/null @@ -1,136 +0,0 @@ - -Manpage of PROBE::SOCKET\&.READ - -

PROBE::SOCKET\&.READ

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.read_iter.return - Conclusion of message received via sock_read_iter -  -

SYNOPSIS

- -

-

-socket.read_iter.return 
-
- -  -

VALUES

- -

- -name -

-Name of this probe -
- -

- -size -

-Size of message received (in bytes) or error code if success = 0 -
- -

- -family -

-Protocol family value -
- -

- -state -

-Socket state value -
- -

- -success -

-Was receive successful? (1 = yes, 0 = no) -
- -

- -flags -

-Socket flags value -
- -

- -protocol -

-Protocol value -
- -

- -type -

-Socket type value -
- -  -

CONTEXT

- -

- -The message receiver. -  -

DESCRIPTION

- -

- -Fires at the conclusion of receiving a message on a socket via the -sock_read_iter -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.readv.3stap.html b/man/probe::socket.readv.3stap.html deleted file mode 100644 index 9924de29..00000000 --- a/man/probe::socket.readv.3stap.html +++ /dev/null @@ -1,129 +0,0 @@ - -Manpage of PROBE::SOCKET\&.READ - -

PROBE::SOCKET\&.READ

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.readv - Receiving a message via sock_readv -  -

SYNOPSIS

- -

-

-socket.readv 
-
- -  -

VALUES

- -

- -protocol -

-Protocol value -
- -

- -flags -

-Socket flags value -
- -

- -type -

-Socket type value -
- -

- -family -

-Protocol family value -
- -

- -name -

-Name of this probe -
- -

- -size -

-Message size in bytes -
- -

- -state -

-Socket state value -
- -  -

CONTEXT

- -

- -The message sender -  -

DESCRIPTION

- -

- -Fires at the beginning of receiving a message on a socket via the -sock_readv -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.readv.return.3stap.html b/man/probe::socket.readv.return.3stap.html deleted file mode 100644 index 927279c3..00000000 --- a/man/probe::socket.readv.return.3stap.html +++ /dev/null @@ -1,136 +0,0 @@ - -Manpage of PROBE::SOCKET\&.READ - -

PROBE::SOCKET\&.READ

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.readv.return - Conclusion of receiving a message via sock_readv -  -

SYNOPSIS

- -

-

-socket.readv.return 
-
- -  -

VALUES

- -

- -state -

-Socket state value -
- -

- -family -

-Protocol family value -
- -

- -name -

-Name of this probe -
- -

- -size -

-Size of message received (in bytes) or error code if success = 0 -
- -

- -type -

-Socket type value -
- -

- -protocol -

-Protocol value -
- -

- -flags -

-Socket flags value -
- -

- -success -

-Was receive successful? (1 = yes, 0 = no) -
- -  -

CONTEXT

- -

- -The message receiver. -  -

DESCRIPTION

- -

- -Fires at the conclusion of receiving a message on a socket via the -sock_readv -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.receive.3stap.html b/man/probe::socket.receive.3stap.html deleted file mode 100644 index 8679fa47..00000000 --- a/man/probe::socket.receive.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::SOCKET\&.RECE - -

PROBE::SOCKET\&.RECE

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.receive - Message received on a socket. -  -

SYNOPSIS

- -

-

-socket.receive 
-
- -  -

VALUES

- -

- -type -

-Socket type value -
- -

- -success -

-Was send successful? (1 = yes, 0 = no) -
- -

- -flags -

-Socket flags value -
- -

- -protocol -

-Protocol value -
- -

- -state -

-Socket state value -
- -

- -name -

-Name of this probe -
- -

- -size -

-Size of message received (in bytes) or error code if success = 0 -
- -

- -family -

-Protocol family value -
- -  -

CONTEXT

- -

- -The message receiver -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.recvmsg.3stap.html b/man/probe::socket.recvmsg.3stap.html deleted file mode 100644 index f28d4bd5..00000000 --- a/man/probe::socket.recvmsg.3stap.html +++ /dev/null @@ -1,129 +0,0 @@ - -Manpage of PROBE::SOCKET\&.RECV - -

PROBE::SOCKET\&.RECV

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.recvmsg - Message being received on socket -  -

SYNOPSIS

- -

-

-socket.recvmsg 
-
- -  -

VALUES

- -

- -flags -

-Socket flags value -
- -

- -protocol -

-Protocol value -
- -

- -type -

-Socket type value -
- -

- -size -

-Message size in bytes -
- -

- -name -

-Name of this probe -
- -

- -family -

-Protocol family value -
- -

- -state -

-Socket state value -
- -  -

CONTEXT

- -

- -The message receiver. -  -

DESCRIPTION

- -

- -Fires at the beginning of receiving a message on a socket via the -sock_recvmsg -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.recvmsg.return.3stap.html b/man/probe::socket.recvmsg.return.3stap.html deleted file mode 100644 index e84b6567..00000000 --- a/man/probe::socket.recvmsg.return.3stap.html +++ /dev/null @@ -1,136 +0,0 @@ - -Manpage of PROBE::SOCKET\&.RECV - -

PROBE::SOCKET\&.RECV

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.recvmsg.return - Return from Message being received on socket -  -

SYNOPSIS

- -

-

-socket.recvmsg.return 
-
- -  -

VALUES

- -

- -state -

-Socket state value -
- -

- -family -

-Protocol family value -
- -

- -size -

-Size of message received (in bytes) or error code if success = 0 -
- -

- -name -

-Name of this probe -
- -

- -type -

-Socket type value -
- -

- -protocol -

-Protocol value -
- -

- -flags -

-Socket flags value -
- -

- -success -

-Was receive successful? (1 = yes, 0 = no) -
- -  -

CONTEXT

- -

- -The message receiver. -  -

DESCRIPTION

- -

- -Fires at the conclusion of receiving a message on a socket via the -sock_recvmsg -function. -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.send.3stap.html b/man/probe::socket.send.3stap.html deleted file mode 100644 index f0ac133a..00000000 --- a/man/probe::socket.send.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::SOCKET\&.SEND - -

PROBE::SOCKET\&.SEND

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.send - Message sent on a socket. -  -

SYNOPSIS

- -

-

-socket.send 
-
- -  -

VALUES

- -

- -state -

-Socket state value -
- -

- -family -

-Protocol family value -
- -

- -size -

-Size of message sent (in bytes) or error code if success = 0 -
- -

- -name -

-Name of this probe -
- -

- -type -

-Socket type value -
- -

- -protocol -

-Protocol value -
- -

- -success -

-Was send successful? (1 = yes, 0 = no) -
- -

- -flags -

-Socket flags value -
- -  -

CONTEXT

- -

- -The message sender -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.sendmsg.3stap.html b/man/probe::socket.sendmsg.3stap.html deleted file mode 100644 index 47e85e61..00000000 --- a/man/probe::socket.sendmsg.3stap.html +++ /dev/null @@ -1,129 +0,0 @@ - -Manpage of PROBE::SOCKET\&.SEND - -

PROBE::SOCKET\&.SEND

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.sendmsg - Message is currently being sent on a socket. -  -

SYNOPSIS

- -

-

-socket.sendmsg 
-
- -  -

VALUES

- -

- -type -

-Socket type value -
- -

- -flags -

-Socket flags value -
- -

- -protocol -

-Protocol value -
- -

- -state -

-Socket state value -
- -

- -size -

-Message size in bytes -
- -

- -name -

-Name of this probe -
- -

- -family -

-Protocol family value -
- -  -

CONTEXT

- -

- -The message sender -  -

DESCRIPTION

- -

- -Fires at the beginning of sending a message on a socket via the -sock_sendmsg -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.sendmsg.return.3stap.html b/man/probe::socket.sendmsg.return.3stap.html deleted file mode 100644 index 8bf38fc5..00000000 --- a/man/probe::socket.sendmsg.return.3stap.html +++ /dev/null @@ -1,136 +0,0 @@ - -Manpage of PROBE::SOCKET\&.SEND - -

PROBE::SOCKET\&.SEND

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.sendmsg.return - Return from socket.sendmsg. -  -

SYNOPSIS

- -

-

-socket.sendmsg.return 
-
- -  -

VALUES

- -

- -family -

-Protocol family value -
- -

- -name -

-Name of this probe -
- -

- -size -

-Size of message sent (in bytes) or error code if success = 0 -
- -

- -state -

-Socket state value -
- -

- -protocol -

-Protocol value -
- -

- -flags -

-Socket flags value -
- -

- -success -

-Was send successful? (1 = yes, 0 = no) -
- -

- -type -

-Socket type value -
- -  -

CONTEXT

- -

- -The message sender. -  -

DESCRIPTION

- -

- -Fires at the conclusion of sending a message on a socket via the -sock_sendmsg -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.write_iter.3stap.html b/man/probe::socket.write_iter.3stap.html deleted file mode 100644 index 95af68b1..00000000 --- a/man/probe::socket.write_iter.3stap.html +++ /dev/null @@ -1,129 +0,0 @@ - -Manpage of PROBE::SOCKET\&.WRIT - -

PROBE::SOCKET\&.WRIT

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.write_iter - Message send via sock_write_iter -  -

SYNOPSIS

- -

-

-socket.write_iter 
-
- -  -

VALUES

- -

- -protocol -

-Protocol value -
- -

- -flags -

-Socket flags value -
- -

- -type -

-Socket type value -
- -

- -family -

-Protocol family value -
- -

- -size -

-Message size in bytes -
- -

- -name -

-Name of this probe -
- -

- -state -

-Socket state value -
- -  -

CONTEXT

- -

- -The message sender -  -

DESCRIPTION

- -

- -Fires at the beginning of sending a message on a socket via the -sock_write_iter -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.write_iter.return.3stap.html b/man/probe::socket.write_iter.return.3stap.html deleted file mode 100644 index 684b6b75..00000000 --- a/man/probe::socket.write_iter.return.3stap.html +++ /dev/null @@ -1,136 +0,0 @@ - -Manpage of PROBE::SOCKET\&.WRIT - -

PROBE::SOCKET\&.WRIT

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.write_iter.return - Conclusion of message send via sock_write_iter -  -

SYNOPSIS

- -

-

-socket.write_iter.return 
-
- -  -

VALUES

- -

- -type -

-Socket type value -
- -

- -success -

-Was receive successful? (1 = yes, 0 = no) -
- -

- -flags -

-Socket flags value -
- -

- -protocol -

-Protocol value -
- -

- -state -

-Socket state value -
- -

- -name -

-Name of this probe -
- -

- -size -

-Size of message received (in bytes) or error code if success = 0 -
- -

- -family -

-Protocol family value -
- -  -

CONTEXT

- -

- -The message receiver. -  -

DESCRIPTION

- -

- -Fires at the conclusion of sending a message on a socket via the -sock_write_iter -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.writev.3stap.html b/man/probe::socket.writev.3stap.html deleted file mode 100644 index db566f21..00000000 --- a/man/probe::socket.writev.3stap.html +++ /dev/null @@ -1,129 +0,0 @@ - -Manpage of PROBE::SOCKET\&.WRIT - -

PROBE::SOCKET\&.WRIT

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.writev - Message sent via socket_writev -  -

SYNOPSIS

- -

-

-socket.writev 
-
- -  -

VALUES

- -

- -name -

-Name of this probe -
- -

- -size -

-Message size in bytes -
- -

- -family -

-Protocol family value -
- -

- -state -

-Socket state value -
- -

- -flags -

-Socket flags value -
- -

- -protocol -

-Protocol value -
- -

- -type -

-Socket type value -
- -  -

CONTEXT

- -

- -The message sender -  -

DESCRIPTION

- -

- -Fires at the beginning of sending a message on a socket via the -sock_writev -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::socket.writev.return.3stap.html b/man/probe::socket.writev.return.3stap.html deleted file mode 100644 index 424a2c64..00000000 --- a/man/probe::socket.writev.return.3stap.html +++ /dev/null @@ -1,136 +0,0 @@ - -Manpage of PROBE::SOCKET\&.WRIT - -

PROBE::SOCKET\&.WRIT

-Section: Socket Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::socket.writev.return - Conclusion of message sent via socket_writev -  -

SYNOPSIS

- -

-

-socket.writev.return 
-
- -  -

VALUES

- -

- -protocol -

-Protocol value -
- -

- -flags -

-Socket flags value -
- -

- -success -

-Was send successful? (1 = yes, 0 = no) -
- -

- -type -

-Socket type value -
- -

- -family -

-Protocol family value -
- -

- -size -

-Size of message sent (in bytes) or error code if success = 0 -
- -

- -name -

-Name of this probe -
- -

- -state -

-Socket state value -
- -  -

CONTEXT

- -

- -The message receiver. -  -

DESCRIPTION

- -

- -Fires at the conclusion of sending a message on a socket via the -sock_writev -function -  -

SEE ALSO

- -tapset::socket(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::softirq.entry.3stap.html b/man/probe::softirq.entry.3stap.html deleted file mode 100644 index a1147c46..00000000 --- a/man/probe::softirq.entry.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::SOFTIRQ\&.ENT - -

PROBE::SOFTIRQ\&.ENT

-Section: Interrupt Request (IRQ) Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::softirq.entry - Execution of handler for a pending softirq starting -  -

SYNOPSIS

- -

-

-softirq.entry 
-
- -  -

VALUES

- -

- -action -

-pointer to softirq handler just about to execute -
- -

- -vec -

-softirq_action vector -
- -

- -h -

-struct softirq_action* for current pending softirq -
- -

- -vec_nr -

-softirq vector number -
- -  -

SEE ALSO

- -tapset::irq(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::softirq.exit.3stap.html b/man/probe::softirq.exit.3stap.html deleted file mode 100644 index 6acc499e..00000000 --- a/man/probe::softirq.exit.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::SOFTIRQ\&.EXI - -

PROBE::SOFTIRQ\&.EXI

-Section: Interrupt Request (IRQ) Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::softirq.exit - Execution of handler for a pending softirq completed -  -

SYNOPSIS

- -

-

-softirq.exit 
-
- -  -

VALUES

- -

- -h -

-struct softirq_action* for just executed softirq -
- -

- -vec_nr -

-softirq vector number -
- -

- -action -

-pointer to softirq handler that just finished execution -
- -

- -vec -

-softirq_action vector -
- -  -

SEE ALSO

- -tapset::irq(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.cache_add_mod.3stap.html b/man/probe::stap.cache_add_mod.3stap.html deleted file mode 100644 index 47add6c2..00000000 --- a/man/probe::stap.cache_add_mod.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::STAP\&.CACHE_ - -

PROBE::STAP\&.CACHE_

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.cache_add_mod - Adding kernel instrumentation module to cache -  -

SYNOPSIS

- -

-

-stap.cache_add_mod 
-
- -  -

VALUES

- -

- -dest_path -

-the path the .ko file is going to (incl filename) -
- -

- -source_path -

-the path the .ko file is coming from (incl filename) -
- -  -

DESCRIPTION

- -

- -Fires just before the file is actually moved. Note: if moving fails, cache_add_src and cache_add_nss will not fire. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.cache_add_nss.3stap.html b/man/probe::stap.cache_add_nss.3stap.html deleted file mode 100644 index c524e285..00000000 --- a/man/probe::stap.cache_add_nss.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::STAP\&.CACHE_ - -

PROBE::STAP\&.CACHE_

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.cache_add_nss - Add NSS (Network Security Services) information to cache -  -

SYNOPSIS

- -

-

-stap.cache_add_nss 
-
- -  -

VALUES

- -

- -source_path -

-the path the .sgn file is coming from (incl filename) -
- -

- -dest_path -

-the path the .sgn file is coming from (incl filename) -
- -  -

DESCRIPTION

- -

- -Fires just before the file is actually moved. Note: stap must compiled with NSS support; if moving the kernel module fails, this probe will not fire. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.cache_add_src.3stap.html b/man/probe::stap.cache_add_src.3stap.html deleted file mode 100644 index bddc8c7b..00000000 --- a/man/probe::stap.cache_add_src.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::STAP\&.CACHE_ - -

PROBE::STAP\&.CACHE_

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.cache_add_src - Adding C code translation to cache -  -

SYNOPSIS

- -

-

-stap.cache_add_src 
-
- -  -

VALUES

- -

- -dest_path -

-the path the .c file is going to (incl filename) -
- -

- -source_path -

-the path the .c file is coming from (incl filename) -
- -  -

DESCRIPTION

- -

- -Fires just before the file is actually moved. Note: if moving the kernel module fails, this probe will not fire. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.cache_clean.3stap.html b/man/probe::stap.cache_clean.3stap.html deleted file mode 100644 index 091c2449..00000000 --- a/man/probe::stap.cache_clean.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::STAP\&.CACHE_ - -

PROBE::STAP\&.CACHE_

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.cache_clean - Removing file from stap cache -  -

SYNOPSIS

- -

-

-stap.cache_clean 
-
- -  -

VALUES

- -

- -path -

-the path to the .ko/.c file being removed -
- -  -

DESCRIPTION

- -

- -Fires just before the call to unlink the module/source file. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.cache_get.3stap.html b/man/probe::stap.cache_get.3stap.html deleted file mode 100644 index 35648de3..00000000 --- a/man/probe::stap.cache_get.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::STAP\&.CACHE_ - -

PROBE::STAP\&.CACHE_

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.cache_get - Found item in stap cache -  -

SYNOPSIS

- -

-

-stap.cache_get 
-
- -  -

VALUES

- -

- -source_path -

-the path of the .c source file -
- -

- -module_path -

-the path of the .ko kernel module file -
- -  -

DESCRIPTION

- -

- -Fires just before the return of get_from_cache, when the cache grab is successful. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.pass0.3stap.html b/man/probe::stap.pass0.3stap.html deleted file mode 100644 index 3c6ce5ca..00000000 --- a/man/probe::stap.pass0.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::STAP\&.PASS0 - -

PROBE::STAP\&.PASS0

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.pass0 - Starting stap pass0 (parsing command line arguments) -  -

SYNOPSIS

- -

-

-stap.pass0 
-
- -  -

VALUES

- -

- -session -

-the systemtap_session variable s -
- -  -

DESCRIPTION

- -

- -pass0 fires after command line arguments have been parsed. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.pass0.end.3stap.html b/man/probe::stap.pass0.end.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::stap.pass0.end.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::stap.pass1.end.3stap.html b/man/probe::stap.pass1.end.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::stap.pass1.end.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::stap.pass1a.3stap.html b/man/probe::stap.pass1a.3stap.html deleted file mode 100644 index 2a1e16cd..00000000 --- a/man/probe::stap.pass1a.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of PROBE::STAP\&.PASS1A - -

PROBE::STAP\&.PASS1A

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.pass1a - Starting stap pass1 (parsing user script) -  -

SYNOPSIS

- -

-

-stap.pass1a 
-
- -  -

VALUES

- -

- -session -

-the systemtap_session variable s -
- -  -

DESCRIPTION

- -

- -pass1a fires just after the call to -gettimeofday, before the user script is parsed. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.pass1b.3stap.html b/man/probe::stap.pass1b.3stap.html deleted file mode 100644 index 36c33cef..00000000 --- a/man/probe::stap.pass1b.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::STAP\&.PASS1B - -

PROBE::STAP\&.PASS1B

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.pass1b - Starting stap pass1 (parsing library scripts) -  -

SYNOPSIS

- -

-

-stap.pass1b 
-
- -  -

VALUES

- -

- -session -

-the systemtap_session variable s -
- -  -

DESCRIPTION

- -

- -pass1b fires just before the library scripts are parsed. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.pass2.3stap.html b/man/probe::stap.pass2.3stap.html deleted file mode 100644 index 530207be..00000000 --- a/man/probe::stap.pass2.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of PROBE::STAP\&.PASS2 - -

PROBE::STAP\&.PASS2

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.pass2 - Starting stap pass2 (elaboration) -  -

SYNOPSIS

- -

-

-stap.pass2 
-
- -  -

VALUES

- -

- -session -

-the systemtap_session variable s -
- -  -

DESCRIPTION

- -

- -pass2 fires just after the call to -gettimeofday, just before the call to semantic_pass. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.pass2.end.3stap.html b/man/probe::stap.pass2.end.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::stap.pass2.end.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::stap.pass3.3stap.html b/man/probe::stap.pass3.3stap.html deleted file mode 100644 index ea89b6ec..00000000 --- a/man/probe::stap.pass3.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of PROBE::STAP\&.PASS3 - -

PROBE::STAP\&.PASS3

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.pass3 - Starting stap pass3 (translation to C) -  -

SYNOPSIS

- -

-

-stap.pass3 
-
- -  -

VALUES

- -

- -session -

-the systemtap_session variable s -
- -  -

DESCRIPTION

- -

- -pass3 fires just after the call to -gettimeofday, just before the call to translate_pass. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.pass3.end.3stap.html b/man/probe::stap.pass3.end.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::stap.pass3.end.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::stap.pass4.3stap.html b/man/probe::stap.pass4.3stap.html deleted file mode 100644 index f70ebce2..00000000 --- a/man/probe::stap.pass4.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of PROBE::STAP\&.PASS4 - -

PROBE::STAP\&.PASS4

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.pass4 - Starting stap pass4 (compile C code into kernel module) -  -

SYNOPSIS

- -

-

-stap.pass4 
-
- -  -

VALUES

- -

- -session -

-the systemtap_session variable s -
- -  -

DESCRIPTION

- -

- -pass4 fires just after the call to -gettimeofday, just before the call to compile_pass. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.pass4.end.3stap.html b/man/probe::stap.pass4.end.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::stap.pass4.end.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::stap.pass5.3stap.html b/man/probe::stap.pass5.3stap.html deleted file mode 100644 index 331269c1..00000000 --- a/man/probe::stap.pass5.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of PROBE::STAP\&.PASS5 - -

PROBE::STAP\&.PASS5

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.pass5 - Starting stap pass5 (running the instrumentation) -  -

SYNOPSIS

- -

-

-stap.pass5 
-
- -  -

VALUES

- -

- -session -

-the systemtap_session variable s -
- -  -

DESCRIPTION

- -

- -pass5 fires just after the call to -gettimeofday, just before the call to run_pass. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.pass5.end.3stap.html b/man/probe::stap.pass5.end.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::stap.pass5.end.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::stap.pass6.3stap.html b/man/probe::stap.pass6.3stap.html deleted file mode 100644 index 5ce0ade9..00000000 --- a/man/probe::stap.pass6.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::STAP\&.PASS6 - -

PROBE::STAP\&.PASS6

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.pass6 - Starting stap pass6 (cleanup) -  -

SYNOPSIS

- -

-

-stap.pass6 
-
- -  -

VALUES

- -

- -session -

-the systemtap_session variable s -
- -  -

DESCRIPTION

- -

- -pass6 fires just after the cleanup label, essentially the same spot as pass5.end -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.pass6.end.3stap.html b/man/probe::stap.pass6.end.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::stap.pass6.end.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::stap.system.3stap.html b/man/probe::stap.system.3stap.html deleted file mode 100644 index 30518c76..00000000 --- a/man/probe::stap.system.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::STAP\&.SYSTEM - -

PROBE::STAP\&.SYSTEM

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.system - Starting a command from stap -  -

SYNOPSIS

- -

-

-stap.system 
-
- -  -

VALUES

- -

- -command -

-the command string to be run by posix_spawn (as sh -c <str>) -
- -  -

DESCRIPTION

- -

- -Fires at the entry of the stap_system command. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.system.return.3stap.html b/man/probe::stap.system.return.3stap.html deleted file mode 100644 index fb797d49..00000000 --- a/man/probe::stap.system.return.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::STAP\&.SYSTEM - -

PROBE::STAP\&.SYSTEM

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.system.return - Finished a command from stap -  -

SYNOPSIS

- -

-

-stap.system.return 
-
- -  -

VALUES

- -

- -ret -

-a return code associated with running waitpid on the spawned process; a non-zero value indicates error -
- -  -

DESCRIPTION

- -

- -Fires just before the return of the stap_system function, after waitpid. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stap.system.spawn.3stap.html b/man/probe::stap.system.spawn.3stap.html deleted file mode 100644 index 3d9a7487..00000000 --- a/man/probe::stap.system.spawn.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::STAP\&.SYSTEM - -

PROBE::STAP\&.SYSTEM

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stap.system.spawn - stap spawned new process -  -

SYNOPSIS

- -

-

-stap.system.spawn 
-
- -  -

VALUES

- -

- -pid -

-the pid of the spawned process -
- -

- -ret -

-the return value from posix_spawn -
- -  -

DESCRIPTION

- -

- -Fires just after the call to posix_spawn. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::stapio.receive_control_message.3stap.html b/man/probe::stapio.receive_control_message.3stap.html deleted file mode 100644 index ff5c9765..00000000 --- a/man/probe::stapio.receive_control_message.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::STAPIO\&.RECE - -

PROBE::STAPIO\&.RECE

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::stapio.receive_control_message - Received a control message -  -

SYNOPSIS

- -

-

-stapio.receive_control_message 
-
- -  -

VALUES

- -

- -data -

-a ptr to a binary blob of data sent as the control message -
- -

- -len -

-the length (in bytes) of the data blob -
- -

- -type -

-type of message being send; defined in runtime/transport/transport_msgs.h -
- -  -

DESCRIPTION

- -

- -Fires just after a message was receieved and before it's processed. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::staprun.insert_module.3stap.html b/man/probe::staprun.insert_module.3stap.html deleted file mode 100644 index d0963b37..00000000 --- a/man/probe::staprun.insert_module.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::STAPRUN\&.INS - -

PROBE::STAPRUN\&.INS

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::staprun.insert_module - Inserting SystemTap instrumentation module -  -

SYNOPSIS

- -

-

-staprun.insert_module 
-
- -  -

VALUES

- -

- -path -

-the full path to the .ko kernel module about to be inserted -
- -  -

DESCRIPTION

- -

- -Fires just before the call to insert the module. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::staprun.remove_module.3stap.html b/man/probe::staprun.remove_module.3stap.html deleted file mode 100644 index c00690dc..00000000 --- a/man/probe::staprun.remove_module.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::STAPRUN\&.REM - -

PROBE::STAPRUN\&.REM

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::staprun.remove_module - Removing SystemTap instrumentation module -  -

SYNOPSIS

- -

-

-staprun.remove_module 
-
- -  -

VALUES

- -

- -name -

-the stap module name to be removed (without the .ko extension) -
- -  -

DESCRIPTION

- -

- -Fires just before the call to remove the module. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::staprun.send_control_message.3stap.html b/man/probe::staprun.send_control_message.3stap.html deleted file mode 100644 index 9e7a7809..00000000 --- a/man/probe::staprun.send_control_message.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::STAPRUN\&.SEN - -

PROBE::STAPRUN\&.SEN

-Section: SystemTap Translator Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::staprun.send_control_message - Sending a control message -  -

SYNOPSIS

- -

-

-staprun.send_control_message 
-
- -  -

VALUES

- -

- -len -

-the length (in bytes) of the data blob -
- -

- -type -

-type of message being send; defined in runtime/transport/transport_msgs.h -
- -

- -data -

-a ptr to a binary blob of data sent as the control message -
- -  -

DESCRIPTION

- -

- -Fires at the beginning of the send_request function. -  -

SEE ALSO

- -tapset::stap_staticmarkers(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::sunrpc.clnt.bind_new_program.3stap.html b/man/probe::sunrpc.clnt.bind_new_program.3stap.html deleted file mode 100644 index 3e50990b..00000000 --- a/man/probe::sunrpc.clnt.bind_new_program.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::SUNRPC\&.CLNT - -

PROBE::SUNRPC\&.CLNT

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::sunrpc.clnt.bind_new_program - Bind a new RPC program to an existing client -  -

SYNOPSIS

- -

-

-sunrpc.clnt.bind_new_program 
-
- -  -

VALUES

- -

- -old_prog -

-the number of old RPC program -
- -

- -old_progname -

-the name of old RPC program -
- -

- -vers -

-the version of new RPC program -
- -

- -prog -

-the number of new RPC program -
- -

- -progname -

-the name of new RPC program -
- -

- -servername -

-the server machine name -
- -

- -old_vers -

-the version of old RPC program -
- -  -

SEE ALSO

- -tapset::rpc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::sunrpc.clnt.call_async.3stap.html b/man/probe::sunrpc.clnt.call_async.3stap.html deleted file mode 100644 index 02f9ce46..00000000 --- a/man/probe::sunrpc.clnt.call_async.3stap.html +++ /dev/null @@ -1,141 +0,0 @@ - -Manpage of PROBE::SUNRPC\&.CLNT - -

PROBE::SUNRPC\&.CLNT

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::sunrpc.clnt.call_async - Make an asynchronous RPC call -  -

SYNOPSIS

- -

-

-sunrpc.clnt.call_async 
-
- -  -

VALUES

- -

- -flags -

-flags -
- -

- -servername -

-the server machine name -
- -

- -port -

-the port number -
- -

- -prot -

-the IP protocol number -
- -

- -vers -

-the RPC program version number -
- -

- -xid -

-current transmission id -
- -

- -procname -

-the procedure name in this RPC call -
- -

- -proc -

-the procedure number in this RPC call -
- -

- -prog -

-the RPC program number -
- -

- -dead -

-whether this client is abandoned -
- -

- -progname -

-the RPC program name -
- -  -

SEE ALSO

- -tapset::rpc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::sunrpc.clnt.call_sync.3stap.html b/man/probe::sunrpc.clnt.call_sync.3stap.html deleted file mode 100644 index 918d4d3c..00000000 --- a/man/probe::sunrpc.clnt.call_sync.3stap.html +++ /dev/null @@ -1,141 +0,0 @@ - -Manpage of PROBE::SUNRPC\&.CLNT - -

PROBE::SUNRPC\&.CLNT

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::sunrpc.clnt.call_sync - Make a synchronous RPC call -  -

SYNOPSIS

- -

-

-sunrpc.clnt.call_sync 
-
- -  -

VALUES

- -

- -port -

-the port number -
- -

- -flags -

-flags -
- -

- -servername -

-the server machine name -
- -

- -procname -

-the procedure name in this RPC call -
- -

- -proc -

-the procedure number in this RPC call -
- -

- -prog -

-the RPC program number -
- -

- -dead -

-whether this client is abandoned -
- -

- -progname -

-the RPC program name -
- -

- -prot -

-the IP protocol number -
- -

- -vers -

-the RPC program version number -
- -

- -xid -

-current transmission id -
- -  -

SEE ALSO

- -tapset::rpc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::sunrpc.clnt.clone_client.3stap.html b/man/probe::sunrpc.clnt.clone_client.3stap.html deleted file mode 100644 index c1e8978b..00000000 --- a/man/probe::sunrpc.clnt.clone_client.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::SUNRPC\&.CLNT - -

PROBE::SUNRPC\&.CLNT

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::sunrpc.clnt.clone_client - Clone an RPC client structure -  -

SYNOPSIS

- -

-

-sunrpc.clnt.clone_client 
-
- -  -

VALUES

- -

- -port -

-the port number -
- -

- -prog -

-the RPC program number -
- -

- -progname -

-the RPC program name -
- -

- -prot -

-the IP protocol number -
- -

- -vers -

-the RPC program version number -
- -

- -authflavor -

-the authentication flavor -
- -

- -servername -

-the server machine name -
- -  -

SEE ALSO

- -tapset::rpc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::sunrpc.clnt.create_client.3stap.html b/man/probe::sunrpc.clnt.create_client.3stap.html deleted file mode 100644 index 916e7fbb..00000000 --- a/man/probe::sunrpc.clnt.create_client.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::SUNRPC\&.CLNT - -

PROBE::SUNRPC\&.CLNT

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::sunrpc.clnt.create_client - Create an RPC client -  -

SYNOPSIS

- -

-

-sunrpc.clnt.create_client 
-
- -  -

VALUES

- -

- -prot -

-the IP protocol number -
- -

- -authflavor -

-the authentication flavor -
- -

- -vers -

-the RPC program version number -
- -

- -servername -

-the server machine name -
- -

- -port -

-the port number -
- -

- -progname -

-the RPC program name -
- -

- -prog -

-the RPC program number -
- -  -

SEE ALSO

- -tapset::rpc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::sunrpc.clnt.restart_call.3stap.html b/man/probe::sunrpc.clnt.restart_call.3stap.html deleted file mode 100644 index bfeff86e..00000000 --- a/man/probe::sunrpc.clnt.restart_call.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::SUNRPC\&.CLNT - -

PROBE::SUNRPC\&.CLNT

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::sunrpc.clnt.restart_call - Restart an asynchronous RPC call -  -

SYNOPSIS

- -

-

-sunrpc.clnt.restart_call 
-
- -  -

VALUES

- -

- -tk_runstate -

-the task run status -
- -

- -xid -

-the transmission id -
- -

- -tk_pid -

-the debugging aid of task -
- -

- -prog -

-the RPC program number -
- -

- -tk_priority -

-the task priority -
- -

- -servername -

-the server machine name -
- -

- -tk_flags -

-the task flags -
- -  -

SEE ALSO

- -tapset::rpc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::sunrpc.clnt.shutdown_client.3stap.html b/man/probe::sunrpc.clnt.shutdown_client.3stap.html deleted file mode 100644 index 3a39cb91..00000000 --- a/man/probe::sunrpc.clnt.shutdown_client.3stap.html +++ /dev/null @@ -1,190 +0,0 @@ - -Manpage of PROBE::SUNRPC\&.CLNT - -

PROBE::SUNRPC\&.CLNT

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::sunrpc.clnt.shutdown_client - Shutdown an RPC client -  -

SYNOPSIS

- -

-

-sunrpc.clnt.shutdown_client 
-
- -  -

VALUES

- -

- -om_ntrans -

-the count of RPC transmissions -
- -

- -clones -

-the number of clones -
- -

- -om_bytes_recv -

-the count of bytes in -
- -

- -servername -

-the server machine name -
- -

- -rpccnt -

-the count of RPC calls -
- -

- -netreconn -

-the count of reconnections -
- -

- -om_bytes_sent -

-the count of bytes out -
- -

- -port -

-the port number -
- -

- -om_ops -

-the count of operations -
- -

- -prot -

-the IP protocol number -
- -

- -om_execute -

-the RPC execution jiffies -
- -

- -authflavor -

-the authentication flavor -
- -

- -vers -

-the RPC program version number -
- -

- -tasks -

-the number of references -
- -

- -om_rtt -

-the RPC RTT jiffies -
- -

- -om_queue -

-the jiffies queued for xmit -
- -

- -progname -

-the RPC program name -
- -

- -prog -

-the RPC program number -
- -  -

SEE ALSO

- -tapset::rpc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::sunrpc.sched.delay.3stap.html b/man/probe::sunrpc.sched.delay.3stap.html deleted file mode 100644 index 108a2729..00000000 --- a/man/probe::sunrpc.sched.delay.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::SUNRPC\&.SCHE - -

PROBE::SUNRPC\&.SCHE

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::sunrpc.sched.delay - Delay an RPC task -  -

SYNOPSIS

- -

-

-sunrpc.sched.delay 
-
- -  -

VALUES

- -

- -delay -

-the time delayed -
- -

- -tk_flags -

-the flags of the task -
- -

- -tk_pid -

-the debugging id of the task -
- -

- -xid -

-the transmission id in the RPC call -
- -

- -prot -

-the IP protocol in the RPC call -
- -

- -vers -

-the program version in the RPC call -
- -

- -prog -

-the program number in the RPC call -
- -  -

SEE ALSO

- -tapset::rpc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::sunrpc.sched.execute.3stap.html b/man/probe::sunrpc.sched.execute.3stap.html deleted file mode 100644 index 1eacac27..00000000 --- a/man/probe::sunrpc.sched.execute.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::SUNRPC\&.SCHE - -

PROBE::SUNRPC\&.SCHE

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::sunrpc.sched.execute - Execute the RPC `scheduler' -  -

SYNOPSIS

- -

-

-sunrpc.sched.execute 
-
- -  -

VALUES

- -

- -tk_flags -

-the flags of the task -
- -

- -prog -

-the program number in the RPC call -
- -

- -xid -

-the transmission id in the RPC call -
- -

- -tk_pid -

-the debugging id of the task -
- -

- -vers -

-the program version in the RPC call -
- -

- -prot -

-the IP protocol in the RPC call -
- -  -

SEE ALSO

- -tapset::rpc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::sunrpc.sched.new_task.3stap.html b/man/probe::sunrpc.sched.new_task.3stap.html deleted file mode 100644 index 3fb628dc..00000000 --- a/man/probe::sunrpc.sched.new_task.3stap.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of PROBE::SUNRPC\&.SCHE - -

PROBE::SUNRPC\&.SCHE

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::sunrpc.sched.new_task - Create new task for the specified client -  -

SYNOPSIS

- -

-

-sunrpc.sched.new_task 
-
- -  -

VALUES

- -

- -tk_flags -

-the flags of the task -
- -

- -xid -

-the transmission id in the RPC call -
- -

- -vers -

-the program version in the RPC call -
- -

- -prot -

-the IP protocol in the RPC call -
- -

- -prog -

-the program number in the RPC call -
- -  -

SEE ALSO

- -tapset::rpc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::sunrpc.sched.release_task.3stap.html b/man/probe::sunrpc.sched.release_task.3stap.html deleted file mode 100644 index c532aceb..00000000 --- a/man/probe::sunrpc.sched.release_task.3stap.html +++ /dev/null @@ -1,107 +0,0 @@ - -Manpage of PROBE::SUNRPC\&.SCHE - -

PROBE::SUNRPC\&.SCHE

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::sunrpc.sched.release_task - Release all resources associated with a task -  -

SYNOPSIS

- -

-

-sunrpc.sched.release_task 
-
- -  -

VALUES

- -

- -tk_flags -

-the flags of the task -
- -

- -vers -

-the program version in the RPC call -
- -

- -prot -

-the IP protocol in the RPC call -
- -

- -xid -

-the transmission id in the RPC call -
- -

- -prog -

-the program number in the RPC call -
- -  -

DESCRIPTION

- -

- -rpc_release_task -function might not be found for a particular kernel. So, if we can't find it, just return '-1' for everything. -  -

SEE ALSO

- -tapset::rpc(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::sunrpc.svc.authorise.3stap.html b/man/probe::sunrpc.svc.authorise.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::sunrpc.svc.authorise.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::sunrpc.svc.create.3stap.html b/man/probe::sunrpc.svc.create.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::sunrpc.svc.create.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::sunrpc.svc.destroy.3stap.html b/man/probe::sunrpc.svc.destroy.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::sunrpc.svc.destroy.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::sunrpc.svc.drop.3stap.html b/man/probe::sunrpc.svc.drop.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::sunrpc.svc.drop.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::sunrpc.svc.process.3stap.html b/man/probe::sunrpc.svc.process.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::sunrpc.svc.process.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::sunrpc.svc.recv.3stap.html b/man/probe::sunrpc.svc.recv.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::sunrpc.svc.recv.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::sunrpc.svc.register.3stap.html b/man/probe::sunrpc.svc.register.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::sunrpc.svc.register.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::sunrpc.svc.send.3stap.html b/man/probe::sunrpc.svc.send.3stap.html deleted file mode 100644 index 3d6e0786..00000000 --- a/man/probe::sunrpc.svc.send.3stap.html +++ /dev/null @@ -1,5 +0,0 @@ - -Invalid Manpage - -

Invalid Manpage

-The requested file (stdin) is not a valid (unformatted) man page. diff --git a/man/probe::syscall_any.3stap.html b/man/probe::syscall_any.3stap.html deleted file mode 100644 index 96fa444a..00000000 --- a/man/probe::syscall_any.3stap.html +++ /dev/null @@ -1,95 +0,0 @@ - -Manpage of PROBE::SYSCALL_ANY - -

PROBE::SYSCALL_ANY

-Section: Syscall Any Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::syscall_any - Record entry into a syscall -  -

SYNOPSIS

- -

-

-syscall_any 
-
- -  -

VALUES

- -

- -syscall_nr -

-number of the syscall -
- -

- -name -

-name of the syscall -
- -  -

CONTEXT

- -

- -The process performing the syscall -  -

DESCRIPTION

- -

- -The syscall_any probe point is designed to be a low overhead that monitors all the syscalls entered via a kernel tracepoint. Because of the breadth of syscalls it monitors it provides no information about the syscall arguments or argstr string representation of those arguments. -

- -This requires kernel 3.5+ and newer which have the kernel.trace("sys_enter") probe point. -  -

SEE ALSO

- -tapset::syscall_any(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::syscall_any.return.3stap.html b/man/probe::syscall_any.return.3stap.html deleted file mode 100644 index 95ff588a..00000000 --- a/man/probe::syscall_any.return.3stap.html +++ /dev/null @@ -1,102 +0,0 @@ - -Manpage of PROBE::SYSCALL_ANY\& - -

PROBE::SYSCALL_ANY\&

-Section: Syscall Any Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::syscall_any.return - Record exit from a syscall -  -

SYNOPSIS

- -

-

-syscall_any.return 
-
- -  -

VALUES

- -

- -retval -

-return value of the syscall -
- -

- -name -

-name of the syscall -
- -

- -syscall_nr -

-number of the syscall -
- -  -

CONTEXT

- -

- -The process performing the syscall -  -

DESCRIPTION

- -

- -The syscall_any.return probe point is designed to be a low overhead that monitors all the syscalls returns via a kernel tracepoint. Because of the breadth of syscalls it monitors it provides no information about the syscall arguments, argstr string representation of those arguments, or a string interpretation of the return value (retval). -

- -This requires kernel 3.5+ and newer which have the kernel.trace("sys_exit") probe point. -  -

SEE ALSO

- -tapset::syscall_any(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcp.disconnect.3stap.html b/man/probe::tcp.disconnect.3stap.html deleted file mode 100644 index 60c1c004..00000000 --- a/man/probe::tcp.disconnect.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::TCP\&.DISCONN - -

PROBE::TCP\&.DISCONN

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcp.disconnect - TCP socket disconnection -  -

SYNOPSIS

- -

-

-tcp.disconnect 
-
- -  -

VALUES

- -

- -sock -

-Network socket -
- -

- -flags -

-TCP flags (e.g. FIN, etc) -
- -

- -daddr -

-A string representing the destination IP address -
- -

- -saddr -

-A string representing the source IP address -
- -

- -name -

-Name of this probe -
- -

- -dport -

-TCP destination port -
- -

- -sport -

-TCP source port -
- -

- -family -

-IP address family -
- -  -

CONTEXT

- -

- -The process which disconnects tcp -  -

SEE ALSO

- -tapset::tcp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcp.disconnect.return.3stap.html b/man/probe::tcp.disconnect.return.3stap.html deleted file mode 100644 index 67d30473..00000000 --- a/man/probe::tcp.disconnect.return.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::TCP\&.DISCONN - -

PROBE::TCP\&.DISCONN

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcp.disconnect.return - TCP socket disconnection complete -  -

SYNOPSIS

- -

-

-tcp.disconnect.return 
-
- -  -

VALUES

- -

- -ret -

-Error code (0: no error) -
- -

- -name -

-Name of this probe -
- -  -

CONTEXT

- -

- -The process which disconnects tcp -  -

SEE ALSO

- -tapset::tcp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcp.receive.3stap.html b/man/probe::tcp.receive.3stap.html deleted file mode 100644 index 222aef37..00000000 --- a/man/probe::tcp.receive.3stap.html +++ /dev/null @@ -1,162 +0,0 @@ - -Manpage of PROBE::TCP\&.RECEIVE - -

PROBE::TCP\&.RECEIVE

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcp.receive - Called when a TCP packet is received -  -

SYNOPSIS

- -

-

-tcp.receive 
-
- -  -

VALUES

- -

- -family -

-IP address family -
- -

- -protocol -

-Packet protocol from driver -
- -

- -rst -

-TCP RST flag -
- -

- -dport -

-TCP destination port -
- -

- -urg -

-TCP URG flag -
- -

- -fin -

-TCP FIN flag -
- -

- -psh -

-TCP PSH flag -
- -

- -saddr -

-A string representing the source IP address -
- -

- -syn -

-TCP SYN flag -
- -

- -name -

-Name of the probe point -
- -

- -sport -

-TCP source port -
- -

- -iphdr -

-IP header address -
- -

- -ack -

-TCP ACK flag -
- -

- -daddr -

-A string representing the destination IP address -
- -  -

SEE ALSO

- -tapset::tcp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcp.recvmsg.3stap.html b/man/probe::tcp.recvmsg.3stap.html deleted file mode 100644 index a612eb6a..00000000 --- a/man/probe::tcp.recvmsg.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::TCP\&.RECVMSG - -

PROBE::TCP\&.RECVMSG

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcp.recvmsg - Receiving TCP message -  -

SYNOPSIS

- -

-

-tcp.recvmsg 
-
- -  -

VALUES

- -

- -dport -

-TCP destination port -
- -

- -family -

-IP address family -
- -

- -sport -

-TCP source port -
- -

- -name -

-Name of this probe -
- -

- -size -

-Number of bytes to be received -
- -

- -daddr -

-A string representing the destination IP address -
- -

- -saddr -

-A string representing the source IP address -
- -

- -sock -

-Network socket -
- -  -

CONTEXT

- -

- -The process which receives a tcp message -  -

SEE ALSO

- -tapset::tcp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcp.recvmsg.return.3stap.html b/man/probe::tcp.recvmsg.return.3stap.html deleted file mode 100644 index f3ce5ef5..00000000 --- a/man/probe::tcp.recvmsg.return.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::TCP\&.RECVMSG - -

PROBE::TCP\&.RECVMSG

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcp.recvmsg.return - Receiving TCP message complete -  -

SYNOPSIS

- -

-

-tcp.recvmsg.return 
-
- -  -

VALUES

- -

- -daddr -

-A string representing the destination IP address -
- -

- -saddr -

-A string representing the source IP address -
- -

- -dport -

-TCP destination port -
- -

- -sport -

-TCP source port -
- -

- -family -

-IP address family -
- -

- -size -

-Number of bytes received or error code if an error occurred. -
- -

- -name -

-Name of this probe -
- -  -

CONTEXT

- -

- -The process which receives a tcp message -  -

SEE ALSO

- -tapset::tcp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcp.sendmsg.3stap.html b/man/probe::tcp.sendmsg.3stap.html deleted file mode 100644 index 1d770b82..00000000 --- a/man/probe::tcp.sendmsg.3stap.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of PROBE::TCP\&.SENDMSG - -

PROBE::TCP\&.SENDMSG

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcp.sendmsg - Sending a tcp message -  -

SYNOPSIS

- -

-

-tcp.sendmsg 
-
- -  -

VALUES

- -

- -family -

-IP address family -
- -

- -sock -

-Network socket -
- -

- -name -

-Name of this probe -
- -

- -size -

-Number of bytes to send -
- -  -

CONTEXT

- -

- -The process which sends a tcp message -  -

SEE ALSO

- -tapset::tcp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcp.sendmsg.return.3stap.html b/man/probe::tcp.sendmsg.return.3stap.html deleted file mode 100644 index cb6016b8..00000000 --- a/man/probe::tcp.sendmsg.return.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::TCP\&.SENDMSG - -

PROBE::TCP\&.SENDMSG

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcp.sendmsg.return - Sending TCP message is done -  -

SYNOPSIS

- -

-

-tcp.sendmsg.return 
-
- -  -

VALUES

- -

- -size -

-Number of bytes sent or error code if an error occurred. -
- -

- -name -

-Name of this probe -
- -  -

CONTEXT

- -

- -The process which sends a tcp message -  -

SEE ALSO

- -tapset::tcp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcp.setsockopt.3stap.html b/man/probe::tcp.setsockopt.3stap.html deleted file mode 100644 index 0528eee7..00000000 --- a/man/probe::tcp.setsockopt.3stap.html +++ /dev/null @@ -1,121 +0,0 @@ - -Manpage of PROBE::TCP\&.SETSOCK - -

PROBE::TCP\&.SETSOCK

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcp.setsockopt - Call to setsockopt -  -

SYNOPSIS

- -

-

-tcp.setsockopt 
-
- -  -

VALUES

- -

- -sock -

-Network socket -
- -

- -optname -

-TCP socket options (e.g. TCP_NODELAY, TCP_MAXSEG, etc) -
- -

- -optlen -

-Used to access values for -setsockopt -
- -

- -level -

-The level at which the socket options will be manipulated -
- -

- -name -

-Name of this probe -
- -

- -family -

-IP address family -
- -

- -optstr -

-Resolves optname to a human-readable format -
- -  -

CONTEXT

- -

- -The process which calls setsockopt -  -

SEE ALSO

- -tapset::tcp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcp.setsockopt.return.3stap.html b/man/probe::tcp.setsockopt.return.3stap.html deleted file mode 100644 index 528e2aa7..00000000 --- a/man/probe::tcp.setsockopt.return.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::TCP\&.SETSOCK - -

PROBE::TCP\&.SETSOCK

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcp.setsockopt.return - Return from setsockopt -  -

SYNOPSIS

- -

-

-tcp.setsockopt.return 
-
- -  -

VALUES

- -

- -ret -

-Error code (0: no error) -
- -

- -name -

-Name of this probe -
- -  -

CONTEXT

- -

- -The process which calls setsockopt -  -

SEE ALSO

- -tapset::tcp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcpmib.ActiveOpens.3stap.html b/man/probe::tcpmib.ActiveOpens.3stap.html deleted file mode 100644 index 0529e2cb..00000000 --- a/man/probe::tcpmib.ActiveOpens.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::TCPMIB\&.ACTI - -

PROBE::TCPMIB\&.ACTI

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcpmib.ActiveOpens - Count an active opening of a socket -  -

SYNOPSIS

- -

-

-tcpmib.ActiveOpens 
-
- -  -

VALUES

- -

- -sk -

-pointer to the struct sock being acted on -
- -

- -op -

-value to be added to the counter (default value of 1) -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -tcpmib_filter_key. If the packet passes the filter is is counted in the global -ActiveOpens -(equivalent to SNMP's MIB TCP_MIB_ACTIVEOPENS) -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcpmib.AttemptFails.3stap.html b/man/probe::tcpmib.AttemptFails.3stap.html deleted file mode 100644 index fdc2e8a2..00000000 --- a/man/probe::tcpmib.AttemptFails.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::TCPMIB\&.ATTE - -

PROBE::TCPMIB\&.ATTE

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcpmib.AttemptFails - Count a failed attempt to open a socket -  -

SYNOPSIS

- -

-

-tcpmib.AttemptFails 
-
- -  -

VALUES

- -

- -op -

-value to be added to the counter (default value of 1) -
- -

- -sk -

-pointer to the struct sock being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -tcpmib_filter_key. If the packet passes the filter is is counted in the global -AttemptFails -(equivalent to SNMP's MIB TCP_MIB_ATTEMPTFAILS) -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcpmib.CurrEstab.3stap.html b/man/probe::tcpmib.CurrEstab.3stap.html deleted file mode 100644 index fa34c6fc..00000000 --- a/man/probe::tcpmib.CurrEstab.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::TCPMIB\&.CURR - -

PROBE::TCPMIB\&.CURR

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcpmib.CurrEstab - Update the count of open sockets -  -

SYNOPSIS

- -

-

-tcpmib.CurrEstab 
-
- -  -

VALUES

- -

- -sk -

-pointer to the struct sock being acted on -
- -

- -op -

-value to be added to the counter (default value of 1) -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -tcpmib_filter_key. If the packet passes the filter is is counted in the global -CurrEstab -(equivalent to SNMP's MIB TCP_MIB_CURRESTAB) -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcpmib.EstabResets.3stap.html b/man/probe::tcpmib.EstabResets.3stap.html deleted file mode 100644 index 8b9da98d..00000000 --- a/man/probe::tcpmib.EstabResets.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::TCPMIB\&.ESTA - -

PROBE::TCPMIB\&.ESTA

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcpmib.EstabResets - Count the reset of a socket -  -

SYNOPSIS

- -

-

-tcpmib.EstabResets 
-
- -  -

VALUES

- -

- -sk -

-pointer to the struct sock being acted on -
- -

- -op -

-value to be added to the counter (default value of 1) -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -tcpmib_filter_key. If the packet passes the filter is is counted in the global -EstabResets -(equivalent to SNMP's MIB TCP_MIB_ESTABRESETS) -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcpmib.InSegs.3stap.html b/man/probe::tcpmib.InSegs.3stap.html deleted file mode 100644 index 6722a274..00000000 --- a/man/probe::tcpmib.InSegs.3stap.html +++ /dev/null @@ -1,93 +0,0 @@ - -Manpage of PROBE::TCPMIB\&.INSE - -

PROBE::TCPMIB\&.INSE

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcpmib.InSegs - Count an incoming tcp segment -  -

SYNOPSIS

- -

-

-tcpmib.InSegs 
-
- -  -

VALUES

- -

- -op -

-value to be added to the counter (default value of 1) -
- -

- -sk -

-pointer to the struct sock being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -tcpmib_filter_key -(or -ipmib_filter_key -for tcp v4). If the packet passes the filter is is counted in the global -InSegs -(equivalent to SNMP's MIB TCP_MIB_INSEGS) -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcpmib.OutRsts.3stap.html b/man/probe::tcpmib.OutRsts.3stap.html deleted file mode 100644 index e43cf693..00000000 --- a/man/probe::tcpmib.OutRsts.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::TCPMIB\&.OUTR - -

PROBE::TCPMIB\&.OUTR

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcpmib.OutRsts - Count the sending of a reset packet -  -

SYNOPSIS

- -

-

-tcpmib.OutRsts 
-
- -  -

VALUES

- -

- -op -

-value to be added to the counter (default value of 1) -
- -

- -sk -

-pointer to the struct sock being acted on -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -tcpmib_filter_key. If the packet passes the filter is is counted in the global -OutRsts -(equivalent to SNMP's MIB TCP_MIB_OUTRSTS) -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcpmib.OutSegs.3stap.html b/man/probe::tcpmib.OutSegs.3stap.html deleted file mode 100644 index 1349ddc8..00000000 --- a/man/probe::tcpmib.OutSegs.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::TCPMIB\&.OUTS - -

PROBE::TCPMIB\&.OUTS

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcpmib.OutSegs - Count the sending of a TCP segment -  -

SYNOPSIS

- -

-

-tcpmib.OutSegs 
-
- -  -

VALUES

- -

- -sk -

-pointer to the struct sock being acted on -
- -

- -op -

-value to be added to the counter (default value of 1) -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -tcpmib_filter_key. If the packet passes the filter is is counted in the global -OutSegs -(equivalent to SNMP's MIB TCP_MIB_OUTSEGS) -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcpmib.PassiveOpens.3stap.html b/man/probe::tcpmib.PassiveOpens.3stap.html deleted file mode 100644 index b6abb668..00000000 --- a/man/probe::tcpmib.PassiveOpens.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::TCPMIB\&.PASS - -

PROBE::TCPMIB\&.PASS

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcpmib.PassiveOpens - Count the passive creation of a socket -  -

SYNOPSIS

- -

-

-tcpmib.PassiveOpens 
-
- -  -

VALUES

- -

- -sk -

-pointer to the struct sock being acted on -
- -

- -op -

-value to be added to the counter (default value of 1) -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -tcpmib_filter_key. If the packet passes the filter is is counted in the global -PassiveOpens -(equivalent to SNMP's MIB TCP_MIB_PASSIVEOPENS) -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tcpmib.RetransSegs.3stap.html b/man/probe::tcpmib.RetransSegs.3stap.html deleted file mode 100644 index f814e8b2..00000000 --- a/man/probe::tcpmib.RetransSegs.3stap.html +++ /dev/null @@ -1,90 +0,0 @@ - -Manpage of PROBE::TCPMIB\&.RETR - -

PROBE::TCPMIB\&.RETR

-Section: SNMP Information Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tcpmib.RetransSegs - Count the retransmission of a TCP segment -  -

SYNOPSIS

- -

-

-tcpmib.RetransSegs 
-
- -  -

VALUES

- -

- -sk -

-pointer to the struct sock being acted on -
- -

- -op -

-value to be added to the counter (default value of 1) -
- -  -

DESCRIPTION

- -

- -The packet pointed to by -skb -is filtered by the function -tcpmib_filter_key. If the packet passes the filter is is counted in the global -RetransSegs -(equivalent to SNMP's MIB TCP_MIB_RETRANSSEGS) -  -

SEE ALSO

- -tapset::tcpmib(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tty.init.3stap.html b/man/probe::tty.init.3stap.html deleted file mode 100644 index 2f373b14..00000000 --- a/man/probe::tty.init.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::TTY\&.INIT - -

PROBE::TTY\&.INIT

-Section: TTY Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tty.init - Called when a tty is being initalized -  -

SYNOPSIS

- -

-

-tty.init 
-
- -  -

VALUES

- -

- -name -

-the driver .dev_name name -
- -

- -module -

-the module name -
- -

- -driver_name -

-the driver name -
- -  -

SEE ALSO

- -tapset::tty(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tty.ioctl.3stap.html b/man/probe::tty.ioctl.3stap.html deleted file mode 100644 index d3e716b5..00000000 --- a/man/probe::tty.ioctl.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::TTY\&.IOCTL - -

PROBE::TTY\&.IOCTL

-Section: TTY Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tty.ioctl - called when a ioctl is request to the tty -  -

SYNOPSIS

- -

-

-tty.ioctl 
-
- -  -

VALUES

- -

- -name -

-the file name -
- -

- -cmd -

-the ioctl command -
- -

- -arg -

-the ioctl argument -
- -  -

SEE ALSO

- -tapset::tty(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tty.open.3stap.html b/man/probe::tty.open.3stap.html deleted file mode 100644 index dfae2bd4..00000000 --- a/man/probe::tty.open.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::TTY\&.OPEN - -

PROBE::TTY\&.OPEN

-Section: TTY Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tty.open - Called when a tty is opened -  -

SYNOPSIS

- -

-

-tty.open 
-
- -  -

VALUES

- -

- -file_name -

-the file name -
- -

- -inode_flags -

-the inode flags -
- -

- -inode_number -

-the inode number -
- -

- -file_flags -

-the file flags -
- -

- -file_mode -

-the file mode -
- -

- -inode_state -

-the inode state -
- -  -

SEE ALSO

- -tapset::tty(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tty.poll.3stap.html b/man/probe::tty.poll.3stap.html deleted file mode 100644 index 490dbcd6..00000000 --- a/man/probe::tty.poll.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::TTY\&.POLL - -

PROBE::TTY\&.POLL

-Section: TTY Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tty.poll - Called when a tty device is being polled -  -

SYNOPSIS

- -

-

-tty.poll 
-
- -  -

VALUES

- -

- -wait_key -

-the wait queue key -
- -

- -file_name -

-the tty file name -
- -  -

SEE ALSO

- -tapset::tty(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tty.read.3stap.html b/man/probe::tty.read.3stap.html deleted file mode 100644 index 181a716a..00000000 --- a/man/probe::tty.read.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::TTY\&.READ - -

PROBE::TTY\&.READ

-Section: TTY Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tty.read - called when a tty line will be read -  -

SYNOPSIS

- -

-

-tty.read 
-
- -  -

VALUES

- -

- -driver_name -

-the driver name -
- -

- -buffer -

-the buffer that will receive the characters -
- -

- -file_name -

-the file name lreated to the tty -
- -

- -nr -

-The amount of characters to be read -
- -  -

SEE ALSO

- -tapset::tty(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tty.receive.3stap.html b/man/probe::tty.receive.3stap.html deleted file mode 100644 index 5c1bae82..00000000 --- a/man/probe::tty.receive.3stap.html +++ /dev/null @@ -1,113 +0,0 @@ - -Manpage of PROBE::TTY\&.RECEIVE - -

PROBE::TTY\&.RECEIVE

-Section: TTY Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tty.receive - called when a tty receives a message -  -

SYNOPSIS

- -

-

-tty.receive 
-
- -  -

VALUES

- -

- -fp -

-The flag buffer -
- -

- -cp -

-the buffer that was received -
- -

- -driver_name -

-the driver name -
- -

- -count -

-The amount of characters received -
- -

- -id -

-the tty id -
- -

- -name -

-the name of the module file -
- -

- -index -

-The tty Index -
- -  -

SEE ALSO

- -tapset::tty(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tty.register.3stap.html b/man/probe::tty.register.3stap.html deleted file mode 100644 index c2b65e90..00000000 --- a/man/probe::tty.register.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::TTY\&.REGISTE - -

PROBE::TTY\&.REGISTE

-Section: TTY Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tty.register - Called when a tty device is registred -  -

SYNOPSIS

- -

-

-tty.register 
-
- -  -

VALUES

- -

- -name -

-the driver .dev_name name -
- -

- -module -

-the module name -
- -

- -driver_name -

-the driver name -
- -

- -index -

-the tty index requested -
- -  -

SEE ALSO

- -tapset::tty(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tty.release.3stap.html b/man/probe::tty.release.3stap.html deleted file mode 100644 index 0da0ad4c..00000000 --- a/man/probe::tty.release.3stap.html +++ /dev/null @@ -1,106 +0,0 @@ - -Manpage of PROBE::TTY\&.RELEASE - -

PROBE::TTY\&.RELEASE

-Section: TTY Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tty.release - Called when the tty is closed -  -

SYNOPSIS

- -

-

-tty.release 
-
- -  -

VALUES

- -

- -inode_flags -

-the inode flags -
- -

- -inode_number -

-the inode number -
- -

- -file_name -

-the file name -
- -

- -inode_state -

-the inode state -
- -

- -file_mode -

-the file mode -
- -

- -file_flags -

-the file flags -
- -  -

SEE ALSO

- -tapset::tty(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tty.resize.3stap.html b/man/probe::tty.resize.3stap.html deleted file mode 100644 index 9cb304b1..00000000 --- a/man/probe::tty.resize.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::TTY\&.RESIZE - -

PROBE::TTY\&.RESIZE

-Section: TTY Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tty.resize - Called when a terminal resize happens -  -

SYNOPSIS

- -

-

-tty.resize 
-
- -  -

VALUES

- -

- -new_xpixel -

-the new xpixel value -
- -

- -name -

-the tty name -
- -

- -old_xpixel -

-the old xpixel -
- -

- -new_col -

-the new col value -
- -

- -old_col -

-the old col value -
- -

- -old_row -

-the old row value -
- -

- -new_row -

-the new row value -
- -

- -new_ypixel -

-the new ypixel value -
- -

- -old_ypixel -

-the old ypixel -
- -  -

SEE ALSO

- -tapset::tty(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tty.unregister.3stap.html b/man/probe::tty.unregister.3stap.html deleted file mode 100644 index dd3f3707..00000000 --- a/man/probe::tty.unregister.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::TTY\&.UNREGIS - -

PROBE::TTY\&.UNREGIS

-Section: TTY Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tty.unregister - Called when a tty device is being unregistered -  -

SYNOPSIS

- -

-

-tty.unregister 
-
- -  -

VALUES

- -

- -index -

-the tty index requested -
- -

- -name -

-the driver .dev_name name -
- -

- -module -

-the module name -
- -

- -driver_name -

-the driver name -
- -  -

SEE ALSO

- -tapset::tty(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::tty.write.3stap.html b/man/probe::tty.write.3stap.html deleted file mode 100644 index a43cfc91..00000000 --- a/man/probe::tty.write.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::TTY\&.WRITE - -

PROBE::TTY\&.WRITE

-Section: TTY Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::tty.write - write to the tty line -  -

SYNOPSIS

- -

-

-tty.write 
-
- -  -

VALUES

- -

- -nr -

-The amount of characters -
- -

- -file_name -

-the file name lreated to the tty -
- -

- -buffer -

-the buffer that will be written -
- -

- -driver_name -

-the driver name -
- -  -

SEE ALSO

- -tapset::tty(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::udp.disconnect.3stap.html b/man/probe::udp.disconnect.3stap.html deleted file mode 100644 index a48a6751..00000000 --- a/man/probe::udp.disconnect.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::UDP\&.DISCONN - -

PROBE::UDP\&.DISCONN

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::udp.disconnect - Fires when a process requests for a UDP disconnection -  -

SYNOPSIS

- -

-

-udp.disconnect 
-
- -  -

VALUES

- -

- -daddr -

-A string representing the destination IP address -
- -

- -flags -

-Flags (e.g. FIN, etc) -
- -

- -sock -

-Network socket used by the process -
- -

- -saddr -

-A string representing the source IP address -
- -

- -family -

-IP address family -
- -

- -sport -

-UDP source port -
- -

- -name -

-The name of this probe -
- -

- -dport -

-UDP destination port -
- -  -

CONTEXT

- -

- -The process which requests a UDP disconnection -  -

SEE ALSO

- -tapset::udp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::udp.disconnect.return.3stap.html b/man/probe::udp.disconnect.return.3stap.html deleted file mode 100644 index 2f741474..00000000 --- a/man/probe::udp.disconnect.return.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::UDP\&.DISCONN - -

PROBE::UDP\&.DISCONN

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::udp.disconnect.return - UDP has been disconnected successfully -  -

SYNOPSIS

- -

-

-udp.disconnect.return 
-
- -  -

VALUES

- -

- -dport -

-UDP destination port -
- -

- -sport -

-UDP source port -
- -

- -name -

-The name of this probe -
- -

- -ret -

-Error code (0: no error) -
- -

- -family -

-IP address family -
- -

- -saddr -

-A string representing the source IP address -
- -

- -daddr -

-A string representing the destination IP address -
- -  -

CONTEXT

- -

- -The process which requested a UDP disconnection -  -

SEE ALSO

- -tapset::udp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::udp.recvmsg.3stap.html b/man/probe::udp.recvmsg.3stap.html deleted file mode 100644 index 6313bee9..00000000 --- a/man/probe::udp.recvmsg.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::UDP\&.RECVMSG - -

PROBE::UDP\&.RECVMSG

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::udp.recvmsg - Fires whenever a UDP message is received -  -

SYNOPSIS

- -

-

-udp.recvmsg 
-
- -  -

VALUES

- -

- -daddr -

-A string representing the destination IP address -
- -

- -sock -

-Network socket used by the process -
- -

- -size -

-Number of bytes received by the process -
- -

- -saddr -

-A string representing the source IP address -
- -

- -family -

-IP address family -
- -

- -sport -

-UDP source port -
- -

- -name -

-The name of this probe -
- -

- -dport -

-UDP destination port -
- -  -

CONTEXT

- -

- -The process which received a UDP message -  -

SEE ALSO

- -tapset::udp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::udp.recvmsg.return.3stap.html b/man/probe::udp.recvmsg.return.3stap.html deleted file mode 100644 index d2fa1561..00000000 --- a/man/probe::udp.recvmsg.return.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::UDP\&.RECVMSG - -

PROBE::UDP\&.RECVMSG

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::udp.recvmsg.return - Fires whenever an attempt to receive a UDP message received is completed -  -

SYNOPSIS

- -

-

-udp.recvmsg.return 
-
- -  -

VALUES

- -

- -name -

-The name of this probe -
- -

- -sport -

-UDP source port -
- -

- -dport -

-UDP destination port -
- -

- -daddr -

-A string representing the destination IP address -
- -

- -family -

-IP address family -
- -

- -saddr -

-A string representing the source IP address -
- -

- -size -

-Number of bytes received by the process -
- -  -

CONTEXT

- -

- -The process which received a UDP message -  -

SEE ALSO

- -tapset::udp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::udp.sendmsg.3stap.html b/man/probe::udp.sendmsg.3stap.html deleted file mode 100644 index 163de5bb..00000000 --- a/man/probe::udp.sendmsg.3stap.html +++ /dev/null @@ -1,127 +0,0 @@ - -Manpage of PROBE::UDP\&.SENDMSG - -

PROBE::UDP\&.SENDMSG

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::udp.sendmsg - Fires whenever a process sends a UDP message -  -

SYNOPSIS

- -

-

-udp.sendmsg 
-
- -  -

VALUES

- -

- -sport -

-UDP source port -
- -

- -name -

-The name of this probe -
- -

- -dport -

-UDP destination port -
- -

- -daddr -

-A string representing the destination IP address -
- -

- -sock -

-Network socket used by the process -
- -

- -size -

-Number of bytes sent by the process -
- -

- -family -

-IP address family -
- -

- -saddr -

-A string representing the source IP address -
- -  -

CONTEXT

- -

- -The process which sent a UDP message -  -

SEE ALSO

- -tapset::udp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::udp.sendmsg.return.3stap.html b/man/probe::udp.sendmsg.return.3stap.html deleted file mode 100644 index 2693b691..00000000 --- a/man/probe::udp.sendmsg.return.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::UDP\&.SENDMSG - -

PROBE::UDP\&.SENDMSG

-Section: Networking Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::udp.sendmsg.return - Fires whenever an attempt to send a UDP message is completed -  -

SYNOPSIS

- -

-

-udp.sendmsg.return 
-
- -  -

VALUES

- -

- -size -

-Number of bytes sent by the process -
- -

- -name -

-The name of this probe -
- -  -

CONTEXT

- -

- -The process which sent a UDP message -  -

SEE ALSO

- -tapset::udp(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.brk.3stap.html b/man/probe::vm.brk.3stap.html deleted file mode 100644 index 93cb30d8..00000000 --- a/man/probe::vm.brk.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::VM\&.BRK - -

PROBE::VM\&.BRK

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.brk - Fires when a brk is requested (i.e. the heap will be resized) -  -

SYNOPSIS

- -

-

-vm.brk 
-
- -  -

VALUES

- -

- -length -

-the length of the memory segment -
- -

- -address -

-the requested address -
- -

- -name -

-name of the probe point -
- -  -

CONTEXT

- -

- -The process calling brk. -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.kfree.3stap.html b/man/probe::vm.kfree.3stap.html deleted file mode 100644 index 3762ecb6..00000000 --- a/man/probe::vm.kfree.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::VM\&.KFREE - -

PROBE::VM\&.KFREE

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.kfree - Fires when kfree is requested -  -

SYNOPSIS

- -

-

-vm.kfree 
-
- -  -

VALUES

- -

- -ptr -

-pointer to the kmemory allocated which is returned by kmalloc -
- -

- -name -

-name of the probe point -
- -

- -caller_function -

-name of the caller function. -
- -

- -call_site -

-address of the function calling this kmemory function -
- -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.kmalloc.3stap.html b/man/probe::vm.kmalloc.3stap.html deleted file mode 100644 index 81799fbf..00000000 --- a/man/probe::vm.kmalloc.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::VM\&.KMALLOC - -

PROBE::VM\&.KMALLOC

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.kmalloc - Fires when kmalloc is requested -  -

SYNOPSIS

- -

-

-vm.kmalloc 
-
- -  -

VALUES

- -

- -bytes_req -

-requested Bytes -
- -

- -ptr -

-pointer to the kmemory allocated -
- -

- -name -

-name of the probe point -
- -

- -caller_function -

-name of the caller function -
- -

- -gfp_flags -

-type of kmemory to allocate -
- -

- -gfp_flag_name -

-type of kmemory to allocate (in String format) -
- -

- -bytes_alloc -

-allocated Bytes -
- -

- -call_site -

-address of the kmemory function -
- -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.kmalloc_node.3stap.html b/man/probe::vm.kmalloc_node.3stap.html deleted file mode 100644 index 47d89e8f..00000000 --- a/man/probe::vm.kmalloc_node.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::VM\&.KMALLOC_ - -

PROBE::VM\&.KMALLOC_

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.kmalloc_node - Fires when kmalloc_node is requested -  -

SYNOPSIS

- -

-

-vm.kmalloc_node 
-
- -  -

VALUES

- -

- -bytes_alloc -

-allocated Bytes -
- -

- -call_site -

-address of the function caling this kmemory function -
- -

- -name -

-name of the probe point -
- -

- -gfp_flags -

-type of kmemory to allocate -
- -

- -caller_function -

-name of the caller function -
- -

- -gfp_flag_name -

-type of kmemory to allocate(in string format) -
- -

- -bytes_req -

-requested Bytes -
- -

- -ptr -

-pointer to the kmemory allocated -
- -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.kmem_cache_alloc.3stap.html b/man/probe::vm.kmem_cache_alloc.3stap.html deleted file mode 100644 index 244216f8..00000000 --- a/man/probe::vm.kmem_cache_alloc.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::VM\&.KMEM_CAC - -

PROBE::VM\&.KMEM_CAC

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.kmem_cache_alloc - Fires when kmem_cache_alloc is requested -  -

SYNOPSIS

- -

-

-vm.kmem_cache_alloc 
-
- -  -

VALUES

- -

- -name -

-name of the probe point -
- -

- -caller_function -

-name of the caller function. -
- -

- -gfp_flags -

-type of kmemory to allocate -
- -

- -gfp_flag_name -

-type of kmemory to allocate(in string format) -
- -

- -bytes_alloc -

-allocated Bytes -
- -

- -call_site -

-address of the function calling this kmemory function. -
- -

- -bytes_req -

-requested Bytes -
- -

- -ptr -

-pointer to the kmemory allocated -
- -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.kmem_cache_alloc_node.3stap.html b/man/probe::vm.kmem_cache_alloc_node.3stap.html deleted file mode 100644 index 8d1c840c..00000000 --- a/man/probe::vm.kmem_cache_alloc_node.3stap.html +++ /dev/null @@ -1,120 +0,0 @@ - -Manpage of PROBE::VM\&.KMEM_CAC - -

PROBE::VM\&.KMEM_CAC

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.kmem_cache_alloc_node - Fires when kmem_cache_alloc_node is requested -  -

SYNOPSIS

- -

-

-vm.kmem_cache_alloc_node 
-
- -  -

VALUES

- -

- -bytes_alloc -

-allocated Bytes -
- -

- -call_site -

-address of the function calling this kmemory function -
- -

- -name -

-name of the probe point -
- -

- -gfp_flags -

-type of kmemory to allocate -
- -

- -caller_function -

-name of the caller function -
- -

- -gfp_flag_name -

-type of kmemory to allocate(in string format) -
- -

- -bytes_req -

-requested Bytes -
- -

- -ptr -

-pointer to the kmemory allocated -
- -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.kmem_cache_free.3stap.html b/man/probe::vm.kmem_cache_free.3stap.html deleted file mode 100644 index 299b2e9b..00000000 --- a/man/probe::vm.kmem_cache_free.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::VM\&.KMEM_CAC - -

PROBE::VM\&.KMEM_CAC

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.kmem_cache_free - Fires when kmem_cache_free is requested -  -

SYNOPSIS

- -

-

-vm.kmem_cache_free 
-
- -  -

VALUES

- -

- -ptr -

-Pointer to the kmemory allocated which is returned by kmem_cache -
- -

- -caller_function -

-Name of the caller function. -
- -

- -name -

-Name of the probe point -
- -

- -call_site -

-Address of the function calling this kmemory function -
- -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.mmap.3stap.html b/man/probe::vm.mmap.3stap.html deleted file mode 100644 index b44172c1..00000000 --- a/man/probe::vm.mmap.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::VM\&.MMAP - -

PROBE::VM\&.MMAP

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.mmap - Fires when an mmap is requested -  -

SYNOPSIS

- -

-

-vm.mmap 
-
- -  -

VALUES

- -

- -name -

-name of the probe point -
- -

- -length -

-the length of the memory segment -
- -

- -address -

-the requested address -
- -  -

CONTEXT

- -

- -The process calling mmap. -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.munmap.3stap.html b/man/probe::vm.munmap.3stap.html deleted file mode 100644 index 522bceb4..00000000 --- a/man/probe::vm.munmap.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::VM\&.MUNMAP - -

PROBE::VM\&.MUNMAP

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.munmap - Fires when an munmap is requested -  -

SYNOPSIS

- -

-

-vm.munmap 
-
- -  -

VALUES

- -

- -name -

-name of the probe point -
- -

- -address -

-the requested address -
- -

- -length -

-the length of the memory segment -
- -  -

CONTEXT

- -

- -The process calling munmap. -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.oom_kill.3stap.html b/man/probe::vm.oom_kill.3stap.html deleted file mode 100644 index beaa4e5d..00000000 --- a/man/probe::vm.oom_kill.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::VM\&.OOM_KILL - -

PROBE::VM\&.OOM_KILL

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.oom_kill - Fires when a thread is selected for termination by the OOM killer -  -

SYNOPSIS

- -

-

-vm.oom_kill 
-
- -  -

VALUES

- -

- -name -

-name of the probe point -
- -

- -task -

-the task being killed -
- -  -

CONTEXT

- -

- -The process that tried to consume excessive memory, and thus triggered the OOM. -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.pagefault.3stap.html b/man/probe::vm.pagefault.3stap.html deleted file mode 100644 index 1b55c1be..00000000 --- a/man/probe::vm.pagefault.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::VM\&.PAGEFAUL - -

PROBE::VM\&.PAGEFAUL

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.pagefault - Records that a page fault occurred -  -

SYNOPSIS

- -

-

-vm.pagefault 
-
- -  -

VALUES

- -

- -write_access -

-indicates whether this was a write or read access; 1 indicates a write, while 0 indicates a read -
- -

- -address -

-the address of the faulting memory access; i.e. the address that caused the page fault -
- -

- -name -

-name of the probe point -
- -  -

CONTEXT

- -

- -The process which triggered the fault -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.pagefault.return.3stap.html b/man/probe::vm.pagefault.return.3stap.html deleted file mode 100644 index 83164b6f..00000000 --- a/man/probe::vm.pagefault.return.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::VM\&.PAGEFAUL - -

PROBE::VM\&.PAGEFAUL

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.pagefault.return - Indicates what type of fault occurred -  -

SYNOPSIS

- -

-

-vm.pagefault.return 
-
- -  -

VALUES

- -

- -name -

-name of the probe point -
- -

- -fault_type -

-returns either 0 (VM_FAULT_OOM) for out of memory faults, 2 (VM_FAULT_MINOR) for minor faults, 3 (VM_FAULT_MAJOR) for major faults, or 1 (VM_FAULT_SIGBUS) if the fault was neither OOM, minor fault, nor major fault. -
- -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.write_shared.3stap.html b/man/probe::vm.write_shared.3stap.html deleted file mode 100644 index d920b8ae..00000000 --- a/man/probe::vm.write_shared.3stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of PROBE::VM\&.WRITE_SH - -

PROBE::VM\&.WRITE_SH

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.write_shared - Attempts at writing to a shared page -  -

SYNOPSIS

- -

-

-vm.write_shared 
-
- -  -

VALUES

- -

- -name -

-name of the probe point -
- -

- -address -

-the address of the shared write -
- -  -

CONTEXT

- -

- -The context is the process attempting the write. -  -

DESCRIPTION

- -

- -Fires when a process attempts to write to a shared page. If a copy is necessary, this will be followed by a vm.write_shared_copy. -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::vm.write_shared_copy.3stap.html b/man/probe::vm.write_shared_copy.3stap.html deleted file mode 100644 index 0f8b5fec..00000000 --- a/man/probe::vm.write_shared_copy.3stap.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of PROBE::VM\&.WRITE_SH - -

PROBE::VM\&.WRITE_SH

-Section: Memory Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::vm.write_shared_copy - Page copy for shared page write -  -

SYNOPSIS

- -

-

-vm.write_shared_copy 
-
- -  -

VALUES

- -

- -name -

-Name of the probe point -
- -

- -zero -

-boolean indicating whether it is a zero page (can do a clear instead of a copy) -
- -

- -address -

-The address of the shared write -
- -  -

CONTEXT

- -

- -The process attempting the write. -  -

DESCRIPTION

- -

- -Fires when a write to a shared page requires a page copy. This is always preceded by a vm.write_shared. -  -

SEE ALSO

- -tapset::memory(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
CONTEXT
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::workqueue.create.3stap.html b/man/probe::workqueue.create.3stap.html deleted file mode 100644 index 6854b8dd..00000000 --- a/man/probe::workqueue.create.3stap.html +++ /dev/null @@ -1,78 +0,0 @@ - -Manpage of PROBE::WORKQUEUE\&.C - -

PROBE::WORKQUEUE\&.C

-Section: Interrupt Request (IRQ) Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::workqueue.create - Creating a new workqueue -  -

SYNOPSIS

- -

-

-workqueue.create 
-
- -  -

VALUES

- -

- -cpu -

-cpu for which the worker thread is created -
- -

- -wq_thread -

-task_struct of the workqueue thread -
- -  -

SEE ALSO

- -tapset::irq(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::workqueue.destroy.3stap.html b/man/probe::workqueue.destroy.3stap.html deleted file mode 100644 index 05b3a146..00000000 --- a/man/probe::workqueue.destroy.3stap.html +++ /dev/null @@ -1,71 +0,0 @@ - -Manpage of PROBE::WORKQUEUE\&.D - -

PROBE::WORKQUEUE\&.D

-Section: Interrupt Request (IRQ) Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::workqueue.destroy - Destroying workqueue -  -

SYNOPSIS

- -

-

-workqueue.destroy 
-
- -  -

VALUES

- -

- -wq_thread -

-task_struct of the workqueue thread -
- -  -

SEE ALSO

- -tapset::irq(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::workqueue.execute.3stap.html b/man/probe::workqueue.execute.3stap.html deleted file mode 100644 index f0962ae1..00000000 --- a/man/probe::workqueue.execute.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::WORKQUEUE\&.E - -

PROBE::WORKQUEUE\&.E

-Section: Interrupt Request (IRQ) Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::workqueue.execute - Executing deferred work -  -

SYNOPSIS

- -

-

-workqueue.execute 
-
- -  -

VALUES

- -

- -work_func -

-pointer to handler function -
- -

- -wq_thread -

-task_struct of the workqueue thread -
- -

- -work -

-work_struct* being executed -
- -  -

SEE ALSO

- -tapset::irq(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/probe::workqueue.insert.3stap.html b/man/probe::workqueue.insert.3stap.html deleted file mode 100644 index 4f48f843..00000000 --- a/man/probe::workqueue.insert.3stap.html +++ /dev/null @@ -1,85 +0,0 @@ - -Manpage of PROBE::WORKQUEUE\&.I - -

PROBE::WORKQUEUE\&.I

-Section: Interrupt Request (IRQ) Tapset (3stap)
Updated: June 2020
Index -Return to Main Contents
- - - - - - - - - - - - - - - - - - - - - -  -

NAME

- -probe::workqueue.insert - Queuing work on a workqueue -  -

SYNOPSIS

- -

-

-workqueue.insert 
-
- -  -

VALUES

- -

- -wq_thread -

-task_struct of the workqueue thread -
- -

- -work -

-work_struct* being queued -
- -

- -work_func -

-pointer to handler function -
- -  -

SEE ALSO

- -tapset::irq(3stap) - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
VALUES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/stap-exporter.8.html b/man/stap-exporter.8.html deleted file mode 100644 index 1e5720ef..00000000 --- a/man/stap-exporter.8.html +++ /dev/null @@ -1,254 +0,0 @@ - -Manpage of STAP-EXPORTER - -

STAP-EXPORTER

-Section: Maintenance Commands (8)
Index -Return to Main Contents
- -  -

NAME

- -stap-exporter - systemtap-prometheus interoperation mechanism -

- - - -

-

-  -

SYNOPSIS

- -

-
- -stap-exporter - -[ -OPTIONS - -] -

-  -

DESCRIPTION

- -

-stap-exporter - -runs a set of systemtap scripts and relays their procfs outputs to -remote HTTP clients on demand. This makes systemtap scripts directly -usable as individual prometheus exporters. This is assisted by a -set of macros provided in the prometheus.stpm tapset file. -

-  -

OPTIONS

- -

-The -stap-exporter - -program supports the following options. -

-
-p --port PORT - -
-Listen to the specified TCP port for HTTP requests. Port 9900 is used by default. -
-k --keepalive KEEPALIVE - -
-Scripts that run longer than KEEPALIVE seconds beyond the last request are shut down. -There is no timeout by default, so once started, scripts are kept running. -
-s --scripts SCRIPTS - -
-Search the directory SCRIPTS for *.stp files to be exposed. The default is -given in the stappaths.7 man page. -

-

-h --help - -
-Print help message. -

-

-

-  -

OPERATION

- -

-Upon startup, -stap-exporter - -searches the directory specified by the -s directory for files -named *.stp. The name of each file becomes available as a URL -component for subsequent GET HTTP requests. For example, when an HTTP -client asks for /foo.stp, and the foo.stp script (executable / -shell-script) was known, then it is spawned with additional stap -options to set a module name. This predictable module name makes it -possible for stap-exporter to transcribe a procfs file from that -running script to HTTP clients. -

-After a configurable period of disuse (-k or ---keepalive option), a systemtap script is terminated. It -will be restarted again if a client requests. -

-All files whose name includes the substring autostart are -started immediately (and restarted if they stop), rather than -on-demand. These are excluded from keepalive considerations. Scripts -that may be too slow to start or wish to report long-term statistics -are candidates for this treatment. -

-  -

EXAMPLE

- -

-Suppose that example.stp contains the following script. It counts -read syscalls on a per-thread & per-cpu basis. -

- -

- -
- -

-
-global arr%
-
-probe syscall.read {
-    arr[tid(), cpu()]++
-}
-
-probe prometheus {
-    @prometheus_dump_array2(arr, "count", "tid", "cpu")
-}
-
-
- -
- - -

- -

-The prometheus_dump_array macros are used to produce metrics from an array. -Systemtap provides a prometheus_dump_arrayN macro for all N from 1 to 8. -The first argument of the macros represents an array with N-element keys. -The second argument represents the name of the metric. The remaining N arguments -represent the names of the metric's labels. -

-One may launch stap-exporter as root, or equivalent stapdev privileges, then -after a brief delay, use any web client to fetch data: -

- -

- -
- -

-
-# stap-exporter -p 9999 -k 60 -c . &
-
-$ curl http://localhost:9999/example.stp
-Refresh page to access metrics.  [...]
-
-$ curl http://localhost:9999/example.stp
-count{tid="12614",cpu="0"} 9
-count{tid="12170",cpu="3"} 107
-count{tid="1802",cpu="0"} 33687
-count{tid="12617",cpu="1"} 99
-[...]
-
-
- -
- - -

- -

-The same URL may be added to a Prometheus server's scrape_config section, -or a Performance Co-Pilot pmdaprometheus config.d directory, to collect -this data into a monitoring system. -

-

-  -

SAFETY AND SECURITY

- -

-The stap-exporter server does not enforce any particular security mechanisms. -Therefore, deployment in an untrusted environment needs to consider: -

-

-
script selection
-Since systemtap scripts are run under the privileges -of the stap-exporter process (probably root), the system -administrator must select only safe & robust scripts. -Check the scripts installed by default before activating the -service. -Scripts cannot take input from the web clients. -

-

TCP/IP firewalling
-Since stap-exporter exposes the selected TCP/HTTP port to all interfaces -on the host, it may be necessary to add a firewall. It is unlikely to be -appropriate to expose such a service to an untrusted network. -

-

HTTP filtering
-Since stap-exporter exposes the configured systemtap scripts to all HTTP -clients without authentication, it may be necessary to protect it from -abuse even on mostly trusted networks. An HTTP proxy may be used to -impose URL- or client- or usage- or authentication-dependent filters. -

-

HTTPS
-Since stap-exporter speaks only plain HTTP, an HTTP proxy may be used to -support HTTPS secure protocols. -

-

-

-  -

SEE ALSO

- -stap(1), - -stapprobes(3stap), - -stappaths(7) - -tapset::prometheus(7) - -

-  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/, <systemtap@sourceware.org>. - - -

- -error::reporting(7stap), - - -https://sourceware.org/systemtap/wiki/HowToReportBugs - - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
OPTIONS
-
OPERATION
-
EXAMPLE
-
SAFETY AND SECURITY
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/stap-merge.1.html b/man/stap-merge.1.html deleted file mode 100644 index a27534de..00000000 --- a/man/stap-merge.1.html +++ /dev/null @@ -1,185 +0,0 @@ - -Manpage of STAP-MERGE - -

STAP-MERGE

-Section: User Commands (1)
Index -Return to Main Contents
- -  -

NAME

- -stap-merge - systemtap per-cpu binary merger -

- - - - -

-  -

SYNOPSIS

- -

-
- -stap-merge - -[ -OPTIONS - -] -[ -INPUT FILENAMES - -] -

-  -

DESCRIPTION

- -

-The stap-merge executable applies when the -b option has been used -while running a -stap - -script. The -b option will generate files -per-cpu, based on the timestamp field. Then stap-merge will -merge and sort through the per-cpu files based on the timestamp -field. -

-  -

OPTIONS

- -

-The systemtap merge executable supports the following options. -

-
-v - -
-Verbose mode, displays three extra fields per set of collected data. - -
- -

- -

-
-[cpunumber,sequencenumberofdata,thelengthofthedataset]
-
-
- -
- - -

- -

-o OUTPUT_FILENAME - -
-

-Specify the name of the file you would like the output to be -redirected into. If this option is not specified than the -output will be pushed to standard out. -

-

-  -

EXAMPLES

- - -
- -

- -

-
-$ stap -v -b -e 'probe syscall.open { printf("%s(%d) open\n",
-execname(), pid()) }' 
-
-
-
- -
- - -

- -

-This should result in several -stpd_cpu - -files (each labled with a number -representing which cpu the file was produced from). -

- -
- -

- -

-
-$ stap-merge -v stpd_cpu0 stpd_cpu1
-
-
-
- -
- - -

- -

-Running the stap-merge program in the same directory as the stap -script earlier in the example, will produce an ordered sequence of -packets with the three part label for each set of data. This -result will be pushed through the standard output. An output file -could have been specified using the "-o" option. -

-  -

FILES

- -

-

-
Important files and their corresponding paths can be located in the
-stappaths (7) manual page. -

-

-  -

SEE ALSO

- - -
-stapprobes(3stap),
-stappaths(7),
-staprun(8),
-stapvars(3stap),
-stapex(3stap),
-stap-server(8),
-gdb(1)
-
-
  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/,<systemtap@sourceware.org>. - - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
OPTIONS
-
EXAMPLES
-
FILES
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/stap-prep.1.html b/man/stap-prep.1.html deleted file mode 100644 index f96c033e..00000000 --- a/man/stap-prep.1.html +++ /dev/null @@ -1,99 +0,0 @@ - -Manpage of STAP-PREP - -

STAP-PREP

-Section: User Commands (1)
Index -Return to Main Contents
- -  -

NAME

- -stap-prep - prepare system for systemtap use -

- - - - -

-  -

SYNOPSIS

- -

-
- -stap-prep - -[ -KERNEL_VERSION - -] -

-  -

DESCRIPTION

- -

-The stap-prep executable prepares the system for systemtap use by -installing kernel headers, debug symbols and build tools that match -the currently running kernel or optionally the kernel version given by -the user. -

-The exact behavior of stap-prep may be customized by the -distribution maintainers. It might for example only give suggestions -and not actually install the required packages if that is difficult to -automate. -

-  -

EXAMPLES

- - -
- -

- -

-
-$ stap-prep
-Please install linux-image-3.2.0-2-amd64-dbg
-
-
- -
- - -

- -

-  -

SEE ALSO

- - -
-stap(1)
-
-
  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/,<systemtap@sourceware.org>. - - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
EXAMPLES
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/stap-report.1.html b/man/stap-report.1.html deleted file mode 100644 index a0ff81be..00000000 --- a/man/stap-report.1.html +++ /dev/null @@ -1,101 +0,0 @@ - -Manpage of STAP-REPORT - -

STAP-REPORT

-Section: User Commands (1)
Index -Return to Main Contents
- -  -

NAME

- -stap-report - collect system information that is useful for debugging systemtap bugs -

- - - - -

-  -

SYNOPSIS

- -

-
- -stap-report - -

-  -

DESCRIPTION

- -

-The stap-report executable collects system information that is useful -for debugging systemtap bugs. It is a good idea to include such a -report in bug reports especially if you send them directly to the -upstream. stap-report can be run either as a normal user or as -root. The report will be more complete if stap-report is run as root. -

-  -

EXAMPLES

- - -
- -

- -

-
-$ stap-report > report.txt
-$ head report.txt
-== id ==
-uid=1000(user) gid=1000(user) groups=122(stapdev),123(stapusr),129(stapsys)
-== stap -V ==
-Systemtap translator/driver (version 2.2.1/0.153, Debian version 2.2.1-1)
-Copyright (C) 2005-2013 Red Hat, Inc. and others
-This is free software; see the source for copying conditions.
-enabled features: AVAHI LIBSQLITE3 NSS TR1_UNORDERED_MAP NLS
-== which stap ==
-/usr/bin/stap
-== locate --regex '/stap(run)?$' | xargs ls -ald ==
-
-
- -
- - -

- -

-  -

SEE ALSO

- - -
-stap(1)
-
-
  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/,<systemtap@sourceware.org>. - - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
EXAMPLES
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/stap-server.8.html b/man/stap-server.8.html deleted file mode 100644 index 075725ec..00000000 --- a/man/stap-server.8.html +++ /dev/null @@ -1,805 +0,0 @@ - -Manpage of STAP-SERVER - -

STAP-SERVER

-Section: Maintenance Commands (8)
Index -Return to Main Contents
- -  -

NAME

- -stap-server - systemtap compile server management -

- - - -

-  -

SYNOPSIS

- -

-
- -[ -service - -] -stap-server - -{ -start - -| -stop - -| -restart - -| -condrestart - -| -try-restart - -| -force-reload - -| -status - -} [ -options - -] -

-  -

DESCRIPTION

- -

-A systemtap compile server listens for connections from stap clients -on a secure SSL network port and accepts requests to run the -stap - -front end. Each server advertises its presence and configuration on the local -network using mDNS (avahi) allowing for automatic detection by clients. -

-

- -The stap-server script aims to provide: -

-
-management of systemtap compile servers as a service. -
-convenient control over configured servers and individual (ad-hoc) servers. -

-

-  -

ARGUMENTS

- -One of the actions below must be specified: -
-
start - -
-Start servers. The specified servers are started. -If no server is specified, the configured servers are started. If no servers -are configured, a server for the kernel release and architecture of the host -is started. -If a specified server is -already started, this action will -be ignored for that server. If a server fails to start, this action fails. -

-

stop - -
-Stop server(s). The specified servers are stopped. -If no server is specified, all currently running servers are stopped. -If a specified server is -not running, this action -will be successful for that server. If a server fails to stop, this action -fails. -

-

restart - -
-Stop and restart servers. The specified servers are stopped and restarted. -If no server is specified, all currently running servers are stopped and -restarted. If no servers are running, this action behaves like start. -

-

condrestart - -
-Stop and restart servers. The specified servers are stopped and restarted. -If a specified server is not running, it is not started. If no server is -specified, all currently running servers are stopped and restarted. If no -servers are running, none will be started. -

-

try-restart - -
-This action is identical to condrestart. -

-

force-reload - -
-Stop all running servers, reload config files and restart the service as if -start - -was specified. -

-

status - -
-Print information about running servers. Information about the specified -server(s) will be printed. If no server is specified, information about all -running servers will be printed. -

-

-  -

OPTIONS

- -The following options are used to provide additional configuration and -to specify servers to be managed: -

-

-
-c configfile
-This option specifies a global configuration file in addition to the default -global configuration file described -below. This file will be processed after the default global -configuration file. If the -c option is specified more than once, the -last -configuration file specified will be used. -

-

-a architecture
-This option specifies the target architecture of the server and is -analogous to the -a option of stap. See the -stap(1) - -manual page for more details. -The default architecture is the architecture of the host. -

-

-r kernel-release
-This option specifies a target kernel release of the server and is -analogous to the -r option of stap. See the -stap(1) - -manual page for more details. -The default release is that of the currently running kernel. -A server can handle multiple releases by specifying multiple -r flags. -

-

-I path
-This option specifies an additional path to be searched by the server(s) for -tapsets and is analogous to the -I option of stap. -See the -stap(1) - -manual page for more details. -

-

-R path
-This option specifies the location of the systemtap runtime to be used by the -server(s) and is analogous to the -R option of stap. -See the -stap(1) - -manual page for more details. -

-

-B options
-This option specifies options to be passed to make when building systemtap -modules and is analogous to the -B option of stap. -See the -stap(1) - -manual page for more details. -

-

-i
-This option is a shortcut which specifies a server that handles every -release installed in /lib/modules/. -
-n nickname
-This option allows the specification of a server configuration by nickname. -When -n is specified, a currently running server with the given nickname -will be searched for. If no currently running server with the given nickname is -found, a server configuration with the given nickname will be searched for in -the configuration files for default servers, -or the path configured in the global configuration file or -the configuration file specified by the --c option. If a server configuration for the given -nickname is found, the --a, -r, -I, -R, -B and -u options for -that server will be used as if they were specified on the command line. If no -configuration with the given nickname is found, and the action is -start - -(or an action behaving like start -(see ARGUMENTS), the server will be started with the given nickname. -If no configuration with the given nickname is found, and the action is not -start - -(or an action behaving like start), it is an error. If a nickname is -not specified for a server which is being started, its nickname will be its -process id. -

-

-p pid
-This option allows the specification of a server configuration by process id. -When -p is specified, a currently running server with the given process -id will be searched for. If no such server is found, it is an error. If a server -with the given process id is found, the --a, -r, -I, -R, -B and -u options for -that server will be used as if they were specified on the command line. -

-

-u user-name
-Each systemtap compile server is normally run by the user name -stap-server (for the initscript) or as the user invoking -stap-server, -unless otherwise configured (see FILES). This option -specifies the user name used to run the server(s). The user name specified -must be a member of the group stap-server. -

-

--log logfile
-This option allows the specification of a separate log file for each server. -Each --log option is added to a list which will be applied, in turn, to each -server specified. If more servers are specified than --log options, the default -log file (see FILES) will be used for subsequent servers. -

-

--port port-number
-This option allows the specification of a specific network port for each -server. Each --port option is added to a list which will be applied, in turn, -to each server specified. If more servers are specified than ---port options, a randomly selected port is used for subsequent servers. -

-

--ssl certificate-db-path
-This option allows the specification of a separate NSS certificate database -for each server. Each --ssl option is added to a list which will be applied, -in turn, to each server specified. If more servers are specified than --ssl -options, the default certificate database -(see FILES) for subsequent servers. -

-

--max-threads threads
-This option allows the specification of the maximum number of worker threads -to handle concurrent requests. If threads == 0, each request will be -handled on the main thread, serially. The default is the number of available -processor cores. -

-

--max-request-size size
-This options allows the specification of the maximum size of an uncompressed -client request. The arguement size is specified in bytes. The -default is the 50000 bytes. -

-

--max-compressed-request size
-This options allows the specification of the maximum size of a compressed -client request. The arguement size is specified in bytes. The -default is the 5000 bytes. -

-

-  -

CONFIGURATION

- -

-Configuration files allow us to: -

-
-specify global configuration of logging, server configuration files, status -files and other global parameters. -
-specify which servers are to be started by default. -

-

-  -

Global Configuration

- -

-The Global Configuration file contains -variable assignments used to configure the overall operation of the service. -Each line beginning with a '#' character is ignored. All other lines must be -of the form VARIABLE=VALUE. This is not a shell script. The entire -contents of the line after the = will be assigned as-is to the variable. -

-The following variables may be assigned: -

-

-
CONFIG_PATH - -
-Specifies the absolute path of the directory containing the default server -configurations. -

-

STAT_PATH - -
-Specifies the absolute path of the running server status directory. -

-

LOG_FILE - -
-Specifies the absolute path of the log file. -

-

STAP_USER - -
-Specifies the userid which will be used to run the server(s) -(default: for the initscript stap-server, otherwise the user running -stap-server). -

-

-

- -Here is an example of a Global Configuration file: - -

- -
- -

-
-CONFIG_PATH=~<user>/my-stap-server-configs
-LOG_FILE=/tmp/stap-server/log
-
-
- -
- - -

- -

-  -

Individual Server Configuration

- -

-Each server configuration file configures a server to be started when no -server is specified for the start action, or an action behaving like the -start action (see ARGUMENTS). Each configuration file contains -variable assignments used to configure an individual server. -

-Each line beginning with a '#' character is ignored. All other lines must be -of the form VARIABLE=VALUE. This is not a shell script. The entire -contents of the line after the = will be assigned as-is to the variable. -

-Each configuration file must have a filename suffix of .conf. See -stappaths(7) for the default location of these files. This default -location can be overridden in the global configuration file using the -c -option (see OPTIONS). -

-The following variables may be assigned: -

-
ARCH - -
-Specifies the target architecture for this server and corresponds to the --a option (see OPTIONS). If ARCH is not set, the -architecture of the host will be used. -

-

RELEASE - -
-Specifies a kernel release for this server -and corresponds to the --r option (see OPTIONS). If RELEASE is not set, the -release -of the kernel running on the host will be used. -
  -
BUILD - -
-Specifies options to be passed to the make process used by -systemtap to build kernel modules. -This an array variable with each element corresponding to a --B option (see OPTIONS). Using the form BUILD=STRING clears -the array and sets the first element to STRING. Using the form -BUILD+=STRING adds STRING as an additional element to the array. -
  -
INCLUDE - -
-Specifies a list of directories to be searched by the server for tapsets. -This is an array variable with each element corresponding to a --I option (see OPTIONS). Using the form INCLUDE=PATH clears -the array and sets the first element to PATH. Using the form -INCLUDE+=PATH adds PATH as an additional element to the array. -

-

RUNTIME - -
-Specifies the directory which contains the systemtap runtime code to be used -by this server -and corresponds to the --R option (see OPTIONS). -

-

USER - -
-Specifies the user name to be used to run this server -and corresponds to the --u option (see OPTIONS). -

-

NICKNAME - -
-Specifies the nickname to be used to refer to this server -and corresponds to the --n option (see OPTIONS). -

-

LOG - -
-Specifies the location of the log file to be used by this server and corresponds to the ---log option (see OPTIONS). -

-

PORT - -
-Specifies the network port to be used by this server and corresponds to the ---port option (see OPTIONS). -

-

SSL - -
-Specifies the location of the NSS certificate database to be used by this server and corresponds -to the ---ssl option (see OPTIONS). -

-

MAXTHREADS - -
-Specifies the maximum number of worker threads to handle concurrent requests to be used by this server -and corresponds to the --max-threads option (see OPTIONS). -

-

MAXREQSIZE - -
-Specifies the maximum size of an uncompressed client request, to be used by -this server and correspnds to the --max-request-size option (see OPTIONS). -

-

MAXCOMPRESSEDREQ - -
-Specifies the maximum size of an compressed client request, to be used by -this server and correspnds to the --max-compressed-request option (see OPTIONS). -

-

-

- -Here is an example of a server configuration file: - -

- -
- -

-
-ARCH=
-USER=
-RELEASE=
-NICKNAME=native
-
-
- -
- - -

- -By keeping the ARCH, USER, and RELEASE fields blank, they will default to the -current arch and release and use the default user. -

-A more specific example: - -

- -
- -

-
-ARCH=i386
-RELEASE=2.6.18-128.el5
-PORT=5001
-LOG=/path/to/log/file
-
-
- -
- - -

- -

-And here is a more complicated example: - -

- -
- -

-
-USER=serveruser
-RELEASE=/kernels/2.6.18-92.1.18.el5/build
-INCLUDE=/mytapsets
-INCLUDE+=/yourtapsets
-BUILD='VARIABLE1=VALUE1 VARIABLE2=VALUE2'
-DEFINE=STP_MAXMEMORY=1024
-DEFINE+=DEBUG_TRANS
-RUNTIME=/myruntime
-NICKNAME=my-server
-SSL=/path/to/NSS/certificate/database
-
-
- -
- - -

- -

-  -

SERVER AUTHENTICATION

- -The security of the SSL network connection between the client and server -depends on the proper -management of server certificates. -

-

- -The trustworthiness of a given systemtap compile server can not be determined -automatically without a trusted certificate authority issuing systemtap compile server -certificates. This is -not practical in everyday use and so, clients must authenticate servers -against their own database of trusted server certificates. In this context, -establishing a given server as trusted by a given client means adding -that server's certificate to the -client's database of trusted servers. -

-

- -For the stap-server initscript, on the local host, this is handled -automatically. -When the systemtap-server package is installed, the server's -certificate for the default user (stap-server) is automatically -generated and installed. This means that servers started by the -stap-server initscript, -with the default user, are automatically trusted by clients on the local -host, both as an SSL peer and as a systemtap module signer. -

- -Furthermore, when stap is invoked by an unprivileged user -(not root, not a member of the group stapdev, but a member of the group -stapusr and possibly the group stapsys), the options --use-server -and --privilege -are automatically added to the specified options. -This means that unprivileged users -on the local host can use a server on the local host -in unprivileged mode with no further setup or options required. Normal users -(those in none of the SystemTap groups) can also use compile-servers through the ---use-server and --privilege options. But they will of course -be unable to load the module (the -p4 option can be used to stop short of -loading). -

-

- -In order to use a server running on another host, that server's certificate -must be installed on the client's host. -See the --trust-servers option in the -stap(1) - -manual page for more details and README.unprivileged in the systemtap sources -for more details. -

-  -

EXAMPLES

- -See the -stapex(3stap) - -manual page for a collection of sample systemtap scripts. -

- -To start the configured servers, or the default server, if none are configured: -

- - $ [ service ] stap-server start - -

- -To start a server that handles all kernel versions installed in /lib/modules: -

- - $ [ service ] stap-server start -i - -

- -To obtain information about the running server(s): -

- - $ [ service ] stap-server status - -

- -To start a server like another one, except targeting a different architecture, -by referencing the first server's nickname: -

- - $ [ service ] stap-server start -n NICKNAME -a ARCH - -

- -To start a server for a kernel release not installed (cross-compiling) -

- - $ [ service ] stap-server start -a ARCH -r /BUILDDIR - -

- -To stop one of the servers by referencing its process id (obtained by running -stap-server status): -

- - $ [ service ] stap-server stop -p PID - -

- -To run a script using a compile server: -

- - $ stap SCRIPT --use-server - -

- -To run a script as an unprivileged user using a compile server: -

- - $ stap SCRIPT - -

- -To stop all running servers: -

- - $ [ service ] stap-server stop - -

- -To restart servers after a global configuration change and/or when default -servers have been added, changed, or removed: -

- - $ [ service ] stap-server force-reload - -

-  -

SAFETY AND SECURITY

- -Systemtap is an administrative tool. It exposes kernel internal data -structures and potentially private user information. See the -stap(1) - -manual page for additional information on safety and security. -

-

- -As a network server, stap-server should be activated with care in -order to limit the potential effects of bugs or mischevious users. -Consider the following prophylactic measures. -

-
1
-Run stap-server as an unprivileged user, never as root. -

-When invoked as a -service (i.e. service stap-server ...), each server is run, -by default, as the user stap-server. -When invoked directly (i.e. stap-server ...), each server is run, -by default, as the invoking user. In each case, another user may be selected by -using the -u option on invocation, by specifying -STAP_USER=username in the global configuration file or by specifying -USER=username in an individual server configuration file. The invoking -user must have authority to run processes as another user. -See CONFIGURATION. -

-The selected user must have write access to the server log file. -The location of the server log file may -be changed by setting LOG_FILE=path in the global configuration file. -See CONFIGURATION. -

-The selected user must have -read/write access to the directory containing the server status files. -The location of the server -status files may be changed by setting STAT_PATH=path in the global -configuration file. -See CONFIGURATION. -

-The selected user must have -read/write access to the uprobes.ko build directory and its files. -

-Neither form of stap-server will run if the selected user is root. -

-

2
-Run stap-server requests with resource limits that impose maximum -cpu time, file size, memory consumption, in order to bound -the effects of processing excessively large or bogus inputs. -

-When the user running the server is stap-server, -each server request is run with limits specified in ~stap-server/.systemtap/rc -otherwise, no limits are imposed. -

-

3
-Run stap-server with a TMPDIR environment variable that -points to a separate and/or quota-enforced directory, in -order to prevent filling up of important filesystems. -

-The default TMPDIR is /tmp/. -

-

4
-Activate network firewalls to limit stap client connections -to relatively trustworthy networks. -

-For automatic selection of servers by clients, avahi must be installed -on both the server and client hosts and mDNS messages must be allowed through the firewall. -

-

-

- -The systemtap compile server and its related utilities use the Secure Socket Layer -(SSL) as implemented by Network Security Services (NSS) -for network security. NSS is also used -for the generation and management of certificates. The related -certificate databases must be protected in order to maintain the security of -the system. -Use of the utilities provided will help to ensure that the proper protection -is maintained. The systemtap client will check for proper -access permissions before making use of any certificate database. -

-  -

FILES

- -
-
Important files and their corresponding paths can be located in the
-stappaths (7) manual page. -

-

-  -

SEE ALSO

- - -
-stap(1),
-staprun(8),
-stapprobes(3stap),
-stappaths(7),
-stapex(3stap),
-avahi,
-ulimit(1),
-NSS
-
-
  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/, <systemtap@sourceware.org>. - - -

-

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
ARGUMENTS
-
OPTIONS
-
CONFIGURATION
-
Global Configuration
-
Individual Server Configuration
-
SERVER AUTHENTICATION
-
EXAMPLES
-
SAFETY AND SECURITY
-
FILES
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/stap.1.html b/man/stap.1.html deleted file mode 100644 index 4285480d..00000000 --- a/man/stap.1.html +++ /dev/null @@ -1,3992 +0,0 @@ - -Manpage of STAP - -

STAP

-Section: User Commands (1)
Index -Return to Main Contents
- -  -

NAME

- -stap - systemtap script translator/driver -

- - - - -

-  -

SYNOPSIS

- -

-
- -stap - -[ -OPTIONS - -] -FILENAME - -[ -ARGUMENTS - -] -
- -stap - -[ -OPTIONS - -] -- - -[ -ARGUMENTS - -] -
- -stap - -[ -OPTIONS - -] --e SCRIPT - -[ -ARGUMENTS - -] -
- -stap - -[ -OPTIONS - -] --l PROBE - -[ -ARGUMENTS - -] -
- -stap - -[ -OPTIONS - -] --L PROBE - -[ -ARGUMENTS - -] -
- -stap - -[ -OPTIONS - -] ---dump-probe-types - -
- -stap - -[ -OPTIONS - -] ---dump-probe-aliases - -
- -stap - -[ -OPTIONS - -] ---dump-functions - -

-

-

-  -

DESCRIPTION

- -

-The -stap - -program is the front-end to the Systemtap tool. It accepts probing -instructions written in a simple domain-specific language, translates -those instructions into C code, compiles this C code, and loads the -resulting module into a running Linux kernel or a DynInst user-space -mutator, to perform the requested system trace/probe functions. You -can supply the script in a named file (FILENAME), from standard input -(use - instead of FILENAME), or from the command line (using -e -SCRIPT). The program runs until it is interrupted by the user, or if -the script voluntarily invokes the -exit() - -function, or by sufficient number of soft errors. -

- -The language, which is described the -SCRIPT LANGUAGE - -section below, is strictly typed, expressive, declaration free, procedural, -prototyping-friendly, and inspired by -awk and C. - -It allows source code points or events in the system to be associated -with handlers, which are subroutines that are executed synchronously. It is -somewhat similar conceptually to "breakpoint command lists" in the -gdb - -debugger. -

-  -

DOCUMENTATION OVERVIEW

- -

-systemtap comes with a variety of educational, documentation and -reference resources. They come online and/or packaged for offline -use. Some systemtap diagnostic warning/error messages specially -suggest reading a man page by including a string -like [man error::pass5]. For online documentation, see the project web site, - -https://sourceware.org/systemtap/ - -

- - - - - - - - - - - - - - - - - - - - - - - - - -
man pages
stap (this page)language syntax, concepts, operation, options
error::*further explanation of error conditions
warning::*further explanation of warning conditions
stapprobesprobe points and their $context variables
staprefquick reference to language syntax
stappaths -list of directories, including books & references -
stap-prep -program to install auxiliary dependencies like kernel debuginfo -
tapset::*generated list of tapsets
probe::*generated list of tapset probe aliases
function::*generated list of tapset functions
macro::*generated list of tapset macros
stapvarssome of the tapset global variables
staprun, stapdyn, stapbpfprograms for executing compiled systemtap scripts
systemtapinitscript, boot-time probing
stap-servercompilation server
stapexa few very basic script examples
books
Beginner's Guidetutorial book, language essentials, examples
Tutorialshorter tutorial, exercises
Language Referencedetailed language manual, covers statistics/analysis
Tapset Referencethe tapset man pages, reformatted into a book
references
example scripts -over a hundred directly usable sysadmin tools, toys, hacks to learn from -
- -

-  -

OPTIONS

- -The systemtap translator supports the following options. Any other option -prints a list of supported options. Options may be given on the command line, -as usual. If the file $SYSTEMTAP_DIR/rc exist, options are also loaded from -there and interpreted first. ($SYSTEMTAP_DIR defaults to $HOME/.systemtap if unset.) -

-

- -In some cases, the default value of an option depends on particular system -configuration and thus can't be mentioned here directly. In some of those -cases running "stap --help" might display the default. -

-

-
- - -
-Use standard input instead of a given FILENAME as probe language input, -unless -e SCRIPT is given. -
-h --help - -
-Show help message. -
-V --version - -
-Show version message. -
-p NUM - -
-Stop after pass NUM. The passes are numbered 1-5: parse, elaborate, -translate, compile, run. See the -PROCESSING - -section for details. -
-v - -
-Increase verbosity for all passes. Produce a larger volume of -informative (?) output each time option repeated. -
--vp ABCDE - -
-Increase verbosity on a per-pass basis. For example, "--vp 002" -adds 2 units of verbosity to pass 3 only. The combination "-v --vp 00004" -adds 1 unit of verbosity for all passes, and 4 more for pass 5. -
-k - -
-Keep the temporary directory after all processing. This may be useful -in order to examine the generated C code, or to reuse the compiled -kernel object. -
-g - -
-Guru mode. Enable parsing of unsafe expert-level constructs like -embedded C. -
-P - -
-Prologue-searching mode. This is equivalent to --prologue-searching=always. -Activate heuristics to work around incorrect debugging information for -function parameter $context variables. -
-u - -
-Unoptimized mode. Disable unused code elision and many other optimizations -during elaboration / translation. -
-w - -
-Suppressed warnings mode. Disables all warning messages. -
-W - -
-Treat all warnings as errors. -
-b - -
-Use bulk mode (percpu files) for kernel-to-user data transfer. Use the -stap-merge - -program to multiplex them back together later. -
-i --interactive - -
-Interactive mode. Enable an interface to build the systemtap script -incrementally and interactively. -
-t - -
-Collect timing information on the number of times probe executes -and average amount of time spent in each probe-point. Also shows -the derivation for each probe-point. -
-s NUM - -
-Use NUM megabyte buffers for kernel-to-user data transfer. On a -multiprocessor in bulk mode, this is a per-processor amount. -
-I DIR - -
-Add the given directory to the tapset search directory. See the -description of pass 2 for details. -
-D NAME=VALUE - -
-Add the given C preprocessor directive to the module Makefile. These can -be used to override limit parameters described below. -
-B NAME=VALUE - -
-In kernel-runtime mode, add the given make directive to the kernel module -build's make invocation. These can be used to add or override kconfig options. -For example, use - -
- -

- -

-
--B CONFIG_DEBUG_INFO=y
-
-
- -
- - -

- -to add debugging information. -

-B FLAG - -
-In dyninst-runtime mode, add the given parameter to the compiler CFLAGS used -for building the dyninst shared library. For example, use - -
- -

- -

-
--B -g
-
-
- -
- - -

- -to add debugging information. -

-a ARCH - -
-Use a cross-compilation mode for the given target architecture. This requires -access to the cross-compiler and the kernel build tree, and goes along -with the - -
- -

- -

-
--B CROSS_COMPILE=arch-tool-prefix-
-and
--r /build/tree
-
-
- -
- - -

- -options. -

--modinfo NAME=VALUE - -
-Add the name/value pair as a MODULE_INFO macro call to the generated module. -This may be useful to inform or override various module-related checks in -the kernel. -
-G NAME=VALUE - -
-Sets the value of global variable NAME to VALUE when staprun is invoked. -This applies to scalar variables declared global in the script/tapset. -
-R DIR - -
-Look for the systemtap runtime sources in the given directory. -Your DIR default can be seen using "stap --help". -
-r /DIR - -
-Build for kernel in given build tree. Can also be set with the -SYSTEMTAP_RELEASE - -environment variable. -
-r RELEASE - -
-Build for kernel in build tree -/lib/modules/RELEASE/build. - -Can also be set with the -SYSTEMTAP_RELEASE - -environment variable. -
-m MODULE - -
-Use the given name for the generated kernel object module, instead -of a unique randomized name. The generated kernel object module is -copied to the current directory. -
-d MODULE - -
-Add symbol/unwind information for the given module into the kernel object -module. This may enable symbolic tracebacks from those modules/programs, -even if they do not have an explicit probe placed into them. -
--ldd - -
-Add symbol/unwind information for all user-space shared libraries suspected -by ldd to be necessary for user-space binaries being probed or listed with -the -d option. Caution: this can make the probe modules considerably -larger. Note that this option does not deal with kernel-space modules: -see instead --all-modules below. -
--all-modules - -
-Equivalent to specifying "-dkernel" and a "-d" for each kernel module that is -currently loaded. Caution: this can make the probe modules considerably -larger. -
-o FILE - -
-Send standard output to named file. In bulk mode, percpu files will -start with FILE_ (FILE_cpu with -F) followed by the cpu number. -This supports strftime(3) formats for FILE. -
-c CMD - -
-Start the probes, run CMD, and exit when CMD finishes. This also has the -effect of setting target() to the pid of the command ran. -
-x PID - -
-Sets target() to PID. This allows scripts to be written that filter on -a specific process. Scripts run independent of the PID's lifespan. -
-e SCRIPT - -
-Run the given SCRIPT specified on the command line. -
-E SCRIPT - -
-Run the given SCRIPT specified. This SCRIPT is run in addition to the main -script specified, through -e, or as a script file. This option can be repeated -to run multiple scripts, and can be used in listing mode (-l/-L). -
-l PROBE - -
-Instead of running a probe script, just list all available probe -points matching the given single probe point. The pattern may include -wildcards and aliases, but not comma-separated multiple probe points. -The process result code will indicate failure if there are no matches. - -
- -

- -

-
-% stap -e 'probe syscall.* { }'
-[...]
-% stap -l 'syscall.*'
-syscall.accept
-[...]
-syscall.writev
-
-
- -
- - -

- -

-L PROBE - -
-Similar to "-l", but list matching probe points plus their available context variables. -When -v is set with -L, the output includes duplicate probe points which are distinguished -by their PC address. - -
- -

- -

-
-% stap -L 'process("/lib64/libpython*.so.*").mark("*")'
-process("/usr/lib64/libpython2.7.so.1.0").mark("function__entry") $arg1:long $arg2:long $arg3:long
-process("/usr/lib64/libpython2.7.so.1.0").mark("function__return") $arg1:long $arg2:long $arg3:long
-process("/usr/lib64/libpython3.6m.so.1.0").mark("function__entry") $arg1:long $arg2:long $arg3:long
-process("/usr/lib64/libpython3.6m.so.1.0").mark("function__return") $arg1:long $arg2:long $arg3:long
-process("/usr/lib64/libpython3.6m.so.1.0").mark("gc__done") $arg1:long
-process("/usr/lib64/libpython3.6m.so.1.0").mark("gc__start") $arg1:long
-process("/usr/lib64/libpython3.6m.so.1.0").mark("line") $arg1:long $arg2:long $arg3:long
-
-
- -
- - -

- -

-F - -
-Without -o option, load module and start probes, then detach from the module -leaving the probes running. -With -o option, run staprun in background as a daemon and show its pid. -
-S size[,N] - -
-Sets the maximum size of output file and the maximum number of output files. -If the size of output file will exceed -size - -, systemtap switches output file to the next file. And if the number of -output files exceed -N - -, systemtap removes the oldest output file. You can omit the second argument. -
-T TIMEOUT - -
-Exit the script after TIMEOUT seconds. -
--skip-badvars - -
-Ignore unresolvable or run-time-inaccessible context variables and -substitute with 0, without errors. -

-

--prologue-searching[=WHEN]
-Prologue-searching mode. Activate heuristics to work around incorrect debugging -information for function parameter $context variables. WHEN can be either -"never", "always", or "auto" (i.e. enabled by heuristic). If WHEN is missing, -then "always" is assumed. If the option is missing, then "auto" is assumed. -

-

--suppress-handler-errors - -
-Wrap all probe handlers into something like this - -
- -

- -

-
-try { ... } catch { next }
-
-
- -
- - -

- -block, which causes any runtime errors to be quietly suppressed. -Suppressed errors do not count against -MAXERRORS - -limits. In this mode, the -MAXSKIPPED - -limits are also suppressed, so that many errors and skipped probes -may be accumulated during a script's runtime. Any overall counts will -still be reported at shutdown. -

-

--compatible VERSION - -
-Suppress recent script language or tapset changes which are incompatible -with given older version of systemtap. This may be useful if a much older -systemtap script fails to run. See the DEPRECATION section for more -details. -

-

--check-version - -
-This option is used to check if the active script has any constructs -that may be systemtap version specific. See the DEPRECATION section -for more details. -

-

--clean-cache - -
-This option prunes stale entries from the cache directory. This is normally -done automatically after successful runs, but this option will trigger the -cleanup manually and then exit. See the CACHING section for more details about -cache limits. -

-

--color[=WHEN], --colour[=WHEN]
-This option controls coloring of error messages. WHEN can be either "never", -"always", or "auto" (i.e. enable only if at a terminal). If WHEN is missing, -then "always" is assumed. If the option is missing, then "auto" is assumed. -

-Colors can be modified using the SYSTEMTAP_COLORS environment variable. The -format must be of the form - -key1=val1:key2=val2:key3=val3 ...etc. - -Valid keys are - -"error", "warning", "source", "caret", and "token". - -Values constitute Select Graphic Rendition (SGR) parameter(s). Consult the -documentation of your terminal for the SGRs it supports. As an example, the -default colors would be expressed as - -error=01;31:warning=00;33:source=00;34:caret=01:token=01. - -If SYSTEMTAP_COLORS is absent, the default colors will be used. If it is empty -or invalid, coloring is turned off. -

-

--disable-cache - -
-This option disables all use of the cache directory. No files will be either -read from or written to the cache. -

-

--poison-cache - -
-This option treats files in the cache directory as invalid. No files will be -read from the cache, but resulting files from this run will still be written to -the cache. This is meant as a troubleshooting aid when stap's cached behavior -seems to be misbehaving. If it helped, there is a probably a bug in systemtap -that the developers would like you to report. -

-

--privilege[=stapusr | =stapsys | =stapdev]
-This option instructs stap to examine the script looking for constructs -which are not allowed for the specified privilege level (see UNPRIVILEGED USERS). -Compilation fails if any such -constructs are used. -If stapusr or stapsys are specified when using a compile server -(see --use-server), -the server will examine the script and, if compilation succeeds, the -server will cryptographically sign the resulting kernel module, certifying -that is it safe for use by users at the specified privilege level. -

-If --privilege has not been specified, --pN has not been specified with N < 5, -and the invoking user is not -root, and is not a member of the group stapdev, -then stap will automatically -add the appropriate --privilege option to the options already specified. -

-

--unprivileged - -
-This option is equivalent to --privilege=stapusr. -

-

--use-server[=HOSTNAME[:PORT] | =IP_ADDRESS[:PORT] | =CERT_SERIAL]
-Specify compile-server(s) to be used for compilation and/or in conjunction -with ---list-servers - -and ---trust-servers - -(see below) for listing. If no argument is -supplied, then the default in unprivileged mode (see ---privilege) - -is to select compatible servers which are trusted as SSL peers and as -module signers and currently online. Otherwise the default is to select -compatible servers which are trusted as SSL peers -and currently online. ---use-server - -may be -specified more than once, in which case a list of servers is accumulated -in the order specified. Servers may be specified by host name, ip address, or -by certificate serial number (obtained using ---list-servers). - -The latter is most commonly used when adding or revoking -trust in a server (see ---trust-servers - -below). If a server is specified by host name or ip address, then an optional -port number may be specified. This is useful for accessing servers which are -not on the local network or to specify a particular server. -

-IP addresses may be IPv4 or IPv6 addresses. -

-If a particular IPv6 address is link local and exists -on more than one interface, the intended interface may be specified by appending the address with -a percent sign (%) followed by the intended interface name. For example, -"fe80::5eff:35ff:fe07:55ca%eth0". -

-In order to specify a port number with an IPv6 address, it is necessary to enclose the IPv6 address -in square brackets ([]) in order to separate the port number from the rest of the address. For -example, "[fe80::5eff:35ff:fe07:55ca]:5000" or "[fe80::5eff:35ff:fe07:55ca%eth0]:5000". -

-If --use-server has not been specified, --pN has not been specified with N < 5, -and the invoking user not root, -is not a member of the group stapdev, but is a member of the group -stapusr, then stap will automatically -add --use-server to the options already specified. -

-

--use-server-on-error[=yes|=no]
-Instructs stap to retry compilation of a script using a compile server if -compilation on the local host fails in a manner which suggests that it might -succeed using a server. -If this option is not specified, the default is no. -If no argument is provided, then the default -is yes. Compilation will be retried for certain types of errors -(e.g. insufficient data or resources) which may not occur during -re-compilation by a compile -server. Compile servers will be selected automatically for the -re-compilation attempt as if --use-server was specified with no -arguments. -

-

--list-servers[=SERVERS] - -
-Display the status of the requested -SERVERS, - -where -SERVERS - -is a comma-separated -list of server attributes. The list of attributes is combined to filter the -list of servers displayed. Supported attributes are: -
-
-
all - -
-specifies all known servers (trusted SSL peers, trusted module signers, online -servers). -
specified - -
-specifies servers specified using ---use-server. - -
online - -
-filters the output by retaining information about servers which are currently -online. -
trusted - -
-filters the output by retaining information about servers which are trusted as -SSL peers. -
signer - -
-filters the output by retaining information about servers which are trusted as -module signers (see ---privilege). - -
compatible - -
-filters the output by retaining information about servers which are compatible -with the current kernel release and architecture. -
-
- -
-If no argument is provided, then the default is -specified. - -If no servers were specified using ---use-server, - -then the default servers for ---use-server - -are listed. -

-Note that ---list-servers - -uses the -avahi-daemon - -service to detect online servers. If this service is not available, then ---list-servers - -will fail to detect any -online - -servers. In order for ---list-servers - -to detect servers listening on IPv6 addresses, the -avahi-daemon - -configuration file -/etc/avahi/avahi-daemon.conf - -must contain an active "use-ipv6=yes" line. The service must be restarted after adding this line -in order for IPv6 to be enabled. -

-

--trust-servers[=TRUST_SPEC] - -
-Grant or revoke trust in compile-servers, specified using ---use-server - -as specified by TRUST_SPEC, -where TRUST_SPEC is a comma-separated list specifying the trust which is to -be granted or revoked. Supported elements are: -
-
-
ssl - -
-trust the specified servers as SSL peers. -
signer - -
-trust the specified servers as module signers (see ---privilege). - -Only root can specify -signer. - -
all-users - -
-grant trust as an ssl peer for all users on the local host. The default is -to grant trust as an ssl peer for the current user only. Trust as a module -signer is always granted for all users. Only root can specify -all-users. - -
revoke - -
-revoke the specified trust. The default is to grant it. -
no-prompt - -
-do not prompt the user for confirmation before carrying out the requested -action. The default is to prompt the user for confirmation. -
-
- -
-If no argument is provided, then the default is -ssl. - -If no servers were specified using ---use-server, - -then no trust will be granted or revoked. -
-Unless no-prompt has been specified, -the user will be prompted to confirm the trust to be granted or revoked before -the operation is performed. -

-

--dump-probe-types - -
-Dumps a list of supported probe types and exits. If ---privilege=stapusr - -is also specified, the list will be limited to probe types available to unprivileged users. -

-

--dump-probe-aliases - -
-Dumps a list of all probe aliases found in library files and exits. -

-

--dump-functions - -
-Dumps a list of all the public functions found in library files and exits. Also includes -their parameters and types. A function of type 'unknown' indicates a function -that does not return a value. Note that not all function/parameter types may be -resolved (these are also shown by 'unknown'). This features is very -memory-intensive and thus may not work properly with --use-server if the -target server imposes an rlimit on process memory (i.e. through the -~stap-server/.systemtap/rc configuration file, see stap-server(8)). -

-

--remote URL - -
-Set the execution target to the given host. This option may be -repeated to target multiple execution targets. Passes 1-4 are -completed locally as normal to build the script, and then pass 5 will -copy the module to the target and run it. Acceptable URL forms include: -
-
-
[USER@]HOSTNAME, ssh://[USER@]HOSTNAME
-This mode uses ssh, optionally using a username not matching your own. If a -custom ssh_config file is in use, add SendEnv LANG to retain -internationalization functionality. -
libvirt://DOMAIN, libvirt://DOMAIN/LIBVIRT_URI
-This mode uses stapvirt to execute the script on a domain managed by -libvirt. Optionally, LIBVIRT_URI may be specified to connect to a specific -driver and/or a remote host. For example, to connect to the local privileged -QEMU driver, use: - -
- -

- -

-
---remote libvirt://MyDomain/qemu:///system
-
-
- -
- - -

- -See the page at - -<http://libvirt.org/uri.html> - -for supported URIs. Also see stapvirt(1) for more information on how to -prepare the domain for stap probing. -

unix:PATH
-This mode connects to a UNIX socket. This can be used with a QEMU virtio-serial -port for executing scripts inside a running virtual machine. -
direct://
-Special loopback mode to run on the local host. -
-
- -
-

-

--remote-prefix - -
-Prefix each line of remote output with "N: ", where N is the index of the remote -execution target from which the given line originated. -

-

--download-debuginfo[=OPTION] - -
-Enable, disable or set a timeout for the automatic debuginfo downloading feature -offered by abrt as specified by OPTION, where OPTION is one of the following: -
-
-
yes - -
-enable automatic downloading of debuginfo with no timeout. This is the same -as not providing an OPTION value to ---download-debuginfo - -
no - -
-explicitly disable automatic downloading of debuginfo. This is the same as -not using the option at all. -
ask - -
-show abrt output, and ask before continuing download. No timeout will be set. -
<timeout> - -
-specify a timeout as a positive number to stop the download if it is taking -longer than <timeout> seconds. -
-
- -
-

-

--rlimit-as=NUM - -
-Specify the maximum size of the process's virtual memory (address space), -in bytes. -

-

--rlimit-cpu=NUM - -
-Specify the CPU time limit, in seconds. -

-

--rlimit-nproc=NUM - -
-Specify the maximum number of processes that can be created. -

-

--rlimit-stack=NUM - -
-Specify the maximum size of the process stack, in bytes. -

-

--rlimit-fsize=NUM - -
-Specify the maximum size of files that the process may create, in bytes. -

-

--sysroot=DIR - -
-Specify sysroot directory where target files (executables, libraries, etc.) -are located. With -r RELEASE, the sysroot will be searched for the -appropriate kernel build directory. With -r /DIR, however, the sysroot -will not be used to find the kernel build. -

-

--sysenv=VAR=VALUE - -
-Provide an alternate value for an environment variable where the value on a -remote system differs. Path variables (e.g. PATH, LD_LIBRARY_PATH) are assumed -to be relative to the directory provided by --sysroot, if provided. -

-

--suppress-time-limits - -
-Disable -DSTP_OVERLOAD related options as well as -DMAXACTION and -DMAXTRYLOCK. -This option requires guru mode. -

-

--runtime=MODE - -
-Set the pass-5 runtime mode. Valid options are kernel (default), -dyninst and bpf. See -ALTERNATE RUNTIMES - -below for more information. -

-

--dyninst - -
-Shorthand for --runtime=dyninst. -

-

--bpf - -
-Shorthand for --runtime=bpf. -

-

--save-uprobes - -
-On machines that require SystemTap to build its own uprobes module (kernels -prior to version 3.5), this option instructs SystemTap to also save a copy of -the module in the current directory (creating a new "uprobes" directory first). -

-

--target-namespaces=PID - -
-Allow for a set of target namespaces to be set based on the namespaces the -given PID is in. This is for namespace-aware tapset functions. If the target -namespaces was not set, the target defaults to the stap process' -namespaces. -

-

--monitor=INTERVAL - -
-Enables an interface to display status information about the module(uptime, -module name, invoker uid, memory sizes, global variables, list of probes with -their statistics). An optional argument INTERVAL can be supplied to set the -refresh rate in seconds of the status window. The module can also be controlled by a list -of commands using the following keys: -
-
-
c - -
-Resets all global variables to their initial values or zeroes them if they -did not have an initial value. -
s - -
-Rotates the attribute used to sort the list of probes. -
t - -
-Brings up a prompt to allow toggling(on/off) of probes by index. Probe points -are still affected by their conditions. -
r - -
-Resumes the script by toggling on all probes. -
p - -
-Pauses the script by toggling off all probes. -
x - -
-Hides/shows the status window. This allows for more output to be seen. -
navigation-keys - -
-The navigation keys can be used to scroll up and down the windows. -
Tab - -
-Toggle scrolling between status and output windows. -
-
- -

-

--example - -
-This option is used to run example scripts without having to enter the -entire path to the script. Example scripts can be found in the directory -specified in the -stappaths(7) - -manual page. -

-

--no-global-var-display - -
-This option is used to disable the automatic logging of unused global -variables at the end of a stap session. -

-

-  -

ARGUMENTS

- -

-Any additional arguments on the command line are passed to the script -parser for substitution. See below. -

-  -

SCRIPT LANGUAGE

- -

-The systemtap script language resembles -awk and C. - -There are two main outermost constructs: probes and functions. Within -these, statements and expressions use C-like operator syntax and -precedence. -

-  -

GENERAL SYNTAX

- -Whitespace is ignored. Three forms of comments are supported: -
-
- -# ... shell style, to the end of line, except for $# and @# - -
- -// ... C++ style, to the end of line - -
- -/* ... C style ... */ - -
- -Literals are either strings enclosed in double-quotes (passing through -the usual C escape codes with backslashes, and with adjacent string -literals glued together, also as in C), or integers (in decimal, -hexadecimal, or octal, using the same notation as in C). All strings -are limited in length to some reasonable value (a few hundred bytes). -Integers are 64-bit signed quantities, although the parser also -accepts (and wraps around) values above positive 2**63. -

- -In addition, script arguments given at the end of the command line may -be inserted. Use -$1 ... $<NN> - -for insertion unquoted, -@1 ... @<NN> - -for insertion as a string literal. The number of arguments may be accessed -through -$# - -(as an unquoted number) or through -@# - -(as a quoted number). These may be used at any place a token may begin, -including within the preprocessing stage. Reference to an argument -number beyond what was actually given is an error. -

-  -

PREPROCESSING

- -A simple conditional preprocessing stage is run as a part of parsing. -The general form is similar to the -cond ? exp1 : exp2 - -ternary operator: - -
- -

- -

-
-%( CONDITION %? TRUE-TOKENS %)
-%( CONDITION %? TRUE-TOKENS %: FALSE-TOKENS %)
-
-
- -
- - -

- -The CONDITION is either an expression whose format is determined by its -first keyword, or a string literals comparison or a numeric literals -comparison. It can be also composed of many alternatives and conjunctions -of CONDITIONs (meant as in previous sentence) using || and && respectively. -However, parentheses are not supported yet, so remembering that conjunction -takes precedence over alternative is important. -

- -If the first part is the identifier -kernel_vr or kernel_v - -to refer to the kernel version number, with ("2.6.13-1.322FC3smp") or -without ("2.6.13") the release code suffix, then -the second part is one of the six standard numeric comparison operators -<, <=, ==, !=, >, and >=, - -and the third part is a string literal that contains an RPM-style -version-release value. The condition is deemed satisfied if the -version of the target kernel (as optionally overridden by the --r - -option) compares to the given version string. The comparison is -performed by the glibc function -strverscmp. - -As a special case, if the operator is for simple equality -(==), - -or inequality -(!=), - -and the third part contains any wildcard characters -(* or ? or [), - -then the expression is treated as a wildcard (mis)match as evaluated -by -fnmatch. - -

- -If, on the other hand, the first part is the identifier -arch - -to refer to the processor architecture (as named by the kernel -build system ARCH/SUBARCH), then the second -part is one of the two string comparison operators -== or !=, - -and the third part is a string literal for matching it. This -comparison is a wildcard (mis)match. -

- -Similarly, if the first part is an identifier like -CONFIG_something - -to refer to a kernel configuration option, then the second part is -== or !=, - -and the third part is a string literal for matching the value -(commonly "y" or "m"). Nonexistent or unset kernel configuration -options are represented by the empty string. This comparison is also -a wildcard (mis)match. -

- -If the first part is the identifier -systemtap_v, - -the test refers to the systemtap compatibility version, which may be -overridden for old scripts with the ---compatible - -flag. The comparison operator is as is for -kernel_v - -and the right operand is a version string. See also the DEPRECATION -section below. -

- -If the first part is the identifier -systemtap_privilege, - -the test refers to the privilege level that the systemtap script is -compiled with. Here the second part is -== or !=, - -and the third part is a string literal, either "stapusr" or "stapsys" -or "stapdev". -

- -If the first part is the identifier -guru_mode, - -the test refers to if the systemtap script is -compiled with guru_mode. Here the second part is -== or !=, - -and the third part is a number, either 1 or 0. -

- -If the first part is the identifier -runtime, - -the test refers to the systemtap runtime mode. See -ALTERNATE RUNTIMES - -below for more information on runtimes. -The second -part is one of the two string comparison operators -== or !=, - -and the third part is a string literal for matching it. This -comparison is a wildcard (mis)match. -

- -Otherwise, the CONDITION is expected to be a comparison between two string -literals or two numeric literals. In this case, the arguments are the only -variables usable. -

- -The TRUE-TOKENS and FALSE-TOKENS are zero or more general parser -tokens (possibly including nested preprocessor conditionals), and are -passed into the input stream if the condition is true or false. For -example, the following code induces a parse error unless the target -kernel version is newer than 2.6.5: - -
- -

- -

-
-%( kernel_v <= "2.6.5" %? **ERROR** %) # invalid token sequence
-
-
- -
- - -

- -The following code might adapt to hypothetical kernel version drift: - -
- -

- -

-
-probe kernel.function (
-  %( kernel_v <= "2.6.12" %? "__mm_do_fault" %:
-     %( kernel_vr == "2.6.13*smp" %? "do_page_fault" %:
-        UNSUPPORTED %) %)
-) { /* ... */ }
-
-%( arch == "ia64" %?
-   probe syscall.vliw = kernel.function("vliw_widget") {}
-%)
-
-
- -
- - -

- -

-  -

PREPROCESSOR MACROS

- -The preprocessor also supports a simple macro facility, run as a -separate pass before conditional preprocessing. -

- -Macros are defined using the following construct: - -
- -

- -

-
-@define NAME %( BODY %)
-@define NAME(PARAM_1, PARAM_2, ...) %( BODY %)
-
-
- -
- - -

- -Macros, and parameters inside a macro body, are both invoked by -prefixing the macro name with an @ symbol: - -
- -

- -

-
-@define foo %( x %)
-@define add(a,b) %( ((@a)+(@b)) %)
-
-   @foo = @add(2,2)
-
-
- -
- - -

- -

- -Macro expansion is currently performed in a separate pass before -conditional compilation. Therefore, both TRUE- and FALSE-tokens in -conditional expressions will be macroexpanded regardless of how the -condition is evaluated. This can sometimes lead to errors: - -
- -

- -

-
-// The following results in a conflict:
-%( CONFIG_UTRACE == "y" %?
-    @define foo %( process.syscall %)
-%:
-    @define foo %( **ERROR** %)
-%)
-
-// The following works properly as expected:
-@define foo %(
-  %( CONFIG_UTRACE == "y" %? process.syscall %: **ERROR** %)
-%)
-
-
- -
- - -

- -The first example is incorrect because both @defines are evaluated in -a pass prior to the conditional being evaluated. -

-Normally, a macro definition is local to the file it occurs in. Thus, -defining a macro in a tapset does not make it available to the user of -the tapset. Publically available library macros can be defined by -including .stpm files on the tapset search path. These files may only -contain @define constructs, which become visible across all tapsets -and user scripts. Optionally, within the .stpm files, a public macro -definition can be surrounded by a preprocessor conditional as described -above. -

-  -

CONSTANTS

- -Tapsets or guru-mode user scripts can access header file constant tokens, -typically macros, using built-in @const() operator. The respective header -file inclusion is possible either via the tapset library, or using a -top-level guru mode embedded-C construct. This results in appropriate -embedded C pragma comments setting. - -
- -

- -

-
-@const("STP_SKIP_BADVARS")
-
-
- -
- - -

- -

-  -

VARIABLES

- -Identifiers for variables and functions are an alphanumeric sequence, -and may include _ and $ characters. They may not start with a -plain digit, as in C. Each variable is by default local to the probe -or function statement block within which it is mentioned, and therefore -its scope and lifetime is limited to a particular probe or function -invocation. -

- -Scalar variables are implicitly typed as either string or integer. -Associative arrays also have a string or integer value, and a -tuple of strings and/or integers serving as a key. Here are a -few basic expressions. - -
- -

- -

-
-var1 = 5
-var2 = "bar"
-array1 [pid()] = "name"     # single numeric key
-array2 ["foo",4,i++] += 5   # vector of string/num/num keys
-if (["hello",5,4] in array2) println ("yes")  # membership test
-
-
- -
- - -

- -

- -The translator performs -type inference - -on all identifiers, including array indexes and function parameters. -Inconsistent type-related use of identifiers signals an error. -

- -Variables may be declared global, so that they are shared amongst all -probes and functions and live as long as the entire systemtap session. There is one -namespace for all global variables, regardless of which script file -they are found within. Concurrent access to global variables is -automatically protected with locks, see the -SAFETY AND SECURITY - -section for more details. A global declaration may be written at the -outermost level anywhere, not within a block of code. Global -variables which are written but never read will be displayed -automatically at session shutdown. The translator will -infer for each its value type, and if it is used as an array, its key -types. Optionally, scalar globals may be initialized with a string -or number literal. The following declaration marks variables as global. - -
- -

- -

-
-global var1, var2, var3=4
-
-
- -
- - -

- -

- -Global variables can also be set as module options. One can do this by either -using the -G option, or the module must first be compiled using stap -p4. -Global variables can then be set on the command line when calling staprun on -the module generated by stap -p4. See -staprun(8) - -for more information. -

- -The scope of a global variable may be limited to a tapset or -user script file using private keyword. The global keyword is optional when -defining a private global variable. Following declaration marks var1 and var2 -private globals. - -
- -

- -

-
-private global var1=2
-private var2
-
-
- -
- - -

- -

- -Arrays are limited in size by the MAXMAPENTRIES variable -- see the -SAFETY AND SECURITY - -section for details. Optionally, global arrays may be declared with a -maximum size in brackets, overriding MAXMAPENTRIES for that array only. -Note that this doesn't indicate the type of keys for the array, just the -size. - -
- -

- -

-
-global tiny_array[10], normal_array, big_array[50000]
-
-
- -
- - -

- -

- -Arrays may be configured for wrapping using the '%' suffix. This -causes older elements to be overwritten if more elements are inserted -than the array can hold. This works for both associative and statistics -typed arrays. - -
- -

- -

-
-global wrapped_array1%[10], wrapped_array2%
-
-
- -
- - -

- -

-

- -Many types of probe points provide context variables, which are -run-time values, safely extracted from the kernel or userspace program -being probed. These are prefixed with the $ character. The -CONTEXT VARIABLES section in -stapprobes(3stap) - -lists what is available for each type of probe point. These context -variables become normal string or numeric scalars once they are stored -in normal script variables. See the TYPECASTING section below on how -to to turn them back into typed pointers for further processing as -context variables. -

-  -

STATEMENTS

- -Statements enable procedural control flow. They may occur within -functions and probe handlers. The total number of statements executed -in response to any single probe event is limited to some number -defined by the MAXACTION macro in the translated C code, and is in the -neighbourhood of 1000. -
-
EXP
-Execute the string- or integer-valued expression and throw away -the value. -
{ STMT1 STMT2 ... } - -
-Execute each statement in sequence in this block. Note that -separators or terminators are generally not necessary between statements. -
; - -
-Null statement, do nothing. It is useful as an optional separator between -statements to improve syntax-error detection and to handle certain -grammar ambiguities. -
if (EXP) STMT1 [ else STMT2 ] - -
-Compare integer-valued EXP to zero. Execute the first (non-zero) -or second STMT (zero). -
while (EXP) STMT - -
-While integer-valued EXP evaluates to non-zero, execute STMT. -
for (EXP1; EXP2; EXP3) STMT - -
-Execute EXP1 as initialization. While EXP2 is non-zero, execute -STMT, then the iteration expression EXP3. -
foreach (VAR in ARRAY [ limit EXP ]) STMT - -
-Loop over each element of the named global array, assigning current -key to VAR. The array may not be modified within the statement. -By adding a single -+ or - - -operator after the VAR or the ARRAY identifier, the iteration will -proceed in a sorted order, by ascending or descending index or value. -If the array contains statistics aggregates, adding the desired -@operator - -between the ARRAY identifier and the -+ or - - -will specify the sorting aggregate function. See the STATISTICS -section below for the ones available. Default is -@count. - -Using the optional -limit - -keyword limits the number of loop iterations to EXP times. EXP is -evaluated once at the beginning of the loop. -
foreach ([VAR1, VAR2, ...] in ARRAY [ limit EXP ]) STMT - -
-Same as above, used when the array is indexed with a tuple of keys. -A sorting suffix may be used on at most one VAR or ARRAY identifier. -
foreach ([VAR1, VAR2, ...] in ARRAY [INDEX1, INDEX2, ...] [ limit EXP ]) STMT - -
-Same as above, where iterations are limited to elements in the array where -the keys match the index values specified. The symbol * can be used to specify -an index and will be treated as a wildcard. -
foreach (VAR0 = VAR in ARRAY [ limit EXP ]) STMT - -
-This variant of foreach saves current value into VAR0 on each -iteration, so it is the same as ARRAY[VAR]. This also works with a -tuple of keys. Sorting suffixes on VAR0 have the same effect as on ARRAY. -
foreach (VAR0 = VAR in ARRAY [INDEX1, INDEX2, ...] [ limit EXP ]) STMT - -
-Same as above, where iterations are limited to elements in the array where the -keys match the index values specified. The symbol * can be used to specify -an index and will be treated as a wildcard. -
break, continue - -
-Exit or iterate the innermost nesting loop -(while or for or foreach) - -statement. -
return EXP - -
-Return EXP value from enclosing function. If the function's value is -not taken anywhere, then a return statement is not needed, and the -function will have a special "unknown" type with no return value. -
next - -
-Return now from enclosing probe handler. This is especially useful in -probe aliases that apply event filtering predicates. When used in functions, -the execution will be immediately transferred to the next overloaded function. -
try { STMT1 } catch { STMT2 } - -
-Run the statements in the first block. Upon any run-time errors, abort -STMT1 and start executing STMT2. Any errors in STMT2 will propagate to -outer try/catch blocks, if any. -
try { STMT1 } catch(VAR) { STMT2 } - -
-Same as above, plus assign the error message to the string scalar variable VAR. -
delete ARRAY[INDEX1, INDEX2, ...] - -
-Remove from ARRAY the element specified by the index tuple. -If the index tuple contains a * in place of an index, the * is treated as a -wildcard and all elements with keys that match the index tuple will be removed -from ARRAY. -The value will no -longer be available, and subsequent iterations will not report the element. -It is not an error to delete an element that does not exist. -
delete ARRAY - -
-Remove all elements from ARRAY. -
delete SCALAR - -
-Removes the value of SCALAR. Integers and strings are cleared to 0 and "" -respectively, while statistics are reset to the initial empty state. -

-

-  -

EXPRESSIONS

- -Systemtap supports a number of operators that have the same general syntax, -semantics, and precedence as in C and awk. Arithmetic is performed as per -typical C rules for signed integers. Division by zero or overflow is -detected and results in an error. -
-
binary numeric operators
-* / % + - >> << & ^ | && || - -
binary string operators
-. - -(string concatenation) -
numeric assignment operators
-= *= /= %= += -= >>= <<= &= ^= |= - -
string assignment operators
-= .= - -
unary numeric operators
-+ - ! ~ ++ -- - -
binary numeric, string comparison or regex matching operators
-< > <= >= == != =~ !~ - -
ternary operator
-cond ? exp1 : exp2 - -
grouping operator
-( exp ) - -
function call
-fn ([ arg1, arg2, ... ]) - -
array membership check
-exp in array - -
- -[exp1, exp2, ...] in array - -
- -[*, *, ... ]in array - -

-

-  -

REGULAR EXPRESSION MATCHING

- -The scripting language supports regular expression matching. -The basic syntax is as follows: - -
- -

- -

-
-exp =~ regex
-exp !~ regex
-
-
- -
- - -

- -(The first operand must be an expression evaluating to a string; the -second operand must be a string literal containing a syntactically -valid regular expression.) -

- -The regular expression syntax supports most of the features of POSIX -Extended Regular Expressions, except for subexpression reuse ("\1") -functionality. -

- -After a successful match, the contents of the matched -string and subexpressions can be extracted using the -matched() and ngroups() tapset functions as follows: - -
- -

- -

-
-if ("an example string" =~ "str(ing)") {
-  matched(0) // -> returns "string", the matched substring
-  matched(1) // -> returns "ing", the 1st matched subexpression
-  ngroups()  // -> returns 2, the number of matched groups
-}
-
-
- -
- - -

- -

- -

-  -

PROBES

- -The main construct in the scripting language identifies probes. -Probes associate abstract events with a statement block ("probe -handler") that is to be executed when any of those events occur. The -general syntax is as follows: - -
- -

- -

-
-probe PROBEPOINT [, PROBEPOINT] { [STMT ...] }
-probe PROBEPOINT [, PROBEPOINT] if (CONDITION) { [STMT ...] }
-
-
- -
- - -

- -

- -Events are specified in a special syntax called "probe points". There -are several varieties of probe points defined by the translator, and -tapset scripts may define further ones using aliases. Probe points -may be wildcarded, grouped, or listed in preference sequences, or -declared optional. More details on probe point syntax and semantics -are listed on the -stapprobes(3stap) - -manual page. -

- -The probe handler is interpreted relative to the context of each -event. For events associated with kernel code, this context may -include -variables - -defined in the -source code - -at that spot. These "context variables" are presented to the script -as variables whose names are prefixed with "$". They may be accessed -only if the kernel's compiler preserved them despite optimization. -This is the same constraint that a debugger user faces when working -with optimized code. In addition, the objects must exist in paged-in -memory at the moment of the systemtap probe handler's execution, -because systemtap must not cause (suppresses) any additional paging. -Some probe types have very little context. -See the -stapprobes(3stap) - -man pages to see the kinds of context variables available at each kind -of probe point. As of systemtap version 4.3, functions called from -the handlers of some probe point types may also refer to context -variables. These are treated as if a clone of that function was inlined -into the calling probe handler and $variables evaluated in its context. -

- -Probes may be decorated with an -arming condition, - -consisting of a simple boolean expression on read-only global script -variables. While disarmed (inactive, condition evaluates to false), some probe -types reduce or eliminate their run-time overheads. When an arming -condition evaluates to true, probes will be -soon - -re-armed, and their probe handlers will start getting called as the -events fire. (Some events may be lost during the arming interval. If -this is unacceptable, do not use arming conditions for those probes.) -Example of the syntax: - -
- -

- -

-
-probe timer.us(TIMER) if (enabled) {
-}
-
-
- -
- - -

- -

- -New probe points may be defined using "aliases". Probe point aliases -look similar to probe definitions, but instead of activating a probe -at the given point, it just defines a new probe point name as an alias -to an existing one. There are two types of alias, i.e. the prologue -style and the epilogue style which are identified by "=" and "+=" -respectively. -

- -For prologue style alias, the statement block that follows an alias -definition is implicitly added as a prologue to any probe that refers -to the alias. While for the epilogue style alias, the statement block -that follows an alias definition is implicitly added as an epilogue to -any probe that refers to the alias. For example: - -
- -

- -

-
-probe syscall.read = kernel.function("sys_read") {
-  fildes = $fd
-  if (execname() == "init") next  # skip rest of probe
-}
-
-
- -
- - -

- -defines a new probe point - -syscall.read, - - -which expands to - -kernel.function(sys_read), - - -with the given statement as a prologue, which is useful to predefine -some variables for the alias user and/or to skip probe processing -entirely based on some conditions. And - -
- -

- -

-
-probe syscall.read += kernel.function("sys_read") {
-  if (tracethis) println ($fd)
-}
-
-
- -
- - -

- -defines a new probe point with the given statement as an epilogue, which -is useful to take actions based upon variables set or left over by the -the alias user. Please note that in each case, the statements in the -alias handler block are treated ordinarily, so that variables assigned -there constitute mere initialization, not a macro substitution. -

-An alias is used just like a built-in probe type. - -
- -

- -

-
-probe syscall.read {
-  printf("reading fd=%d\n", fildes)
-  if (fildes > 10) tracethis = 1
-}
-
-
- -
- - -

- -

-  -

FUNCTIONS

- -Systemtap scripts may define subroutines to factor out common work. -Functions take any number of scalar (integer or string) arguments, and -must return a single scalar (integer or string). An example function -declaration looks like this: - -
- -

- -

-
-function thisfn (arg1, arg2) {
-   return arg1 + arg2
-}
-
-
- -
- - -

- -Note the general absence of type declarations, which are instead -inferred by the translator. However, if desired, a function -definition may include explicit type declarations for its return value -and/or its arguments. This is especially helpful for embedded-C -functions. In the following example, the type inference engine need -only infer type type of arg2 (a string). - -
- -

- -

-
-function thatfn:string (arg1:long, arg2) {
-   return sprint(arg1) . arg2
-}
-
-
- -
- - -

- -Functions may call others or themselves -recursively, up to a fixed nesting limit. This limit is defined by -the MAXNESTING macro in the translated C code and is in the neighbourhood of 10. -

-Functions may be marked private using the private keyword to limit their scope -to the tapset or user script file they are defined in. An example definition of -a private function follows: - -
- -

- -

-
-private function three:long () { return 3 }
-
-
- -
- - -

- -

-Functions terminating without reaching an explicit return statement will -return an implicit 0 or "", determined by type inference. -

-Functions may be overloaded during both runtime and compile time. -

-Runtime overloading allows the executed function to be selected while the -module is running based on runtime conditions and is achieved using the -"next" statement in script functions and STAP_NEXT macro for embedded-C -functions. For example, -

- -
- -

- -

-
-function f() { if (condition) next; print("first function") }
-function f() %{ STAP_NEXT; print("second function") %}
-function f() { print("third function") }
-
-
- -
- - -

- -

-During a functioncall f(), the execution will transfer to the third function -if condition evaluates to true and print "third function". Note that the second -function is unconditionally nexted. -

-Parameter overloading allows the function to be executed to be selected -at compile time based on the number of arguments provided to the -functioncall. For example, -

- -
- -

- -

-
-function g() { print("first function") }
-function g(x) { print("second function") }
-g() -> "first function"
-g(1) -> "second function"
-
-
- -
- - -

- -

-Note that runtime overloading does not occur in the above example, as exactly -one function will be resolved for the functioncall. The use of a next statement -inside a function while no more overloads remain will trigger a runtime exception -Runtime overloading will only occur if the functions have the same arity, -functions with the same name but different number of parameters are completely -unrelated. -

-Execution order is determined by a priority value which may be specified. -If no explicit priority is specified, user script functions are given a -higher priority than library functions. User script functions and library -functions are assigned a default priority value of 0 and 1 respectively. -Functions with the same priority are executed in declaration order. For example, -

- -
- -

- -

-
-function f():3 { if (condition) next; print("first function") }
-function f():1 { if (condition) next; print("second function") }
-function f():2 { print("third function") }
-
-
- -
- - -

- -

-Since the second function has highest priority, it is executed first. -The first function is never executed as there no "next" statements in -the third function to transfer execution. -

-  -

PRINTING

- -

-There are a set of function names that are specially treated by the translator. -They format values for printing to the standard systemtap output stream in a -more convenient way (note that data generated in the kernel module need to get -transferred to user-space in order to get printed). -

-
  The -sprint* - -variants return the formatted string instead of printing it. -

-
print, sprint - -
-Print one or more values of any type, concatenated directly together. -
println, sprintln - -
-Print values like -print and sprint, - -but also append a newline. -
printd, sprintd - -
-Take a string delimiter and two or more values of any type, and print the -values with the delimiter interposed. The delimiter must be a literal -string constant. -
printdln, sprintdln - -
-Print values with a delimiter like -printd and sprintd, - -but also append a newline. -
printf, sprintf - -
-Take a formatting string and a number of values of corresponding types, -and print them all. The format must be a literal string constant. -
-

- -The -printf - -formatting directives similar to those of C, except that they are -fully type-checked by the translator: -

-
-
%b
-Writes a binary blob of the value given, instead of ASCII text. The width specifier determines the number of bytes to write; valid specifiers are %b %1b %2b %4b %8b. Default (%b) is 8 bytes. -
%c
-Character. -
%d,%i
-Signed decimal. -
%m
-Safely reads kernel (without #) or user (with #) memory at the given address, outputs its content. The optional precision specifier (not field width) determines the number of bytes to read - default is 1 byte. %10.4m prints 4 bytes of the memory in a 10-character-wide field. Note, on some architectures user memory can still be read without #. -
%M
-Same as %m, but outputs in hexadecimal. The minimal size of output is double the optional precision specifier - default is 1 byte (2 hex chars). %10.4M prints 4 bytes of the memory as 8 hexadecimal characters in a 10-character-wide field. %.*M hex-dumps a given number of bytes from a given buffer. -
%o
-Unsigned octal. -
%p
-Unsigned pointer address. -
%s
-String. -
%u
-Unsigned decimal. -
%x
-Unsigned hex value, in all lower-case. -
%X
-Unsigned hex value, in all upper-case. -
%%
-Writes a %. -
-
- -

- -The -# - -flag selects the alternate forms. For octal, this prefixes a 0. For hex, this -prefixes 0x or 0X, depending on case. For characters, this escapes -non-printing values with either C-like escapes or raw octal. In the case of %#m/%#M, -this safely accesses user space memory rather than kernel space memory. -

- -Examples: - -
- -

- -

-
-a = "alice", b = "bob", p = 0x1234abcd, i = 123, j = -1, id[a] = 1234, id[b] = 4567
-print("hello")
-        Prints: hello
-println(b)
-        Prints: bob\n
-println(a . " is " . sprint(16))
-        Prints: alice is 16
-foreach (name in id)  printdln("|", strlen(name), name, id[name])
-        Prints: 5|alice|1234\n3|bob|4567
-printf("%c is %s; %x or %X or %p; %d or %u\n",97,a,p,p,p,j,j)
-        Prints: a is alice; 1234abcd or 1234ABCD or 0x1234abcd; -1 or 18446744073709551615\n
-printf("2 bytes of kernel buffer at address %p: %2m", p, p)
-        Prints: 2 byte of kernel buffer at address 0x1234abcd: <binary data>
-printf("%4b", p)
-        Prints (these values as binary data): 0x1234abcd
-printf("%#o %#x %#X\n", 1, 2, 3)
-        Prints: 01 0x2 0X3
-printf("%#c %#c %#c\n", 0, 9, 42)
-        Prints: \000 \t *
-
-
- -
- - -

- -

-  -

STATISTICS

- -It is often desirable to collect statistics in a way that avoids the -penalties of repeatedly exclusive locking the global variables those -numbers are being put into. Systemtap provides a solution using a -special operator to accumulate values, and several pseudo-functions to -extract the statistical aggregates. -

- -The aggregation operator is -<<<, - -and resembles an assignment, or a C++ output-streaming operation. -The left operand specifies a scalar or array-index lvalue, which must -be declared global. The right operand is a numeric expression. The -meaning is intuitive: add the given number to the pile of numbers to -compute statistics of. (The specific list of statistics to gather -is given separately, by the extraction functions.) - -
- -

- -

-
-foo <<< 1
-stats[pid()] <<< memsize
-
-
- -
- - -

- -

- -The extraction functions are also special. For each appearance of a -distinct extraction function operating on a given identifier, the -translator arranges to compute a set of statistics that satisfy it. -The statistics system is thereby "on-demand". Each execution of -an extraction function causes the aggregation to be computed for -that moment across all processors. -

- -Here is the set of extractor functions. The first argument of each is -the same style of lvalue used on the left hand side of the accumulate -operation. The -@count(v), @sum(v), @min(v), @max(v), @avg(v), - -@variance(v[, b]) extractor functions compute the -number/total/minimum/maximum/average/variance -of all accumulated values. The resulting values are all simple -integers. Arrays containing aggregates may be sorted and iterated. -See the -foreach - -construct above. -

- -

-Variance uses Welford's online algorithm. The calculations are based -on integer arithmetic, and so may suffer from low precision and overflow. -To improve this, @variance(v[, b]) accepts an optional parameter b, the -bit-shift, ranging from 0 (default) to 62, for internal scaling. Only one -value of bit-shift may be used with given global variable. A larger bitshift -value increases precision, but increases the likelihood of overflow. -

- -
- -

- -

-
-$ stap -e \
-> 'global x probe oneshot { for(i=1;i<=5;i++) x<<<i println(@variance(x)) }'
-12
-$ stap -e \
-> 'global x probe oneshot { for(i=1;i<=5;i++) x<<<i println(@variance(x,1)) }'
-2
-$ python3 -c 'import statistics; print(statistics.variance([1, 2, 3, 4, 5]))'
-2.5
-$
-
-
- -
- - -

- -

-Overflow (from internal multiplication of large numbers) may occur and -may cause a negative variance result. Consider normalizing your input -data. Adding or subtracting a fixed value from all variance inputs -preserves the original variance. Dividing the variance inputs by a fixed -value shrinks the original variance by that value squared. -

- -

-Histograms are also available, but are more complicated because they -have a vector rather than scalar value. -@hist_linear(v,start,stop,interval) - -represents a linear histogram from "start" to "stop" (inclusive) -by increments of "interval". The interval must be positive. Similarly, -@hist_log(v) - -represents a base-2 logarithmic histogram. Printing a histogram -with the -print - -family of functions renders a histogram object as a tabular -"ASCII art" bar chart. -

- -
- -

- -

-
-probe timer.profile {
-  x[1] <<< pid()
-  x[2] <<< uid()
-  y <<< tid()
-}
-global x // an array containing aggregates
-global y // a scalar
-probe end {
-  foreach ([i] in x @count+) {
-     printf ("x[%d]: avg %d = sum %d / count %d\n",
-             i, @avg(x[i]), @sum(x[i]), @count(x[i]))
-     println (@hist_log(x[i]))
-  }
-  println ("y:")        
-  println (@hist_log(y))  
-}
-
-
- -
- - -

- -

-The counts of each histogram bucket may be individually accessed via -the [index] operator. Each bucket is addressed from 1 through N -(for each natural bucket). In addition bucket #0 counts all the -samples beneath the start value, and bucket #N+1 counts all the -samples above the stop value. Histogram buckets (including the two -out-of-range buckets) may also be iterated with foreach. -

- -
- -

- -

-
-global x
-probe oneshot {
-  x <<< -100
-  x <<< 1
-  x <<< 2
-  x <<< 3
-  x <<< 100
-  foreach (bucket in @hist_linear(x,1,3,1))
-    // expecting   1 out-of-range-low bucket
-    //             3 payload buckets
-    //             1 out-of-range-high bucket
-    printf("bucket %d count %d\n",
-           bucket, @hist_linear(x,1,3,1)[bucket])
-}
-
-
- -
- - -

- -

-  -

TYPECASTING

- -Once a pointer (see the CONTEXT VARIABLES section of -stapprobes(3stap)) - -has been saved into a script integer variable, the translator loses the type -information necessary to access members from that pointer. Using the -@cast() - -operator tells the translator how to interpret the number as a typed pointer. - -
- -

- -

-
-@cast(p, "type_name"[, "module"])->member
-
-
- -
- - -

- -

- -This will interpret -p - -as a pointer to a struct/union named -type_name - -and dereference the -member - -value. Further -->subfield - -expressions may be appended to dereference more levels. Note that for direct -dereferencing of a pointer {kernel,user}_{char,int,...}($p) should be used. -(Refer to stapfuncs(5) for more details.) - -NOTE: -the same dereferencing operator --> - -is used to refer to both direct containment or pointer indirection. -Systemtap automatically determines which. The optional -module - -tells the translator where to look for information about that type. -Multiple modules may be specified as a list with -: - -separators. If the module is not specified, it will default either to -the probe module for dwarf probes, or to "kernel" for functions and all -other probes types. -

- -The translator can create its own module with type information from a header -surrounded by angle brackets, in case normal debuginfo is not available. For -kernel headers, prefix it with "kernel" to use the appropriate build system. -All other headers are built with default GCC parameters into a user module. -Multiple headers may be specified in sequence to resolve a codependency. - -
- -

- -

-
-@cast(tv, "timeval", "<sys/time.h>")->tv_sec
-@cast(task, "task_struct", "kernel<linux/sched.h>")->tgid
-@cast(task, "task_struct",
-      "kernel<linux/sched.h><linux/fs_struct.h>")->fs->umask
-
-
- -
- - -

- -Values acquired by -@cast - -may be pretty-printed by the -$ and $$ - -suffix operators, the same way as described in the CONTEXT VARIABLES -section of the -stapprobes(3stap) - -manual page. -

-

- -When in guru mode, the translator will also allow scripts to assign new -values to members of typecasted pointers. -

- -Typecasting is also useful in the case of -void* - -members whose type may be determinable at runtime. - -
- -

- -

-
-probe foo {
-  if ($var->type == 1) {
-    value = @cast($var->data, "type1")->bar
-  } else {
-    value = @cast($var->data, "type2")->baz
-  }
-  print(value)
-}
-
-
- -
- - -

- -

-  -

EMBEDDED C

- -When in guru mode, the translator accepts embedded C code in the -top level of the script. Such code is enclosed between -%{ - -and -%} - -markers, and is transcribed verbatim, without analysis, in some -sequence, into the top level of the generated C code. At the -outermost level, this may be useful to add -#include - -instructions, and any auxiliary definitions for use by other embedded -code. -

- -Another place where embedded code is permitted is as a function body. -In this case, the script language body is replaced entirely by a piece -of C code enclosed again between -%{ and %} - -markers. -This C code may do anything reasonable and safe. There are a number -of undocumented but complex safety constraints on atomicity, -concurrency, resource consumption, and run time limits, so this -is an advanced technique. -

- -The memory locations set aside for input and output values -are made available to it using macros -STAP_ARG_* - -and -STAP_RETVALUE. - -Errors may be signalled with STAP_ERROR. Output may be written with -STAP_PRINTF. The function may return early with STAP_RETURN. -Here are some examples: - -
- -

- -

-
-function integer_ops (val) %{
-  STAP_PRINTF("%d\n", STAP_ARG_val);
-  STAP_RETVALUE = STAP_ARG_val + 1;
-  if (STAP_RETVALUE == 4)
-      STAP_ERROR("wrong guess: %d", (int) STAP_RETVALUE);
-  if (STAP_RETVALUE == 3)
-      STAP_RETURN(0);
-  STAP_RETVALUE ++;
-%}
-function string_ops (val) %{
-  strlcpy (STAP_RETVALUE, STAP_ARG_val, MAXSTRINGLEN);
-  strlcat (STAP_RETVALUE, "one", MAXSTRINGLEN);
-  if (strcmp (STAP_RETVALUE, "three-two-one"))
-      STAP_RETURN("parameter should be three-two-");
-%}
-function no_ops () %{
-    STAP_RETURN(); /* function inferred with no return value */
-%}
-
-
- -
- - -

- -The function argument and return value types have to be inferred by -the translator from the call sites in order for this to work. The -user should examine C code generated for ordinary script-language -functions in order to write compatible embedded-C ones. -

- -The last place where embedded code is permitted is as an expression rvalue. -In this case, the C code enclosed between -%{ and %} - -markers is interpreted as an ordinary expression value. It is assumed -to be a normal 64-bit signed number, unless the marker -/* string */ - -is included, in which case it's treated as a string. - -
- -

- -

-
-function add_one (val) {
-  return val + %{ 1 %}
-}
-function add_string_two (val) {
-  return val . %{ /* string */ "two" %}
-}
-
-
- -
- - -

- -

- -The embedded-C code may contain markers to assert optimization -and safety properties. -

-
/* pure */ - -
-means that the C code has no side effects and may be elided entirely if its -value is not used by script code. -
/* stable */ - -
-means that the C code always has the same value (in any given probe handler -invocation), so repeated calls may be automatically replaced by memoized -values. Such functions must take no parameters, and also be -pure. - -
/* unprivileged */ - -
-means that the C code is so safe that even unprivileged users are permitted -to use it. -
/* myproc-unprivileged */ - -
-means that the C code is so safe that even unprivileged users are permitted -to use it, provided that the target of the current probe is within the user's -own process. -
/* guru */ - -
-means that the C code is so unsafe that a systemtap user must specify --g - -(guru mode) to use this. (Tapsets are permitted and presumed to call them safely.) -
/* unmangled */ - -
-in an embedded-C function, means that the legacy (pre-1.8) argument -access syntax should be made available inside the function. Hence, in -addition to -STAP_ARG_foo - -and -STAP_RETVALUE - -one can use -THIS->foo - -and -THIS->__retvalue - -respectively inside the function. This is useful for quickly migrating code written for SystemTap version 1.7 and earlier. -
/* unmodified-fnargs */ - -
-in an embedded-C function, means that the function arguments are not modified -inside the function body. -
/* string */ - -
-in embedded-C expressions only, means that the expression has -const char * - -type and should be treated as a string value, instead of -the default long numeric. -
-

- -Script level global variables may be accessed in embedded-C functions and -blocks. To read or write the global variable -var - -, the -/* pragma:read:var */ - -or -/* pragma:write:var */ - -marker must be first placed in the embedded-C function or block. This provides -the macros -STAP_GLOBAL_GET_* - -and -STAP_GLOBAL_SET_* - -macros to allow reading and writing, respectively. For example: - -
- -

- -

-
-global var
-global var2[100]
-function increment() %{
-    /* pragma:read:var */ /* pragma:write:var */
-    /* pragma:read:var2 */ /* pragma:write:var2 */
-    STAP_GLOBAL_SET_var(STAP_GLOBAL_GET_var()+1); //var++
-    STAP_GLOBAL_SET_var2(1, 1, STAP_GLOBAL_GET_var2(1, 1)+1); //var2[1,1]++
-%}
-
-
- -
- - -

- -Variables may be read and set in both embedded-C functions and expressions. -Strings returned from embedded-C code are decayed to pointers. Variables must -also be assigned at script level to allow for type inference. Map assignment -does not return the value written, so chaining does not work. -

-  -

BUILT-INS

- -A set of builtin probe point aliases are provided -by the scripts installed in the directory specified in the -stappaths(7) - -manual page. The functions are described in the -stapprobes(3stap) - -manual page. -

-  -

DEREFERENCING

- -Integers can be dereferenced from pointers saved as a script integer -variables using the -@kderef() - -or -@uderef() - -operators. -@kderef() - -is used for kernel space addresses and -@uderef() - -is used for user space addresses. - -
- -

- -

-
-@kderef(SIZE, addr)
-@uderef(SIZE, addr)
-
-
- -
- - -

- -This will interpert -addr - -as a kernel/user address and read -SIZE - -bytes starting at that address. -SIZE - -should be either 1, 2, 4 or 8 bytes. -

-  -

REGISTERS

- -The value stored within a register can be accessed using the -@kregister() - -or -@uregister() - -operators. -@kregister() - -is used for kernel space registers and -@uregister() - -is used for user space registers. The register of interest is -specified using its DWARF number. - -
- -

- -

-
-@kregister(0)
-@uregister(5)
-
-
-  -

PROCESSING

- -The translator begins pass 1 by parsing the given input script, -and all scripts (files named -*.stp) - -found in a tapset directory. The directories listed -with --I - -are processed in sequence, each processed in "guru mode". For each -directory, a number of subdirectories are also searched. These -subdirectories are derived from the selected kernel version (the --R - -option), -in order to allow more kernel-version-specific scripts to override less -specific ones. For example, for a kernel version -2.6.12-23.FC3 - -the following patterns would be searched, in sequence: -2.6.12-23.FC3/*.stp, - -2.6.12/*.stp, - -2.6/*.stp, - -and finally -*.stp. - -Stopping the translator after pass 1 causes it to print the parse trees. -

-

- -In pass 2, the translator analyzes the input script to resolve symbols -and types. References to variables, functions, and probe aliases that -are unresolved internally are satisfied by searching through the -parsed tapset script files. If any tapset script file is selected -because it defines an unresolved symbol, then the entirety of that -file is added to the translator's resolution queue. This process -iterates until all symbols are resolved and a subset of tapset script -files is selected. -

- -Next, all probe point descriptions are validated -against the wide variety supported by the translator. Probe points that -refer to code locations ("synchronous probe points") require the -appropriate kernel debugging information to be installed. In the -associated probe handlers, target-side variables (whose names begin -with "$") are found and have their run-time locations decoded. -

- -Next, all probes and functions are analyzed for optimization -opportunities, in order to remove variables, expressions, and -functions that have no useful value and no side-effect. Embedded-C -functions are assumed to have side-effects unless they include the -magic string -/* pure */. - -Since this optimization can hide latent code errors such as type -mismatches or invalid $context variables, it sometimes may be useful -to disable the optimizations with the --u - -option. -

- -Finally, all variable, function, parameter, array, and index types are -inferred from context (literals and operators). Stopping the -translator after pass 2 causes it to list all the probes, functions, -and variables, along with all inferred types. Any inconsistent or -unresolved types cause an error. -

-

- -In pass 3, the translator writes C code that represents the actions -of all selected script files, and creates a -Makefile - -to build that into a kernel object. These files are placed into a -temporary directory. Stopping the translator at this point causes -it to print the contents of the C file. -

-

- -In pass 4, the translator invokes the Linux kernel build system to -create the actual kernel object file. This involves running -make - -in the temporary directory, and requires a kernel module build -system (headers, config and Makefiles) to be installed in the usual -spot -/lib/modules/VERSION/build. - -Stopping the translator after pass 4 is the last chance before -running the kernel object. This may be useful if you want to -archive the file. -

-

- -In pass 5, the translator invokes the systemtap auxiliary program -staprun - -program for the given kernel object. This program arranges to load -the module then communicates with it, copying trace data from the -kernel into temporary files, until the user sends an interrupt signal. -Any run-time error encountered by the probe handlers, such as running -out of memory, division by zero, exceeding nesting or runtime limits, -results in a soft error indication. Soft errors in excess of -MAXERRORS block of all subsequent probes (except error-handling -probes), and terminate the session. Finally, -staprun - -unloads the module, and cleans up. -

-  -

ABNORMAL TERMINATION

- -

-One should avoid killing the stap process forcibly, for example with -SIGKILL, because the stapio process (a child process of the stap -process) and the loaded module may be left running on the system. If -this happens, send SIGTERM or SIGINT to any remaining stapio -processes, then use rmmod to unload the systemtap module. -

-

-  -

EXAMPLES

- -See the -stapex(3stap) - -manual page for a brief collection of samples, or a large set of -installed samples under the systemtap documentation/testsuite -directories. See -stappaths(7stap) - -for the likely location of these on the system. -

-  -

CACHING

- -The systemtap translator caches the pass 3 output (the generated C -code) and the pass 4 output (the compiled kernel module) if pass 4 -completes successfully. This cached output is reused if the same -script is translated again assuming the same conditions exist (same kernel -version, same systemtap version, etc.). Cached files are stored in -the -$SYSTEMTAP_DIR/cache - -directory. The cache can be limited by having the file -cache_mb_limit - -placed in the cache directory (shown above) containing only an ASCII -integer representing how many MiB the cache should not exceed. In the -absence of this file, a default will be created with the limit set to 256MiB. -This is a 'soft' limit in that the cache will be cleaned after a new entry -is added if the cache clean interval is exceeded, so the total cache size may -temporarily exceed this limit. This interval can be specified by having the -file -cache_clean_interval_s - -placed in the cache directory (shown above) containing only an ASCII integer -representing the interval in seconds. In the absence of this file, a default -will be created with the interval set to 300 s. -

-  -

SAFETY AND SECURITY

- -

-

- -Systemtap may be used as a powerful administrative tool. It can -expose kernel internal data structures and potentially private user -information. (In -dyninst - -runtime mode, this is not the case, see the -ALTERNATE RUNTIMES - -section below.) -

-The translator asserts many safety constraints during compilation and -more during run-time. It aims to ensure that no handler routine can -run for very long, allocate boundless memory, perform unsafe -operations, or in unintentionally interfere with the system. Uses of -script global variables are automatically read/write locked as -appropriate, to protect against manipulation by concurrent probe -handlers. (Deadlocks are detected with timeouts. Use the --t - -flag to receive reports of excessive lock contention.) Experimenting -with scripts is therefore generally -safe. - -The guru-mode --g - -option allows administrators to bypass most safety measures, which -permits invasive or state-changing operations, embedded-C code, and -increases the risk of upset. By default, overload prevention is -turned on for all modules. If you would like to disable overload -processing, use the ---suppress-time-limits - -option. -

-Errors that are caught at run time normally result in a clean script -shutdown and a pass-5 error message. -The ---suppress-handler-errors - -option lets scripts tolerate soft errors without shutting down. -

-

-  -

PERMISSIONS

- -

-For the normal linux-kernel-module runtime, to run the kernel objects systemtap -builds, a user must be one of the following: -

-
-the root user; -
-a member of the -stapdev - -and -stapusr - -groups; -
-a member of the -stapsys - -and -stapusr - -groups; or -
-a member of the -stapusr - -group. -
-

- -The root user or a user who is a member of both the -stapdev - -and -stapusr - -groups can build and run any systemtap script. -

- -A user who is a member of both the -stapsys - -and -stapusr - -groups can only use pre-built modules under the following conditions: -

-
-The module has been signed by a trusted signer. Trusted signers are normally -systemtap compile-servers which sign modules when the --privilege option is -specified by the client. See the -stap-server(8) - -manual page for more information. -
-The module was built using the --privilege=stapsys or the --privilege=stapusr -options. -
-

- -Members of only the -stapusr - -group can only use pre-built modules under the following conditions: -

-
-The module is located in -the /lib/modules/VERSION/systemtap directory. This directory -must be owned by root and not be world writable. -
-

- -or -

-
-The module has been signed by a trusted signer. Trusted signers are normally -systemtap compile-servers which sign modules when the --privilege option is -specified by the client. See the -stap-server(8) - -manual page for more information. -
-The module was built using the FI--privilege=stapusr option. -
-

- -The kernel modules generated by -stap - -program are run by the -staprun - -program. The latter is a part of the Systemtap package, dedicated to -module loading and unloading (but only in the white zone), and -kernel-to-user data transfer. Since -staprun - -does not perform any additional security checks on the kernel objects -it is given, it would be unwise for a system administrator to add -untrusted users to the -stapdev - -or -stapusr - -groups. -

-  -

SECUREBOOT

- -

-If the current system has SecureBoot turned on in the UEFI firmware, -all kernel modules must be signed. (Some kernels may allow disabling -SecureBoot long after booting with a key sequence such as SysRq-X, -making it unnecessary to sign modules.) The systemtap compile server -can sign modules with a MOK (Machine Owner Key) that it has in common -with a client system. See the following wiki page for more details: -

- -

- -https://sourceware.org/systemtap/wiki/SecureBoot - - -
- -

-Some kernels do not let systemtap guess whether module module signing -is in effect. On such machines, set the SYSTEMTAP_SIGN environment -variable to any value while running stap. -

-  -

RESOURCE LIMITS

- -Many resource use limits are set by macros in the generated C code. -These may be overridden with --D - -flags. A selection of these is as follows: -
-
MAXNESTING
-Maximum number of nested function calls. Default determined by -script analysis, with a bonus 10 slots added for recursive -scripts. -
MAXSTRINGLEN
-Maximum length of strings, default 128. -
MAXTRYLOCK
-Maximum number of iterations to wait for locks on global variables -before declaring possible deadlock and skipping the probe, default 1000. -
MAXACTION
-Maximum number of statements to execute during any single probe hit -(with interrupts disabled), -default 1000. -Note that for straight-through probe handlers lacking loops or recursion, -due to optimization, this parameter may be interpreted too conservatively. -
MAXACTION_INTERRUPTIBLE
-Maximum number of statements to execute during any single probe hit -which is executed with interrupts enabled (such as begin/end probes), -default (MAXACTION * 10). -
MAXBACKTRACE
-Maximum number of stack frames that will be be processed by the stap -runtime unwinder as produced by the backtrace functions in the -[u]context-unwind.stp tapsets, default 20. -
MAXMAPENTRIES
-Maximum number of rows in any single global array, default 2048. -Individual arrays may be declared with a larger or smaller limit instead: - -
- -

- -

-
-global big[10000],little[5]
-
-
- -
- - -

- -or denoted with -% - -to make them wrap-around (replace old entries) automatically, as in - -
- -

- -

-
-global big%
-
-
- -
- - -

- -or both. -

MAPHASHBIAS
-The number of powers-of-two to add or subtract from the natural size of the -hash table backing each global associative array. Default is 0. Try small -positive numbers to get extra performance at the cost of more memory -consumption, because that should reduce hash table collisions. -Try small negative numbers for the opposite tradeoff. -
MAXERRORS
-Maximum number of soft errors before an exit is triggered, default 0, which -means that the first error will exit the script. Note that with the ---suppress-handler-errors - -option, this limit is not enforced. -
MAXSKIPPED
-Maximum number of skipped probes before an exit is triggered, default 100. -Running systemtap with -t (timing) mode gives more details about skipped -probes. With the default -DINTERRUPTIBLE=1 setting, probes skipped due to -reentrancy are not accumulated against this limit. Note that with the ---suppress-handler-errors - -option, this limit is not enforced. -
MINSTACKSPACE
-Minimum number of free kernel stack bytes required in order to -run a probe handler, default 1024. This number should be large enough -for the probe handler's own needs, plus a safety margin. -
MAXUPROBES
-Maximum number of concurrently armed user-space probes (uprobes), default -somewhat larger than the number of user-space probe points named in the script. -This pool needs to be potentially large because individual uprobe objects (about -64 bytes each) are allocated for each process for each matching script-level probe. -
STP_MAXMEMORY
-Maximum amount of memory (in kilobytes) that the systemtap module -should use, default unlimited. The memory size includes the size of -the module itself, plus any additional allocations. This only tracks -direct allocations by the systemtap runtime. This does not track -indirect allocations (as done by kprobes/uprobes/etc. internals). -
STP_OVERLOAD_THRESHOLD, STP_OVERLOAD_INTERVAL
-Maximum number of machine cycles spent in probes on any cpu per given -interval, before an overload condition is declared and the script shut -down. The defaults are 500 million and 1 billion, so as to limit stap -script cpu consumption at around 50%. -
STP_PROCFS_BUFSIZE
-Size of procfs probe read buffers (in bytes). Defaults to -MAXSTRINGLEN. - -This value can be overridden on a per-procfs file basis using the -procfs read probe -.maxsize(MAXSIZE) - -parameter. -
-

- -With scripts that contain probes on any interrupt path, it is possible that -those interrupts may occur in the middle of another probe handler. The probe -in the interrupt handler would be skipped in this case to avoid reentrance. -To work around this issue, execute stap with the option --DINTERRUPTIBLE=0 - -to mask interrupts throughout the probe handler. This does add some extra -overhead to the probes, but it may prevent reentrance for common problem -cases. However, probes in NMI handlers and in the callpath of the stap -runtime may still be skipped due to reentrance. -

-

- -In case something goes wrong with -stap or staprun - -after a probe has already started running, one may safely kill both -user processes, and remove the active probe kernel module with -rmmod. - -Any pending trace messages may be lost. -

-  -

UNPRIVILEGED USERS

- -

-

- -Systemtap exposes kernel internal data -structures and potentially private user information. Because of this, use of -systemtap's full capabilities are restricted to root and to users who are -members of the groups stapdev and stapusr. -

-However, a restricted set of systemtap's features can be made available to -trusted, unprivileged users. These users are members of the group stapusr -only, or members of the groups stapusr and stapsys. -These users can load systemtap modules which have been compiled and -certified by a trusted systemtap compile-server. See the descriptions of the -options --privilege and --use-server. See -README.unprivileged in the systemtap source code for information about -setting up a trusted compile server. -

-The restrictions enforced when --privilege=stapsys is specified are designed -to prevent unprivileged users from: -

-
-
-harming the system maliciously. -
-
- -

-The restrictions enforced when --privilege=stapusr is specified are designed -to prevent unprivileged users from: -

-
-
-harming the system maliciously. -
-gaining access to information which would not normally be available to an -unprivileged user. -
-disrupting the performance of processes owned by other users of the system. -Some overhead to the system in general is unavoidable since the -unprivileged user's probes -will be triggered at the appropriate times. What we would like to avoid is -targeted interruption of another user's processes which would not normally be -possible by an unprivileged user. -
-
- -

-  -

PROBE RESTRICTIONS

- -A member of the groups stapusr and stapsys may use all probe points. -

- -A member of only the group stapusr may use only the following probes: -

-
-
-begin, begin(n) -
-end, end(n) -
-error(n) -
-never -
-process.*, where the target process is owned by the user. -
-timer.{jiffies,s,sec,ms,msec,us,usec,ns,nsec}(n)* -
-timer.hz(n) -
-
- -

-  -

SCRIPT LANGUAGE RESTRICTIONS

- -The following scripting language features are unavailable to all unprivileged users: -

-

-
-
-any feature enabled by the Guru Mode (-g) option. -
-embedded C code. -
-
- -

-  -

RUNTIME RESTRICTIONS

- -The following runtime restrictions are placed upon all unprivileged users: -
-
-
-Only the default runtime code (see -R) may be used. -
-
- -

-Additional restrictions are placed on members of only the group stapusr: -

-
-
-Probing of processes owned by other users is not permitted. -
-Access of kernel memory (read and write) is not permitted. -
-
- -

-  -

COMMAND LINE OPTION RESTRICTIONS

- -Some command line options provide access to features which must not be available -to all unprivileged users: -

-

-
-
--g may not be specified. -
-The following options may not be used by the compile-server client: - -
- -

- -

-
-    -a, -B, -D, -I, -r, -R
-
-
- -
- - -

- -

-
- -

-  -

ENVIRONMENT RESTRICTIONS

- -The following environment variables must not be set for all unprivileged users: - -
- -

- -

-
-SYSTEMTAP_RUNTIME
-SYSTEMTAP_TAPSET
-SYSTEMTAP_DEBUGINFO_PATH
-
-
- -
- - -

- -

-  -

TAPSET RESTRICTIONS

- -In general, tapset functions are only available for members of the -group stapusr when they do not gather information that an ordinary -program running with that user's privileges would be denied access to. -

-There are two categories of unprivileged tapset functions. The first -category consists of utility functions that are unconditionally -available to all users; these include such things as: - -
- -

- -

-
-cpu:long ()
-exit ()
-str_replace:string (prnt_str:string, srch_str:string, rplc_str:string)
-
-
- -
- - -

- -

-The second category consists of so-called -myproc-unprivileged - -functions that can only gather information within their own -processes. Scripts that wish to use these functions must test the -result of the tapset function is_myproc and only call these -functions if the result is 1. The script will exit immediately if any -of these functions are called by an unprivileged user within a probe -within a process which is not owned by that user. Examples of -myproc-unprivileged - -functions include: - -
- -

- -

-
-print_usyms (stk:string)
-user_int:long (addr:long)
-usymname:string (addr:long)
-
-
- -
- - -

- -

-A compile error is triggered when any function not in either of the -above categories is used by members of only the group stapusr. -

-No other built-in tapset functions may be used by members of only the -group stapusr. -

-  -

ALTERNATE RUNTIMES

- -

-

- -As described above, systemtap's default runtime mode involves building and -loading kernel modules, with various security tradeoffs presented. Systemtap -now includes two new prototype backends: --runtime=dyninst and ---runtime=bpf. -

---runtime=dyninst uses Dyninst to instrument a user's own processes -at runtime. This backend does not use kernel modules, and does not require -root privileges, but is restricted with respect to the kinds of probes and -other constructs that a script may use. dyninst runtime operates in -target-attach mode, so it does requirea -c COMMAND or -x PID -process. For example: - -
- -

- -

-
-stap --runtime=dyninst -c 'stap -V' \
-     -e 'probe process.function("main")
-         { println("hi from dyninst!") }'
-
-
- -
- - -

- -

-It may be necessary to disable a conflicting selinux check with - -
- -

- -

-
-# setsebool allow_execstack 1
-
-
- -
- - -

- -

---runtime=bpf compiles the user script into extended Berkeley Packet -Filter (eBPF) programs instead of a kernel module. eBPF programs are verified -by the kernel for safety and are executed by an in-kernel virtual machine. -This runtime is in an early stage of development and currently lacks support -for a number of features available in the default runtime. Please see the -stapbpf(8) man page for more information. -

-  -

EXIT STATUS

- -

-The systemtap translator generally returns with a success code of 0 if -the requested script was processed and executed successfully through -the requested pass. Otherwise, errors may be printed to stderr and -a failure code is returned. Use --v - -or --vp N - -to increase (global or per-pass) verbosity to identify the source of the -trouble. -

-In listings mode -(-l and -L), - -error messages are normally suppressed. A success code of 0 is returned -if at least one matching probe was found. -

-A script executing in pass 5 that is interrupted with ^C / SIGINT is -considered to be successful. -

-  -

DEPRECATION

- -

-Over time, some features of the script language and the tapset library -may undergo incompatible changes, so that a script written against -an old version of systemtap may no longer run. In these cases, it may -help to run systemtap with the ---compatible VERSION - -flag, specifying the last known working version. Running -systemtap with the ---check-version - -flag will output a warning if any possible incompatible elements have -been parsed. Deprecation historical details may be found in the NEWS file. -

-The purpose of deprecation facility is to improve the experience of -scripts written for newer versions of systemtap (by adding better -alternatives and removing conflicting or messy older alternatives), -while at the same time permitting scripts written for older versions -of systemtap to continue running. Deprecation is thus intended a -service to users - -(and an inconvenience to systemtap's developers), rather than the -other way around. -

-Please note that underscore-prefixed identifiers in the tapset -sometimes undergo such changes that are difficult to preserve -compatibility for, even with the deprecation mechanisms. Avoid -relying on these in your scripts; instead propose them for promotion -to non-underscored status. -

-

-  -

FILES

- -
-
Important files and their corresponding paths can be located in the
-stappaths (7) manual page. -

-

-  -

SEE ALSO

- - -
-stapprobes(3stap),
-function::*(3stap),
-probe::*(3stap),
-tapset::*(3stap),
-stappaths(7),
-staprun(8),
-stapdyn(8),
-systemtap(8),
-stapvars(3stap),
-stapex(3stap),
-stap-server(8),
-stap-prep(1),
-stapref(1),
-awk(1),
-gdb(1)
-
-
  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/, <systemtap@sourceware.org>. - - -

- -error::reporting(7stap), - - -https://sourceware.org/systemtap/wiki/HowToReportBugs - - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
DOCUMENTATION OVERVIEW
-
OPTIONS
-
ARGUMENTS
-
SCRIPT LANGUAGE
-
-
GENERAL SYNTAX
-
PREPROCESSING
-
PREPROCESSOR MACROS
-
CONSTANTS
-
VARIABLES
-
STATEMENTS
-
EXPRESSIONS
-
REGULAR EXPRESSION MATCHING
-
PROBES
-
FUNCTIONS
-
PRINTING
-
STATISTICS
-
TYPECASTING
-
EMBEDDED C
-
BUILT-INS
-
DEREFERENCING
-
REGISTERS
-
-
PROCESSING
-
-
ABNORMAL TERMINATION
-
-
EXAMPLES
-
CACHING
-
SAFETY AND SECURITY
-
-
PERMISSIONS
-
SECUREBOOT
-
RESOURCE LIMITS
-
-
UNPRIVILEGED USERS
-
-
PROBE RESTRICTIONS
-
SCRIPT LANGUAGE RESTRICTIONS
-
RUNTIME RESTRICTIONS
-
COMMAND LINE OPTION RESTRICTIONS
-
ENVIRONMENT RESTRICTIONS
-
TAPSET RESTRICTIONS
-
-
ALTERNATE RUNTIMES
-
EXIT STATUS
-
DEPRECATION
-
FILES
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/stapbpf.8.html b/man/stapbpf.8.html deleted file mode 100644 index 331bb05a..00000000 --- a/man/stapbpf.8.html +++ /dev/null @@ -1,286 +0,0 @@ - -Manpage of STAPBPF - -

STAPBPF

-Section: Maintenance Commands (8)
Index -Return to Main Contents
- -  -

NAME

- -stapbpf - systemtap bpf runtime -

- - - -

-

-  -

SYNOPSIS

- -

-
- -stapbpf - -[ -OPTIONS - -] -MODULE - -

-  -

DESCRIPTION

- -

-The -stapbpf - -program is the BPF back-end of the Systemtap tool. It expects a -bpf-elf file produced by the front-end -stap - -tool, when run with ---runtime=bpf. - -

-

- -Splitting the systemtap tool into a front-end and a back-end allows a -user to compile a systemtap script on a development machine that has -the debugging information needed to compile the script and then -transfer the resulting shared object to a production machine that -doesn't have any development tools or debugging information installed. -

- -Please refer to -stappaths(7) - -for the version number, or run -

- - $ rpm -q systemtap # (for Fedora/RHEL) -
- - $ apt-get -v systemtap # (for Ubuntu) -

-  -

OPTIONS

- -The -stapbpf - -program supports the following options. Any other option -prints a list of supported options. -
-
-v - -
-Verbose mode. -
-V - -
-Print version number and exit. -
-w - -
-Suppress warnings from the script. -
-h - -
-Print help message. -
-x PID - -
-The '_stp_target' variable will be set to PID. -
-o FILE - -
-Send output to FILE. -

-

-  -

ARGUMENTS

- -MODULE - -is the path of a bpf-elf file produced by the front-end -stap - -tool, when run with ---runtime=bpf. - -

-  -

EXAMPLES

- -Here is a very basic example of how to generate a -stapbpf - -module. -First, use -stap - -to compile a script. The -stap - -program will report the name of the resulting module in the current -working directory. -

- - $ stap --runtime=bpf -p4 -e 'probe begin { printf("Hello World!\n"); exit() }' -
- - stap_28784.bo -

- -Run -stapbpf - -with the pathname to the module as an argument. -

- - $ stapbpf ./stap_28784.bo -
- - Hello World! -

- -If the --p4 - -option is omitted, -stap - -will invoke -stapbpf - -automatically. -

-  -

LIMITATIONS

- -This runtime is in an early stage of development and it currently lacks -support for a number of features available in the default runtime. -A subset of the following probe points is supported: -

- -

- -
- -

-
-begin
-end
-kernel.*
-process.*
-timer.*
-perf.*
-procfs.*
-
-
- -
- - -

- -

-In general, probes based on the kprobes, uprobes, tracepoint and perf -infrastructures are supported. See -stapprobes(3stap) - -for more information on the probe points and which tracing infrastructures -they are based on. -

-for - -loops, -foreach - -loops and -while - -loops are usable only in -begin - -and -end - -probes. -try - -statements are not supported. -

-There is limited support for string -operations. String variables and literals are limited to -64 characters, except for -printf - -format strings, which are limited to 256 characters. -

-A subset of the statistical aggregate functionality is available, -with support only for the -@count(), @sum(), @avg() - -extractor functions. -

-The name -of the bpf-elf file produced by the front-end -stap - -tool should not be changed. -

-  -

SAFETY AND SECURITY

- -See the -stap(1) - -manual page for additional information on safety and security. -

-  -

SEE ALSO

- -stap(1), - -stapprobes(3stap), - -staprun(8), - -stapex(3stap) - -

-  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/, <systemtap@sourceware.org>. - - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
OPTIONS
-
ARGUMENTS
-
EXAMPLES
-
LIMITATIONS
-
SAFETY AND SECURITY
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/stapdyn.8.html b/man/stapdyn.8.html deleted file mode 100644 index 2a972847..00000000 --- a/man/stapdyn.8.html +++ /dev/null @@ -1,250 +0,0 @@ - -Manpage of STAPDYN - -

STAPDYN

-Section: Maintenance Commands (8)
Index -Return to Main Contents
- -  -

NAME

- -stapdyn - systemtap dyninst runtime -

-  -

SYNOPSIS

- -

-
- -stapdyn - -[ -OPTIONS - -] -MODULE - -[ -MODULE-OPTIONS - -] -

-  -

DESCRIPTION

- -

-The -stapdyn - -program is the dyninst back-end of the Systemtap tool. It expects a -shared library produced by the front-end -stap - -tool, when run with ---dyninst. - -

-

- -Splitting the systemtap tool into a front-end and a back-end allows a -user to compile a systemtap script on a development machine that has -the debugging information (need to compile the script) and then -transfer the resulting shared object to a production machine that -doesn't have any development tools or debugging information installed. -

- -Please refer to stappaths (7) for the version number, or run -rpm -q systemtap (fedora/red hat) -apt-get -v systemtap (ubuntu) -

-  -

OPTIONS

- -The -stapdyn - -program supports the following options. Any other option -prints a list of supported options. -
-
-v - -
-Verbose mode. -
-V - -
-Print version number and exit. -
-w - -
-Suppress warnings from the script. -
-c CMD - -
-Command CMD will be run and the -stapdyn - -program will exit when CMD -does. The '_stp_target' variable will contain the pid for CMD. -
-x PID - -
-The '_stp_target' variable will be set to PID. -
-o FILE - -
-Send output to FILE. If the module uses bulk mode, the output will -be in percpu files FILE_x(FILE_cpux in background and bulk mode) -where 'x' is the cpu number. This supports strftime(3) formats -for FILE. -
-C WHEN - -
-Control coloring of error messages. WHEN must be either - -"never", "always", or "auto" - -(i.e. enable only if at a terminal). If the option is missing, then "auto" -is assumed. Colors can be modified using the SYSTEMTAP_COLORS environment -variable. See the -stap(1) - -manual page for more information on syntax and behaviour. -
var1=val - -
-Sets the value of global variable var1 to val. Global variables contained -within a script are treated as options and can be set from the -stapdyn command line. -

-

-  -

ARGUMENTS

- -MODULE - -is either a module path or a module name. If it is a module name, -the module will be looked for in the following directory -(where 'VERSION' is the output of "uname -r"): -
-
-/lib/modules/VERSION/systemtap -
-

- -

- $ stap --dyninst -p4 -m mod1 -e 'global var1="foo"; probe begin{printf("%s\n", var1); exit()}' -
- -

- -Running this with an additional module argument: -

- -

- $ stapdyn mod1.so var1="HelloWorld" -
- - HelloWorld -

- -Spaces and exclamation marks currently cannot be passed into global variables -this way. -

-  -

EXAMPLES

- -See the -stapex(3stap) - -manual page for a collection of sample scripts. -

- -Here is a very basic example of how to use -stapdyn. - -First, use -stap - -to compile a script. The -stap - -program will report the pathname to the resulting module. -

- - $ stap --dyninst -p4 -e 'probe begin { printf("Hello World!\n"); exit() }' -
- - /home/user/.systemtap/cache/85/stap_8553d83f78c_265.so -

- -Run -stapdyn - -with the pathname to the module as an argument. -

- - $ stapdyn /home/user/.systemtap/cache/85/stap_8553d83f78c_265.so -
- - Hello World! -

-  -

SAFETY AND SECURITY

- -Systemtap, in DynInst mode, is a developer tool, and runs completely -unprivileged. The Linux kernel will only permit one's own processes -to be accessed, which is enforced by the -ptrace(2) - -system call. -See the -stap(1) - -manual page for additional information on safety and security. -

-  -

SEE ALSO

- -stap(1), - -stapprobes(3stap), - -stap-server(8), - -staprun(8), - -stapex(3stap) - -

-  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/, <systemtap@sourceware.org>. - - -

-

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
OPTIONS
-
ARGUMENTS
-
EXAMPLES
-
SAFETY AND SECURITY
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/stapex.3stap.html b/man/stapex.3stap.html deleted file mode 100644 index 0f2715a7..00000000 --- a/man/stapex.3stap.html +++ /dev/null @@ -1,246 +0,0 @@ - -Manpage of STAPEX - -

STAPEX

-Section: Misc. Reference Manual Pages (3stap)
Index -Return to Main Contents
- -  -

NAME

- -stapex - systemtap examples -

- - - -

-  -

LANGUAGE BASICS

- -These examples give a feel for basic systemtap syntax and -control structures. -

- -

- -
- -

-
-global odds, evens
-
-probe begin {
-  # "no" and "ne" are local integers
-  for (i=0; i<10; i++) {
-    if (i % 2) odds [no++] = i
-    else evens [ne++] = i 
-  }
-  delete odds[2]
-  delete evens[3]
-  exit ()
-}
-
-probe end {
-  foreach (x+ in odds) {
-    printf ("odds[%d] = %d\n", x, odds[x])
-  }
-  foreach (x in evens-) {
-    printf ("evens[%d] = %d\n", x, evens[x])
-  }
-}
-
-
- -
- - -

- -This prints: - -

- -
- -

-
-odds[1] = 1
-odds[3] = 5
-odds[4] = 7
-odds[5] = 9
-evens[5] = 8
-evens[4] = 6
-evens[2] = 2
-evens[1] = 0
-
-
- -
- - -

- -Note that all variables types are inferred, and that all locals -and globals are automatically initialized. -

-

- -This script prints the primes between 0 and 49. - -

- -
- -

-
-function isprime (x) {
-  if (x < 2) return 0
-  for (i=2; i<x; i++) {
-    if (x % i == 0) return 0
-    if (i * i > x) break
-  }
-  return 1
-}
-probe begin {
-  for (i=0; i<50; i++)
-    if (isprime (i)) printf("%d\n", i)
-  exit()
-}
-
-
- -
- - -

- -

-

- -This script demonstrates recursive functions. - -

- -
- -

-
-function fibonacci(i) {
-  if (i < 1) error ("bad number")
-  if (i == 1) return 1
-  if (i == 2) return 2
-  return fibonacci (i-1) + fibonacci (i-2)
-}
-probe begin {
-  printf ("11th fibonacci number: %d\n", fibonacci (11))
-  exit ()
-}
-
-
- -
- - -

- -Any larger number may exceed the MAXACTION or MAXNESTING -limits, and result in an error. -

-

-  -

PROBING

- -

-To trace entry and exit from a function, use a pair of probes: - -

- -
- -

-
-probe kernel.function("sys_mkdir") { println ("enter") }
-probe kernel.function("sys_mkdir").return { println ("exit") }
-
-
- -
- - -

- -

-To list the probeable functions in the kernel, use the listings mode. - -

- -
- -

-
-% stap -l 'kernel.function("*")'
-
-
- -
- - -

- -

-To list the probeable functions and local variables in the kernel, use another listings mode. - -

- -
- -

-
-% stap -L 'kernel.function("*")'
-
-
- -
- - -

- -

-  -

MORE EXAMPLES

- -

-The directory to find more examples can be found in the stappaths (7) manual page, -and online at - -http://sourceware.org/systemtap/examples/ - - -

-  -

SEE ALSO

- - -
-stap(1)
-stapprobes(3stap)
-stappaths(7)
-
-
-
-
- 

Index

-
-
NAME
-
LANGUAGE BASICS
-
PROBING
-
MORE EXAMPLES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/stapfuncs.3stap.html b/man/stapfuncs.3stap.html deleted file mode 100644 index 1042c346..00000000 --- a/man/stapfuncs.3stap.html +++ /dev/null @@ -1,54 +0,0 @@ - -Manpage of STAPFUNCS - -

STAPFUNCS

-Section: Misc. Reference Manual Pages (3stap)
Index -Return to Main Contents
- -  -

NAME

- -stapfuncs - systemtap functions -

-  -

DESCRIPTION

- -Functions in the standard systemtap tapset are individually documented -in the -3stap - -manual section, with the -function:: - -prefix. Some built-in functions such as -printf - -are documented on the -stap(1) - -man page. -

-  -

SEE ALSO

- - -
-stap(1),
-function::*(3stap),
-tapset::*(3stap)
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/stappaths.7.html b/man/stappaths.7.html deleted file mode 100644 index 331bae31..00000000 --- a/man/stappaths.7.html +++ /dev/null @@ -1,194 +0,0 @@ - -Manpage of STAP - -

STAP

-Section: Environments, Tables, and Troff Macros (7)
Updated: Systemtap Team
Index -Return to Main Contents
- -  -

NAME

- -

-stappaths - systemtap configurable file paths -

-

- - - -

-  -

DESCRIPTION

- -This manual page was generated for systemtap 4.3. -The following section will list the main paths in systemtap that are -important to know and may be required to reference. -
-
share/systemtap/tapset/
-The directory for the standard probe-alias / function tapset library, -unless overridden by the -SYSTEMTAP_TAPSET - -environment variable or the -XDG_DATA_DIRS - -environment variable. -These are described in the -stapprobes(3stap), - -probe::*(3stap), - -and -function::*(3stap) - -manual pages. -
share/systemtap/runtime/
-The runtime sources, unless overridden by the -SYSTEMTAP_RUNTIME - -environment variable. -
bin/staprun
-The auxiliary program supervising module loading, interaction, and -unloading. -
${prefix}/etc/stap-exporter
-The default directory to search for *.stp files, for exporting to HTTP. -
${exec_prefix}/libexec/systemtap/stapio
-The auxiliary program for module input and output handling. -
/usr/include/sys/sdt.h
-Location of the <sys/sdt.h> headers. -
Kernel debuginfo Path: /usr/lib/debug/lib/modules/$(uname -r)/
-The location of kernel debugging information when packaged into the -kernel-debuginfo - -RPM, unless overridden by the -SYSTEMTAP_DEBUGINFO_PATH - -environment variable. The default value for this variable is -+:.debug:/usr/lib/debug:build. - -elfutils searches vmlinux in this path and it interprets the path as a base -directory of which various subdirectories will be searched for finding debuginfo -for the kernel, kernel modules, and user-space binaries. -By default, systemtap will also look for vmlinux in these locations: -

- -
- -

-
-/boot/vmlinux-`uname -r` 
-/lib/modules/`uname -r`/vmlinux
-/lib/modules/`uname -r`/vmlinux.debug
-/lib/modules/`uname -r`/build/vmlinux
-/lib/modules/`uname -r`/.debug/vmlinux.debug
-/usr/lib/debug/lib/modules/`uname -r`/vmlinux.debug
-/var/cache/abrt-di/usr/debug/lib/modules/`uname -r`/
-/var/cache/abrt-di/usr/lib/debug/lib/modules/`uname -r`/vmlinux.debug
-
-
-
- -
- - -
-
       -Corresponding source files are usually located under /usr/src/debug/. -Further file information on user-space applications can be determined per-basis using -rpm -ql <package>-debuginfo. For supported user-space applications information please -visit the systemtap wiki. -

-With elfutils version >0.178, systemtap can automatically download -debugging information from debuginfod servers. You can try it by -setting an environment variable or two: - -
- -

-
-export DEBUGINFOD_URLS=https://debuginfod.elfutils.org/
-export DEBUGINFOD_PROGRESS=1
-
-
- -
- - -

-

$HOME/.systemtap
-Systemtap data directory for cached systemtap files, unless overridden -by the -SYSTEMTAP_DIR - -environment variable. -
/tmp/stapXXXXXX
-Temporary directory for systemtap files, including translated C code -and kernel object. -
/lib/modules/VERSION/build
-The location of kernel module building infrastructure. -
share/doc/systemtap*/examples
-Examples with greater detail can be found here. Each example comes with a .txt -or .meta file explaining what the example, sample or demo does and how it is -ordinarily run. See also online at: - -https://sourceware.org/systemtap/examples/ - - -
$SYSTEMTAP_DIR/ssl/server
-User's server-side SSL certificate database. If SYSTEMTAP_DIR is not -set, the default is $HOME/.systemtap. -
$SYSTEMTAP_DIR/ssl/client
-User's private client-side SSL certificate database. If SYSTEMTAP_DIR is not -set, the default is $HOME/.systemtap. -
${prefix}/etc/systemtap/ssl/client
-Global client-side SSL certificate database. -
${prefix}/etc/systemtap/staprun/
-staprun's trusted signer certificate database. -
${prefix}/etc/sysconfig/stap-server
-stap-server service global configuration file. -
${prefix}/etc/sysconfig/stap-exporter
-stap-exporter service global configuration file. -
${prefix}/var/run/stap-server/
-stap-server service default location of status files for running servers. -
${prefix}/var/log/stap-server/log
-stap-server service default log file. -

-

-  -

SEE ALSO

- - -
-stapprobes(3stap),
-staprun(8),
-stapvars(3stap),
-stapex(3stap),
-stap-server(8),
-awk(1),
-gdb(1)
-http://sourceware.org/elfutils/Debuginfod.html
-
-
  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/,<systemtap@sourceware.org>. - - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/stapprobes.3stap.html b/man/stapprobes.3stap.html deleted file mode 100644 index 831e4f69..00000000 --- a/man/stapprobes.3stap.html +++ /dev/null @@ -1,2421 +0,0 @@ - -Manpage of STAPPROBES - -

STAPPROBES

-Section: Misc. Reference Manual Pages (3stap)
Index -Return to Main Contents
- -  -

NAME

- -stapprobes - systemtap probe points -

- - - -

-  -

DESCRIPTION

- -The following sections enumerate the variety of probe points supported -by the systemtap translator, and some of the additional aliases defined by -standard tapset scripts. Many are individually documented in the -3stap - -manual section, with the -probe:: - -prefix. -

-  -

SYNTAX

- -

-

- - -

- -
- -

-
-probe PROBEPOINT [, PROBEPOINT] { [STMT ...] }
-
-
- -
- - -

- -

- -A probe declaration may list multiple comma-separated probe points in -order to attach a handler to all of the named events. Normally, the -handler statements are run whenever any of events occur. Depending on -the type of probe point, the handler statements may refer to context -variables (denoted with a dollar-sign prefix like $foo) to read or -write state. This may include function parameters for function -probes, or local variables for statement probes. -

- -The syntax of a single probe point is a general dotted-symbol -sequence. This allows a breakdown of the event namespace into parts, -somewhat like the Domain Name System does on the Internet. Each -component identifier may be parametrized by a string or number -literal, with a syntax like a function call. A component may include -a "*" character, to expand to a set of matching probe points. It may -also include "**" to match multiple sequential components at once. -Probe aliases likewise expand to other probe points. -

- -Probe aliases can be given on their own, or with a suffix. The suffix -attaches to the underlying probe point that the alias is expanded -to. For example, - -

- -
- -

-
-syscall.read.return.maxactive(10)
-
-
- -
- - -

- -expands to - -

- -
- -

-
-kernel.function("sys_read").return.maxactive(10)
-
-
- -
- - -

- -with the component -maxactive(10) - -being recognized as a suffix. -

- -Normally, each and every probe point resulting from wildcard- and -alias-expansion must be resolved to some low-level system -instrumentation facility (e.g., a kprobe address, marker, or a timer -configuration), otherwise the elaboration phase will fail. -

- -However, a probe point may be followed by a "?" character, to indicate -that it is optional, and that no error should result if it fails to -resolve. Optionalness passes down through all levels of -alias/wildcard expansion. Alternately, a probe point may be followed -by a "!" character, to indicate that it is both optional and -sufficient. (Think vaguely of the Prolog cut operator.) If it does -resolve, then no further probe points in the same comma-separated list -will be resolved. Therefore, the "!" sufficiency mark only makes -sense in a list of probe point alternatives. -

- -Additionally, a probe point may be followed by a "if (expr)" statement, in -order to enable/disable the probe point on-the-fly. With the "if" statement, -if the "expr" is false when the probe point is hit, the whole probe body -including alias's body is skipped. The condition is stacked up through -all levels of alias/wildcard expansion. So the final condition becomes -the logical-and of conditions of all expanded alias/wildcard. The expressions -are necessarily restricted to global variables. -

- -These are all -syntactically - -valid probe points. (They are generally -semantically - -invalid, depending on the contents of the tapsets, and the versions of -kernel/user software installed.) -

- -

- -
- -

-
-kernel.function("foo").return
-process("/bin/vi").statement(0x2222)
-end
-syscall.*
-syscall.*.return.maxactive(10)
-syscall.{open,close}
-sys**open
-kernel.function("no_such_function") ?
-module("awol").function("no_such_function") !
-signal.*? if (switch)
-kprobe.function("foo")
-
-
- -
- - -

- -

-Probes may be broadly classified into "synchronous" and -"asynchronous". A "synchronous" event is deemed to occur when any -processor executes an instruction matched by the specification. This -gives these probes a reference point (instruction address) from which -more contextual data may be available. Other families of probe points -refer to "asynchronous" events such as timers/counters rolling over, -where there is no fixed reference point that is related. Each probe -point specification may match multiple locations (for example, using -wildcards or aliases), and all them are then probed. A probe -declaration may also contain several comma-separated specifications, -all of which are probed. -

-Brace expansion is a mechanism which allows a list of probe points to be -generated. It is very similar to shell expansion. A component may be surrounded -by a pair of curly braces to indicate that the comma-separated sequence of -one or more subcomponents will each constitute a new probe point. The braces -may be arbitrarily nested. The ordering of expanded results is based on -product order. -

-The question mark (?), exclamation mark (!) indicators and probe point conditions -may not be placed in any expansions that are before the last component. -

-The following is an example of brace expansion. -

- -

- -
- -

-
-syscall.{write,read}
-# Expands to
-syscall.write, syscall.read
-
-{kernel,module("nfs")}.function("nfs*")!
-# Expands to
-kernel.function("nfs*")!, module("nfs").function("nfs*")!
-
-
- -
- - -

- -

-  -

DWARF DEBUGINFO

- -

-Resolving some probe points requires DWARF debuginfo or "debug -symbols" for the specific program being instrumented. For some others, -DWARF is automatically synthesized on the fly from source code header -files. For others, it is not needed at all. Since a systemtap script -may use any mixture of probe points together, the union of their DWARF -requirements has to be met on the computer where script compilation -occurs. (See the --use-server option and the stap-server(8) man page for information about the remote compilation facility, -which allows these requirements to be met on a different machine.) -

- -The following point lists many of the available probe point families, -to classify them with respect to their need for DWARF debuginfo for -the specific program for that probe point. -

- - - - - - - - - - - - - - - - -
DWARFNON-DWARFSYMBOL-TABLE

kernel.function, .statementkernel.markkernel.function*
module.function, .statementprocess.mark, process.pltmodule.function*
process.function, .statementbegin, end, error, neverprocess.function*
process.mark*timer
.function.calleeperf
python2, python3procfs
kernel.statement.absolute
AUTO-GENERATED-DWARFkernel.data
kprobe.function
kernel.traceprocess.statement.absolute
process.begin, .end
netfilter
java
- -

-

- -The probe types marked with * asterisks mark fallbacks, where -systemtap can sometimes infer subset or substitute information. In -general, the more symbolic / debugging information available, the -higher quality probing will be available. -

-

-  -

ON-THE-FLY ARMING

- -

-The following types of probe points may be armed/disarmed on-the-fly -to save overheads during uninteresting times. Arming conditions may -also be added to other types of probes, but will be treated as a -wrapping conditional and won't benefit from overhead savings. -

- - - - - - - - -
DISARMABLEexceptions
kernel.function, kernel.statement
module.function, module.statement
process.*.function, process.*.statement
process.*.plt, process.*.mark
timer.timer.profile
java
- -

-  -

PROBE POINT FAMILIES

- -

-  -

BEGIN/END/ERROR

- -

-The probe points -begin and end - -are defined by the translator to refer to the time of session startup -and shutdown. All "begin" probe handlers are run, in some sequence, -during the startup of the session. All global variables will have -been initialized prior to this point. All "end" probes are run, in -some sequence, during the -normal - -shutdown of a session, such as in the aftermath of an -exit () - -function call, or an interruption from the user. In the case of an -error-triggered shutdown, "end" probes are not run. There are no -target variables available in either context. -

- -If the order of execution among "begin" or "end" probes is significant, -then an optional sequence number may be provided: -

- -

- -
- -

-
-begin(N)
-end(N)
-
-
- -
- - -

- -

-The number N may be positive or negative. The probe handlers are run in -increasing order, and the order between handlers with the same sequence -number is unspecified. When "begin" or "end" are given without a -sequence, they are effectively sequence zero. -

-The -error - -probe point is similar to the -end - -probe, except that each such probe handler run when the session ends -after errors have occurred. In such cases, "end" probes are skipped, -but each "error" probe is still attempted. This kind of probe can be -used to clean up or emit a "final gasp". It may also be numerically -parametrized to set a sequence. -

-  -

NEVER

- -The probe point -never - -is specially defined by the translator to mean "never". Its probe -handler is never run, though its statements are analyzed for symbol / -type correctness as usual. This probe point may be useful in -conjunction with optional probes. -

-  -

SYSCALL and ND_SYSCALL

- -

-The -syscall.* and nd_syscall.* - -aliases define several hundred probes, too many to -detail here. They are of the general form: -

- -

- -
- -

-
-syscall.NAME
-
-nd_syscall.NAME -
-syscall.NAME.return -
-nd_syscall.NAME.return - -
- -
- - -

- -

-Generally, a pair of probes are defined for each normal system call as listed in the -syscalls(2) - -manual page, one for entry and one for return. Those system calls that never -return do not have a corresponding -.return - -probe. The nd_* family of probes are about the same, except it uses -non-DWARF - -based searching mechanisms, which may result in a lower quality of symbolic -context data (parameters), and may miss some system calls. You may want to -try them first, in case kernel debugging information is not immediately available. -

- -Each probe alias provides a variety of variables. Looking at the tapset source -code is the most reliable way. Generally, each variable listed in the standard -manual page is made available as a script-level variable, so -syscall.open - -exposes -filename, flags, and mode. - -In addition, a standard suite of variables is available at most aliases: -

-
argstr - -
-A pretty-printed form of the entire argument list, without parentheses. -
name - -
-The name of the system call. -
retval - -
-For return probes, the raw numeric system-call result. -
retstr - -
-For return probes, a pretty-printed string form of the system-call result. -
-

- -As usual for probe aliases, these variables are all initialized once -from the underlying $context variables, so that later changes to -$context variables are not automatically reflected. Not all probe -aliases obey all of these general guidelines. Please report any -bothersome ones you encounter as a bug. Note that on some -kernel/userspace architecture combinations (e.g., 32-bit userspace on -64-bit kernel), the underlying $context variables may need explicit -sign extension / masking. When this is an issue, consider using the -tapset-provided variables instead of raw $context variables. -

- -If debuginfo availability is a problem, you may try using the -non-DWARF syscall probe aliases instead. Use the -nd_syscall. - -prefix instead of -syscall. - -The same context variables are available, as far as possible. -

-  -

TIMERS

- -

-There are two main types of timer probes: "jiffies" timer probes and -time interval timer probes. -

-Intervals defined by the standard kernel "jiffies" timer may be used -to trigger probe handlers asynchronously. Two probe point variants -are supported by the translator: -

- -

- -
- -

-
-timer.jiffies(N)
-timer.jiffies(N).randomize(M)
-
-
- -
- - -

- -

-The probe handler is run every N jiffies (a kernel-defined unit of -time, typically between 1 and 60 ms). If the "randomize" component is -given, a linearly distributed random value in the range [-M..+M] is -added to N every time the handler is run. N is restricted to a -reasonable range (1 to around a million), and M is restricted to be -smaller than N. There are no target variables provided in either -context. It is possible for such probes to be run concurrently on -a multi-processor computer. -

- -Alternatively, intervals may be specified in units of time. -There are two probe point variants similar to the jiffies timer: -

- -

- -
- -

-
-timer.ms(N)
-timer.ms(N).randomize(M)
-
-
- -
- - -

- -

-Here, N and M are specified in milliseconds, but the full options for units -are seconds (s/sec), milliseconds (ms/msec), microseconds (us/usec), -nanoseconds (ns/nsec), and hertz (hz). Randomization is not supported for -hertz timers. -

-The actual resolution of the timers depends on the target kernel. For -kernels prior to 2.6.17, timers are limited to jiffies resolution, so -intervals are rounded up to the nearest jiffies interval. After 2.6.17, -the implementation uses hrtimers for tighter precision, though the actual -resolution will be arch-dependent. In either case, if the "randomize" -component is given, then the random value will be added to the interval -before any rounding occurs. -

- -Profiling timers are also available to provide probes that execute on -all CPUs at the rate of the system tick (CONFIG_HZ) or at a given -frequency (hz). On some kernels, this is a one-concurrent-user-only or -disabled facility, resulting in error -16 (EBUSY) during probe -registration. -

- -

- -
- -

-
-timer.profile.tick
-timer.profile.freq.hz(N)
-
-
- -
- - -

- -

-Full context information of the interrupted process is available, making -this probe suitable for a time-based sampling profiler. -

- -It is recommended to use the tapset probe -timer.profile - -rather than timer.profile.tick. This probe point behaves identically -to timer.profile.tick when the underlying functionality is available, -and falls back to using perf.sw.cpu_clock on some recent kernels which -lack the corresponding profile timer facility. -

- -Profiling timers with specified frequencies are only accurate up to around -100 hz. You may need to provide a larger value to achieve the desired -rate. -

- -Note that if a timer probe is set to fire at a very high rate -and if the probe body is complex, succeeding timer probes can get -skipped, since the time for them to run has already passed. Normally -systemtap reports missed probes, but it will not report these skipped -probes. -

-  -

DWARF

- -

-This family of probe points uses symbolic debugging information for -the target kernel/module/program, as may be found in unstripped -executables, or the separate -debuginfo - -packages. They allow placement of probes logically into the execution -path of the target program, by specifying a set of points in the -source or object code. When a matching statement executes on any -processor, the probe handler is run in that context. -

- -Probe points in the DWARF family can be identified by the target kernel -module (or user process), source file, line number, function name, or -some combination of these. -

- -Here is a list of DWARF probe points currently supported: - -

- -
- -

-
-kernel.function(PATTERN)
-kernel.function(PATTERN).call
-kernel.function(PATTERN).callee(PATTERN)
-kernel.function(PATTERN).callee(PATTERN).return
-kernel.function(PATTERN).callee(PATTERN).call
-kernel.function(PATTERN).callees(DEPTH)
-kernel.function(PATTERN).return
-kernel.function(PATTERN).inline
-kernel.function(PATTERN).label(LPATTERN)
-module(MPATTERN).function(PATTERN)
-module(MPATTERN).function(PATTERN).call
-module(MPATTERN).function(PATTERN).callee(PATTERN)
-module(MPATTERN).function(PATTERN).callee(PATTERN).return
-module(MPATTERN).function(PATTERN).callee(PATTERN).call
-module(MPATTERN).function(PATTERN).callees(DEPTH)
-module(MPATTERN).function(PATTERN).return
-module(MPATTERN).function(PATTERN).inline
-module(MPATTERN).function(PATTERN).label(LPATTERN)
-kernel.statement(PATTERN)
-kernel.statement(PATTERN).nearest
-kernel.statement(ADDRESS).absolute
-module(MPATTERN).statement(PATTERN)
-process("PATH").function("NAME")
-process("PATH").statement("*@FILE.c:123")
-process("PATH").library("PATH").function("NAME")
-process("PATH").library("PATH").statement("*@FILE.c:123")
-process("PATH").library("PATH").statement("*@FILE.c:123").nearest
-process("PATH").function("*").return
-process("PATH").function("myfun").label("foo")
-process("PATH").function("foo").callee("bar")
-process("PATH").function("foo").callee("bar").return
-process("PATH").function("foo").callee("bar").call
-process("PATH").function("foo").callees(DEPTH)
-process(PID).function("NAME")
-process(PID).function("myfun").label("foo")
-process(PID).plt("NAME")
-process(PID).plt("NAME").return
-process(PID).statement("*@FILE.c:123")
-process(PID).statement("*@FILE.c:123").nearest
-process(PID).statement(ADDRESS).absolute
-
-
- -
- - -

- -(See the USER-SPACE section below for more information on the process -probes.) -

- -The list above includes multiple variants and modifiers which provide -additional functionality or filters. They are: -

-
-
.function
-Places a probe near the beginning of the named function, so that -parameters are available as context variables. -
.return
-Places a probe at the moment after the return from the named -function, so the return value is available as the "$return" context -variable. -
.inline
-Filters the results to include only instances of inlined functions. Note -that inlined functions do not have an identifiable return point, so -.return is not supported on .inline probes. -
.call
-Filters the results to include only non-inlined functions (the opposite -set of .inline) -
.exported
-Filters the results to include only exported functions. -
.statement
-Places a probe at the exact spot, exposing those local variables that -are visible there. -
.statement.nearest
-Places a probe at the nearest available line number for each line number -given in the statement. -
.callee
-Places a probe on the callee function given in the .callee -modifier, where the callee must be a function called by the target -function given in .function. The advantage of doing this over -directly probing the callee function is that this probe point is run -only when the callee is called from the target function (add the --DSTAP_CALLEE_MATCHALL directive to override this when calling -stap(1)). -

-Note that only callees that can be statically determined are available. -For example, calls through function pointers are not available. -Additionally, calls to functions located in other objects (e.g. -libraries) are not available (instead use another probe point). This -feature will only work for code compiled with GCC 4.7+. -

.callees
-Shortcut for .callee("*"), which places a probe on all callees of -the function. -
.callees(DEPTH)
-Recursively places probes on callees. For example, .callees(2) -will probe both callees of the target function, as well as callees of -those callees. And .callees(3) goes one level deeper, etc... -A callee probe at depth N is only triggered when the N callers in the -callstack match those that were statically determined during analysis -(this also may be overridden using -DSTAP_CALLEE_MATCHALL). -
-
- -

- -In the above list of probe points, MPATTERN stands for a string literal -that aims to identify the loaded kernel module of interest. For in-tree -kernel modules, the name suffices (e.g. "btrfs"). The name may also -include the "*", "[]", and "?" wildcards to match multiple in-tree -modules. Out-of-tree modules are also supported by specifying the full -path to the ko file. Wildcards are not supported. The file must follow -the convention of being named <module_name>.ko (characters ',' and '-' -are replaced by '_'). -

- -LPATTERN stands for a source program label. It may also contain "*", -"[]", and "?" wildcards. PATTERN stands for a string literal that aims -to identify a point in the program. It is made up of three parts: -

-
-The first part is the name of a function, as would appear in the -nm - -program's output. This part may use the "*" and "?" wildcarding -operators to match multiple names. -
-The second part is optional and begins with the "@" character. -It is followed by the path to the source file containing the function, -which may include a wildcard pattern, such as mm/slab*. -If it does not match as is, an implicit "*/" is optionally added -before - -the pattern, so that a script need only name the last few components -of a possibly long source directory path. -
-Finally, the third part is optional if the file name part was given, -and identifies the line number in the source file preceded by a ":" -or a "+". The line number is assumed to be an -absolute line number if preceded by a ":", or relative to the -declaration line of the function if preceded by a "+". -All the lines in the function can be matched with ":*". -A range of lines x through y can be matched with ":x-y". Ranges and -specific lines can be mixed using commas, e.g. ":x,y-z". -
-

- -As an alternative, PATTERN may be a numeric constant, indicating an -address. Such an address may be found from symbol tables of the -appropriate kernel / module object file. It is verified against -known statement code boundaries, and will be relocated for use at -run time. -

- -In guru mode only, absolute kernel-space addresses may be specified with -the ".absolute" suffix. Such an address is considered already relocated, -as if it came from -/proc/kallsyms, - -so it cannot be checked against statement/instruction boundaries. -

-  -

CONTEXT VARIABLES

- -

-

- -Many of the source-level context variables, such as function parameters, -locals, globals visible in the compilation unit, may be visible to -probe handlers. They may refer to these variables by prefixing their -name with "$" within the scripts. In addition, a special syntax -allows limited traversal of structures, pointers, and arrays. More -syntax allows pretty-printing of individual variables or their groups. -See also -@cast. - -Note that variables may be inaccessible due to them being paged out, -or for a few other reasons. See also man -error::fault(7stap). - -

-

- -Functions called from DWARF class probe points and from process.mark -probes may also refer to context variables. -

-

-
$var
-refers to an in-scope variable "var". If it's an integer-like type, -it will be cast to a 64-bit int for systemtap script use. String-like -pointers (char *) may be copied to systemtap string values using the -kernel_string or user_string - -functions. -
@var("varname")
-an alternative syntax for -$varname - -
@var("varname@src/file.c")
-refers to the global (either file local or external) variable -varname - -defined when the file -src/file.c - -was compiled. The CU in which the variable is resolved is the first CU -in the module of the probe point which matches the given file name at -the end and has the shortest file name path (e.g. given -@var(foo@bar/baz.c) - -and CUs with file name paths -src/sub/module/bar/baz.c - -and -src/bar/baz.c - -the second CU will be chosen to resolve the (file) global variable -foo - -
$var->field traversal via a structure's or a pointer's field. This
-generalized indirection operator may be repeated to follow more -levels. Note that the -. - -operator is not used for plain structure -members, only --> - -for both purposes. (This is because "." is reserved for string -concatenation.) Also note that for direct dereferencing of $var -pointer {kernel,user}_{char,int,...}($var) should be used. (Refer to -stapfuncs(5) for more details.) -
$return
-is available in return probes only for functions that are declared -with a return value, which can be determined using @defined($return). -
$var[N]
-indexes into an array. The index given with a literal number or even -an arbitrary numeric expression. -
-

- -A number of operators exist for such basic context variable expressions: -

-
$$vars
-expands to a character string that is equivalent to - -

- -
- -

-
-sprintf("parm1=%x ... parmN=%x var1=%x ... varN=%x",
-        parm1, ..., parmN, var1, ..., varN)
-
-
- -
- - -

- -for each variable in scope at the probe point. Some values may be -printed as -=? - -if their run-time location cannot be found. -

$$locals
-expands to a subset of $$vars for only local variables. -
$$parms
-expands to a subset of $$vars for only function parameters. -
$$return
-is available in return probes only. It expands to a string that -is equivalent to sprintf("return=%x", $return) -if the probed function has a return value, or else an empty string. -
& $EXPR
-expands to the address of the given context variable expression, if it -is addressable. -
@defined($EXPR)
-expands to 1 or 0 iff the given context variable expression is resolvable, -for use in conditionals such as - -

- -
- -

-
-@defined($foo->bar) ? $foo->bar : 0
-
-
- -
- - -

- -

$EXPR$
-expands to a string with all of $EXPR's members, equivalent to - -

- -
- -

-
-sprintf("{.a=%i, .b=%u, .c={...}, .d=[...]}",
-         $EXPR->a, $EXPR->b)
-
-
- -
- - -

- -

$EXPR$$
-expands to a string with all of $var's members and submembers, equivalent to - -

- -
- -

-
-sprintf("{.a=%i, .b=%u, .c={.x=%p, .y=%c}, .d=[%i, ...]}",
-        $EXPR->a, $EXPR->b, $EXPR->c->x, $EXPR->c->y, $EXPR->d[0])
-
-
- -
- - -

- -

-

-  -

MORE ON RETURN PROBES

- -

-

- -For the kernel ".return" probes, only a certain fixed number of -returns may be outstanding. The default is a relatively small number, -on the order of a few times the number of physical CPUs. If many -different threads concurrently call the same blocking function, such -as futex(2) or read(2), this limit could be exceeded, and skipped -"kretprobes" would be reported by "stap -t". To work around this, -specify a - -

- -
- -

-
-probe FOO.return.maxactive(NNN)
-
-
- -
- - -

- -suffix, with a large enough NNN to cover all expected concurrently blocked -threads. Alternately, use the - -

- -
- -

-
-stap -DKRETACTIVE=NNNN
-
-
- -
- - -

- -stap command line macro setting to override the default for all -".return" probes. -

-

- -For ".return" probes, context variables other than the "$return" may -be accessible, as a convenience for a script programmer wishing to -access function parameters. These values are snapshots -taken at the time of function entry. (Local variables within the -function are not generally accessible, since those variables did -not exist in allocated/initialized form at the snapshot moment.) -These entry-snapshot variables should be accessed via -@entry($var). - -

- -In addition, arbitrary entry-time expressions can also be saved for -".return" probes using the -@entry(expr) - -operator. For example, one can compute the elapsed time of a function: - -

- -
- -

-
-probe kernel.function("do_filp_open").return {
-    println( get_timeofday_us() - @entry(get_timeofday_us()) )
-}
-
-
- -
- - -

- -

-

- -The following table summarizes how values related to a function -parameter context variable, a pointer named addr, may be -accessed from a -.return - -probe. - - - - - - - -
at-entry valuepast-exit value

$addrnot available
$addr->x->y@cast(@entry($addr),"struct zz")->x->y
$addr[0]{kernel,user}_{char,int,...}(& $addr[0])
- -

-

-  -

DWARFLESS

- -In absence of debugging information, entry & exit points of kernel & module -functions can be probed using the "kprobe" family of probes. -However, these do not permit looking up the arguments / local variables -of the function. -Following constructs are supported : - -

- -
- -

-
-kprobe.function(FUNCTION)
-kprobe.function(FUNCTION).call
-kprobe.function(FUNCTION).return
-kprobe.module(NAME).function(FUNCTION)
-kprobe.module(NAME).function(FUNCTION).call
-kprobe.module(NAME).function(FUNCTION).return
-kprobe.statement(ADDRESS).absolute
-
-
- -
- - -

- -

- -Probes of type -function - -are recommended for kernel functions, whereas probes of type -module - -are recommended for probing functions of the specified module. -In case the absolute address of a kernel or module function is known, -statement - -probes can be utilized. -

- -Note that -FUNCTION - -and -MODULE - -names -must not - -contain wildcards, or the probe will not be registered. -Also, statement probes must be run under guru-mode only. -

-

-  -

USER-SPACE

- -Support for user-space probing is available for kernels that are -configured with the utrace extensions, or have the uprobes facility in -linux 3.5. (Various kernel build configuration options need to be -enabled; systemtap will advise if these are missing.) -

-

- -There are several forms. First, a non-symbolic probe point: - -

- -
- -

-
-process(PID).statement(ADDRESS).absolute
-
-
- -
- - -

- -is analogous to - -kernel.statement(ADDRESS).absolute -in that both use raw (unverified) virtual addresses and provide -no $variables. The target PID parameter must identify a running -process, and ADDRESS should identify a valid instruction address. -All threads of that process will be probed. -

- -Second, non-symbolic user-kernel interface events handled by -utrace may be probed: - -

- -
- -

-
-process(PID).begin
-process("FULLPATH").begin
-process.begin
-process(PID).thread.begin
-process("FULLPATH").thread.begin
-process.thread.begin
-process(PID).end
-process("FULLPATH").end
-process.end
-process(PID).thread.end
-process("FULLPATH").thread.end
-process.thread.end
-process(PID).syscall
-process("FULLPATH").syscall
-process.syscall
-process(PID).syscall.return
-process("FULLPATH").syscall.return
-process.syscall.return
-process(PID).insn
-process("FULLPATH").insn
-process(PID).insn.block
-process("FULLPATH").insn.block
-
-
- -
- - -

- -

-

- -A -process.begin - -probe gets called when new process described by PID or FULLPATH gets created. -In addition, it is called once from the context of each preexisting process, -at systemtap script startup. This is useful to track live processes. -A -process.thread.begin - -probe gets called when a new thread described by PID or FULLPATH gets created. -A -process.end - -probe gets called when process described by PID or FULLPATH dies. -A -process.thread.end - -probe gets called when a thread described by PID or FULLPATH dies. -A -process.syscall - -probe gets called when a thread described by PID or FULLPATH makes a -system call. The system call number is available in the -$syscall - -context variable, and the first 6 arguments of the system call -are available in the -$argN - -(ex. $arg1, $arg2, ...) context variable. -A -process.syscall.return - -probe gets called when a thread described by PID or FULLPATH returns from a -system call. The system call number is available in the -$syscall - -context variable, and the return value of the system call is available -in the -$return - -context variable. -A -process.insn - -probe gets called for every single-stepped instruction of the process described by PID or FULLPATH. -A -process.insn.block - -probe gets called for every block-stepped instruction of the process described by PID or FULLPATH. -

-

- -If a process probe is specified without a PID or FULLPATH, all user -threads will be probed. However, if systemtap was invoked with the --c or -x - -options, then process probes are restricted to the process -hierarchy associated with the target process. If a process probe is -unspecified (i.e. without a PID or FULLPATH), but with the --c - -option, the PATH of the --c - -cmd will be heuristically filled into the process PATH. In that case, -only command parameters are allowed in the -c command (i.e. no -command substitution allowed and no occurrences of any of these -characters: '|&;<>(){}'). -

-

- -Third, symbolic static instrumentation compiled into programs and -shared libraries may be -probed: - -

- -
- -

-
-process("PATH").mark("LABEL")
-process("PATH").provider("PROVIDER").mark("LABEL")
-process(PID).mark("LABEL")
-process(PID).provider("PROVIDER").mark("LABEL")
-
-
- -
- - -

- -

- -A -.mark - -probe gets called via a static probe which is defined in the -application by STAP_PROBE1(PROVIDER,LABEL,arg1), which are macros defined in -sys/sdt.h. - -The PROVIDER is an arbitrary application identifier, LABEL is the -marker site identifier, and arg1 is the integer-typed argument. -STAP_PROBE1 is used for probes with 1 argument, STAP_PROBE2 is used -for probes with 2 arguments, and so on. The arguments of the probe -are available in the context variables $arg1, $arg2, ... An -alternative to using the STAP_PROBE macros is to use the dtrace script -to create custom macros. Additionally, the variables $$name and -$$provider are available as parts of the probe point name. The -sys/sdt.h - -macro names DTRACE_PROBE* are available as aliases for STAP_PROBE*. -

-

- -Finally, full symbolic source-level probes in user-space programs and -shared libraries are supported. These are exactly analogous to the -symbolic DWARF-based kernel/module probes described above. They -expose the same sorts of context $variables for function parameters, -local variables, and so on. - -

- -
- -

-
-process("PATH").function("NAME")
-process("PATH").statement("*@FILE.c:123")
-process("PATH").plt("NAME")
-process("PATH").library("PATH").plt("NAME")
-process("PATH").library("PATH").function("NAME")
-process("PATH").library("PATH").statement("*@FILE.c:123")
-process("PATH").function("*").return
-process("PATH").function("myfun").label("foo")
-process("PATH").function("foo").callee("bar")
-process("PATH").plt("NAME").return
-process(PID).function("NAME")
-process(PID).statement("*@FILE.c:123")
-process(PID).plt("NAME")
-
-
- -
- - -

- -

-

- -Note that for all process probes, -PATH - -names refer to executables that are searched the same way shells do: relative -to the working directory if they contain a "/" character, otherwise in -$PATH. - -If PATH names refer to scripts, the actual interpreters (specified in the -script in the first line after the #! characters) are probed. -

-

- -Tapset process probes placed in the special directory -$prefix/share/systemtap/tapset/PATH/ with relative paths will have their -process parameter prefixed with the location of the tapset. For example, -

- -

- -
- -

-
-process("foo").function("NAME")
-
-
- -
- - -

- -

- -expands to - -

- -
- -

-
-process("/usr/bin/foo").function("NAME")
-
-
- -
- - -

- -

-

- -when placed in $prefix/share/systemtap/tapset/PATH/usr/bin/ -

-

- -If PATH is a process component parameter referring to shared libraries -then all processes that map it at runtime would be selected for probing. -If PATH is a library component parameter referring to shared libraries -then the process specified by the process component would be selected. -Note that the PATH pattern in a library component will always apply to -libraries statically determined to be in use by the process. However, -you may also specify the full path to any library file even if not -statically needed by the process. -

-

- -A .plt probe will probe functions in the program linkage table -corresponding to the rest of the probe point. .plt can be specified -as a shorthand for .plt("*"). The symbol name is available as a -$$name context variable; function arguments are not available, since -PLTs are processed without debuginfo. A .plt.return probe places a -probe at the moment after the return from the named -function. -

-

- -If the PATH string contains wildcards as in the MPATTERN case, then -standard globbing is performed to find all matching paths. In this -case, the -$PATH - -environment variable is not used. -

-

- -If systemtap was invoked with the --c or -x - -options, then process probes are restricted to the process -hierarchy associated with the target process. -

-  -

JAVA

- -Support for probing Java methods is available using Byteman as a -backend. Byteman is an instrumentation tool from the JBoss project -which systemtap can use to monitor invocations for a specific method -or line in a Java program. -

- -Systemtap does so by generating a Byteman script listing the probes to -instrument and then invoking the Byteman -bminstall - -utility. -

- -This Java instrumentation support is currently a prototype feature -with major limitations. Moreover, Java probing currently does not -work across users; the stap script must run (with appropriate -permissions) under the same user that the Java process being -probed. (Thus a stap script under root currently cannot probe Java -methods in a non-root-user Java process.) -

-

- -The first probe type refers to Java processes by the name of the Java process: - -

- -
- -

-
-java("PNAME").class("CLASSNAME").method("PATTERN")
-java("PNAME").class("CLASSNAME").method("PATTERN").return
-
-
- -
- - -

- -The PNAME argument must be a pre-existing jvm pid, and be identifiable -via a jps listing. -

- -The PATTERN parameter specifies the signature of the Java method to -probe. The signature must consist of the exact name of the method, -followed by a bracketed list of the types of the arguments, for -instance "myMethod(int,double,Foo)". Wildcards are not supported. -

- -The probe can be set to trigger at a specific line within the method -by appending a line number with colon, just as in other types of -probes: "myMethod(int,double,Foo):245". -

- -The CLASSNAME parameter identifies the Java class the method belongs -to, either with or without the package qualification. By default, the -probe only triggers on descendants of the class that do not override -the method definition of the original class. However, CLASSNAME can -take an optional caret prefix, as in -^org.my.MyClass, - -which specifies that the probe should also trigger on all descendants -of MyClass that override the original method. For instance, every method -with signature foo(int) in program org.my.MyApp can be probed at once using - -

- -
- -

-
-java("org.my.MyApp").class("^java.lang.Object").method("foo(int)")
-
-
- -
- - -

- -

- -The second probe type works analogously, but refers to Java processes by PID: - -

- -
- -

-
-java(PID).class("CLASSNAME").method("PATTERN")
-java(PID).class("CLASSNAME").method("PATTERN").return
-
-
- -
- - -

- -(PIDs for an already running process can be obtained using the -jps(1) - -utility.) -

- -Context variables defined within java probes include -$arg1 - -through -$arg10 - -(for up to the first 10 arguments of a method), represented as character-pointers -for the -toString() - -form of each actual argument. -The -arg1 - -through -arg10 - -script variables provide access to these as ordinary strings, fetched via -user_string_warn(). - -

- -Prior to systemtap version 3.1, -$arg1 - -through -$arg10 - -could contain either integers or character pointers, depending on the types of the -objects being passed to each particular java method. This previous behaviour may -be invoked with the -stap --compatible=3.0 - -flag. -

-  -

PROCFS

- -

-These probe points allow procfs "files" in -/proc/systemtap/MODNAME to be created, read and written using a -permission that may be modified using the proper umask value. Default permissions are 0400 for read -probes, and 0200 for write probes. If both a read and write probe are being -used on the same file, a default permission of 0600 will be used. -Using procfs.umask(0040).read would -result in a 0404 permission set for the file. -(MODNAME - -is the name of the systemtap module). The -proc - -filesystem is a pseudo-filesystem which is used as an interface to -kernel data structures. There are several probe point variants supported -by the translator: -

- -

- -
- -

-
-procfs("PATH").read
-procfs("PATH").umask(UMASK).read
-procfs("PATH").read.maxsize(MAXSIZE)
-procfs("PATH").umask(UMASK).maxsize(MAXSIZE)
-procfs("PATH").write
-procfs("PATH").umask(UMASK).write
-procfs.read
-procfs.umask(UMASK).read
-procfs.read.maxsize(MAXSIZE)
-procfs.umask(UMASK).read.maxsize(MAXSIZE)
-procfs.write
-procfs.umask(UMASK).write
-
-
- -
- - -

- -

-Note that there are a few differences when procfs probes are used in the stapbpf runtime. -FIFO - -special files are used instead of proc filesystem files. -These files are created in -/var/tmp/systemtap-USER/MODNAME. -(USER - -is the name of the user). -Additionally, users cannot create both read and write probes on the same file. -

-PATH - -is the file name (relative to /proc/systemtap/MODNAME or /var/tmp/systemtap-USER/MODNAME) to be created. -If no -PATH - -is specified (as in the last two variants above), -PATH - -defaults to "command". The file name "__stdin" is used internally by systemtap -for input probes and should not be used as a -PATH - -for procfs probes; see the input probe section below. -

- -When a user reads /proc/systemtap/MODNAME/PATH (normal runtime) or /var/tmp/systemtap-USER/MODNAME (stapbpf runtime), the corresponding -procfs -read - -probe is triggered. The string data to be read should be assigned to -a variable named -$value, - -like this: -

- -

- -
- -

-
-procfs("PATH").read { $value = "100\n" }
-
-
- -
- - -

- -

- -When a user writes into /proc/systemtap/MODNAME/PATH (normal runtime) or /var/tmp/systemtap-USER/MODNAME (stapbpf runtime), the -corresponding procfs -write - -probe is triggered. The data the user wrote is available in the -string variable named -$value, - -like this: -

- -

- -
- -

-
-procfs("PATH").write { printf("user wrote: %s", $value) }
-
-
- -
- - -

- -

- -MAXSIZE - -is the size of the procfs read buffer. Specifying -MAXSIZE - -allows larger procfs output. If no -MAXSIZE - -is specified, the procfs read buffer defaults to -STP_PROCFS_BUFSIZE - -(which defaults to -MAXSTRINGLEN, - -the maximum length of a string). -If setting the procfs read buffers for more than one file is needed, -it may be easiest to override the -STP_PROCFS_BUFSIZE - -definition. -Here's an example of using -MAXSIZE: - -

- -

- -
- -

-
-procfs.read.maxsize(1024) {
-    $value = "long string..."
-    $value .= "another long string..."
-    $value .= "another long string..."
-    $value .= "another long string..."
-}
-
-
- -
- - -

- -

-  -

INPUT

- -

-These probe points make input from stdin available to the script during runtime. -The translator currently supports two variants of this family: - -

- -
- -

-
-input.char
-input.line
-
-
- -
- - -

- -

-input.char - -is triggered each time a character is read from stdin. The current -character is available in the string variable named -char. - -There is no newline buffering; the next character is read from stdin as soon -as it becomes available. -

-input.line - -causes all characters read from stdin to be buffered until a newline is read, -at which point the probe will be triggered. The current line of characters -(including the newline) is made available in a string variable named -line. - -Note that no more than MAXSTRINGLEN characters will be buffered. Any additional -characters will not be included in -line. - -

-

- -Input probes are aliases for -procfs(__stdin).write. - -Systemtap reconfigures stdin if the presence of this procfs probe is detected, -therefore "__stdin" should not be used as a path argument for procfs probes. -Additionally, input probes will not work with the -F and --remote options. -

-  -

NETFILTER HOOKS

- -

-These probe points allow observation of network packets using the -netfilter mechanism. A netfilter probe in systemtap corresponds to a -netfilter hook function in the original netfilter probes API. It is -probably more convenient to use -tapset::netfilter(3stap), - -which wraps the primitive netfilter hooks and does the work of -extracting useful information from the context variables. -

-

- -There are several probe point variants supported by the translator: -

- -

- -
- -

-
-netfilter.hook("HOOKNAME").pf("PROTOCOL_F")
-netfilter.pf("PROTOCOL_F").hook("HOOKNAME")
-netfilter.hook("HOOKNAME").pf("PROTOCOL_F").priority("PRIORITY")
-netfilter.pf("PROTOCOL_F").hook("HOOKNAME").priority("PRIORITY")
-
-
- -
- - -

- -

-

- -PROTOCOL_F - -is the protocol family to listen for, currently one of -NFPROTO_IPV4, - -NFPROTO_IPV6, - -NFPROTO_ARP, - -or -NFPROTO_BRIDGE. - -

-

- -HOOKNAME - -is the point, or 'hook', in the protocol stack at which to intercept -the packet. The available hook names for each protocol family are -taken from the kernel header files <linux/netfilter_ipv4.h>, -<linux/netfilter_ipv6.h>, <linux/netfilter_arp.h> and -<linux/netfilter_bridge.h>. For instance, allowable hook names for -NFPROTO_IPV4 - -are -NF_INET_PRE_ROUTING, - -NF_INET_LOCAL_IN, - -NF_INET_FORWARD, - -NF_INET_LOCAL_OUT, - -and -NF_INET_POST_ROUTING. - -

-

- -PRIORITY - -is an integer priority giving the order in which the probe point -should be triggered relative to any other netfilter hook functions -which trigger on the same packet. Hook functions execute on each -packet in order from smallest priority number to largest priority number. If no -PRIORITY - -is specified (as in the first two probe point variants above), -PRIORITY - -defaults to "0". -

-There are a number of predefined priority names of the form -NF_IP_PRI_* - -and -NF_IP6_PRI_* - -which are defined in the kernel header files <linux/netfilter_ipv4.h> and <linux/netfilter_ipv6.h> respectively. The script is permitted to use these -instead of specifying an integer priority. (The probe points for -NFPROTO_ARP - -and -NFPROTO_BRIDGE - -currently do not expose any named hook priorities to the script writer.) -Thus, allowable ways to specify the priority include: -

- -

- -
- -

-
-priority("255")
-priority("NF_IP_PRI_SELINUX_LAST")
-
-
- -
- - -

- -

-A script using guru mode is permitted to specify any identifier or -number as the parameter for hook, pf, and priority. This feature -should be used with caution, as the parameter is inserted verbatim into -the C code generated by systemtap. -

-The netfilter probe points define the following context variables: -

-
$hooknum - -
-The hook number. -
$skb - -
-The address of the sk_buff struct representing the packet. See -<linux/skbuff.h> for details on how to use this struct, or -alternatively use the tapset -tapset::netfilter(3stap) - -for easy access to key information. -

-

$in - -
-The address of the net_device struct representing the network device -on which the packet was received (if any). May be 0 if the device is -unknown or undefined at that stage in the protocol stack. -

-

$out - -
-The address of the net_device struct representing the network device -on which the packet will be sent (if any). May be 0 if the device is -unknown or undefined at that stage in the protocol stack. -

-

$verdict - -
-(Guru mode only.) Assigning one of the verdict values defined in -<linux/netfilter.h> to this variable alters the further progress of -the packet through the protocol stack. For instance, the following -guru mode script forces all ipv6 network packets to be dropped: -

- -

- -
- -

-
-probe netfilter.pf("NFPROTO_IPV6").hook("NF_IP6_PRE_ROUTING") {
-  $verdict = 0 /* nf_drop */
-}
-
-
- -
- - -

- -

-For convenience, unlike the primitive probe points discussed here, the -probes defined in -tapset::netfilter(3stap) - -export the lowercase names of the verdict constants (e.g. NF_DROP -becomes nf_drop) as local variables. -

-

-  -

KERNEL TRACEPOINTS

- -

-This family of probe points hooks up to static probing tracepoints -inserted into the kernel or modules. As with markers, these -tracepoints are special macro calls inserted by kernel developers to -make probing faster and more reliable than with DWARF-based probes, -and DWARF debugging information is not required to probe tracepoints. -Tracepoints have an extra advantage of more strongly-typed parameters -than markers. -

-Tracepoint probes look like: -kernel.trace(name). - -The tracepoint name string, which may contain the usual wildcard -characters, is matched against the names defined by the kernel -developers in the tracepoint header files. To restrict the search to -specific subsystems (e.g. sched, ext3, etc...), the following syntax -can be used: -kernel.trace(system:name). - -The tracepoint system string may also contain the usual wildcard -characters. -

-The handler associated with a tracepoint-based probe may read the -optional parameters specified at the macro call site. These are -named according to the declaration by the tracepoint author. For -example, the tracepoint probe -kernel.trace(sched:sched_switch) - -provides the parameters -$prev and $next. - -If the parameter is a complex type, as in a struct pointer, then a -script can access fields with the same syntax as DWARF $target -variables. Also, tracepoint parameters cannot be modified, but in -guru-mode a script may modify fields of parameters. -

-The subsystem and name of the tracepoint are available in -$$system and $$name - -and a string of name=value pairs for all parameters of the tracepoint -is available in -$$vars or $$parms. - -

-  -

KERNEL MARKERS (OBSOLETE)

- -

-This family of probe points hooks up to an older style of static -probing markers inserted into older kernels or modules. These markers -are special STAP_MARK macro calls inserted by kernel developers to -make probing faster and more reliable than with DWARF-based probes. -Further, DWARF debugging information is -not - -required to probe markers. -

-Marker probe points begin with -kernel. - -The next part names the marker itself: -mark(name). - -The marker name string, which may contain the usual wildcard characters, -is matched against the names given to the marker macros when the kernel -and/or module was compiled. Optionally, you can specify -format(format). - -Specifying the marker format string allows differentiation between two -markers with the same name but different marker format strings. -

-The handler associated with a marker-based probe may read the -optional parameters specified at the macro call site. These are -named -$arg1 through $argNN, - -where NN is the number of parameters supplied by the macro. Number -and string parameters are passed in a type-safe manner. -

-The marker format string associated with a marker is available in -$format. - -And also the marker name string is available in -$name. - -

-  -

HARDWARE BREAKPOINTS

- -This family of probes is used to set hardware watchpoints for a given -
 (global) kernel symbol. The probes take three components as inputs : -

-1. The -virtual - -address / name of the kernel symbol to be traced is supplied as -argument to this class of probes. ( Probes for only data segment -variables are supported. Probing local variables of a function cannot -be done.) -

-2. Nature of access to be probed : -a. -.write - -probe gets triggered when a write happens at the specified address/symbol -name. -b. -rw - -probe is triggered when either a read or write happens. -

-3. -.length - -(optional) -Users have the option of specifying the address interval to be probed -using "length" constructs. The user-specified length gets approximated -to the closest possible address length that the architecture can -support. If the specified length exceeds the limits imposed by -architecture, an error message is flagged and probe registration fails. -Wherever 'length' is not specified, the translator requests a hardware -breakpoint probe of length 1. It should be noted that the "length" -construct is not valid with symbol names. -

-Following constructs are supported : - -

- -
- -

-
-probe kernel.data(ADDRESS).write
-probe kernel.data(ADDRESS).rw
-probe kernel.data(ADDRESS).length(LEN).write
-probe kernel.data(ADDRESS).length(LEN).rw
-probe kernel.data("SYMBOL_NAME").write
-probe kernel.data("SYMBOL_NAME").rw
-
-
- -
- - -

- -

-This set of probes make use of the debug registers of the processor, -which is a scarce resource. (4 on x86 , 1 on powerpc ) The script -translation flags a warning if a user requests more hardware breakpoint probes -than the limits set by architecture. For example,a pass-2 warning is flashed -when an input script requests 5 hardware breakpoint probes on an x86 -system while x86 architecture supports a maximum of 4 breakpoints. -Users are cautioned to set probes judiciously. -

-  -

PERF

- -

-This family of probe points interfaces to the kernel "perf event" -infrastructure for controlling hardware performance counters. -The events being attached to are described by the "type", -"config" fields of the -perf_event_attr - -structure, and are sampled at an interval governed by the -"sample_period" and "sample_freq" fields. -

-These fields are made available to systemtap scripts using -the following syntax: - -

- -
- -

-
-probe perf.type(NN).config(MM).sample(XX)
-probe perf.type(NN).config(MM).hz(XX)
-probe perf.type(NN).config(MM)
-probe perf.type(NN).config(MM).process("PROC")
-probe perf.type(NN).config(MM).counter("COUNTER")
-probe perf.type(NN).config(MM).process("PROC").counter("NAME")
-
-
- -
- - -

- -The systemtap probe handler is called once per XX increments -of the underlying performance counter when using the .sample field -or at a frequency in hertz when using the .hz field. When not specified, -the default behavior is to sample at a count of 1000000. -The range of valid type/config is described by the -perf_event_open(2) - -system call, and/or the -linux/perf_event.h - -file. Invalid combinations or exhausted hardware counter resources -result in errors during systemtap script startup. Systemtap does -not sanity-check the values: it merely passes them through to -the kernel for error- and safety-checking. By default the perf event -probe is systemwide unless .process is specified, which will bind the -probe to a specific task. If the name is omitted then it -is inferred from the stap -c argument. A perf event can be read on -demand using .counter. The body of the perf probe handler will not be -invoked for a .counter probe; instead, the counter is read in a user -space probe via: -

-

   process("PROC").statement("func@file") {stat <<< @perf("NAME")} 
-

-

-

-  -

PYTHON

- -Support for probing python 2 and python 3 function is available with -the help of an extra python support module. Note that the debuginfo -for the version of python being probed is required. To run a python -script with the extra python support module you'd add the '-m -HelperSDT' option to your python command, like this: - -

- -
- -

-
-stap foo.stp -c "python -m HelperSDT foo.py"
-
-
- -
- - -

- -Python probes look like the following: - -

- -
- -

-
-python2.module("MPATTERN").function("PATTERN")
-python2.module("MPATTERN").function("PATTERN").call
-python2.module("MPATTERN").function("PATTERN").return
-python3.module("MPATTERN").function("PATTERN")
-python3.module("MPATTERN").function("PATTERN").call
-python3.module("MPATTERN").function("PATTERN").return
-
-
- -
- - -

- -The list above includes multiple variants and modifiers which provide -additional functionality or filters. They are: -

-
-
.function
-Places a probe at the beginning of the named function by -default, unless modified by PATTERN. Parameters are available as -context variables. -
.call
-Places a probe at the beginning of the named function. Parameters are -available as context variables. -
.return
-Places a probe at the moment before the return from the named -function. Parameters and local/global python variables are available -as context variables. -
-
- -

- -PATTERN stands for a string literal that aims to identify a point in -the python program. It is made up of three parts: -

-
-The first part is the name of a function (e.g. "foo") or class method -(e.g. "bar.baz"). This part may use the "*" and "?" wildcarding -operators to match multiple names. -
-The second part is optional and begins with the "@" character. -It is followed by the path to the source file containing the function, -which may include a wildcard pattern. The python path is searched for -a matching filename. -
-Finally, the third part is optional if the file name part was given, -and identifies the line number in the source file preceded by a ":" -or a "+". The line number is assumed to be an -absolute line number if preceded by a ":", or relative to the -declaration line of the function if preceded by a "+". -All the lines in the function can be matched with ":*". -A range of lines x through y can be matched with ":x-y". Ranges and -specific lines can be mixed using commas, e.g. ":x,y-z". -
-

- -In the above list of probe points, MPATTERN stands for a python module -or script name that names the python module of interest. This part may -use the "*" and "?" wildcarding operators to match multiple names. The -python path is searched for a matching filename. -

-

-  -

EXAMPLES

- -

- -Here are some example probe points, defining the associated events. -

-
begin, end, end
-refers to the startup and normal shutdown of the session. In this -case, the handler would run once during startup and twice during -shutdown. -
timer.jiffies(1000).randomize(200)
-refers to a periodic interrupt, every 1000 +/- 200 jiffies. -
kernel.function("*init*"), kernel.function("*exit*")
-refers to all kernel functions with "init" or "exit" in the name. -
kernel.function("*@kernel/time.c:240")
-refers to any functions within the "kernel/time.c" file that span -line 240. - -Note -that this is -not - -a probe at the statement at that line number. Use the - -kernel.statement -probe instead. -
kernel.trace("sched_*")
-refers to all scheduler-related (really, prefixed) tracepoints in -the kernel. -
kernel.mark("getuid")
-refers to an obsolete STAP_MARK(getuid, ...) macro call in the kernel. -
module("usb*").function("*sync*").return
-refers to the moment of return from all functions with "sync" in the -name in any of the USB drivers. -
kernel.statement(0xc0044852)
-refers to the first byte of the statement whose compiled instructions -include the given address in the kernel. -
kernel.statement("*@kernel/time.c:296")
-refers to the statement of line 296 within "kernel/time.c". -
kernel.statement("bio_init@fs/bio.c+3")
-refers to the statement at line bio_init+3 within "fs/bio.c". -
kernel.data("pid_max").write
-refers to a hardware breakpoint of type "write" set on pid_max -
syscall.*.return
-refers to the group of probe aliases with any name in the third position -

-

-  -

SEE ALSO

- - -
-stap(1),
-probe::*(3stap),
-tapset::*(3stap)
-
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
SYNTAX
-
DWARF DEBUGINFO
-
ON-THE-FLY ARMING
-
PROBE POINT FAMILIES
-
-
BEGIN/END/ERROR
-
NEVER
-
SYSCALL and ND_SYSCALL
-
TIMERS
-
DWARF
-
CONTEXT VARIABLES
-
MORE ON RETURN PROBES
-
DWARFLESS
-
USER-SPACE
-
JAVA
-
PROCFS
-
INPUT
-
NETFILTER HOOKS
-
KERNEL TRACEPOINTS
-
KERNEL MARKERS (OBSOLETE)
-
HARDWARE BREAKPOINTS
-
PERF
-
PYTHON
-
-
EXAMPLES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/stapref.1.html b/man/stapref.1.html deleted file mode 100644 index 86080080..00000000 --- a/man/stapref.1.html +++ /dev/null @@ -1,454 +0,0 @@ - -Manpage of STAPREF - -

STAPREF

-Section: User Commands (1)
Index -Return to Main Contents
- -  -

NAME

- -stapref - systemtap language reference -

- - - - -

-  -

SYNOPSIS

- -

-
- -stapref - -

-  -

DESCRIPTION

- -

-The reference for the systemtap scripting language. -

-  -

LANGUAGE

- -Keywords - -
- - -
-
-• break
-• continue
-• delete
-• else
-• exit
-• foreach
-• for
-• function
-• global
-• private
-• if
-• in
-• next
-• probe
-• return
-• try/catch
-• while
-
-
- -
- - -

- -

-Data Types and Operators - -
- - -

-
-Integers
-• var1 = 5
-• global var2 = 10
-
-Strings
-• var1 = "string1"
-• global var2 = "string2"
-
-Associative Arrays
-• global array1[]
-• global array2[SIZE]
-• array[index] = 5
-
-Context Variables
-• $var
-• $var$  (pretty printed string form)
-
-Binary numeric operators
-• * / % + - << >> >>> & ^ | && ||
-
-Binary string operators
-• . (string concatenation)
-
-Numeric assignment operators
-• = += -= *= /= %= >>= <<= &= ^= |= 
-
-String assignment operators
-• = .= 
-
-Unary numeric operators
-• + - ! ~ ++ -- 
-
-Numeric & string comparison operators
-• < > <= >= == != 
-
-Regular expression matching operators
-• =~ !~ 
-
-Ternary operator
-• cond ? exp1 : exp2
-
-Grouping operator
-• ( expression )
-
-Array operators
-• array[index] (array read/write)
-• [index] in array
-
-Aggregation operator
-• var <<< value
-
-
- -
- - -

- -

-Statements - -
- - -

-
-Jump Statements
-• continue
-• break
-• next  (early return from a probe)
-• return expression (from a function)
-• try statement catch (message) statement
-
-
- -
- - -

- - -
- - -

-
-Selection Statements
-• if (expression) statement 
-• else statement
-
-
- -
- - -

- - -
- - -

-
-Iteration Statements
-• foreach (variable in array) statement
-• foreach ([var1,var2,...] in array) statement
-• for (expression; expression; expression) statement
-• while (expression) statement
-
-
- -
- - -

- - -
- - -

-
-Declaration Statements
-• function name (variable : type, ...) { statement }
-• function name : type (variable : type, ...) { statement }
-• function name : type (variable : type, ...) %{ c_statement %}
-• probe probepoint { statement }
-• probe label = probepoint { statement }
-
-
- -
- - -

- -

-Lexical Structure - -
- - -

-
-Comments
-• # ... comment
-• // ... comment
-• /* ... comment ... */
-
-
- -
- - -

- - -
- - -

-
-Preprocessor
-• %( expression %? true_tokens %: false_tokens %)
-• @define label (variable, ...) %{ statement %}
-
-
- -
- - -

- -

-Builtin Functions - -
- - -

-
-Aggregation Builtin Functions
-• @avg (variable)
-• @count (variable)
-• @hist_linear (variable, N, N, N)
-• @hist_log (variable)
-• @max (variable)
-• @min (variable)
-• @sum (variable)
-
-
- -
- - -

- - -
- - -

-
-Output Builtin Functions
-• print (variable)
-• printf (format:string, variable, ...) 
-  where format is of the form: %[flags][width][.precision][length]specifier
-• printd (delimiter:string, variable, ...)
-• printdln (delimiter:string, variable, ...)
-• println ()
-• sprint:string (variable)
-• sprintf:string (format:string, variable, ...)
-
-
- -
- - -

- - -
- - -

-
-Variable Access Builtin Functions
-• @cast (variable, "type_name"[, "module"])
-• @defined (variable)
-
-
- -
- - -

- -

-Probepoints - -
- - -

-
-Some of the more commonly used probepoints
-• kernel.function(PATTERN) kernel.function(PATTERN).call
-• kernel.function(PATTERN).return
-• kernel.FUNCTION (PATTERN).return.maxactive(VALUE)
-• kernel.FUNCTION (PATTERN).inline
-• kernel.FUNCTION (PATTERN).label(LPATTERN)
-• module(MPATTERN).FUNCTION (PATTERN)
-• module(MPATTERN).FUNCTION (PATTERN).call
-• module(MPATTERN).FUNCTION (PATTERN).return.maxactive(VALUE)
-• module(MPATTERN).FUNCTION (PATTERN).inline
-• kernel.statement(PATTERN)
-• kernel.statement(ADDRESS).absolute
-• module(MPATTERN).statement(PATTERN)
-• kprobe.FUNCTION (FUNCTION)
-• kprobe.FUNCTION (FUNCTION).return
-• kprobe.module(NAME).FUNCTION (FUNCTION)
-• kprobe.module(NAME).FUNCTION (FUNCTION).return
-• kprobe.statement(ADDRESS).absolute
-• process.begin process("PATH").begin
-• process(PID).begin process.thread.begin
-• process("PATH").thread.begin
-• process(PID).thread.begin
-• process.end
-• process("PATH").end
-• process(PID).end
-• process.thread.end
-• process("PATH").thread.end
-• process(PID).thread.end
-• process("PATH").syscall
-• process(PID).syscall
-• process.syscall.return
-• process("PATH").syscall.return
-• process(PID).syscall.return
-• process("PATH").FUNCTION ("NAME")
-• process("PATH").statement("*@FILE.c:123")
-• process("PATH").FUNCTION ("*").return
-• process("PATH").FUNCTION ("myfun").label("foo")
-• process("PATH").mark("LABEL")
-• java("PNAME").class("CLASSNAME").method("PATTERN")
-• java("PNAME").class("CLASSNAME").method("PATTERN").return
-• java(PID).class("CLASSNAME").method("PATTERN")
-• java(PID).class("CLASSNAME").method("PATTERN").return
-• python2.module("MODULENAME").function("PATTERN")
-• python2.module("MODULENAME").function("PATTERN").return
-• python3.module("MODULENAME").function("PATTERN")
-• python3.module("MODULENAME").function("PATTERN").return
-
-
- -
- - -

- -

-Tapset Functions - -
- - -

-
-Some of the more commonly used tapset functions
-• addr:long ()
-• backtrace:string ()
-• caller:string ()
-• caller_addr:long ()
-• cmdline_arg:string (N:long)
-• cmdline_args:string (N:long,m:long,delim:string)
-• cmdline_str:string ()
-• env_var:string (name:string)
-• execname:string ()
-• int_arg:long (N:long)
-• isinstr:long(s1:string,s2:string)
-• long_arg:long (N:long)
-• modname:string ()
-• module_name:string ()
-• pid:long ()
-• pn:string ()
-• pointer_arg:string (N:long)
-• pp:string ()
-• print_backtrace ()
-• probefunc:string ()
-• register:long(name:string)
-• str_replace:string(prnt_str:string,srch_str:string,rplc_str:string)
-• stringat:long(str:string,pos:long)
-• strlen:long(str:string)
-• strtol:long(str:string,base:long)
-• substr:string(str:string,start:long,length:long)
-• user_long:long(addr:long)
-• user_string:string(addr:long)
-
-
- -
- - -

- -

-  -

SEE ALSO

- - -
-stap(1)
-
-
  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/,<systemtap@sourceware.org>. - - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
LANGUAGE
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/staprun.8.html b/man/staprun.8.html deleted file mode 100644 index 6fa205ab..00000000 --- a/man/staprun.8.html +++ /dev/null @@ -1,464 +0,0 @@ - -Manpage of STAPRUN - -

STAPRUN

-Section: Maintenance Commands (8)
Index -Return to Main Contents
- -  -

NAME

- -staprun - systemtap runtime -

-  -

SYNOPSIS

- -

-
- -staprun - -[ -OPTIONS - -] -MODULE - -[ -MODULE-OPTIONS - -] -

-  -

DESCRIPTION

- -

-The -staprun - -program is the back-end of the Systemtap tool. It expects a kernel -module produced by the front-end -stap - -tool. -

- -Splitting the systemtap tool into a front-end and a back-end allows a -user to compile a systemtap script on a development machine that has -the kernel development tools (needed to compile the script) and then -transfer the resulting kernel module to a production machine that -doesn't have any development tools installed. -

- -Please refer to stappaths (7) for the version number, or run -rpm -q systemtap (fedora/red hat) -apt-get -v systemtap (ubuntu) -

-  -

OPTIONS

- -The -staprun - -program supports the following options. Any other option -prints a list of supported options. -
-
-v - -
-Verbose mode. The level of verbosity is also set in the -SYSTEMTAP_VERBOSE - -environment variable. -
-V - -
-Print version number and exit. -
-w - -
-Suppress warnings from the script. -
-u - -
-Load the uprobes.ko module. -
-c CMD - -
-Command CMD will be run and the -staprun - -program will exit when CMD -does. The '_stp_target' variable will contain the pid for CMD. -
-x PID - -
-The '_stp_target' variable will be set to PID. -
-o FILE - -
-Send output to FILE. If the module uses bulk mode, the output will -be in percpu files FILE_x(FILE_cpux in background and bulk mode) -where 'x' is the cpu number. This supports strftime(3) formats -for FILE. -
-b BUFFER_SIZE - -
-The systemtap module will specify a buffer size. -Setting one here will override that value. The value should be -an integer between 1 and 4095 which be assumed to be the -buffer size in MB. That value will be per-cpu if bulk mode is used. -
-L - -
-Load module and start probes, then detach from the module leaving the -probes running. The module can be attached to later by using the --A - -option. -
-A - -
-Attach to loaded systemtap module. -
-C WHEN - -
-Control coloring of error messages. WHEN must be either - -"never", "always", or "auto" - -(i.e. enable only if at a terminal). If the option is missing, then "auto" -is assumed. Colors can be modified using the SYSTEMTAP_COLORS environment -variable. See the -stap(1) - -manual page for more information on syntax and behaviour. -
-d - -
-Delete a module. Only detached or unused modules -the user has permission to access will be deleted. Use "*" -(quoted) to delete all unused modules. -
-D - -
-Run staprun in background as a daemon and show it's pid. -
-R - -
-Rename the module to a unique name before inserting it. -
-r N:URI - -
-Pass the given number and URI data to the tapset functions -remote_id() and remote_uri(). -
-S size[,N] - -
-Sets the maximum size of output file and the maximum number of output files. -If the size of output file will exceed -size - -, systemtap switches output file to the next file. And if the number of -output files exceed -N - -, systemtap removes the oldest output file. You can omit the second argument. -
-T timeout - -
-Sets maximum time reader thread will wait before dumping trace buffer. Value is -in ms, default is 200ms. Setting this to a high value decreases number of stapio -wake-ups, allowing deeper sleep for embedded platforms. But it impacts interactivity -on terminal as traces are dumped less often in case of low throughput. -There is no interactivity or performance impact for high throughput as trace is -dumped when buffer is full, before this timeout expires. -
var1=val - -
-Sets the value of global variable var1 to val. Global variables contained -within a module are treated as module options and can be set from the -staprun command line. -

-

-  -

ARGUMENTS

- -MODULE - -is either a module path or a module name. If it is a module name, -the module will be looked for in the following directory -(where 'VERSION' is the output of "uname -r"): -
-
-/lib/modules/VERSION/systemtap -
-

- - -Any additional arguments on the command line are passed to the -module. One use of these additional module arguments is to set the value -of global variables declared within the module. -

- -

- $ stap -p4 -m mod1 -e 'global var1="foo"; probe begin{printf("%s\n", var1); exit()}' -
- -

- -Running this with an additional module argument: -

- -

- $ staprun mod1.ko var1="HelloWorld" -
- - HelloWorld -

- -Spaces and exclamation marks currently cannot be passed into global variables -this way. -

-  -

EXAMPLES

- -See the -stapex(3stap) - -manual page for a collection of sample scripts. -

- -Here is a very basic example of how to use -staprun. - -First, use -stap - -to compile a script. The -stap - -program will report the pathname to the resulting module. -

- - $ stap -p4 -e 'probe begin { printf("Hello World!\n"); exit() }' -
- - /home/user/.systemtap/cache/85/stap_8553d83f78c_265.ko -

- -Run -staprun - -with the pathname to the module as an argument. -

- - $ staprun /home/user/.systemtap/cache/85/stap_8553d83f78c_265.ko -
- - Hello World! -  -

MODULE DETACHING AND ATTACHING

- -After the -staprun - -program installs a Systemtap kernel module, users can detach from the -kernel module and reattach to it later. The --L - -option loads the module and automatically detaches. Users can also -detach from the kernel module interactively by sending the SIGQUIT -signal from the keyboard (typically by typing Ctrl-\). -

- -To reattach to a kernel module, the -staprun - --A - -option would be used. -

-  -

FILE SWITCHING BY SIGNAL

- -After -staprun - -launched the -stapio - -program, users can command it to switch output file to next file when it -outputs to file(s) (running staprun with --o - -option) by sending a -SIGUSR2 - -signal to the -stapio - -process. When it receives SIGUSR2, it will switch output file to -new file with suffix -.N - -where N is the sequential number. -For example, -

- - $ staprun -o foo ... -

- -outputs trace logs to -foo - -and if it receives -SIGUSR2 - -signal, it switches output to -foo.1 - -file. And receiving -SIGUSR2 - -again, it switches to -foo.2 - -file. -

-  -

SAFETY AND SECURITY

- -Systemtap, in the default kernel-module runtime mode, is an -administrative tool. It exposes kernel internal data structures and -potentially private user information. See the -stap(1) - -manual page for additional information on safety and security. -

- -To increase system security, users of systemtap must be root, or in the -stapusr - -group in order to execute this setuid -staprun - -program. -A user may select a particular privilege level with the stap ---privilege= - -option, which -staprun - -will later enforce. -

-
stapdev
-Members of the -stapdev - -group can write and load script modules with root-equivalent -privileges, without particular security constraints. (Many safety -constraints remain.) -
stapsys
-Members of the -stapsys - -group have almost all the privileges of -stapdev, - -except for guru mode constructs. -
stapusr
-Members only of the -stapusr - -group may any-privileged modules placed into the /lib/modules/VERSION/systemtap -by the system administrator. -
stapusr
-Members only of the -stapusr - -group may also write and load low-privilege script modules, which are normally -limited to manipulating their own processes (and not the kernel nor other users' -processes). -
-

- -Part of the privilege enforcement mechanism may require using a -stap-server and administrative trust in its cryptographic signer; see the -stap-server(8) - -manual page for a for more information. -

-

- -On a kernel with FIPS mode enabled, staprun normally refuses to attempt to -load systemtap-generated kernel modules. This is because on some kernels, -this results in a panic. If your kernel includes corrections such as -linux commit #002c77a48b47, then you can force staprun to attempt module -loads anyway, by setting the -STAP_FIPS_OVERRIDE - -environment variable to any value. -

-  -

FILES

- -
-
/lib/modules/VERSION/systemtap
-If MODULE is a module name, the module will be looked for in this directory. -Users who are only in the -'stapusr' - -group can install modules -located in this directory. This directory must be owned by the root -user and not be world writable. -

-

-  -

SEE ALSO

- -stap(1), - -stapprobes(3stap), - -stap-server(8), - -stapdyn(8), - -stapex(3stap) - -

-  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/, <systemtap@sourceware.org>. - - -

-

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
OPTIONS
-
ARGUMENTS
-
EXAMPLES
-
MODULE DETACHING AND ATTACHING
-
FILE SWITCHING BY SIGNAL
-
SAFETY AND SECURITY
-
FILES
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/stapsh.8.html b/man/stapsh.8.html deleted file mode 100644 index 7716f058..00000000 --- a/man/stapsh.8.html +++ /dev/null @@ -1,64 +0,0 @@ - -Manpage of STAPSH - -

STAPSH

-Section: Maintenance Commands (8)
Index -Return to Main Contents
- -  -

NAME

- -stapsh -

-  -

SYNOPSIS

- -

-
- -stapsh - -

-  -

DESCRIPTION

- -

-The stapsh executable is used by the stap ---remote - -functionality, as a wrapper shell on the remote machines. -It is not intended to be run directly by users. -

-  -

SEE ALSO

- - -
-stap(1)
-
-
  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/,<systemtap@sourceware.org>. - - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/stapvars.3stap.html b/man/stapvars.3stap.html deleted file mode 100644 index 962528c6..00000000 --- a/man/stapvars.3stap.html +++ /dev/null @@ -1,95 +0,0 @@ - -Manpage of STAPVARS - -

STAPVARS

-Section: Misc. Reference Manual Pages (3stap)
Index -Return to Main Contents
- -  -

NAME

- -stapvars - systemtap variables -

-  -

DESCRIPTION

- -The following sections enumerate the public variables provided by -standard tapsets installed, (the installation path is show in the -stappaths (7) manual page). Each variable is described with a -type, and its behavior/restrictions. -The syntax is the same as printed with the -stap option -p2. - -Examples: -

-

-
example1:long
-Variable "example1" contains an integer. -

-

example2:string [long]
-Variable "example2" is an array of strings, indexed by integers. -

-

-  -

ARGV

- -

-

-
argc:long
-Contains the value of the - -$# -value: the number of command line arguments passed to the systemtap script. -It is initialized with an implicit begin(-1) probe. -

-

argv:string [long]
-Contains each command line argument as a string. argv[1] will equal @1 if -there was at least one command line argument. Arguments beyond #32 are not -transcribed, and produce a warning message within the begin(-1) probe that -initializes this array. -

-

-  -

NULL

- -

-

-
NULL:long
-Simply defined as the number 0. -

-

-  -

FILES

- -
-
More files and their corresponding paths can be found in the stappaths (7) manual page.
-

-

-  -

SEE ALSO

- - -
-stap(1)
-stappaths(7)
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
-
ARGV
-
NULL
-
-
FILES
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/stapvirt.1.html b/man/stapvirt.1.html deleted file mode 100644 index 97510979..00000000 --- a/man/stapvirt.1.html +++ /dev/null @@ -1,349 +0,0 @@ - -Manpage of STAPVIRT - -

STAPVIRT

-Section: User Commands (1)
Index -Return to Main Contents
- -  -

NAME

- -stapvirt - prepare libvirt domains for systemtap probing -

- - - -

-  -

SYNOPSIS

- -stapvirt -[-c URI] -[-d PATH] -[-v] -COMMAND -ARGUMENTS -

-  -

DESCRIPTION

- -The stapvirt program can be used to add ports to domains managed by -libvirt (see - -<http://libvirt.org/>). - -These ports can then be used by stap to -run scripts inside the domains (see the '--remote' option in stap(1) for -more information). -

- -Ports are added to the definition of the domain using the port-add -command. These ports can later be removed using the port-remove command. -Note that there can only be as many simultaneous stap sessions as there -are ports. -

- -Starting from libvirt v1.1.1 and QEMU v0.10.0, SystemTap ports can be hotplugged -and thus do not need to be added first using the port-add command. -However, you need to ensure that there is a virtio-serial controller in place so -that hotplugged ports can be connected. If creating a domain using virt-install, -you can do this by adding this option: - -

- -
- -

-
-$ virt-install [...] --controller=virtio-serial
-
-
- -
- - -

- -If the domain has already been created, you can simply do port-add -followed immediately by port-remove, and then power off and restart the -domain. The port will be removed, but the controller will remain. -

-  -

OPTIONS

- -The following options are supported. Any other option prints a short help -message. -

-

-
-c URI
-Specify the libvirt driver URI to which to connect (e.g. 'qemu:///system'). The -default value is NULL, which indicates to libvirt to connect to the default -driver. See the page at <http://libvirt.org/uri.html> for supported values. -

-

-d PATH
-Specify the directory in which UNIX sockets should be created when SystemTap -ports are added. The default directory is '/var/lib/libvirt/qemu'. -

-

-v
-Increase verbosity. This option may be repeated for more verbosity. -

-

-  -

COMMANDS

- -The following commands are recognized by stapvirt. Any other command prints a -short help message. -

-

-
help
-Display the help message. -

-

list
-List available domains. -

-

port-add DOMAIN
-Add a permanent SystemTap port to the domain's definition. If the domain is -currently running, it must be powered off before changes take effect. -

-

port-list DOMAIN
-List the UNIX socket paths of the permanent SystemTap ports in the domain's -definition. -

-

port-remove DOMAIN
-Remove a permanent SystemTap port from the domain's definition. If the domain is -currently running, it must be powered off before changes take effect. -

-

query DOMAIN
-Display the following information about the domain: its name, its UUID, its -state, the number of permanent SystemTap ports installed, and whether -hotplugging is supported. -

-

-  -

TUTORIAL

- -This tutorial will help you get started with stapvirt. Let's start by listing -all the privileged domains on the machine with the list command: -

- -

- -
- -

-
-$ stapvirt -c 'qemu:///system' list
-Available domains on URI 'qemu:///system':
-ID      State     Type        Name
-2       running   persistent  TestVM
-
-
- -
- - -

- -

-Note that we specified the libvirt URI using the -c switch. Otherwise libvirt -might have defaulted to e.g. 'qemu:///session'. -

- -Rather than typing the URI everytime, it might be easier to instead set the - -LIBVIRT_DEFAULT_URI - -environment variable and omit the -c switch. Note that this is a libvirt -functionality (see - -<libvirt.org/uri.html> - -for more details). -

- -The list command indicates that we have a running domain named 'TestVM' -with ID 2. Let's use the query command to retrieve more information: -

- -

- -
- -

-
-$ stapvirt query TestVM # by name
-$ stapvirt query 2      # by ID
-
-              Name:  TestVM
-              UUID:  905951c0-fa4f-409b-079c-c91ddda27028
-             State:  running
-                ID:  2
-              Type:  persistent
-   Permanent Ports:  0
-       Hotplugging:  not supported
-
-
- -
- - -

- -

-The query command gives us some basic information about the domain, such -as its name, UUID, and state. More importantly, it gives us two pieces of -information: the number of permanent ports installed, and whether hotplugging is -supported. Technically, hotplugging support depends on libvirt and qemu, and is -not related to the domain in itself. -

- -If hotplugging were supported, we could stop here and run stap directly -(assuming we have a virtio-serial controller already in place, see -DESCRIPTION). Since in our case hotplugging is not supported, we need to -add SystemTap ports. To do this, we use the port-add command: -

- -

- -
- -

-
-$ stapvirt port-add TestVM
-Added new port org.systemtap.stapsh.0
-The domain must be powered off before changes take effect.
-
-
- -
- - -

- -

-We can confirm that a port was added by running the query command again: -

- -

- -
- -

-
-$ stapvirt query TestVM
-...
-   Permanent Ports:  1
-       Hotplugging:  not supported
-
-
- -
- - -

- -

-It now indicates that there is 1 permanent port. We can also use the -port-list command to know exactly where the port will be created: -

- -

- -
- -

-
-$ stapvirt port-list TestVM
-/var/lib/libvirt/qemu/TestVM.org.systemtap.stapsh.0.sock
-
-
- -
- - -

- -

-After powering off and restarting the domain, we are now ready to use the port -with stap: -

- -

- -
- -

-
-$ stap -e 'probe begin { printf("Hello from TestVM!\n"); exit() }' \
-       --remote=libvirt://TestVM
-Hello from TestVM!
-
-
- -
- - -

- -

-Finally, if we'd like to remove the port, we can use the port-remove -command: -

- -

- -
- -

-
-$ stapvirt port-remove TestVM
-Removed port org.systemtap.stapsh.0
-The domain must be powered off before changes take effect.
-
-
- -
- - -

- -

-And that's all there is to it! -

-  -

SEE ALSO

- - -
-stap(1),
-virt-install(1)
-
-
  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/,<systemtap@sourceware.org>. - - -

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
OPTIONS
-
COMMANDS
-
TUTORIAL
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/systemtap-service.8.html b/man/systemtap-service.8.html deleted file mode 100644 index 08f09286..00000000 --- a/man/systemtap-service.8.html +++ /dev/null @@ -1,798 +0,0 @@ - -Manpage of SYSTEMTAP - -

SYSTEMTAP

-Section: Maintenance Commands (8)
Index -Return to Main Contents
- -  -

NAME

- -systemtap-service - SystemTap initscript and systemd service -

- - - -

-  -

SYNOPSIS

- -systemtap-service - -COMMAND [OPTIONS] [SCRIPT...] - -

-service systemtap - -COMMAND [OPTIONS] [SCRIPT...] - -

-  -

DESCRIPTION

- -The SystemTap initscript aims to provide a way to run scripts as a service and -easily control them individually. Scripts can be configured to start upon manual -request, or during system startup. On dracut-based systems, it is also possible -to integrate scripts in the initramfs and have them start during early-boot. -

-The SystemTap initscript can be invoked manually using the -systemtap-service - -command. On systemd-based systems, the initscript is controlled by -systemctl - -with the service file -systemtap.service. -

-There are various parameters and options available to modify global behaviour, -as well as script behaviour. Dependencies between scripts can be established so -that starting one starts others. -

-The configuration file of the initscript is located at -${prefix}/etc/systemtap/config. Acceptable parameters are detailed in the -GLOBAL PARAMETERS section. -

-Scripts must be placed in the ${prefix}/etc/systemtap/script.d directory -and must have a .stp extension. When referring to them on the -command-line however, there in no need to include the .stp extension. -Script names can only contain alphanumeric characters (and '_') and must not -start with a number. The scripts directory may be changed by setting the -SCRIPT_PATH parameter in the configuration file. -

-  -

COMMANDS

- -One of the commands below must be specified: -

-

-
start - -
-Start SCRIPTs. If no scripts are specified, start the scripts specified by -the DEFAULT_START configuration. If DEFAULT_START is not set, start all scripts -in the script directory. For scripts already started, the command is ignored. -The command will fail if the scripts fail to start (see also the PASSALL -configuration). -

-If the AUTOCOMPILE configuration is on, the command will try to compile or -update the specified scripts when one of the below conditions is true: -

-
-
-
-The compiled cache file does not exist. -
-
-The mtime (modified timestamp) of the original script file is newer than the -time of the compiled script cache. -
-
-The specified stap options used to compile the script has been changed (see -also the SCRIPT PARAMETERS section). -
-
-The result of `uname -a` has been changed. -
-
- -

-

stop - -
-Stop SCRIPTs. If no scripts are specified, stop all running scripts. For -scripts already stopped, the command is ignored. The command will fail if the -scripts fail to stop (see also the PASSALL configuration). -

-

restart - -
-Stop and start SCRIPTs. -

-

status - -
-Show the state of SCRIPTs and their dependencies. -

-

compile - -
-Compile SCRIPTs but do not start them. If the scripts have already been -compiled, prompt for confirmation before overwriting cache. Compile for the -current kernel, or the kernel release specified by the -r option. -

-

onboot - -
-Make SCRIPTs part of the initramfs so that they are started earlier during -the boot process. This command is only available on dracut-based systems. If no -scripts are specified, create a normal initramfs devoid of any SystemTap files. -

-The initramfs is created for the current kernel, or the kernel release specified -by the -r option. The path of the created initramfs defaults to -/boot/initramfs-KVER.img, where KVER is the output of `uname -r`. The -bootloader is also updated (using new-kernel-pkg(8)) to make the kernel -entry use the new initramfs file. Use the -o option to specify a different -path (the bootloader will not be updated). -

-If the output file already exists, it is overwritten, unless the -b switch -is given, in which case the file is appended .bak rather than overwritten. -However, if there is already a .bak version of the file, the backup will -not be overwritten. -

-WARNING: do not use the -o option of stap(1) with onboot scripts -because the script is started before the root filesystem is even mounted. -Increase the buffer size if more space is needed. -

-

cleanup - -
-Delete the compiled SCRIPTs from cache. If no scripts are specified, then -all compiled scripts are deleted. Only the cache for the current kernel is -deleted, or the kernel release specified by the -r option. Prompt for -confirmation before deleting. -

-

-  -

OPTIONS

- -Many of the commands can also take options. However, since users can't pass -these options on boot, they are only meant for managing scripts after boot and -for testing. Available options are: -

-

-
-c CONFIG_FILE - -
-Specify a different configuration file in place of the default one. -

-

-R - -
-When using the start and stop commands, also include the scripts' -dependencies (recursively). -

-

-r KERNEL_RELEASE - -
-When using the compile, onboot, and cleanup commands, specify -the target kernel version rather than using the current one. Must be in the same -format as `uname -r`. -

-

-y - -
-Answer yes for all prompts. -

-

-o PATH.IMG - -
-When using the onboot command, specify the output path of the created -initramfs. When specified, the bootloader configuration is not updated. -

-

-b - -
-When using the onboot command, backup an existing initramfs image by -adding a .bak extension rather than overwriting it. Without this option, -the initramfs is overwritten. -

-

-  -

GLOBAL PARAMETERS

- -These parameters affect the general behaviour of the SystemTap initscript -service. They can be specified in the configuration file. -

-

-
SCRIPT_PATH - -
-Specify the absolute path of the script directory. These are the scripts on -which the initscript can operate. Scripts must have the .stp extension. -The default path is ${prefix}/etc/systemtap/script.d. -

-

CONFIG_PATH - -
-Specify the absolute path of the script configuration directory. These -configuration files contain options for specific scripts. They must have the -.conf extension. The default path is ${prefix}/etc/systemtap/conf.d. -

-

CACHE_PATH - -
-Specify the absolute path of the cache directory. The default path is -${prefix}/var/cache/systemtap. -

-

TEMP_PATH - -
-Specify the absolute path of the temporary directory in which SystemTap -makes temporary directories to compile scripts. The default path is /tmp. -

-

STAT_PATH - -
-Specify the absolute path of the directory containing PID files used to track -the status of SystemTap scripts. The default path is -${prefix}/var/run/systemtap. -

-

LOG_FILE - -
-Specify the absolute path of the log file. All messages are sent to this file, -including compilation and runtime errors. The default path is -${prefix}/var/log/systemtap.log. -

-

PASSALL - -
-If this is set yes, initscript commands that operate on multiple scripts -will report as failed when the action could not be performed on at least one -script. If set to no, only a warning is emitted. The default is yes. -

-

RECURSIVE - -
-If this is set yes, the initscript will always follow script dependencies -recursively. This means that there is no need to specify the -R option. -This flag is effective only if you specify script(s) from the command-line. The -default is no. -

-

AUTOCOMPILE - -
-If this is set yes, the initscript automatically tries to compile -specified scripts when needed if there is no valid cache. Otherwise, the related -command simply fails. The default is yes. -

-

DEFAULT_START - -
-Specify scripts which will be started by default. If omitted (or empty), all -scripts in the script directory will be started. The default is "". -

-

ALLOW_CACHEONLY - -
-If this is set yes, the initscript will also allow operating on scripts -that are located in the cache directory, but not in the script directory. The -default is no. -

-WARNING: the initscript may load unexpected obsolete caches with this option. -The cache directory should be checked before enabling this option. -

-

LOG_BOOT_ERR - -
-Because boot-time scripts are run before the root filesystem is mounted, -staprun's stderr cannot be logged to the LOG_FILE as usual. However, the log -can instead be output to /var/run/systemtap/$script.log by setting LOG_BOOT_ERR -to yes. If STAT_PATH is different from the default, the log files will be -moved there upon executing any of the initscript commands. The default is -no. -

-

-

- -Here is a global configuration file example: - -

- -
- -

-
-SCRIPT_PATH=/var/systemtap/script.d/
-PASSALL=yes
-RECURSIVE=no
-
-
- -
- - -

- -

-  -

SCRIPT PARAMETERS

- -These parameters affect the compilation or runtime behaviour of specific -SystemTap scripts. They must be placed in config files located in the -CONFIG_PATH directory. -

-

-
<SCRIPT>_OPT - -
-Specify options passed to the stap(1) command for the SCRIPT. Here, SCRIPT -is the name of the script file without the .stp extension. Note that the --F option is always added. -

-The following options are ignored when compiling scripts: -p, -m, -r, -c, -x, --e, -s, -o, -h, -V, -k. -

-The following options are ignored when running starting scripts: -h, -V, -v, -t, --p, -I, -e, -R, -r, -m, -k, -g, -P, -D, -b, -u, -q, -w, -l, -d, -L, -F, and all -long options. -

-

<SCRIPT>_REQ - -
-Specify script dependencies (i.e. which script this script requires). For -example, if foo.stp requires (or needs to run after) bar.stp, set - -

- -
- -

-
-foo_REQ="bar"
-
-
- -
- - -

- -Specify multiple scripts by separating their names by spaces. -

-

-

- -Here is a script configuration file example: - -

- -
- -

-
-script1_OPT="-o /var/log/script1.out"
-script2_OPT="-o /var/log/script2.out"
-script2_REQ="script1"
-
-
- -
- - -

- -

-  -

EXAMPLES

- -

-

-
INSTALLING SCRIPTS - -
-We first copy a SystemTap script (e.g. "script1.stp") into the script directory: - -

- -
- -

-
-# cp script1.stp /etc/systemtap/script.d/
-
-
- -
- - -

- -We can then set any script options, for example: - -

- -
- -

-
-# vi /etc/systemtap/conf.d/group1.conf
-script1_OPT="-o /var/log/group1.out"
-
-
- -
- - -

- -We then install a script (e.g. "script2.stp") which needs to run after -script1. In this case, we can do the following: - -

- -
- -

-
-# cp script2.stp /etc/systemtap/script.d/
-# vi /etc/systemtap/conf.d/group1.conf
-script2_OPT="-o /var/log/group2.out"
-script2_REQ="script1"
-
-
- -
- - -

- -This way, if stap(1) fails to run script1, the initscript will not even -try to run script2. -

-

TESTING - -
-After installing scripts, we can test that they work by simply doing: - -

- -
- -

-
-# systemtap-service start
-# systemtap-service stop
-
-
- -
- - -

- -We could be more specific as well, for example: - -

- -
- -

-
-# systemtap-service start script1
-# systemtap-service stop script1
-
-
- -
- - -

- -If there were no errors, we are ready to use it. -

-

ENABLING SERVICE - -
-After we're satisfied with the scripts and their tests, we can enable the -SystemTap initscript service: - -

- -
- -

-
-# chkconfig systemtap on
-
-
- -
- - -

- -

-

DELETING SCRIPTS - -
-Scripts are deleted by simply removing them from the script directory and -removing any configuration lines specific to them: - -

- -
- -

-
-# rm /etc/systemtap/script.d/script2.stp
-# vi /etc/systemtap/conf.d/group1.conf
-
-
- -
- - -

- -If the script is still running, we also need to stop it: - -

- -
- -

-
-# systemtap-service stop script2
-
-
- -
- - -

- -We can then also remove the cache associated with the script: - -

- -
- -

-
-# systemtap-service cleanup script2
-
-
- -
- - -

- -

-

PREPARING FOR KERNEL UPDATES - -
-Usually, there is nothing to do when booting into a new kernel. The initscript -will see that the kernel version is different and will compile the scripts. The -compilation can be done beforehand as well to avoid having to compile during -boot by using the -r option: - -

- -
- -

-
-# systemtap-service compile myscript -r <NEW_KERNEL_VERSION>
-
-
- -
- - -

- -

-

IMPORTING COMPILED SCRIPTS - -
-For environments which lack compilation infrastructure (e.g. no compilers or -debuginfo), such as a production system, the scripts can be compiled on another -(development) machine and then transferred over to the production system: - -

- -
- -

-
-# systemtap-service compile myscript -r \
-
-> <KERNEL_VERSION_OF_TARGET_MACHINE> -# tar czf stap-scripts-<kernel-version>.tar.gz \ -
-> /var/cache/systemtap/<kernel-version> \ -
-> /etc/systemtap/conf.d/<configfile> - -
- -
- - -

- -And then copy this package to the target machine and extract it. -

-

STARTING SCRIPTS DURING EARLY-BOOT - -
-The initscript also allows us to start scripts earlier during the boot process -by creating an initramfs containing the script's module. The system must be -dracut-based for this to work. Starting a script at this stage gives access to -information otherwise very hard to obtain. -

-We first install the script by copying it into the script directory as usual and -setting whatever options we'd like: - -

- -
- -

-
-# cp myscript.stp /etc/systemtap/script.d
-# vi /etc/systemtap/conf.d/myscript.conf
-
-
- -
- - -

- -To add the script to the initramfs, we use the onboot command: - -

- -
- -

-
-# systemtap-service onboot myscript
-
-
- -
- - -

- -If the script is not already compiled and cached, it will be done at this point. -A new initramfs will then be created at the default location. We can use the --b option to ensure that the existing initramfs is backed up. We can then -restart the system. -

-

USING A DIFFERENT INITRAMFS - -
-If we would prefer to only start the script for one boot and not others, it -might be easier to instead use the -o option to specify a different -initramfs output file: - -

- -
- -

-
-# systemtap-service onboot myscript \
->   -o /boot/special_initramfs.img
-
-
- -
- - -

- -Once the initramfs is created, it's simply a matter of changing the command-line -options at boot-time so that the new image is used rather than the usual one. -

-

CREATING AN INITRAMFS FOR A DIFFERENT KERNEL - -
-Just like the compile command, we can use the -r option to specify the -kernel for which we want to create the initramfs. This is useful when we are -about to upgrade and would like to prepare in advance. For example: - -

- -
- -

-
-# systemtap-service onboot myscript \
->   -r 3.12.6-200.fc19.x86_64
-
-
- -
- - -

- -

-

REMOVING SCRIPTS FROM THE INITRAMFS - -
-Finally, to remove all script from the initramfs, we simple run the onboot -command without specifying any scripts: - -

- -
- -

-
-# systemtap-service onboot
-
-
- -
- - -

- -This will simply create a standard initramfs without any SystemTap modules -inserted. -

-

TROUBLESHOOTING EARLY-BOOT ISSUES - -
-There can be many reasons for which the module didn't insert or did not work as -expected. It may be useful to turn on dracut debugging by adding 'rdinitdebug' -to the kernel command-line and checking dmesg/journalctl -ae. Also, the stderr -output of staprun can be captured by setting the LOG_BOOT_ERR option to -yes. -

-

-  -

SEE ALSO

- -stap(1) - -dracut(8) - -new-kernel-pkg(8) - -

-  -

BUGS

- -Use the Bugzilla link of the project web page or our mailing list. - -http://sourceware.org/systemtap/, <systemtap@sourceware.org>. - - -

-

- -


- 

Index

-
-
NAME
-
SYNOPSIS
-
DESCRIPTION
-
COMMANDS
-
OPTIONS
-
GLOBAL PARAMETERS
-
SCRIPT PARAMETERS
-
EXAMPLES
-
SEE ALSO
-
BUGS
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/systemtap.8.html b/man/systemtap.8.html deleted file mode 100644 index c1b637c7..00000000 --- a/man/systemtap.8.html +++ /dev/null @@ -1,782 +0,0 @@ - -Manpage of SYSTEMTAP - -

SYSTEMTAP

-Section: Maintenance Commands (8)
Index -Return to Main Contents
- -  -

JMÉNO

- -systemtap - systemtap initskript služba -

- - - -

-  -

POUŽITÍ

- -service systemtap - -COMMAND [OPTIONS] [SCRIPT...] - -

-  -

POPIS

- -SystemTap initskript služba umožňuje spouštět systemtap skripty jako systémové služby a -pohodlně je ovládat. Skripty mohou být nastartovány na individuální žádost, nebo -při startu systému. Na systémech, které využívají dracut je také možné umístit -skripty do initramfs a mít je spuštěné během boot procesu. -

-Existují volby a parametry, které ovlivňují globální chování služby nebo -jednotlivých skriptů. Mezi skripty lze vytvořit závislosti, tak že nastartování -jednoho automaticky způsobí nastartování jiného. -

-Konfigurační soubor initskriptu se nachází v -${prefix}/etc/systemtap/config. Přijatelné parametry jsou detailně popsány -v sekci GLOBÁLNÍ PARAMETRY. -

-Skript musí být umístěn v adresáři ${prefix}/etc/systemtap/script.d a musí -mít příponu .stp. Poznamenejme, že když se systemtap skripty pouštějí z -příkazové řádky, jak je obvyklé, není přípona .stp povinná. Jméno skriptu -smí obsahovat jen alfanumerické znaky a '_', a nesmí začínat číslem. Adresář pro -skripty lze změnit nastavením parametru SCRIPT_PATH v konfiguračním souboru. -

-  -

PŘÍKAZY

- -Musí být uveden jeden z následující příkazů: -

-

-
start - -
-Start skriptů. Pokud žádné skripty nebyly určeny, nastartují se skripty určené -nastavením DEFAULT_START. Pokud DEFAULT_START není nastaveno, nastartují se -všechny skripty v adresáři skriptů. Pro skripty, které již běží se příkaz "start" -ignoruje. Příkaz "start" selže, pokud start skriptů selže (viz též nastavení -PASSALL). -

-Pokud je zapnutá volba AUTOCOMPILE, příkaz se pokusí sestavit (nebo obnovit -sestavení) skriptů v případě, že je platná jedna z následujících podmínek: -

-
-
-
-Cache se zkompilovanými skripty neexistuje. -
-
-Čas modifikace (mtime) původního skriptu se změnil. -
-
-Skript se spouští s jinými volbami. -
-
-Změnil se výstup `uname -a`. -
-
- -

-

stop - -
-Zastavit skripty. Pokud žádné skripty nebyly určeny, zastaví se všechny běžící -skripty. Pro skripty, které neběží, se tento příkaz bude ignorovat. Příkaz selže -pokud selže zastavení některého ze skriptů (viz též nastavení PASSALL). -

-

restart - -
-Zastavit a opět nastartovat skripty. -

-

status - -
-Zobrazit stav skriptů a jejich závislosti. -

-

compile - -
-Přeložit skripty, ale nestartovat je. Pokud skripty již byly přeloženy, dotázat -se na potvrzení dříve, než dojde k přepsání cache. Kompilovat pro běžící jádro, -nebo pro jádro určené prostřednictvím volby -r. -

-

onboot - -
-Učinit určené skripty součástí initramfs, aby mohly být spuštěny během startu stroje. -Tento příkaz je dostupný jen na systémech, které používají dracut. Pokud se neurčí -žádný skript, všechny systemtap skripty se z initramfs odstraní. -

-Initramfs se vytváří pro aktuální jádro, nebo pro jádro určené volbou -r. -Výchozí umístění initramfs je /boot/initramfs-KVER.img, kde KVER odpovídá -výstupu `uname -r`. Příkaz "onboot" dále obnoví nastavení zavaděče systému tak, -aby byl použit nový initramfs. Pokud se má vytvořit initramfs v jiném umístění, -použijte volbu -o. V tomto případě se nastavení zavaděče systému nezmění. -

-Pokud výstupní soubor již existuje, bude přepsán pokud není dán přepínač -b -, kdy se původnímu souboru přidá přípona .bak namísto přepsání. Pokud ale -.bak soubor již existuje, nebude přepsán. -

-UPOZORNĚNÍ: Nepoužívejte volbu -o příkazu stap(1) u "onboot" skriptů, -protože skript poběží dříve, než se namountuje kořenový souborový systém. Pokud -potřebujete více místa pro výstup, zvětšete velikost bufferu. -

-

cleanup - -
-Odstranit specifikované skripty z cache. Pokud není specifikován žádný skript, -budou smazány všechny. Smaže se jen cache pro aktuální jádro, nebo pro jádro -určené volbou -r. Před smazáním cache bude požadováno potvrzení. -

-

-  -

VOLBY

- -Některé příkazy přijímají volby. Nicméně, protože uživatelé nemohou předávat -volby při zavádění OS, jsou volby určeny pouze pro ovládání skriptů běžících až -po nabootování systému a pro testování. -

-

-
-c CONFIG_FILE - -
-Určuje alternativní konfigurační soubor. -

-

-R - -
-Při použití s start a stop příkazy značí, že mají být vzaty v potaz -závislosti mezi skripty a to rekurzivně. -

-

-r KERNEL_RELEASE - -
-Při použití s compile, onboot, a cleanup příkazy, určuje cílové -jádro. Formát KERNEL_RELEASE musí odpovídat formátu `uname -r`. -

-

-y - -
-Odpověz ano na všechny dotazy. -

-

-o PATH.IMG - -
-Při použití s příkazem onboot určuje umístění initramfs. Pokud se určí, -konfigurace zavaděče se nezmění. Pokud určen není, konfigurace zavaděče se změní -tak, aby byl při následujícím startu použit nový initramfs. -

-

-b - -
-Při použití s příkazem onboot, zazálohuje existující initramfs připojením -přípony .bak namísto aby existující initramfs přepsal, což se stane není-li -tato volba použita. -

-

-  -

GLOBÁLNÍ PARAMETRY

- -Tyto parametry ovlivňují obecné chování služby. Nastavují se v konfiguračním -souboru. -

-

-
SCRIPT_PATH - -
-Určuje absolutní cestu adresáře pro skripty, se kterými může služba pracovat. -Skripty musí mít příponu .stp. Výchozí hodnota je -${prefix}/etc/systemtap/script.d. -

-

CONFIG_PATH - -
-Určuje absolutní cestu adresáře pro konfigurační soubory skriptů. -Tyto konfigurační soubory obsahují volby specifické pro jednotlivé skripty. Musí -mít příponu .conf. Výchozí umístění je ${prefix}/etc/systemtap/conf.d. -

-

CACHE_PATH - -
-Umístění cache adresáře. Výchozí umístění je ${prefix}/var/cache/systemtap. -

-

TEMP_PATH - -
-Umístění dočasného adresáře, kam systemtap odkládá dočasné soubory, které vznikají -při kompilaci systemtap jaderného modulu. Výchozí umístění je /tmp. -

-

STAT_PATH - -
-Absolutní cesta k adresáři se stavovými soubory pro jednotlivé skripty. Výchozí -umístění je ${prefix}/var/run/systemtap. -

-

LOG_FILE - -
-Absolutní cesta k logovacímu souboru. Všechny zprávy se posílají do tohoto -souboru (včetně kompilačních chybových hlášení a hlášení o chybách běhu). -Výchozí umístění je ${prefix}/var/log/systemtap.log. -

-

PASSALL - -
-Pokud tato volba je nastavena (yes), pak systemtap služba pracující s mnoha -skripty zahlásí chybu, pokud kterýkoliv ze skriptů zhavaruje. Pokud tato volba -není nastavena (no) vypíše systemtap služba v takovém případě jen varování. -

-

-

RECURSIVE - -
-Pokud tato volba je nastavena (yes), služba systemtap bude brát v potaz -závislosti mezi skripty a to rekurzivně (odpovídá volbě -R). Tato volba -je platná jen pokud byly na příkazové řádce určeny skripty. Výchozí hodnota je -no. -

-

AUTOCOMPILE - -
-Pokud je tato volba nastavena (yes), služba systemtap se pokusí zkompilovat -určené skripty pokud nenalezne odpovídající validní položky v cache. -Jinak související příkaz selže. Výchozí hodnota je yes. -

-

DEFAULT_START - -
-Určuje skripty, které se mají nastartovat jako výchozí. Pokud je tato volba -vynechána (nebo nastavena na prázdnou hodnotu), nastartují se všechny skripty v -adresáři. Výchozí hodnota je "". -

-

ALLOW_CACHEONLY - -
-Pokud je tato volba nastaveba (yes), služba umožní nastartování také -skriptům, pro něž existují v cache validní data, ale v adresáři pro skripty jejich -zdrojový kód chybí. Výchozí hodnota je no. -

-VAROVÁNÍ: S touto volbou může služba nastartovat neočekávané skripty nacházející -se v cache. Před startem služby je vhodné obsah cache zkontrolovat. -

-

LOG_BOOT_ERR - -
-Protože "boot-time" skripty se spouštějí dříve než je namountován kořenový -souborový systém, nelze chybový výstup programy staprun posílat do LOG_FILE -jak je obvyklé. Nicméně log lze přesměrovat do /var/run/systemtap/$script.log -nastavením LOG_BOOT_ERR na yes. Pokud STAT_PATH je odlišná od výchozí -hodnoty, budou logovací soubory přesunuty na požadované místo dříve, než se -spustí jakýkoliv příkaz služby. Výchozí hodnota je no. -

-

-

- -Zde je ukázka konfiguračního souboru. - -

- -
- -

-
-SCRIPT_PATH=/var/systemtap/script.d/
-PASSALL=yes
-RECURSIVE=no
-
-
- -
- - -

- -

-  -

PARAMETRY SKRIPTÅ®

- -Tyto parametry ovlivňují kompilaci skriptů, nebo jejich chování za běhu. -Nastavují se v konfiguračních souborech umístěných v adresáři CONFIG_PATH. -

-

-
<SCRIPT>_OPT - -
-Určuje volby, které se předají příkazu stap(1) před vykonáním skriptu. -Zde SCRIPT je jméno skriptu bez přípony .stp. Poznamenejme, že volba --F se použije vždy. -

-Při kompilaci skriptů se ignorují následující volby: -p, -m, -r, -c, -x, --e, -s, -o, -h, -V, -k. -

-Při spouštění skriptů se ignorují následující volby: -h, -V, -v, -t, --p, -I, -e, -R, -r, -m, -k, -g, -P, -D, -b, -u, -q, -w, -l, -d, -L, -F, a -všechny dlouhé volby. -

-

<SCRIPT>_REQ - -
-Určuje závislosti skriptu (t.j. určuje, který skript je vyžadován daným -skriptem). Pokud foo.stp vyžaduje (nebo potřebuje běžet po) bar.stp, nastavte - -

- -
- -

-
-foo_REQ="bar"
-
-
- -
- - -

- -Více skriptů lze nastavit jako mezerami oddělený seznam. -

-

-

- -Příklad konfiguračního souboru: - -

- -
- -

-
-script1_OPT="-o /var/log/script1.out"
-script2_OPT="-o /var/log/script2.out"
-script2_REQ="script1"
-
-
- -
- - -

- -

-  -

PŘÍKLADY

- -

-

-
INSTALACE SKRIPTÅ® - -
-Nakopírujme SystemTap skript (např. "script1.stp") do relevantního adresáře: - -

- -
- -

-
-# cp script1.stp /etc/systemtap/script.d/
-
-
- -
- - -

- -Pak můžeme nastavit volby pro daný skript. Například: - -

- -
- -

-
-# vi /etc/systemtap/conf.d/group1
-script1_OPT="-o /var/log/group1.out"
-
-
- -
- - -

- -Pokud poté nainstalujeme skript, např. "script2.stp", který má být spuštěn po -"script1.stp", máme zde závislost mezi skripty. Tu ošetříme následovně: - -

- -
- -

-
-# cp script2.stp /etc/systemtap/script.d/
-# vi /etc/systemtap/conf.d/group1
-script2_OPT="-o /var/log/group2.out"
-script2_REQ="script1"
-
-
- -
- - -

- -V tomto případě, pokud stap(1) selže při startu, služba SystemTap se ani -nepokusí nastartovat script2. -

-

TESTOVÁNÍ - -
-Po nainstalování skriptů můžeme ověřit, že fungují takto: - -

- -
- -

-
-# service systemtap start
-# service systemtap stop
-
-
- -
- - -

- -Mohli bychom být konkrétnější, například takto: - -

- -
- -

-
-# service systemtap start script1
-# service systemtap stop script1
-
-
- -
- - -

- -Pokud nenastaly chyby, máme vše připraveno k použití. -

-

ZAPNUTÍ SLUŽBY - -
-Jakmile jsme spokojeni se skripty a testování dopadlo úspěšně, můžeme -SystemTap službu zapnout tak, aby se automaticky nastartovala po zavedení -systému: - -

- -
- -

-
-# chkconfig systemtap on
-
-
- -
- - -

- -

-

MAZÁNÍ SKRIPTŮ - -
-Skripty se smažou prostým jejich odstraněním z adresáře pro skripty a také -odstraněním jejich konfiguračních souborů plus případně relevantních nastavení: - -

- -
- -

-
-# rm /etc/systemtap/script.d/script2.stp
-# vi /etc/systemtap/conf.d/group1
-
-
- -
- - -

- -Pokud skript stále běží, měli bychom jej zastavit: - -

- -
- -

-
-# service systemtap stop script2
-
-
- -
- - -

- -Také můžeme smazat relevantní cache: - -

- -
- -

-
-# service systemtap cleanup script2
-
-
- -
- - -

- -

-

PŘÍPRAVA NA POVÝŠENÍ JÁDRA - -
-Obvykle není třeba dělat nic neobvyklého když se startuje nové jádro. Služba -SystemTap pozná, že verze jádra se liší proti obsahu cache a rekompiluje skripty. -Kompilaci lze provést předem, abychom se vyhnuli kompilaci v době závádění -systému: - -

- -
- -

-
-# service systemtap compile myscript -r <NEW_KERNEL_VERSION>
-
-
- -
- - -

- -

-

IMPORT ZKOMPILOVANÝCH SKRIPTŮ - -
-V prostředí, kde nejsou k dispozici kompilační nástroje (např. kompilátor, nebo -ladicí informace), jako je např. produkční systém, lze skripty přeložit na jiném -(vývojářském) stroji: - -

- -
- -

-
-# service systemtap compile myscript -r \
-
-> <KERNEL_VERSION_OF_TARGET_MACHINE> -# tar czf stap-scripts-<kernel-version>.tar.gz \ -
-> /var/cache/systemtap/<kernel-version> \ -
-> /etc/systemtap/conf.d/<configfile> - -
- -
- - -

- -A poté je přesunout na cílový stroj. -

-

STARTOVÁNÍ SKRIPTŮ V DOBĚ ZAVÁDĚNÍ SYSTÉMU (ONBOOT PROBING) - -
-lužba SystemTap umožňuje také nastartovat skripty poblíž začátku procesu -zavádění OS tím, že vytvoří initramfs obsahující systemtap modul pro daný -skript. Tato funkcionalita je dostupná jen na systémech, které používají -dracut. Spuštění skriptu v této časné fázi startu OS zpřístupňuje informace, -které je jinak obtížné získat. -

-Nejdříve nainstalujeme skript do odpovídajícího adresáře a provedeme potřebná -nastavení: - -

- -
- -

-
-# cp myscript.stp /etc/systemtap/script.d
-# vi /etc/systemtap/conf.d/myscript.conf
-
-
- -
- - -

- -Pro přidání skriptu do initramfs použijeme příkazonboot: - -

- -
- -

-
-# service systemtap onboot myscript
-
-
- -
- - -

- -Pokud daný skript není zkompilovaný a uložený v cache, dojde ke kompilaci. -Ve výchozím umístění bude vytvořen nový initramfs. Mohli bychom použít volbu --b pro vytvoření zálohy původního initramfs. Nyní můžeme restartovat -systém. -

-

POUŽITÍ ALTERNATIVNÍHO INITRAMFS - -
-Pokud bychom chtěli nastartovat skript během následujícího bootu, ale ne -později, můžeme použít volbu -o k určení alternativního umístění -initramfs: - -

- -
- -

-
-# service systemtap onboot myscript \
->   -o /boot/special_initramfs.img
-
-
- -
- - -

- -Jakmile je initramfs vytvořen, je možné jej použít prostou úpravou parametrů -jádra při startu systému. -

-

VYTVOŘENÍ INITRAMFS PRO JINÉ JÁDRO - -
-Stejně jako u příkazu compile, můžeme i zde použít volbu -r, abychom -určili jádro pro které chceme vytvořit initramfs. To může být užitečné např. -chceme-li se připravit na upgrade. Například: - -

- -
- -

-
-# service systemtap onboot myscript \
->   -r 3.12.6-200.fc19.x86_64
-
-
- -
- - -

- -

-

ODSTRANĚNÍ SKRIPTŮ Z INITRAMFS - -
-K odstranění skriptů z initramfs stačí spustit příkaz onboot bez parametrů: - -

- -
- -

-
-# service systemtap onboot
-
-
- -
- - -

- -Takto se vytvoří nový initramfs bez SystemTap modulů. -

-

HLEDÁNÍ CHYB ONBOOT MECHANIZMU - -
-Přidáním parametru 'rdinitdebug' mezi parametry jádra lze zvýšit upovídanost -programu dracut. Další informace lze získat z dmesg/journalctl -ae. Chybový -výstup programu staprun lze získat nastavením LOG_BOOT_ERR na yes. -

-

-  -

VIZ TÉŽ

- -stap(1) - -dracut(8) - -new-kernel-pkg(8) - -

-  -

CHYBY

- -Použijte projektovou bugzillu, nebo mailing list. - -http://sourceware.org/systemtap/, <systemtap@sourceware.org>. - - -

- -error::reporting(7stap), - -https://sourceware.org/systemtap/wiki/HowToReportBugs - - -

-

- -


- 

Index

-
-
JMÉNO
-
POUŽITÍ
-
POPIS
-
PŘÍKAZY
-
VOLBY
-
GLOBÁLNÍ PARAMETRY
-
PARAMETRY SKRIPTÅ®
-
PŘÍKLADY
-
VIZ TÉŽ
-
CHYBY
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:45 GMT, June 11, 2020 - - diff --git a/man/tapset::ansi.3stap.html b/man/tapset::ansi.3stap.html deleted file mode 100644 index 9ad805f1..00000000 --- a/man/tapset::ansi.3stap.html +++ /dev/null @@ -1,213 +0,0 @@ - -Manpage of TAPSET::ANSI - -

TAPSET::ANSI

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::ansi - systemtap ansi tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
ansi_clear_screen - -
-Move cursor to top left and clear screen. -
-See -function::ansi_clear_screen(3stap) - -
 for details. -
-

- -

-
ansi_set_color - -
-Set the ansi Select Graphic Rendition mode. -
-See -function::ansi_set_color(3stap) - -
 for details. -
-

- -

-
ansi_set_color - -
-Set the ansi Select Graphic Rendition mode. -
-See -function::ansi_set_color(3stap) - -
 for details. -
-

- -

-
ansi_set_color - -
-Set the ansi Select Graphic Rendition mode. -
-See -function::ansi_set_color(3stap) - -
 for details. -
-

- -

-
ansi_reset_color - -
-Resets Select Graphic Rendition mode. -
-See -function::ansi_reset_color(3stap) - -
 for details. -
-

- -

-
ansi_new_line - -
-Move cursor to new line. -
-See -function::ansi_new_line(3stap) - -
 for details. -
-

- -

-
ansi_cursor_move - -
-Move cursor to new coordinates. -
-See -function::ansi_cursor_move(3stap) - -
 for details. -
-

- -

-
ansi_cursor_hide - -
-Hides the cursor. -
-See -function::ansi_cursor_hide(3stap) - -
 for details. -
-

- -

-
ansi_cursor_save - -
-Saves the cursor position. -
-See -function::ansi_cursor_save(3stap) - -
 for details. -
-

- -

-
ansi_cursor_restore - -
-Restores a previously saved cursor position. -
-See -function::ansi_cursor_restore(3stap) - -
 for details. -
-

- -

-
ansi_cursor_show - -
-Shows the cursor. -
-See -function::ansi_cursor_show(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::ansi_clear_screen(3stap), - - -function::ansi_set_color(3stap), - - -function::ansi_reset_color(3stap), - - -function::ansi_new_line(3stap), - - -function::ansi_cursor_move(3stap), - - -function::ansi_cursor_hide(3stap), - - -function::ansi_cursor_save(3stap), - - -function::ansi_cursor_restore(3stap), - - -function::ansi_cursor_show(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::atomic.3stap.html b/man/tapset::atomic.3stap.html deleted file mode 100644 index 3ab2ef9b..00000000 --- a/man/tapset::atomic.3stap.html +++ /dev/null @@ -1,75 +0,0 @@ - -Manpage of TAPSET::ATOMIC - -

TAPSET::ATOMIC

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::atomic - systemtap atomic tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
atomic_read - -
-Retrieves an atomic variable from kernel memory -
-See -function::atomic_read(3stap) - -
 for details. -
-

- -

-
atomic_long_read - -
-Retrieves an atomic long variable from kernel memory -
-See -function::atomic_long_read(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::atomic_read(3stap), - - -function::atomic_long_read(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::context-caller.3stap.html b/man/tapset::context-caller.3stap.html deleted file mode 100644 index 1f4803e0..00000000 --- a/man/tapset::context-caller.3stap.html +++ /dev/null @@ -1,95 +0,0 @@ - -Manpage of TAPSET::CONTEXT-CALLER - -

TAPSET::CONTEXT-CALLER

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::context-caller - systemtap context-caller tapset -
  -  -

DESCRIPTION

- -

-
 Provides caller and caller_addr function for context for kernel and user -
 space. -

-

-
-

- -

-
-
callers - -
-Return first n elements of kernel stack backtrace -
-See -function::callers(3stap) - -
 for details. -
-

- -

-
caller - -
-Return name and address of calling function -
-See -function::caller(3stap) - -
 for details. -
-

- -

-
caller_addr - -
-Return caller address -
-See -function::caller_addr(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::callers(3stap), - - -function::caller(3stap), - - -function::caller_addr(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::context-envvar.3stap.html b/man/tapset::context-envvar.3stap.html deleted file mode 100644 index e820d750..00000000 --- a/man/tapset::context-envvar.3stap.html +++ /dev/null @@ -1,64 +0,0 @@ - -Manpage of TAPSET::CONTEXT-ENVVAR - -

TAPSET::CONTEXT-ENVVAR

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::context-envvar - systemtap context-envvar tapset -
  -  -

DESCRIPTION

- -

-
 Context functions provide additional information about where an event occurred. These functions can -provide information such as a backtrace to where the event occurred and the current register values for the -processor. -

-

-
-

- -

-
-
env_var - -
-Fetch environment variable from current process -
-See -function::env_var(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::env_var(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::context-symbols.3stap.html b/man/tapset::context-symbols.3stap.html deleted file mode 100644 index d0b3c7dd..00000000 --- a/man/tapset::context-symbols.3stap.html +++ /dev/null @@ -1,256 +0,0 @@ - -Manpage of TAPSET::CONTEXT-SYMBOLS - -

TAPSET::CONTEXT-SYMBOLS

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::context-symbols - systemtap context-symbols tapset -
  -  -

DESCRIPTION

- -

-
 Context functions provide additional information about where an event occurred. These functions can  -provide information such as a backtrace to where the event occurred and the current register values for the -processor. -

-

-
-

- -

-
-
stack - -
-Return address at given depth of kernel stack backtrace -
-See -function::stack(3stap) - -
 for details. -
-

- -

-
print_stack - -
-Print out kernel stack from string -
-See -function::print_stack(3stap) - -
 for details. -
-

- -

-
sprint_stack - -
-Return stack for kernel addresses from string -
-See -function::sprint_stack(3stap) - -
 for details. -
-

- -

-
probefunc - -
-Return the probe point's function name, if known -
-See -function::probefunc(3stap) - -
 for details. -
-

- -

-
probemod - -
-Return the probe point's kernel module name -
-See -function::probemod(3stap) - -
 for details. -
-

- -

-
modname - -
-Return the kernel module name loaded at the address -
-See -function::modname(3stap) - -
 for details. -
-

- -

-
symname - -
-Return the kernel symbol associated with the given address -
-See -function::symname(3stap) - -
 for details. -
-

- -

-
symdata - -
-Return the kernel symbol and module offset for the address -
-See -function::symdata(3stap) - -
 for details. -
-

- -

-
print_syms - -
-Print out kernel stack from string -
-See -function::print_syms(3stap) - -
 for details. -
-

- -

-
sprint_syms - -
-Return stack for kernel addresses from string -
-See -function::sprint_syms(3stap) - -
 for details. -
-

- -

-
symfileline - -
-Return the file name and line number of an address. -
-See -function::symfileline(3stap) - -
 for details. -
-

- -

-
usymfile - -
-Return the file name of a given address. -
-See -function::usymfile(3stap) - -
 for details. -
-

- -

-
usymline - -
-Return the line number of an address. -
-See -function::usymline(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::stack(3stap), - - -function::print_stack(3stap), - - -function::sprint_stack(3stap), - - -function::probefunc(3stap), - - -function::probemod(3stap), - - -function::modname(3stap), - - -function::symname(3stap), - - -function::symdata(3stap), - - -function::print_syms(3stap), - - -function::sprint_syms(3stap), - - -function::symfileline(3stap), - - -function::usymfile(3stap), - - -function::usymline(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::context-unwind.3stap.html b/man/tapset::context-unwind.3stap.html deleted file mode 100644 index d19ccfaf..00000000 --- a/man/tapset::context-unwind.3stap.html +++ /dev/null @@ -1,128 +0,0 @@ - -Manpage of TAPSET::CONTEXT-UNWIND - -

TAPSET::CONTEXT-UNWIND

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::context-unwind - systemtap context-unwind tapset -
  -  -

DESCRIPTION

- -

-
 Context functions provide additional information about where an event occurred. These functions can  -provide information such as a backtrace to where the event occurred and the current register values for the -processor. -

-

-
-

- -

-
-
print_backtrace - -
-Print kernel stack back trace -
-See -function::print_backtrace(3stap) - -
 for details. -
-

- -

-
print_backtrace_fileline - -
-Print kernel stack back trace -
-See -function::print_backtrace_fileline(3stap) - -
 for details. -
-

- -

-
sprint_backtrace - -
-Return stack back trace as string -
-See -function::sprint_backtrace(3stap) - -
 for details. -
-

- -

-
backtrace - -
-Hex backtrace of current kernel stack -
-See -function::backtrace(3stap) - -
 for details. -
-

- -

-
task_backtrace - -
-Hex backtrace of an arbitrary task -
-See -function::task_backtrace(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::print_backtrace(3stap), - - -function::print_backtrace_fileline(3stap), - - -function::sprint_backtrace(3stap), - - -function::backtrace(3stap), - - -function::task_backtrace(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::context.3stap.html b/man/tapset::context.3stap.html deleted file mode 100644 index 383346e4..00000000 --- a/man/tapset::context.3stap.html +++ /dev/null @@ -1,752 +0,0 @@ - -Manpage of TAPSET::CONTEXT - -

TAPSET::CONTEXT

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::context - systemtap context tapset -
  -  -

DESCRIPTION

- -

-
 Context functions provide additional information about where an event occurred. These functions can -provide information such as a backtrace to where the event occurred and the current register values for the -processor. -

-

-
-

- -

-
-
print_regs - -
-Print a register dump -
-See -function::print_regs(3stap) - -
 for details. -
-

- -

-
pp - -
-Returns the active probe point -
-See -function::pp(3stap) - -
 for details. -
-

- -

-
ppfunc - -
-Returns the function name parsed from pp() -
-See -function::ppfunc(3stap) - -
 for details. -
-

- -

-
probe_type - -
-The low level probe handler type of the current probe. -
-See -function::probe_type(3stap) - -
 for details. -
-

- -

-
execname - -
-Returns the execname of a target process (or group of processes) -
-See -function::execname(3stap) - -
 for details. -
-

- -

-
pexecname - -
-Returns the execname of a target process's parent process -
-See -function::pexecname(3stap) - -
 for details. -
-

- -

-
pid - -
-Returns the ID of a target process -
-See -function::pid(3stap) - -
 for details. -
-

- -

-
ns_pid - -
-Returns the ID of a target process as seen in a pid namespace -
-See -function::ns_pid(3stap) - -
 for details. -
-

- -

-
tid - -
-Returns the thread ID of a target process -
-See -function::tid(3stap) - -
 for details. -
-

- -

-
ns_tid - -
-Returns the thread ID of a target process as seen in a pid namespace -
-See -function::ns_tid(3stap) - -
 for details. -
-

- -

-
ppid - -
-Returns the process ID of a target process's parent process -
-See -function::ppid(3stap) - -
 for details. -
-

- -

-
ns_ppid - -
-Returns the process ID of a target process's parent process as seen in a pid namespace -
-See -function::ns_ppid(3stap) - -
 for details. -
-

- -

-
pgrp - -
-Returns the process group ID of the current process -
-See -function::pgrp(3stap) - -
 for details. -
-

- -

-
ns_pgrp - -
-Returns the process group ID of the current process as seen in a pid namespace -
-See -function::ns_pgrp(3stap) - -
 for details. -
-

- -

-
sid - -
-Returns the session ID of the current process -
-See -function::sid(3stap) - -
 for details. -
-

- -

-
ns_sid - -
-Returns the session ID of the current process as seen in a pid namespace -
-See -function::ns_sid(3stap) - -
 for details. -
-

- -

-
gid - -
-Returns the group ID of a target process -
-See -function::gid(3stap) - -
 for details. -
-

- -

-
ns_gid - -
-Returns the group ID of a target process as seen in a user namespace -
-See -function::ns_gid(3stap) - -
 for details. -
-

- -

-
egid - -
-Returns the effective gid of a target process -
-See -function::egid(3stap) - -
 for details. -
-

- -

-
ns_egid - -
-Returns the effective gid of a target process as seen in a user namespace -
-See -function::ns_egid(3stap) - -
 for details. -
-

- -

-
uid - -
-Returns the user ID of a target process -
-See -function::uid(3stap) - -
 for details. -
-

- -

-
ns_uid - -
-Returns the user ID of a target process as seen in a user namespace -
-See -function::ns_uid(3stap) - -
 for details. -
-

- -

-
euid - -
-Return the effective uid of a target process -
-See -function::euid(3stap) - -
 for details. -
-

- -

-
ns_euid - -
-Returns the effective user ID of a target process as seen in a user namespace -
-See -function::ns_euid(3stap) - -
 for details. -
-

- -

-
is_myproc - -
-Determines if the current probe point has occurred in the user's own process -
-See -function::is_myproc(3stap) - -
 for details. -
-

- -

-
cpuid - -
-Returns the current cpu number -
-See -function::cpuid(3stap) - -
 for details. -
-

- -

-
cpu - -
-Returns the current cpu number -
-See -function::cpu(3stap) - -
 for details. -
-

- -

-
registers_valid - -
-Determines validity of register() and u_register() in current context -
-See -function::registers_valid(3stap) - -
 for details. -
-

- -

-
user_mode - -
-Determines if probe point occurs in user-mode -
-See -function::user_mode(3stap) - -
 for details. -
-

- -

-
is_return - -
-Whether the current probe context is a return probe -
-See -function::is_return(3stap) - -
 for details. -
-

- -

-
target - -
-Return the process ID of the target process -
-See -function::target(3stap) - -
 for details. -
-

- -

-
module_name - -
-The module name of the current script -
-See -function::module_name(3stap) - -
 for details. -
-

- -

-
module_size - -
-The module size of the current script -
-See -function::module_size(3stap) - -
 for details. -
-

- -

-
stp_pid - -
-The process id of the stapio process -
-See -function::stp_pid(3stap) - -
 for details. -
-

- -

-
remote_id - -
-The index of this instance in a remote execution. -
-See -function::remote_id(3stap) - -
 for details. -
-

- -

-
remote_uri - -
-The name of this instance in a remote execution. -
-See -function::remote_uri(3stap) - -
 for details. -
-

- -

-
stack_size - -
-Return the size of the kernel stack -
-See -function::stack_size(3stap) - -
 for details. -
-

- -

-
stack_used - -
-Returns the amount of kernel stack used -
-See -function::stack_used(3stap) - -
 for details. -
-

- -

-
stack_unused - -
-Returns the amount of kernel stack currently available -
-See -function::stack_unused(3stap) - -
 for details. -
-

- -

-
addr - -
-Address of the current probe point. -
-See -function::addr(3stap) - -
 for details. -
-

- -

-
uaddr - -
-User space address of current running task -
-See -function::uaddr(3stap) - -
 for details. -
-

- -

-
cmdline_args - -
-Fetch command line arguments from current process -
-See -function::cmdline_args(3stap) - -
 for details. -
-

- -

-
cmdline_arg - -
-Fetch a command line argument -
-See -function::cmdline_arg(3stap) - -
 for details. -
-

- -

-
cmdline_str - -
-Fetch all command line arguments from current process -
-See -function::cmdline_str(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::print_regs(3stap), - - -function::pp(3stap), - - -function::ppfunc(3stap), - - -function::probe_type(3stap), - - -function::execname(3stap), - - -function::pexecname(3stap), - - -function::pid(3stap), - - -function::ns_pid(3stap), - - -function::tid(3stap), - - -function::ns_tid(3stap), - - -function::ppid(3stap), - - -function::ns_ppid(3stap), - - -function::pgrp(3stap), - - -function::ns_pgrp(3stap), - - -function::sid(3stap), - - -function::ns_sid(3stap), - - -function::gid(3stap), - - -function::ns_gid(3stap), - - -function::egid(3stap), - - -function::ns_egid(3stap), - - -function::uid(3stap), - - -function::ns_uid(3stap), - - -function::euid(3stap), - - -function::ns_euid(3stap), - - -function::is_myproc(3stap), - - -function::cpuid(3stap), - - -function::cpu(3stap), - - -function::registers_valid(3stap), - - -function::user_mode(3stap), - - -function::is_return(3stap), - - -function::target(3stap), - - -function::module_name(3stap), - - -function::module_size(3stap), - - -function::stp_pid(3stap), - - -function::remote_id(3stap), - - -function::remote_uri(3stap), - - -function::stack_size(3stap), - - -function::stack_used(3stap), - - -function::stack_unused(3stap), - - -function::addr(3stap), - - -function::uaddr(3stap), - - -function::cmdline_args(3stap), - - -function::cmdline_arg(3stap), - - -function::cmdline_str(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::conversions-guru.3stap.html b/man/tapset::conversions-guru.3stap.html deleted file mode 100644 index a1422ee0..00000000 --- a/man/tapset::conversions-guru.3stap.html +++ /dev/null @@ -1,155 +0,0 @@ - -Manpage of TAPSET::CONVERSIONS-GURU - -

TAPSET::CONVERSIONS-GURU

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::conversions-guru - systemtap conversions-guru tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
set_kernel_string - -
-Writes a string to kernel memory -
-See -function::set_kernel_string(3stap) - -
 for details. -
-

- -

-
set_kernel_string_n - -
-Writes a string of given length to kernel memory -
-See -function::set_kernel_string_n(3stap) - -
 for details. -
-

- -

-
set_kernel_long - -
-Writes a long value to kernel memory -
-See -function::set_kernel_long(3stap) - -
 for details. -
-

- -

-
set_kernel_int - -
-Writes an int value to kernel memory -
-See -function::set_kernel_int(3stap) - -
 for details. -
-

- -

-
set_kernel_short - -
-Writes a short value to kernel memory -
-See -function::set_kernel_short(3stap) - -
 for details. -
-

- -

-
set_kernel_char - -
-Writes a char value to kernel memory -
-See -function::set_kernel_char(3stap) - -
 for details. -
-

- -

-
set_kernel_pointer - -
-Writes a pointer value to kernel memory. -
-See -function::set_kernel_pointer(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::set_kernel_string(3stap), - - -function::set_kernel_string_n(3stap), - - -function::set_kernel_long(3stap), - - -function::set_kernel_int(3stap), - - -function::set_kernel_short(3stap), - - -function::set_kernel_char(3stap), - - -function::set_kernel_pointer(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::conversions.3stap.html b/man/tapset::conversions.3stap.html deleted file mode 100644 index 8c0341de..00000000 --- a/man/tapset::conversions.3stap.html +++ /dev/null @@ -1,319 +0,0 @@ - -Manpage of TAPSET::CONVERSIONS - -

TAPSET::CONVERSIONS

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::conversions - systemtap conversions tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
kernel_string - -
-Retrieves string from kernel memory -
-See -function::kernel_string(3stap) - -
 for details. -
-

- -

-
kernel_string - -
-Retrieves string from kernel memory with alternative error string -
-See -function::kernel_string(3stap) - -
 for details. -
-

- -

-
kernel_string_quoted - -
-Retrieves and quotes string from kernel memory -
-See -function::kernel_string_quoted(3stap) - -
 for details. -
-

- -

-
kernel_string_n - -
-Retrieves string of given length from kernel memory -
-See -function::kernel_string_n(3stap) - -
 for details. -
-

- -

-
kernel_string_utf32 - -
-Retrieves UTF-32 string from kernel memory -
-See -function::kernel_string_utf32(3stap) - -
 for details. -
-

- -

-
kernel_string_utf32 - -
-Retrieves UTF-32 string from kernel memory with alternative error string -
-See -function::kernel_string_utf32(3stap) - -
 for details. -
-

- -

-
kernel_string_quoted_utf32 - -
-Quote given UTF-32 kernel string. -
-See -function::kernel_string_quoted_utf32(3stap) - -
 for details. -
-

- -

-
kernel_string_utf16 - -
-Retrieves UTF-16 string from kernel memory -
-See -function::kernel_string_utf16(3stap) - -
 for details. -
-

- -

-
kernel_string_utf16 - -
-Retrieves UTF-16 string from kernel memory with alternative error string -
-See -function::kernel_string_utf16(3stap) - -
 for details. -
-

- -

-
kernel_string_quoted_utf16 - -
-Quote given kernel UTF-16 string. -
-See -function::kernel_string_quoted_utf16(3stap) - -
 for details. -
-

- -

-
kernel_long - -
-Retrieves a long value stored in kernel memory -
-See -function::kernel_long(3stap) - -
 for details. -
-

- -

-
kernel_int - -
-Retrieves an int value stored in kernel memory -
-See -function::kernel_int(3stap) - -
 for details. -
-

- -

-
kernel_short - -
-Retrieves a short value stored in kernel memory -
-See -function::kernel_short(3stap) - -
 for details. -
-

- -

-
kernel_char - -
-Retrieves a char value stored in kernel memory -
-See -function::kernel_char(3stap) - -
 for details. -
-

- -

-
kernel_pointer - -
-Retrieves a pointer value stored in kernel memory -
-See -function::kernel_pointer(3stap) - -
 for details. -
-

- -

-
kernel_buffer_quoted - -
-Retrieves and quotes buffer from kernel space -
-See -function::kernel_buffer_quoted(3stap) - -
 for details. -
-

- -

-
kernel_buffer_quoted - -
-Retrieves and quotes buffer from kernel space -
-See -function::kernel_buffer_quoted(3stap) - -
 for details. -
-

- -

-
kernel_buffer_quoted_error - -
-Retrieves and quotes buffer from kernel space -
-See -function::kernel_buffer_quoted_error(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::kernel_string(3stap), - - -function::kernel_string_quoted(3stap), - - -function::kernel_string_n(3stap), - - -function::kernel_string_utf32(3stap), - - -function::kernel_string_quoted_utf32(3stap), - - -function::kernel_string_utf16(3stap), - - -function::kernel_string_quoted_utf16(3stap), - - -function::kernel_long(3stap), - - -function::kernel_int(3stap), - - -function::kernel_short(3stap), - - -function::kernel_char(3stap), - - -function::kernel_pointer(3stap), - - -function::kernel_buffer_quoted(3stap), - - -function::kernel_buffer_quoted_error(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::ctime.3stap.html b/man/tapset::ctime.3stap.html deleted file mode 100644 index 063bb4e9..00000000 --- a/man/tapset::ctime.3stap.html +++ /dev/null @@ -1,72 +0,0 @@ - -Manpage of TAPSET::CTIME - -

TAPSET::CTIME

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::ctime - systemtap ctime tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
ctime - -
-Convert seconds since epoch into human readable date/time string -
-See -function::ctime(3stap) - -
 for details. -
-

- -

-
ctime - -
-Convert seconds since epoch into human readable date/time string -
-See -function::ctime(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::ctime(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::dentry.3stap.html b/man/tapset::dentry.3stap.html deleted file mode 100644 index 1cccd8fa..00000000 --- a/man/tapset::dentry.3stap.html +++ /dev/null @@ -1,42 +0,0 @@ - -Manpage of TAPSET::DENTRY - -

TAPSET::DENTRY

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::dentry - systemtap dentry tapset -
  -  -

DESCRIPTION

- -
-
-
-  -

SEE ALSO

- - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::dev.3stap.html b/man/tapset::dev.3stap.html deleted file mode 100644 index 05bb83e0..00000000 --- a/man/tapset::dev.3stap.html +++ /dev/null @@ -1,107 +0,0 @@ - -Manpage of TAPSET::DEV - -

TAPSET::DEV

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::dev - systemtap dev tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
MAJOR - -
-Extract major device number from a kernel device number (kdev_t) -
-See -function::MAJOR(3stap) - -
 for details. -
-

- -

-
MINOR - -
-Extract minor device number from a kernel device number (kdev_t) -
-See -function::MINOR(3stap) - -
 for details. -
-

- -

-
MKDEF - -
-Creates a value that can be compared to a kernel device number (kdev_t) -
-See -function::MKDEF(3stap) - -
 for details. -
-

- -

-
usrdev2kerndev - -
-Converts a user-space device number into the format used in the kernel -
-See -function::usrdev2kerndev(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::MAJOR(3stap), - - -function::MINOR(3stap), - - -function::MKDEF(3stap), - - -function::usrdev2kerndev(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::errno.3stap.html b/man/tapset::errno.3stap.html deleted file mode 100644 index de681595..00000000 --- a/man/tapset::errno.3stap.html +++ /dev/null @@ -1,107 +0,0 @@ - -Manpage of TAPSET::ERRNO - -

TAPSET::ERRNO

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::errno - systemtap errno tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
errno_str - -
-Symbolic string associated with error code -
-See -function::errno_str(3stap) - -
 for details. -
-

- -

-
returnval - -
-Possible return value of probed function -
-See -function::returnval(3stap) - -
 for details. -
-

- -

-
returnstr - -
-Formats the return value as a string -
-See -function::returnstr(3stap) - -
 for details. -
-

- -

-
return_str - -
-Formats the return value as a string -
-See -function::return_str(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::errno_str(3stap), - - -function::returnval(3stap), - - -function::returnstr(3stap), - - -function::return_str(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::guru-delay.3stap.html b/man/tapset::guru-delay.3stap.html deleted file mode 100644 index cf9a3512..00000000 --- a/man/tapset::guru-delay.3stap.html +++ /dev/null @@ -1,81 +0,0 @@ - -Manpage of TAPSET::GURU-DELAY - -

TAPSET::GURU-DELAY

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::guru-delay - systemtap guru-delay tapset -
  -  -

DESCRIPTION

- -

-
 Functions in the guru-delay tapset allow a probe handler to insert -
 deliberate delays.  This is sometimes useful as a fault-injection -
 aid.  Due to its likelihood of interference with the kernel, guru -
 mode is required, and overload-prevention is suppressed. -

-

-
-

- -

-
-
mdelay - -
-millisecond delay -
-See -function::mdelay(3stap) - -
 for details. -
-

- -

-
udelay - -
-microsecond delay -
-See -function::udelay(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::mdelay(3stap), - - -function::udelay(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::guru-signal.3stap.html b/man/tapset::guru-signal.3stap.html deleted file mode 100644 index be828191..00000000 --- a/man/tapset::guru-signal.3stap.html +++ /dev/null @@ -1,64 +0,0 @@ - -Manpage of TAPSET::GURU-SIGNAL - -

TAPSET::GURU-SIGNAL

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::guru-signal - systemtap guru-signal tapset -
  -  -

DESCRIPTION

- -

-
 Functions in the guru-signal tapset allow a probe handler to queue -
 a user-space signals.  Such operations may only be safe from some  -
 kinds of probe points, therefore are guru-mode only. -

-

-
-

- -

-
-
raise - -
-raise a signal in the current thread -
-See -function::raise(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::raise(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::indent.3stap.html b/man/tapset::indent.3stap.html deleted file mode 100644 index e54cca2f..00000000 --- a/man/tapset::indent.3stap.html +++ /dev/null @@ -1,107 +0,0 @@ - -Manpage of TAPSET::INDENT - -

TAPSET::INDENT

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::indent - systemtap indent tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
thread_indent - -
-returns an amount of space with the current task information -
-See -function::thread_indent(3stap) - -
 for details. -
-

- -

-
thread_indent_depth - -
-returns the nested-depth of the current task -
-See -function::thread_indent_depth(3stap) - -
 for details. -
-

- -

-
indent - -
-returns an amount of space to indent -
-See -function::indent(3stap) - -
 for details. -
-

- -

-
indent_depth - -
-returns the global nested-depth -
-See -function::indent_depth(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::thread_indent(3stap), - - -function::thread_indent_depth(3stap), - - -function::indent(3stap), - - -function::indent_depth(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::inet.3stap.html b/man/tapset::inet.3stap.html deleted file mode 100644 index d357961b..00000000 --- a/man/tapset::inet.3stap.html +++ /dev/null @@ -1,139 +0,0 @@ - -Manpage of TAPSET::INET - -

TAPSET::INET

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::inet - systemtap inet tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
htonll - -
-Convert 64-bit long long from host to network order -
-See -function::htonll(3stap) - -
 for details. -
-

- -

-
htonl - -
-Convert 32-bit long from host to network order -
-See -function::htonl(3stap) - -
 for details. -
-

- -

-
htons - -
-Convert 16-bit short from host to network order -
-See -function::htons(3stap) - -
 for details. -
-

- -

-
ntohll - -
-Convert 64-bit long long from network to host order -
-See -function::ntohll(3stap) - -
 for details. -
-

- -

-
ntohl - -
-Convert 32-bit long from network to host order -
-See -function::ntohl(3stap) - -
 for details. -
-

- -

-
ntohs - -
-Convert 16-bit short from network to host order -
-See -function::ntohs(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::htonll(3stap), - - -function::htonl(3stap), - - -function::htons(3stap), - - -function::ntohll(3stap), - - -function::ntohl(3stap), - - -function::ntohs(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::inet_sock.3stap.html b/man/tapset::inet_sock.3stap.html deleted file mode 100644 index d3aac78d..00000000 --- a/man/tapset::inet_sock.3stap.html +++ /dev/null @@ -1,75 +0,0 @@ - -Manpage of TAPSET::INET_SOCK - -

TAPSET::INET_SOCK

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::inet_sock - systemtap inet_sock tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
inet_get_local_port - -
-Provide local port number for a kernel socket -
-See -function::inet_get_local_port(3stap) - -
 for details. -
-

- -

-
inet_get_ip_source - -
-Provide IP source address string for a kernel socket -
-See -function::inet_get_ip_source(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::inet_get_local_port(3stap), - - -function::inet_get_ip_source(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::ioblock.3stap.html b/man/tapset::ioblock.3stap.html deleted file mode 100644 index 42a80ce7..00000000 --- a/man/tapset::ioblock.3stap.html +++ /dev/null @@ -1,123 +0,0 @@ - -Manpage of TAPSET::IOBLOCK - -

TAPSET::IOBLOCK

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::ioblock - systemtap ioblock tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
ioblock.request - -
-Fires whenever making a generic block I/O request. -
-
 See  -probe::ioblock.request(3stap) - -
 for details. -
-

- -

-
ioblock.end - -
-Fires whenever a block I/O transfer is complete. -
-
 See  -probe::ioblock.end(3stap) - -
 for details. -
-

- -

-
ioblock_trace.bounce - -
-Fires whenever a buffer bounce is needed for at least one page of a block IO request. -
-
 See  -probe::ioblock_trace.bounce(3stap) - -
 for details. -
-

- -

-
ioblock_trace.request - -
-Fires just as a generic block I/O request is created for a bio. -
-
 See  -probe::ioblock_trace.request(3stap) - -
 for details. -
-

- -

-
ioblock_trace.end - -
-Fires whenever a block I/O transfer is complete. -
-
 See  -probe::ioblock_trace.end(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::ioblock.request(3stap), - - -probe::ioblock.end(3stap), - - -probe::ioblock_trace.bounce(3stap), - - -probe::ioblock_trace.request(3stap), - - -probe::ioblock_trace.end(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::ioscheduler.3stap.html b/man/tapset::ioscheduler.3stap.html deleted file mode 100644 index 8223c965..00000000 --- a/man/tapset::ioscheduler.3stap.html +++ /dev/null @@ -1,254 +0,0 @@ - -Manpage of TAPSET::IOSCHEDULER - -

TAPSET::IOSCHEDULER

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::ioscheduler - systemtap ioscheduler tapset -
  -  -

DESCRIPTION

- -

-
 This family of probe points is used to probe IO scheduler activities.  -

-

-
-

- -

-
-
ioscheduler.elv_next_request - -
-Fires when a request is retrieved from the request queue -
-
 See  -probe::ioscheduler.elv_next_request(3stap) - -
 for details. -
-

- -

-
ioscheduler.elv_next_request.return - -
-Fires when a request retrieval issues a return signal -
-
 See  -probe::ioscheduler.elv_next_request.return(3stap) - -
 for details. -
-

- -

-
ioscheduler.elv_completed_request - -
-Fires when a request is completed -
-
 See  -probe::ioscheduler.elv_completed_request(3stap) - -
 for details. -
-

- -

-
ioscheduler.elv_add_request.kp - -
-kprobe based probe to indicate that a request was added to the request queue -
-
 See  -probe::ioscheduler.elv_add_request.kp(3stap) - -
 for details. -
-

- -

-
ioscheduler.elv_add_request.tp - -
-tracepoint based probe to indicate a request is added to the request queue. -
-
 See  -probe::ioscheduler.elv_add_request.tp(3stap) - -
 for details. -
-

- -

-
ioscheduler.elv_add_request - -
-probe to indicate request is added to the request queue. -
-
 See  -probe::ioscheduler.elv_add_request(3stap) - -
 for details. -
-

- -

-
ioscheduler_trace.elv_completed_request - -
-Fires when a request is -
-
 See  -probe::ioscheduler_trace.elv_completed_request(3stap) - -
 for details. -
-

- -

-
ioscheduler_trace.elv_issue_request - -
-Fires when a request is -
-
 See  -probe::ioscheduler_trace.elv_issue_request(3stap) - -
 for details. -
-

- -

-
ioscheduler_trace.elv_requeue_request - -
-Fires when a request is -
-
 See  -probe::ioscheduler_trace.elv_requeue_request(3stap) - -
 for details. -
-

- -

-
ioscheduler_trace.elv_abort_request - -
-Fires when a request is aborted. -
-
 See  -probe::ioscheduler_trace.elv_abort_request(3stap) - -
 for details. -
-

- -

-
ioscheduler_trace.plug - -
-Fires when a request queue is plugged; -
-
 See  -probe::ioscheduler_trace.plug(3stap) - -
 for details. -
-

- -

-
ioscheduler_trace.unplug_io - -
-Fires when a request queue is unplugged; -
-
 See  -probe::ioscheduler_trace.unplug_io(3stap) - -
 for details. -
-

- -

-
ioscheduler_trace.unplug_timer - -
-Fires when unplug timer associated -
-
 See  -probe::ioscheduler_trace.unplug_timer(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::ioscheduler.elv_next_request(3stap), - - -probe::ioscheduler.elv_next_request.return(3stap), - - -probe::ioscheduler.elv_completed_request(3stap), - - -probe::ioscheduler.elv_add_request.kp(3stap), - - -probe::ioscheduler.elv_add_request.tp(3stap), - - -probe::ioscheduler.elv_add_request(3stap), - - -probe::ioscheduler_trace.elv_completed_request(3stap), - - -probe::ioscheduler_trace.elv_issue_request(3stap), - - -probe::ioscheduler_trace.elv_requeue_request(3stap), - - -probe::ioscheduler_trace.elv_abort_request(3stap), - - -probe::ioscheduler_trace.plug(3stap), - - -probe::ioscheduler_trace.unplug_io(3stap), - - -probe::ioscheduler_trace.unplug_timer(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::ip.3stap.html b/man/tapset::ip.3stap.html deleted file mode 100644 index a6136e1a..00000000 --- a/man/tapset::ip.3stap.html +++ /dev/null @@ -1,75 +0,0 @@ - -Manpage of TAPSET::IP - -

TAPSET::IP

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::ip - systemtap ip tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
format_ipaddr - -
-Returns a string representation for an IP address -
-See -function::format_ipaddr(3stap) - -
 for details. -
-

- -

-
ip_ntop - -
-Returns a string representation for an IPv4 address -
-See -function::ip_ntop(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::format_ipaddr(3stap), - - -function::ip_ntop(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:48 GMT, June 11, 2020 - - diff --git a/man/tapset::ipmib-filter-default.3stap.html b/man/tapset::ipmib-filter-default.3stap.html deleted file mode 100644 index 6a6e28da..00000000 --- a/man/tapset::ipmib-filter-default.3stap.html +++ /dev/null @@ -1,59 +0,0 @@ - -Manpage of TAPSET::IPMIB-FILTER-DEFAULT - -

TAPSET::IPMIB-FILTER-DEFAULT

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::ipmib-filter-default - systemtap ipmib-filter-default tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
ipmib_filter_key - -
-Default filter function for ipmib.* probes -
-See -function::ipmib_filter_key(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::ipmib_filter_key(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::ipmib.3stap.html b/man/tapset::ipmib.3stap.html deleted file mode 100644 index b917cee7..00000000 --- a/man/tapset::ipmib.3stap.html +++ /dev/null @@ -1,299 +0,0 @@ - -Manpage of TAPSET::IPMIB - -

TAPSET::IPMIB

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::ipmib - systemtap ipmib tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
ipmib_remote_addr - -
-Get the remote ip address -
-See -function::ipmib_remote_addr(3stap) - -
 for details. -
-

- -

-
ipmib_local_addr - -
-Get the local ip address -
-See -function::ipmib_local_addr(3stap) - -
 for details. -
-

- -

-
ipmib_tcp_remote_port - -
-Get the remote tcp port -
-See -function::ipmib_tcp_remote_port(3stap) - -
 for details. -
-

- -

-
ipmib_tcp_local_port - -
-Get the local tcp port -
-See -function::ipmib_tcp_local_port(3stap) - -
 for details. -
-

- -

-
ipmib_get_proto - -
-Get the protocol value -
-See -function::ipmib_get_proto(3stap) - -
 for details. -
-

- -

-
ipmib.InReceives - -
-Count an arriving packet -
-
 See  -probe::ipmib.InReceives(3stap) - -
 for details. -
-

- -

-
ipmib.InNoRoutes - -
-Count an arriving packet with no matching socket -
-
 See  -probe::ipmib.InNoRoutes(3stap) - -
 for details. -
-

- -

-
ipmib.InAddrErrors - -
-Count arriving packets with an incorrect address -
-
 See  -probe::ipmib.InAddrErrors(3stap) - -
 for details. -
-

- -

-
ipmib.InUnknownProtos - -
-Count arriving packets with an unbound proto -
-
 See  -probe::ipmib.InUnknownProtos(3stap) - -
 for details. -
-

- -

-
ipmib.InDiscards - -
-Count discarded inbound packets -
-
 See  -probe::ipmib.InDiscards(3stap) - -
 for details. -
-

- -

-
ipmib.ForwDatagrams - -
-Count forwarded packet -
-
 See  -probe::ipmib.ForwDatagrams(3stap) - -
 for details. -
-

- -

-
ipmib.OutRequests - -
-Count a request to send a packet -
-
 See  -probe::ipmib.OutRequests(3stap) - -
 for details. -
-

- -

-
ipmib.ReasmTimeout - -
-Count Reassembly Timeouts -
-
 See  -probe::ipmib.ReasmTimeout(3stap) - -
 for details. -
-

- -

-
ipmib.ReasmReqds - -
-Count number of packet fragments reassembly requests -
-
 See  -probe::ipmib.ReasmReqds(3stap) - -
 for details. -
-

- -

-
ipmib.FragOKs - -
-Count datagram fragmented successfully -
-
 See  -probe::ipmib.FragOKs(3stap) - -
 for details. -
-

- -

-
ipmib.FragFails - -
-Count datagram fragmented unsuccessfully -
-
 See  -probe::ipmib.FragFails(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::ipmib_remote_addr(3stap), - - -function::ipmib_local_addr(3stap), - - -function::ipmib_tcp_remote_port(3stap), - - -function::ipmib_tcp_local_port(3stap), - - -function::ipmib_get_proto(3stap), - - -probe::ipmib.InReceives(3stap), - - -probe::ipmib.InNoRoutes(3stap), - - -probe::ipmib.InAddrErrors(3stap), - - -probe::ipmib.InUnknownProtos(3stap), - - -probe::ipmib.InDiscards(3stap), - - -probe::ipmib.ForwDatagrams(3stap), - - -probe::ipmib.OutRequests(3stap), - - -probe::ipmib.ReasmTimeout(3stap), - - -probe::ipmib.ReasmReqds(3stap), - - -probe::ipmib.FragOKs(3stap), - - -probe::ipmib.FragFails(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::irq.3stap.html b/man/tapset::irq.3stap.html deleted file mode 100644 index 4bf3c6ac..00000000 --- a/man/tapset::irq.3stap.html +++ /dev/null @@ -1,171 +0,0 @@ - -Manpage of TAPSET::IRQ - -

TAPSET::IRQ

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::irq - systemtap irq tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
workqueue.create - -
-Creating a new workqueue -
-
 See  -probe::workqueue.create(3stap) - -
 for details. -
-

- -

-
workqueue.insert - -
-Queuing work on a workqueue -
-
 See  -probe::workqueue.insert(3stap) - -
 for details. -
-

- -

-
workqueue.execute - -
-Executing deferred work -
-
 See  -probe::workqueue.execute(3stap) - -
 for details. -
-

- -

-
workqueue.destroy - -
-Destroying workqueue -
-
 See  -probe::workqueue.destroy(3stap) - -
 for details. -
-

- -

-
irq_handler.entry - -
-Execution of interrupt handler starting -
-
 See  -probe::irq_handler.entry(3stap) - -
 for details. -
-

- -

-
irq_handler.exit - -
-Execution of interrupt handler completed -
-
 See  -probe::irq_handler.exit(3stap) - -
 for details. -
-

- -

-
softirq.entry - -
-Execution of handler for a pending softirq starting -
-
 See  -probe::softirq.entry(3stap) - -
 for details. -
-

- -

-
softirq.exit - -
-Execution of handler for a pending softirq completed -
-
 See  -probe::softirq.exit(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::workqueue.create(3stap), - - -probe::workqueue.insert(3stap), - - -probe::workqueue.execute(3stap), - - -probe::workqueue.destroy(3stap), - - -probe::irq_handler.entry(3stap), - - -probe::irq_handler.exit(3stap), - - -probe::softirq.entry(3stap), - - -probe::softirq.exit(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::json.3stap.html b/man/tapset::json.3stap.html deleted file mode 100644 index e5688054..00000000 --- a/man/tapset::json.3stap.html +++ /dev/null @@ -1,258 +0,0 @@ - -Manpage of TAPSET::JSON - -

TAPSET::JSON

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::json - systemtap json tapset -
  -  -

DESCRIPTION

- -

-
 The JSON tapset provides probes, functions, and macros to generate -
 a JSON metadata and data file. The JSON metadata file is located in -
 /proc/systemtap/MODULE/metadata.json. The JSON data file is located -
 in /proc/systemtap/MODULE/data.json. The JSON data file is updated -
 with current data every time the file is read. -

-

-
-

- -

-
-
json_set_prefix - -
-Set the metric prefix. -
-See -function::json_set_prefix(3stap) - -
 for details. -
-

- -

-
json_add_numeric_metric - -
-Add a numeric metric -
-See -function::json_add_numeric_metric(3stap) - -
 for details. -
-

- -

-
json_add_string_metric - -
-Add a string metric -
-See -function::json_add_string_metric(3stap) - -
 for details. -
-

- -

-
json_add_array - -
-Add an array -
-See -function::json_add_array(3stap) - -
 for details. -
-

- -

-
json_add_array_numeric_metric - -
-Add a numeric metric to an array -
-See -function::json_add_array_numeric_metric(3stap) - -
 for details. -
-

- -

-
json_add_array_string_metric - -
-Add a string metric to an array -
-See -function::json_add_array_string_metric(3stap) - -
 for details. -
-

- -

-
json_data - -
-Fires whenever JSON data is wanted by a reader. -
-
 See  -probe::json_data(3stap) - -
 for details. -
-

- -

-
@json_output_data_start - -
-Start the json output. -
-
 See  -macro::json_output_data_start(3stap) - -
 for details. -
-

- -

-
@json_output_string_value - -
-Output a string value. -
-
 See  -macro::json_output_string_value(3stap) - -
 for details. -
-

- -

-
@json_output_numeric_value - -
-Output a numeric value. -
-
 See  -macro::json_output_numeric_value(3stap) - -
 for details. -
-

- -

-
@json_output_array_string_value - -
-Output a string value for metric in an array. -
-
 See  -macro::json_output_array_string_value(3stap) - -
 for details. -
-

- -

-
@json_output_array_numeric_value - -
-Output a numeric value for metric in an array. -
-
 See  -macro::json_output_array_numeric_value(3stap) - -
 for details. -
-

- -

-
@json_output_data_end - -
-End the json output. -
-
 See  -macro::json_output_data_end(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::json_set_prefix(3stap), - - -function::json_add_numeric_metric(3stap), - - -function::json_add_string_metric(3stap), - - -function::json_add_array(3stap), - - -function::json_add_array_numeric_metric(3stap), - - -function::json_add_array_string_metric(3stap), - - -probe::json_data(3stap), - - -macro::json_output_data_start(3stap), - - -macro::json_output_string_value(3stap), - - -macro::json_output_numeric_value(3stap), - - -macro::json_output_array_string_value(3stap), - - -macro::json_output_array_numeric_value(3stap), - - -macro::json_output_data_end(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::kprocess.3stap.html b/man/tapset::kprocess.3stap.html deleted file mode 100644 index 69599e8d..00000000 --- a/man/tapset::kprocess.3stap.html +++ /dev/null @@ -1,142 +0,0 @@ - -Manpage of TAPSET::KPROCESS - -

TAPSET::KPROCESS

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::kprocess - systemtap kprocess tapset -
  -  -

DESCRIPTION

- -

-
  This family of probe points is used to probe process-related activities. -

-

-
-

- -

-
-
kprocess.create - -
-Fires whenever a new process or thread is successfully created -
-
 See  -probe::kprocess.create(3stap) - -
 for details. -
-

- -

-
kprocess.start - -
-Starting new process -
-
 See  -probe::kprocess.start(3stap) - -
 for details. -
-

- -

-
kprocess.exec - -
-Attempt to exec to a new program -
-
 See  -probe::kprocess.exec(3stap) - -
 for details. -
-

- -

-
kprocess.exec_complete - -
-Return from exec to a new program -
-
 See  -probe::kprocess.exec_complete(3stap) - -
 for details. -
-

- -

-
kprocess.exit - -
-Exit from process -
-
 See  -probe::kprocess.exit(3stap) - -
 for details. -
-

- -

-
kprocess.release - -
-Process released -
-
 See  -probe::kprocess.release(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::kprocess.create(3stap), - - -probe::kprocess.start(3stap), - - -probe::kprocess.exec(3stap), - - -probe::kprocess.exec_complete(3stap), - - -probe::kprocess.exit(3stap), - - -probe::kprocess.release(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::linuxmib-filter-default.3stap.html b/man/tapset::linuxmib-filter-default.3stap.html deleted file mode 100644 index fdd3830c..00000000 --- a/man/tapset::linuxmib-filter-default.3stap.html +++ /dev/null @@ -1,59 +0,0 @@ - -Manpage of TAPSET::LINUXMIB-FILTER-DEFAULT - -

TAPSET::LINUXMIB-FILTER-DEFAULT

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::linuxmib-filter-default - systemtap linuxmib-filter-default tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
linuxmib_filter_key - -
-Default filter function for linuxmib.* probes -
-See -function::linuxmib_filter_key(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::linuxmib_filter_key(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::linuxmib.3stap.html b/man/tapset::linuxmib.3stap.html deleted file mode 100644 index c61d9fc6..00000000 --- a/man/tapset::linuxmib.3stap.html +++ /dev/null @@ -1,107 +0,0 @@ - -Manpage of TAPSET::LINUXMIB - -

TAPSET::LINUXMIB

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::linuxmib - systemtap linuxmib tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
linuxmib.DelayedACKs - -
-Count of delayed acks -
-
 See  -probe::linuxmib.DelayedACKs(3stap) - -
 for details. -
-

- -

-
linuxmib.ListenOverflows - -
-Count of times a listen queue overflowed -
-
 See  -probe::linuxmib.ListenOverflows(3stap) - -
 for details. -
-

- -

-
linuxmib.ListenDrops - -
-Count of times conn request that were dropped -
-
 See  -probe::linuxmib.ListenDrops(3stap) - -
 for details. -
-

- -

-
linuxmib.TCPMemoryPressures - -
-Count of times memory pressure was used -
-
 See  -probe::linuxmib.TCPMemoryPressures(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::linuxmib.DelayedACKs(3stap), - - -probe::linuxmib.ListenOverflows(3stap), - - -probe::linuxmib.ListenDrops(3stap), - - -probe::linuxmib.TCPMemoryPressures(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::loadavg.3stap.html b/man/tapset::loadavg.3stap.html deleted file mode 100644 index f3736742..00000000 --- a/man/tapset::loadavg.3stap.html +++ /dev/null @@ -1,79 +0,0 @@ - -Manpage of TAPSET::LOADAVG - -

TAPSET::LOADAVG

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::loadavg - systemtap loadavg tapset -
  -  -

DESCRIPTION

- -

-
 Functions in the loadavg tapset allow a probe handler to capture -
 the load average. -

-

-
-

- -

-
-
get_loadavg_index - -
-Get the load average for a specified interval -
-See -function::get_loadavg_index(3stap) - -
 for details. -
-

- -

-
sprint_loadavg - -
-Report a pretty-printed load average -
-See -function::sprint_loadavg(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::get_loadavg_index(3stap), - - -function::sprint_loadavg(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::logging.3stap.html b/man/tapset::logging.3stap.html deleted file mode 100644 index 0900fda2..00000000 --- a/man/tapset::logging.3stap.html +++ /dev/null @@ -1,200 +0,0 @@ - -Manpage of TAPSET::LOGGING - -

TAPSET::LOGGING

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::logging - systemtap logging tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
log - -
-Send a line to the common trace buffer -
-See -function::log(3stap) - -
 for details. -
-

- -

-
warn - -
-Send a line to the warning stream -
-See -function::warn(3stap) - -
 for details. -
-

- -

-
exit - -
-Start shutting down probing script. -
-See -function::exit(3stap) - -
 for details. -
-

- -

-
abort - -
-Immediately shutting down probing script. -
-See -function::abort(3stap) - -
 for details. -
-

- -

-
error - -
-Send an error message -
-See -function::error(3stap) - -
 for details. -
-

- -

-
assert - -
-evaluate assertion -
-See -function::assert(3stap) - -
 for details. -
-

- -

-
assert - -
-evaluate assertion -
-See -function::assert(3stap) - -
 for details. -
-

- -

-
ftrace - -
-Send a message to the ftrace ring-buffer -
-See -function::ftrace(3stap) - -
 for details. -
-

- -

-
printk - -
-Send a message to the kernel trace buffer -
-See -function::printk(3stap) - -
 for details. -
-

- -

-
dump_stack - -
-Send the kernel backtrace to the kernel trace buffer -
-See -function::dump_stack(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::log(3stap), - - -function::warn(3stap), - - -function::exit(3stap), - - -function::abort(3stap), - - -function::error(3stap), - - -function::assert(3stap), - - -function::ftrace(3stap), - - -function::printk(3stap), - - -function::dump_stack(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::memory.3stap.html b/man/tapset::memory.3stap.html deleted file mode 100644 index dcaebe4f..00000000 --- a/man/tapset::memory.3stap.html +++ /dev/null @@ -1,302 +0,0 @@ - -Manpage of TAPSET::MEMORY - -

TAPSET::MEMORY

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::memory - systemtap memory tapset -
  -  -

DESCRIPTION

- -

-
 This family of probe points is used to probe memory-related events.  -

-

-
-

- -

-
-
vm_fault_contains - -
-Test return value for page fault reason -
-See -function::vm_fault_contains(3stap) - -
 for details. -
-

- -

-
vm.pagefault - -
-Records that a page fault occurred -
-
 See  -probe::vm.pagefault(3stap) - -
 for details. -
-

- -

-
vm.pagefault.return - -
-Indicates what type of fault occurred -
-
 See  -probe::vm.pagefault.return(3stap) - -
 for details. -
-

- -

-
addr_to_node - -
-Returns which node a given address belongs to within a NUMA system -
-See -function::addr_to_node(3stap) - -
 for details. -
-

- -

-
vm.write_shared - -
-Attempts at writing to a shared page -
-
 See  -probe::vm.write_shared(3stap) - -
 for details. -
-

- -

-
vm.write_shared_copy - -
-Page copy for shared page write -
-
 See  -probe::vm.write_shared_copy(3stap) - -
 for details. -
-

- -

-
vm.mmap - -
-Fires when an mmap is requested -
-
 See  -probe::vm.mmap(3stap) - -
 for details. -
-

- -

-
vm.munmap - -
-Fires when an munmap is requested -
-
 See  -probe::vm.munmap(3stap) - -
 for details. -
-

- -

-
vm.brk - -
-Fires when a brk is requested (i.e. the heap will be resized) -
-
 See  -probe::vm.brk(3stap) - -
 for details. -
-

- -

-
vm.oom_kill - -
-Fires when a thread is selected for termination by the OOM killer -
-
 See  -probe::vm.oom_kill(3stap) - -
 for details. -
-

- -

-
vm.kmalloc - -
-Fires when kmalloc is requested -
-
 See  -probe::vm.kmalloc(3stap) - -
 for details. -
-

- -

-
vm.kmem_cache_alloc - -
-Fires when kmem_cache_alloc is requested -
-
 See  -probe::vm.kmem_cache_alloc(3stap) - -
 for details. -
-

- -

-
vm.kmalloc_node - -
-Fires when kmalloc_node is requested -
-
 See  -probe::vm.kmalloc_node(3stap) - -
 for details. -
-

- -

-
vm.kmem_cache_alloc_node - -
-Fires when kmem_cache_alloc_node is requested -
-
 See  -probe::vm.kmem_cache_alloc_node(3stap) - -
 for details. -
-

- -

-
vm.kfree - -
-Fires when kfree is requested -
-
 See  -probe::vm.kfree(3stap) - -
 for details. -
-

- -

-
vm.kmem_cache_free - -
-Fires when kmem_cache_free is requested -
-
 See  -probe::vm.kmem_cache_free(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::vm_fault_contains(3stap), - - -function::addr_to_node(3stap), - - -probe::vm.pagefault(3stap), - - -probe::vm.pagefault.return(3stap), - - -probe::vm.write_shared(3stap), - - -probe::vm.write_shared_copy(3stap), - - -probe::vm.mmap(3stap), - - -probe::vm.munmap(3stap), - - -probe::vm.brk(3stap), - - -probe::vm.oom_kill(3stap), - - -probe::vm.kmalloc(3stap), - - -probe::vm.kmem_cache_alloc(3stap), - - -probe::vm.kmalloc_node(3stap), - - -probe::vm.kmem_cache_alloc_node(3stap), - - -probe::vm.kfree(3stap), - - -probe::vm.kmem_cache_free(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::netfilter.3stap.html b/man/tapset::netfilter.3stap.html deleted file mode 100644 index 76b6e97d..00000000 --- a/man/tapset::netfilter.3stap.html +++ /dev/null @@ -1,186 +0,0 @@ - -Manpage of TAPSET::NETFILTER - -

TAPSET::NETFILTER

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::netfilter - systemtap netfilter tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
netfilter.ip.pre_routing - -
-Called before an IP packet is routed -
-
 See  -probe::netfilter.ip.pre_routing(3stap) - -
 for details. -
-

- -

-
netfilter.ip.local_in - -
-Called on an incoming IP packet addressed to the local computer -
-
 See  -probe::netfilter.ip.local_in(3stap) - -
 for details. -
-

- -

-
netfilter.ip.forward - -
-Called on an incoming IP packet addressed to some other computer -
-
 See  -probe::netfilter.ip.forward(3stap) - -
 for details. -
-

- -

-
netfilter.ip.local_out - -
-Called on an outgoing IP packet -
-
 See  -probe::netfilter.ip.local_out(3stap) - -
 for details. -
-

- -

-
netfilter.ip.post_routing - -
-Called immediately before an outgoing IP packet leaves the computer -
-
 See  -probe::netfilter.ip.post_routing(3stap) - -
 for details. -
-

- -

-
netfilter.bridge.local_in - -
-Called on a bridging packet destined for the local computer -
-
 See  -probe::netfilter.bridge.local_in(3stap) - -
 for details. -
-

- -

-
netfilter.bridge.forward - -
-Called on an incoming bridging packet destined for some other computer -
-
 See  -probe::netfilter.bridge.forward(3stap) - -
 for details. -
-

- -

-
netfilter.bridge.local_out - -
-Called on a bridging packet coming from a local process -
-
 See  -probe::netfilter.bridge.local_out(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::netfilter.ip.pre_routing(3stap), - - -probe::netfilter.ip.local_in(3stap), - - -probe::netfilter.ip.forward(3stap), - - -probe::netfilter.ip.local_out(3stap), - - -probe::netfilter.ip.post_routing(3stap), - - -probe::netfilter.arp.in(3stap), - - -probe::netfilter.arp.out(3stap), - - -probe::netfilter.arp.forward(3stap), - - -probe::netfilter.bridge.pre_routing(3stap), - - -probe::netfilter.bridge.local_in(3stap), - - -probe::netfilter.bridge.forward(3stap), - - -probe::netfilter.bridge.local_out(3stap), - - -probe::netfilter.bridge.post_routing(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::networking.3stap.html b/man/tapset::networking.3stap.html deleted file mode 100644 index 81c56f19..00000000 --- a/man/tapset::networking.3stap.html +++ /dev/null @@ -1,270 +0,0 @@ - -Manpage of TAPSET::NETWORKING - -

TAPSET::NETWORKING

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::networking - systemtap networking tapset -
  -  -

DESCRIPTION

- -

-
 This family of probe points is used to probe the activities of the network device.  -

-

-
-

- -

-
-
netdev.receive - -
-Data received from network device. -
-
 See  -probe::netdev.receive(3stap) - -
 for details. -
-

- -

-
netdev.transmit - -
-Network device transmitting buffer -
-
 See  -probe::netdev.transmit(3stap) - -
 for details. -
-

- -

-
netdev.change_mtu - -
-Called when the netdev MTU is changed -
-
 See  -probe::netdev.change_mtu(3stap) - -
 for details. -
-

- -

-
netdev.open - -
-Called when the device is opened -
-
 See  -probe::netdev.open(3stap) - -
 for details. -
-

- -

-
netdev.close - -
-Called when the device is closed -
-
 See  -probe::netdev.close(3stap) - -
 for details. -
-

- -

-
netdev.hard_transmit - -
-Called when the devices is going to TX (hard) -
-
 See  -probe::netdev.hard_transmit(3stap) - -
 for details. -
-

- -

-
netdev.rx - -
-Called when the device is going to receive a packet -
-
 See  -probe::netdev.rx(3stap) - -
 for details. -
-

- -

-
netdev.change_rx_flag - -
-Called when the device RX flag will be changed -
-
 See  -probe::netdev.change_rx_flag(3stap) - -
 for details. -
-

- -

-
netdev.set_promiscuity - -
-Called when the device enters/leaves promiscuity -
-
 See  -probe::netdev.set_promiscuity(3stap) - -
 for details. -
-

- -

-
netdev.ioctl - -
-Called when the device suffers an IOCTL -
-
 See  -probe::netdev.ioctl(3stap) - -
 for details. -
-

- -

-
netdev.register - -
-Called when the device is registered -
-
 See  -probe::netdev.register(3stap) - -
 for details. -
-

- -

-
netdev.unregister - -
-Called when the device is being unregistered -
-
 See  -probe::netdev.unregister(3stap) - -
 for details. -
-

- -

-
netdev.get_stats - -
-Called when someone asks the device statistics -
-
 See  -probe::netdev.get_stats(3stap) - -
 for details. -
-

- -

-
netdev.change_mac - -
-Called when the netdev_name has the MAC changed -
-
 See  -probe::netdev.change_mac(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::netdev.receive(3stap), - - -probe::netdev.transmit(3stap), - - -probe::netdev.change_mtu(3stap), - - -probe::netdev.open(3stap), - - -probe::netdev.close(3stap), - - -probe::netdev.hard_transmit(3stap), - - -probe::netdev.rx(3stap), - - -probe::netdev.change_rx_flag(3stap), - - -probe::netdev.set_promiscuity(3stap), - - -probe::netdev.ioctl(3stap), - - -probe::netdev.register(3stap), - - -probe::netdev.unregister(3stap), - - -probe::netdev.get_stats(3stap), - - -probe::netdev.change_mac(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::nfs.3stap.html b/man/tapset::nfs.3stap.html deleted file mode 100644 index c3f41295..00000000 --- a/man/tapset::nfs.3stap.html +++ /dev/null @@ -1,411 +0,0 @@ - -Manpage of TAPSET::NFS - -

TAPSET::NFS

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::nfs - systemtap nfs tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
nfs.fop.llseek - -
-NFS client llseek operation -
-
 See  -probe::nfs.fop.llseek(3stap) - -
 for details. -
-

- -

-
nfs.fop.read - -
-NFS client read operation -
-
 See  -probe::nfs.fop.read(3stap) - -
 for details. -
-

- -

-
nfs.fop.write - -
-NFS client write operation -
-
 See  -probe::nfs.fop.write(3stap) - -
 for details. -
-

- -

-
nfs.fop.aio_read - -
-NFS client aio_read file operation -
-
 See  -probe::nfs.fop.aio_read(3stap) - -
 for details. -
-

- -

-
nfs.fop.read_iter - -
-NFS client read_iter file operation -
-
 See  -probe::nfs.fop.read_iter(3stap) - -
 for details. -
-

- -

-
nfs.fop.aio_write - -
-NFS client aio_write file operation -
-
 See  -probe::nfs.fop.aio_write(3stap) - -
 for details. -
-

- -

-
nfs.fop.write_iter - -
-NFS client write_iter file operation -
-
 See  -probe::nfs.fop.write_iter(3stap) - -
 for details. -
-

- -

-
nfs.fop.mmap - -
-NFS client mmap operation -
-
 See  -probe::nfs.fop.mmap(3stap) - -
 for details. -
-

- -

-
nfs.fop.open - -
-NFS client file open operation -
-
 See  -probe::nfs.fop.open(3stap) - -
 for details. -
-

- -

-
nfs.fop.flush - -
-NFS client flush file operation -
-
 See  -probe::nfs.fop.flush(3stap) - -
 for details. -
-

- -

-
nfs.fop.release - -
-NFS client release page operation -
-
 See  -probe::nfs.fop.release(3stap) - -
 for details. -
-

- -

-
nfs.fop.fsync - -
-NFS client fsync operation -
-
 See  -probe::nfs.fop.fsync(3stap) - -
 for details. -
-

- -

-
nfs.fop.lock - -
-NFS client file lock operation -
-
 See  -probe::nfs.fop.lock(3stap) - -
 for details. -
-

- -

-
nfs.fop.sendfile - -
-NFS client send file operation -
-
 See  -probe::nfs.fop.sendfile(3stap) - -
 for details. -
-

- -

-
nfs.fop.check_flags - -
-NFS client checking flag operation -
-
 See  -probe::nfs.fop.check_flags(3stap) - -
 for details. -
-

- -

-
nfs.aop.readpage - -
-NFS client synchronously reading a page -
-
 See  -probe::nfs.aop.readpage(3stap) - -
 for details. -
-

- -

-
nfs.aop.readpages - -
-NFS client reading multiple pages -
-
 See  -probe::nfs.aop.readpages(3stap) - -
 for details. -
-

- -

-
nfs.aop.set_page_dirty - -
-NFS client marking page as dirty -
-
 See  -probe::nfs.aop.set_page_dirty(3stap) - -
 for details. -
-

- -

-
nfs.aop.writepage - -
-NFS client writing a mapped page to the NFS server -
-
 See  -probe::nfs.aop.writepage(3stap) - -
 for details. -
-

- -

-
nfs.aop.writepages - -
-NFS client writing several dirty pages to the NFS server -
-
 See  -probe::nfs.aop.writepages(3stap) - -
 for details. -
-

- -

-
nfs.aop.write_begin - -
-NFS client begin to write data -
-
 See  -probe::nfs.aop.write_begin(3stap) - -
 for details. -
-

- -

-
nfs.aop.write_end - -
-NFS client complete writing data -
-
 See  -probe::nfs.aop.write_end(3stap) - -
 for details. -
-

- -

-
nfs.aop.release_page - -
-NFS client releasing page -
-
 See  -probe::nfs.aop.release_page(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::nfs.fop.llseek(3stap), - - -probe::nfs.fop.read(3stap), - - -probe::nfs.fop.write(3stap), - - -probe::nfs.fop.aio_read(3stap), - - -probe::nfs.fop.read_iter(3stap), - - -probe::nfs.fop.aio_write(3stap), - - -probe::nfs.fop.write_iter(3stap), - - -probe::nfs.fop.mmap(3stap), - - -probe::nfs.fop.open(3stap), - - -probe::nfs.fop.flush(3stap), - - -probe::nfs.fop.release(3stap), - - -probe::nfs.fop.fsync(3stap), - - -probe::nfs.fop.lock(3stap), - - -probe::nfs.fop.sendfile(3stap), - - -probe::nfs.fop.check_flags(3stap), - - -probe::nfs.aop.readpage(3stap), - - -probe::nfs.aop.readpages(3stap), - - -probe::nfs.aop.set_page_dirty(3stap), - - -probe::nfs.aop.writepage(3stap), - - -probe::nfs.aop.writepages(3stap), - - -probe::nfs.aop.write_begin(3stap), - - -probe::nfs.aop.write_end(3stap), - - -probe::nfs.aop.release_page(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::nfs_proc.3stap.html b/man/tapset::nfs_proc.3stap.html deleted file mode 100644 index cc516617..00000000 --- a/man/tapset::nfs_proc.3stap.html +++ /dev/null @@ -1,331 +0,0 @@ - -Manpage of TAPSET::NFS_PROC - -

TAPSET::NFS_PROC

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::nfs_proc - systemtap nfs_proc tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
nfs.proc.lookup - -
-NFS client opens/searches a file on server -
-
 See  -probe::nfs.proc.lookup(3stap) - -
 for details. -
-

- -

-
nfs.proc.read - -
-NFS client synchronously reads file from server -
-
 See  -probe::nfs.proc.read(3stap) - -
 for details. -
-

- -

-
nfs.proc.write - -
-NFS client synchronously writes file to server -
-
 See  -probe::nfs.proc.write(3stap) - -
 for details. -
-

- -

-
nfs.proc.commit - -
-NFS client committing data on server -
-
 See  -probe::nfs.proc.commit(3stap) - -
 for details. -
-

- -

-
nfs.proc.read_setup - -
-NFS client setting up a read RPC task -
-
 See  -probe::nfs.proc.read_setup(3stap) - -
 for details. -
-

- -

-
nfs.proc.read_done - -
-NFS client response to a read RPC task -
-
 See  -probe::nfs.proc.read_done(3stap) - -
 for details. -
-

- -

-
nfs.proc.write_setup - -
-NFS client setting up a write RPC task -
-
 See  -probe::nfs.proc.write_setup(3stap) - -
 for details. -
-

- -

-
nfs.proc.write_done - -
-NFS client response to a write RPC task -
-
 See  -probe::nfs.proc.write_done(3stap) - -
 for details. -
-

- -

-
nfs.proc.commit_setup - -
-NFS client setting up a commit RPC task -
-
 See  -probe::nfs.proc.commit_setup(3stap) - -
 for details. -
-

- -

-
nfs.proc.commit_done - -
-NFS client response to a commit RPC task -
-
 See  -probe::nfs.proc.commit_done(3stap) - -
 for details. -
-

- -

-
nfs.proc.rename_setup - -
-NFS client setting up a rename RPC task -
-
 See  -probe::nfs.proc.rename_setup(3stap) - -
 for details. -
-

- -

-
nfs.proc.rename_done - -
-NFS client response to a rename RPC task -
-
 See  -probe::nfs.proc.rename_done(3stap) - -
 for details. -
-

- -

-
nfs.proc.open - -
-NFS client allocates file read/write context information -
-
 See  -probe::nfs.proc.open(3stap) - -
 for details. -
-

- -

-
nfs.proc.release - -
-
 NFS client releases file read/write context information -
-
 See  -probe::nfs.proc.release(3stap) - -
 for details. -
-

- -

-
nfs.proc.handle_exception - -
-NFS client handling an NFSv4 exception -
-
 See  -probe::nfs.proc.handle_exception(3stap) - -
 for details. -
-

- -

-
nfs.proc.create - -
-NFS client creating file on server -
-
 See  -probe::nfs.proc.create(3stap) - -
 for details. -
-

- -

-
nfs.proc.remove - -
-NFS client removes a file on server -
-
 See  -probe::nfs.proc.remove(3stap) - -
 for details. -
-

- -

-
nfs.proc.rename - -
-NFS client renames a file on server -
-
 See  -probe::nfs.proc.rename(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::nfs.proc.lookup(3stap), - - -probe::nfs.proc.read(3stap), - - -probe::nfs.proc.write(3stap), - - -probe::nfs.proc.commit(3stap), - - -probe::nfs.proc.read_setup(3stap), - - -probe::nfs.proc.read_done(3stap), - - -probe::nfs.proc.write_setup(3stap), - - -probe::nfs.proc.write_done(3stap), - - -probe::nfs.proc.commit_setup(3stap), - - -probe::nfs.proc.commit_done(3stap), - - -probe::nfs.proc.rename_setup(3stap), - - -probe::nfs.proc.rename_done(3stap), - - -probe::nfs.proc.open(3stap), - - -probe::nfs.proc.release(3stap), - - -probe::nfs.proc.handle_exception(3stap), - - -probe::nfs.proc.create(3stap), - - -probe::nfs.proc.remove(3stap), - - -probe::nfs.proc.rename(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::nfsd.3stap.html b/man/tapset::nfsd.3stap.html deleted file mode 100644 index 545aa2d8..00000000 --- a/man/tapset::nfsd.3stap.html +++ /dev/null @@ -1,318 +0,0 @@ - -Manpage of TAPSET::NFSD - -

TAPSET::NFSD

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::nfsd - systemtap nfsd tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
nfsd.dispatch - -
-NFS server receives an operation from client -
-
 See  -probe::nfsd.dispatch(3stap) - -
 for details. -
-

- -

-
nfsd.proc.lookup - -
-NFS server opening or searching for a file for client -
-
 See  -probe::nfsd.proc.lookup(3stap) - -
 for details. -
-

- -

-
nfsd.proc.read - -
-NFS server reading file for client -
-
 See  -probe::nfsd.proc.read(3stap) - -
 for details. -
-

- -

-
nfsd.proc.write - -
-NFS server writing data to file for client -
-
 See  -probe::nfsd.proc.write(3stap) - -
 for details. -
-

- -

-
nfsd.proc.commit - -
-NFS server performing a commit operation for client -
-
 See  -probe::nfsd.proc.commit(3stap) - -
 for details. -
-

- -

-
nfsd.proc.create - -
-NFS server creating a file for client -
-
 See  -probe::nfsd.proc.create(3stap) - -
 for details. -
-

- -

-
nfsd.proc.remove - -
-NFS server removing a file for client -
-
 See  -probe::nfsd.proc.remove(3stap) - -
 for details. -
-

- -

-
nfsd.proc.rename - -
-NFS Server renaming a file for client -
-
 See  -probe::nfsd.proc.rename(3stap) - -
 for details. -
-

- -

-
nfsd.open - -
-NFS server opening a file for client -
-
 See  -probe::nfsd.open(3stap) - -
 for details. -
-

- -

-
nfsd.close - -
-NFS server closing a file for client -
-
 See  -probe::nfsd.close(3stap) - -
 for details. -
-

- -

-
nfsd.read - -
-NFS server reading data from a file for client -
-
 See  -probe::nfsd.read(3stap) - -
 for details. -
-

- -

-
nfsd.write - -
-NFS server writing data to a file for client -
-
 See  -probe::nfsd.write(3stap) - -
 for details. -
-

- -

-
nfsd.commit - -
-NFS server committing all pending writes to stable storage -
-
 See  -probe::nfsd.commit(3stap) - -
 for details. -
-

- -

-
nfsd.lookup - -
-NFS server opening or searching file for a file for client -
-
 See  -probe::nfsd.lookup(3stap) - -
 for details. -
-

- -

-
nfsd.create - -
-NFS server creating a file(regular,dir,device,fifo) for client -
-
 See  -probe::nfsd.create(3stap) - -
 for details. -
-

- -

-
nfsd.createv3 - -
-NFS server creating a regular file or set file attributes for client -
-
 See  -probe::nfsd.createv3(3stap) - -
 for details. -
-

- -

-
nfsd.unlink - -
-NFS server removing a file or a directory for client -
-
 See  -probe::nfsd.unlink(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::nfsd.dispatch(3stap), - - -probe::nfsd.proc.lookup(3stap), - - -probe::nfsd.proc.read(3stap), - - -probe::nfsd.proc.write(3stap), - - -probe::nfsd.proc.commit(3stap), - - -probe::nfsd.proc.create(3stap), - - -probe::nfsd.proc.remove(3stap), - - -probe::nfsd.proc.rename(3stap), - - -probe::nfsd.open(3stap), - - -probe::nfsd.close(3stap), - - -probe::nfsd.read(3stap), - - -probe::nfsd.write(3stap), - - -probe::nfsd.commit(3stap), - - -probe::nfsd.lookup(3stap), - - -probe::nfsd.create(3stap), - - -probe::nfsd.createv3(3stap), - - -probe::nfsd.unlink(3stap), - - -probe::nfsd.rename(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::nfsderrno.3stap.html b/man/tapset::nfsderrno.3stap.html deleted file mode 100644 index c2af07d5..00000000 --- a/man/tapset::nfsderrno.3stap.html +++ /dev/null @@ -1,59 +0,0 @@ - -Manpage of TAPSET::NFSDERRNO - -

TAPSET::NFSDERRNO

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::nfsderrno - systemtap nfsderrno tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
nfsderror - -
-Convert nfsd error number into string -
-See -function::nfsderror(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::nfsderror(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::panic.3stap.html b/man/tapset::panic.3stap.html deleted file mode 100644 index 2587d933..00000000 --- a/man/tapset::panic.3stap.html +++ /dev/null @@ -1,69 +0,0 @@ - -Manpage of TAPSET::PANIC - -

TAPSET::PANIC

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::panic - systemtap panic tapset -
  -  -

DESCRIPTION

- -

-
 Functions in the panic tapset allow a probe handler to invoke -
 the system panic routine with a user-specified message. -

-
 This may be used with a crash dump collection facility such as  -
 kexec/kdump in order to capture data for post-mortem debugging. -

-
 Due to the fact that this will bring the system to an immediate -
 halt the functions in this tapset require guru mode. -

-

-
-

- -

-
-
panic - -
-trigger a panic -
-See -function::panic(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::panic(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::pn.3stap.html b/man/tapset::pn.3stap.html deleted file mode 100644 index 83bcbf7e..00000000 --- a/man/tapset::pn.3stap.html +++ /dev/null @@ -1,75 +0,0 @@ - -Manpage of TAPSET::PN - -

TAPSET::PN

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::pn - systemtap pn tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
pn - -
-Returns the active probe name -
-See -function::pn(3stap) - -
 for details. -
-

- -

-
pnlabel - -
-Returns the label name parsed from the probe name -
-See -function::pnlabel(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::pn(3stap), - - -function::pnlabel(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::proc_mem.3stap.html b/man/tapset::proc_mem.3stap.html deleted file mode 100644 index 1b0c0c43..00000000 --- a/man/tapset::proc_mem.3stap.html +++ /dev/null @@ -1,273 +0,0 @@ - -Manpage of TAPSET::PROC_MEM - -

TAPSET::PROC_MEM

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::proc_mem - systemtap proc_mem tapset -
  -  -

DESCRIPTION

- -

-
 Process memory query and utility functions provide information about -
 the memory usage of the current application. These functions provide -
 information about the full size, resident, shared, code and data used -
 by the current process. And provide utility functions to query the -
 page size of the current architecture and create human readable string -
 representations of bytes and pages used. -

-

-
-

- -

-
-
proc_mem_size - -
-Total program virtual memory size in pages -
-See -function::proc_mem_size(3stap) - -
 for details. -
-

- -

-
proc_mem_size - -
-Total program virtual memory size in pages -
-See -function::proc_mem_size(3stap) - -
 for details. -
-

- -

-
proc_mem_rss - -
-Program resident set size in pages -
-See -function::proc_mem_rss(3stap) - -
 for details. -
-

- -

-
proc_mem_rss - -
-Program resident set size in pages -
-See -function::proc_mem_rss(3stap) - -
 for details. -
-

- -

-
proc_mem_shr - -
-Program shared pages (from shared mappings) -
-See -function::proc_mem_shr(3stap) - -
 for details. -
-

- -

-
proc_mem_shr - -
-Program shared pages (from shared mappings) -
-See -function::proc_mem_shr(3stap) - -
 for details. -
-

- -

-
proc_mem_txt - -
-Program text (code) size in pages -
-See -function::proc_mem_txt(3stap) - -
 for details. -
-

- -

-
proc_mem_txt - -
-Program text (code) size in pages -
-See -function::proc_mem_txt(3stap) - -
 for details. -
-

- -

-
proc_mem_data - -
-Program data size (data + stack) in pages -
-See -function::proc_mem_data(3stap) - -
 for details. -
-

- -

-
proc_mem_data - -
-Program data size (data + stack) in pages -
-See -function::proc_mem_data(3stap) - -
 for details. -
-

- -

-
mem_page_size - -
-Number of bytes in a page for this architecture -
-See -function::mem_page_size(3stap) - -
 for details. -
-

- -

-
bytes_to_string - -
-Human readable string for given bytes -
-See -function::bytes_to_string(3stap) - -
 for details. -
-

- -

-
pages_to_string - -
-Turns pages into a human readable string -
-See -function::pages_to_string(3stap) - -
 for details. -
-

- -

-
proc_mem_string - -
-Human readable string of process memory usage -
-See -function::proc_mem_string(3stap) - -
 for details. -
-

- -

-
proc_mem_string - -
-Human readable string of process memory usage -
-See -function::proc_mem_string(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::proc_mem_size(3stap), - - -function::proc_mem_rss(3stap), - - -function::proc_mem_shr(3stap), - - -function::proc_mem_txt(3stap), - - -function::proc_mem_data(3stap), - - -function::mem_page_size(3stap), - - -function::bytes_to_string(3stap), - - -function::pages_to_string(3stap), - - -function::proc_mem_string(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::pstrace.3stap.html b/man/tapset::pstrace.3stap.html deleted file mode 100644 index d864bd75..00000000 --- a/man/tapset::pstrace.3stap.html +++ /dev/null @@ -1,59 +0,0 @@ - -Manpage of TAPSET::PSTRACE - -

TAPSET::PSTRACE

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::pstrace - systemtap pstrace tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
pstrace - -
-Chain of processes and pids back to init(1) -
-See -function::pstrace(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::pstrace(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::queue_stats.3stap.html b/man/tapset::queue_stats.3stap.html deleted file mode 100644 index b6617971..00000000 --- a/man/tapset::queue_stats.3stap.html +++ /dev/null @@ -1,219 +0,0 @@ - -Manpage of TAPSET::QUEUE_STATS - -

TAPSET::QUEUE_STATS

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::queue_stats - systemtap queue_stats tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
qs_wait - -
-Function to record enqueue requests -
-See -function::qs_wait(3stap) - -
 for details. -
-

- -

-
qs_run - -
-Function to record being moved from wait queue to being serviced -
-See -function::qs_run(3stap) - -
 for details. -
-

- -

-
qs_done - -
-Function to record finishing request -
-See -function::qs_done(3stap) - -
 for details. -
-

- -

-
qsq_start - -
-Function to reset the stats for a queue -
-See -function::qsq_start(3stap) - -
 for details. -
-

- -

-
qsq_utilization - -
-Fraction of time that any request was being serviced -
-See -function::qsq_utilization(3stap) - -
 for details. -
-

- -

-
qsq_blocked - -
-Returns the time reqest was on the wait queue -
-See -function::qsq_blocked(3stap) - -
 for details. -
-

- -

-
qsq_wait_queue_length - -
-length of wait queue -
-See -function::qsq_wait_queue_length(3stap) - -
 for details. -
-

- -

-
qsq_service_time - -
-Amount of time per request service -
-See -function::qsq_service_time(3stap) - -
 for details. -
-

- -

-
qsq_wait_time - -
-Amount of time in queue + service per request -
-See -function::qsq_wait_time(3stap) - -
 for details. -
-

- -

-
qsq_throughput - -
-Number of requests served per unit time -
-See -function::qsq_throughput(3stap) - -
 for details. -
-

- -

-
qsq_print - -
-Prints a line of statistics for the given queue -
-See -function::qsq_print(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::qs_wait(3stap), - - -function::qs_run(3stap), - - -function::qs_done(3stap), - - -function::qsq_start(3stap), - - -function::qsq_utilization(3stap), - - -function::qsq_blocked(3stap), - - -function::qsq_wait_queue_length(3stap), - - -function::qsq_service_time(3stap), - - -function::qsq_wait_time(3stap), - - -function::qsq_throughput(3stap), - - -function::qsq_print(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::random.3stap.html b/man/tapset::random.3stap.html deleted file mode 100644 index 5d1e86f0..00000000 --- a/man/tapset::random.3stap.html +++ /dev/null @@ -1,59 +0,0 @@ - -Manpage of TAPSET::RANDOM - -

TAPSET::RANDOM

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::random - systemtap random tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
randint - -
-Return a random number between [0,n) -
-See -function::randint(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::randint(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::regex.3stap.html b/man/tapset::regex.3stap.html deleted file mode 100644 index 5e238408..00000000 --- a/man/tapset::regex.3stap.html +++ /dev/null @@ -1,91 +0,0 @@ - -Manpage of TAPSET::REGEX - -

TAPSET::REGEX

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::regex - systemtap regex tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
matched_str - -
-Return the last matched string. -
-See -function::matched_str(3stap) - -
 for details. -
-

- -

-
matched - -
-Return a given matched subexpression. -
-See -function::matched(3stap) - -
 for details. -
-

- -

-
ngroups - -
-Number of subexpressions in the last match. -
-See -function::ngroups(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::matched_str(3stap), - - -function::matched(3stap), - - -function::ngroups(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::registers.3stap.html b/man/tapset::registers.3stap.html deleted file mode 100644 index 9b74398c..00000000 --- a/man/tapset::registers.3stap.html +++ /dev/null @@ -1,299 +0,0 @@ - -Manpage of TAPSET::REGISTERS - -

TAPSET::REGISTERS

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::registers - systemtap registers tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
register - -
-Return the signed value of the named CPU register -
-See -function::register(3stap) - -
 for details. -
-

- -

-
u_register - -
-Return the unsigned value of the named CPU register -
-See -function::u_register(3stap) - -
 for details. -
-

- -

-
int_arg - -
-Return function argument as signed int -
-See -function::int_arg(3stap) - -
 for details. -
-

- -

-
uint_arg - -
-Return function argument as unsigned int -
-See -function::uint_arg(3stap) - -
 for details. -
-

- -

-
long_arg - -
-Return function argument as signed long -
-See -function::long_arg(3stap) - -
 for details. -
-

- -

-
ulong_arg - -
-Return function argument as unsigned long -
-See -function::ulong_arg(3stap) - -
 for details. -
-

- -

-
longlong_arg - -
-Return function argument as 64-bit value -
-See -function::longlong_arg(3stap) - -
 for details. -
-

- -

-
ulonglong_arg - -
-Return function argument as 64-bit value -
-See -function::ulonglong_arg(3stap) - -
 for details. -
-

- -

-
pointer_arg - -
-Return function argument as pointer value -
-See -function::pointer_arg(3stap) - -
 for details. -
-

- -

-
s32_arg - -
-Return function argument as signed 32-bit value -
-See -function::s32_arg(3stap) - -
 for details. -
-

- -

-
u32_arg - -
-Return function argument as unsigned 32-bit value -
-See -function::u32_arg(3stap) - -
 for details. -
-

- -

-
s64_arg - -
-Return function argument as signed 64-bit value -
-See -function::s64_arg(3stap) - -
 for details. -
-

- -

-
u64_arg - -
-Return function argument as unsigned 64-bit value -
-See -function::u64_arg(3stap) - -
 for details. -
-

- -

-
asmlinkage - -
-Mark function as declared asmlinkage -
-See -function::asmlinkage(3stap) - -
 for details. -
-

- -

-
fastcall - -
-Mark function as declared fastcall -
-See -function::fastcall(3stap) - -
 for details. -
-

- -

-
regparm - -
-Specify regparm value used to compile function -
-See -function::regparm(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::register(3stap), - - -function::u_register(3stap), - - -function::int_arg(3stap), - - -function::uint_arg(3stap), - - -function::long_arg(3stap), - - -function::ulong_arg(3stap), - - -function::longlong_arg(3stap), - - -function::ulonglong_arg(3stap), - - -function::pointer_arg(3stap), - - -function::s32_arg(3stap), - - -function::u32_arg(3stap), - - -function::s64_arg(3stap), - - -function::u64_arg(3stap), - - -function::asmlinkage(3stap), - - -function::fastcall(3stap), - - -function::regparm(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::rlimit.3stap.html b/man/tapset::rlimit.3stap.html deleted file mode 100644 index ec44bdd1..00000000 --- a/man/tapset::rlimit.3stap.html +++ /dev/null @@ -1,59 +0,0 @@ - -Manpage of TAPSET::RLIMIT - -

TAPSET::RLIMIT

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::rlimit - systemtap rlimit tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
rlimit_from_str - -
-Symbolic string associated with resource limit code -
-See -function::rlimit_from_str(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::rlimit_from_str(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::rpc.3stap.html b/man/tapset::rpc.3stap.html deleted file mode 100644 index e41b73f9..00000000 --- a/man/tapset::rpc.3stap.html +++ /dev/null @@ -1,347 +0,0 @@ - -Manpage of TAPSET::RPC - -

TAPSET::RPC

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::rpc - systemtap rpc tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
sunrpc.clnt.create_client - -
-Create an RPC client -
-
 See  -probe::sunrpc.clnt.create_client(3stap) - -
 for details. -
-

- -

-
sunrpc.clnt.clone_client - -
-Clone an RPC client structure -
-
 See  -probe::sunrpc.clnt.clone_client(3stap) - -
 for details. -
-

- -

-
sunrpc.clnt.shutdown_client - -
-Shutdown an RPC client -
-
 See  -probe::sunrpc.clnt.shutdown_client(3stap) - -
 for details. -
-

- -

-
sunrpc.clnt.bind_new_program - -
-Bind a new RPC program to an existing client -
-
 See  -probe::sunrpc.clnt.bind_new_program(3stap) - -
 for details. -
-

- -

-
sunrpc.clnt.call_sync - -
-Make a synchronous RPC call -
-
 See  -probe::sunrpc.clnt.call_sync(3stap) - -
 for details. -
-

- -

-
sunrpc.clnt.call_async - -
-Make an asynchronous RPC call -
-
 See  -probe::sunrpc.clnt.call_async(3stap) - -
 for details. -
-

- -

-
sunrpc.clnt.restart_call - -
-Restart an asynchronous RPC call -
-
 See  -probe::sunrpc.clnt.restart_call(3stap) - -
 for details. -
-

- -

-
sunrpc.svc.register - -
-Register an RPC service with the local portmapper -
-
 See  -probe::sunrpc.svc.register(3stap) - -
 for details. -
-

- -

-
sunrpc.svc.create - -
-Create an RPC service -
-
 See  -probe::sunrpc.svc.create(3stap) - -
 for details. -
-

- -

-
sunrpc.svc.destroy - -
-Destroy an RPC service -
-
 See  -probe::sunrpc.svc.destroy(3stap) - -
 for details. -
-

- -

-
sunrpc.svc.process - -
-Process an RPC request -
-
 See  -probe::sunrpc.svc.process(3stap) - -
 for details. -
-

- -

-
sunrpc.svc.authorise - -
-An RPC request is to be authorised -
-
 See  -probe::sunrpc.svc.authorise(3stap) - -
 for details. -
-

- -

-
sunrpc.svc.recv - -
-Listen for the next RPC request on any socket -
-
 See  -probe::sunrpc.svc.recv(3stap) - -
 for details. -
-

- -

-
sunrpc.svc.send - -
-Return reply to RPC client -
-
 See  -probe::sunrpc.svc.send(3stap) - -
 for details. -
-

- -

-
sunrpc.svc.drop - -
-Drop RPC request -
-
 See  -probe::sunrpc.svc.drop(3stap) - -
 for details. -
-

- -

-
sunrpc.sched.new_task - -
-Create new task for the specified client -
-
 See  -probe::sunrpc.sched.new_task(3stap) - -
 for details. -
-

- -

-
sunrpc.sched.release_task - -
-Release all resources associated with a task -
-
 See  -probe::sunrpc.sched.release_task(3stap) - -
 for details. -
-

- -

-
sunrpc.sched.execute - -
-Execute the RPC `scheduler' -
-
 See  -probe::sunrpc.sched.execute(3stap) - -
 for details. -
-

- -

-
sunrpc.sched.delay - -
-Delay an RPC task -
-
 See  -probe::sunrpc.sched.delay(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::sunrpc.clnt.create_client(3stap), - - -probe::sunrpc.clnt.clone_client(3stap), - - -probe::sunrpc.clnt.shutdown_client(3stap), - - -probe::sunrpc.clnt.bind_new_program(3stap), - - -probe::sunrpc.clnt.call_sync(3stap), - - -probe::sunrpc.clnt.call_async(3stap), - - -probe::sunrpc.clnt.restart_call(3stap), - - -probe::sunrpc.svc.register(3stap), - - -probe::sunrpc.svc.create(3stap), - - -probe::sunrpc.svc.destroy(3stap), - - -probe::sunrpc.svc.process(3stap), - - -probe::sunrpc.svc.authorise(3stap), - - -probe::sunrpc.svc.recv(3stap), - - -probe::sunrpc.svc.send(3stap), - - -probe::sunrpc.svc.drop(3stap), - - -probe::sunrpc.sched.new_task(3stap), - - -probe::sunrpc.sched.release_task(3stap), - - -probe::sunrpc.sched.execute(3stap), - - -probe::sunrpc.sched.delay(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::scheduler.3stap.html b/man/tapset::scheduler.3stap.html deleted file mode 100644 index e4280cce..00000000 --- a/man/tapset::scheduler.3stap.html +++ /dev/null @@ -1,299 +0,0 @@ - -Manpage of TAPSET::SCHEDULER - -

TAPSET::SCHEDULER

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::scheduler - systemtap scheduler tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
scheduler.cpu_off - -
-Process is about to stop running on a cpu -
-
 See  -probe::scheduler.cpu_off(3stap) - -
 for details. -
-

- -

-
scheduler.cpu_on - -
-Process is beginning execution on a cpu -
-
 See  -probe::scheduler.cpu_on(3stap) - -
 for details. -
-

- -

-
scheduler.tick - -
-Schedulers internal tick, a processes timeslice accounting is updated -
-
 See  -probe::scheduler.tick(3stap) - -
 for details. -
-

- -

-
scheduler.balance - -
-A cpu attempting to find more work. -
-
 See  -probe::scheduler.balance(3stap) - -
 for details. -
-

- -

-
scheduler.ctxswitch - -
-A context switch is occuring. -
-
 See  -probe::scheduler.ctxswitch(3stap) - -
 for details. -
-

- -

-
scheduler.kthread_stop - -
-A thread created by kthread_create is being stopped -
-
 See  -probe::scheduler.kthread_stop(3stap) - -
 for details. -
-

- -

-
scheduler.kthread_stop.return - -
-A kthread is stopped and gets the return value -
-
 See  -probe::scheduler.kthread_stop.return(3stap) - -
 for details. -
-

- -

-
scheduler.wait_task - -
-Waiting on a task to unschedule (become inactive) -
-
 See  -probe::scheduler.wait_task(3stap) - -
 for details. -
-

- -

-
scheduler.wakeup - -
-Task is woken up -
-
 See  -probe::scheduler.wakeup(3stap) - -
 for details. -
-

- -

-
scheduler.wakeup_new - -
-Newly created task is woken up for the first time -
-
 See  -probe::scheduler.wakeup_new(3stap) - -
 for details. -
-

- -

-
scheduler.migrate - -
-Task migrating across cpus -
-
 See  -probe::scheduler.migrate(3stap) - -
 for details. -
-

- -

-
scheduler.process_free - -
-Scheduler freeing a data structure for a process -
-
 See  -probe::scheduler.process_free(3stap) - -
 for details. -
-

- -

-
scheduler.process_exit - -
-Process exiting -
-
 See  -probe::scheduler.process_exit(3stap) - -
 for details. -
-

- -

-
scheduler.process_wait - -
-Scheduler starting to wait on a process -
-
 See  -probe::scheduler.process_wait(3stap) - -
 for details. -
-

- -

-
scheduler.process_fork - -
-Process forked -
-
 See  -probe::scheduler.process_fork(3stap) - -
 for details. -
-

- -

-
scheduler.signal_send - -
-Sending a signal -
-
 See  -probe::scheduler.signal_send(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::scheduler.cpu_off(3stap), - - -probe::scheduler.cpu_on(3stap), - - -probe::scheduler.tick(3stap), - - -probe::scheduler.balance(3stap), - - -probe::scheduler.ctxswitch(3stap), - - -probe::scheduler.kthread_stop(3stap), - - -probe::scheduler.kthread_stop.return(3stap), - - -probe::scheduler.wait_task(3stap), - - -probe::scheduler.wakeup(3stap), - - -probe::scheduler.wakeup_new(3stap), - - -probe::scheduler.migrate(3stap), - - -probe::scheduler.process_free(3stap), - - -probe::scheduler.process_exit(3stap), - - -probe::scheduler.process_wait(3stap), - - -probe::scheduler.process_fork(3stap), - - -probe::scheduler.signal_send(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::scsi.3stap.html b/man/tapset::scsi.3stap.html deleted file mode 100644 index e44f95cb..00000000 --- a/man/tapset::scsi.3stap.html +++ /dev/null @@ -1,142 +0,0 @@ - -Manpage of TAPSET::SCSI - -

TAPSET::SCSI

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::scsi - systemtap scsi tapset -
  -  -

DESCRIPTION

- -

-
 This family of probe points is used to probe SCSI activities. -

-

-
-

- -

-
-
scsi.ioentry - -
-Prepares a SCSI mid-layer request -
-
 See  -probe::scsi.ioentry(3stap) - -
 for details. -
-

- -

-
scsi.iodispatching - -
-SCSI mid-layer dispatched low-level SCSI command -
-
 See  -probe::scsi.iodispatching(3stap) - -
 for details. -
-

- -

-
scsi.iodone - -
-SCSI command completed by low level driver and enqueued into the done queue. -
-
 See  -probe::scsi.iodone(3stap) - -
 for details. -
-

- -

-
scsi.iocompleted - -
-SCSI mid-layer running the completion processing for block device I/O requests -
-
 See  -probe::scsi.iocompleted(3stap) - -
 for details. -
-

- -

-
scsi.ioexecute - -
-Create mid-layer SCSI request and wait for the result -
-
 See  -probe::scsi.ioexecute(3stap) - -
 for details. -
-

- -

-
scsi.set_state - -
-Order SCSI device state change -
-
 See  -probe::scsi.set_state(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::scsi.ioentry(3stap), - - -probe::scsi.iodispatching(3stap), - - -probe::scsi.iodone(3stap), - - -probe::scsi.iocompleted(3stap), - - -probe::scsi.ioexecute(3stap), - - -probe::scsi.set_state(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::signal.3stap.html b/man/tapset::signal.3stap.html deleted file mode 100644 index fb5d1bb7..00000000 --- a/man/tapset::signal.3stap.html +++ /dev/null @@ -1,578 +0,0 @@ - -Manpage of TAPSET::SIGNAL - -

TAPSET::SIGNAL

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::signal - systemtap signal tapset -
  -  -

DESCRIPTION

- -

-
  This family of probe points is used to probe signal activities. -
  Since there are so many signals sent to processes at any given -
  point, it is advisable to filter the information according to the -
  requirements.  For example, filter only for a particular signal -
  (if sig==2) or for a particular process (if pid_name==stap). -

-

-
-

- -

-
-
signal.send - -
-Signal being sent to a process -
-
 See  -probe::signal.send(3stap) - -
 for details. -
-

- -

-
signal.send.return - -
-Signal being sent to a process completed (deprecated in SystemTap 2.1) -
-
 See  -probe::signal.send.return(3stap) - -
 for details. -
-

- -

-
signal.checkperm - -
-Check being performed on a sent signal -
-
 See  -probe::signal.checkperm(3stap) - -
 for details. -
-

- -

-
signal.checkperm.return - -
-Check performed on a sent signal completed -
-
 See  -probe::signal.checkperm.return(3stap) - -
 for details. -
-

- -

-
signal.wakeup - -
-Sleeping process being wakened for signal -
-
 See  -probe::signal.wakeup(3stap) - -
 for details. -
-

- -

-
signal.check_ignored - -
-Checking to see signal is ignored -
-
 See  -probe::signal.check_ignored(3stap) - -
 for details. -
-

- -

-
signal.check_ignored.return - -
-Check to see signal is ignored completed -
-
 See  -probe::signal.check_ignored.return(3stap) - -
 for details. -
-

- -

-
signal.force_segv - -
-Forcing send of SIGSEGV -
-
 See  -probe::signal.force_segv(3stap) - -
 for details. -
-

- -

-
signal.force_segv.return - -
-Forcing send of SIGSEGV complete -
-
 See  -probe::signal.force_segv.return(3stap) - -
 for details. -
-

- -

-
signal.syskill - -
-Sending kill signal to a process -
-
 See  -probe::signal.syskill(3stap) - -
 for details. -
-

- -

-
signal.syskill.return - -
-Sending kill signal completed -
-
 See  -probe::signal.syskill.return(3stap) - -
 for details. -
-

- -

-
signal.sys_tkill - -
-Sending a kill signal to a thread -
-
 See  -probe::signal.sys_tkill(3stap) - -
 for details. -
-

- -

-
signal.systkill.return - -
-Sending kill signal to a thread completed -
-
 See  -probe::signal.systkill.return(3stap) - -
 for details. -
-

- -

-
signal.sys_tgkill - -
-Sending kill signal to a thread group -
-
 See  -probe::signal.sys_tgkill(3stap) - -
 for details. -
-

- -

-
signal.sys_tgkill.return - -
-Sending kill signal to a thread group completed -
-
 See  -probe::signal.sys_tgkill.return(3stap) - -
 for details. -
-

- -

-
signal.send_sig_queue - -
-Queuing a signal to a process -
-
 See  -probe::signal.send_sig_queue(3stap) - -
 for details. -
-

- -

-
signal.send_sig_queue.return - -
-Queuing a signal to a process completed -
-
 See  -probe::signal.send_sig_queue.return(3stap) - -
 for details. -
-

- -

-
signal.pending - -
-Examining pending signal -
-
 See  -probe::signal.pending(3stap) - -
 for details. -
-

- -

-
signal.pending.return - -
-Examination of pending signal completed -
-
 See  -probe::signal.pending.return(3stap) - -
 for details. -
-

- -

-
signal.handle - -
-Signal handler being invoked -
-
 See  -probe::signal.handle(3stap) - -
 for details. -
-

- -

-
signal.handle.return - -
-Signal handler invocation completed -
-
 See  -probe::signal.handle.return(3stap) - -
 for details. -
-

- -

-
signal.do_action - -
-Examining or changing a signal action -
-
 See  -probe::signal.do_action(3stap) - -
 for details. -
-

- -

-
signal.do_action.return - -
-Examining or changing a signal action completed -
-
 See  -probe::signal.do_action.return(3stap) - -
 for details. -
-

- -

-
signal.procmask - -
-Examining or changing blocked signals -
-
 See  -probe::signal.procmask(3stap) - -
 for details. -
-

- -

-
signal.procmask.return - -
-Examining or changing blocked signals completed -
-
 See  -probe::signal.procmask.return(3stap) - -
 for details. -
-

- -

-
signal.flush - -
-Flushing all pending signals for a task -
-
 See  -probe::signal.flush(3stap) - -
 for details. -
-

- -

-
get_sa_flags - -
-Returns the numeric value of sa_flags -
-See -function::get_sa_flags(3stap) - -
 for details. -
-

- -

-
get_sa_handler - -
-Returns the numeric value of sa_handler -
-See -function::get_sa_handler(3stap) - -
 for details. -
-

- -

-
sigset_mask_str - -
-Returns the string representation of a sigset -
-See -function::sigset_mask_str(3stap) - -
 for details. -
-

- -

-
is_sig_blocked - -
-Returns 1 if the signal is currently blocked, or 0 if it is not -
-See -function::is_sig_blocked(3stap) - -
 for details. -
-

- -

-
sa_flags_str - -
-Returns the string representation of sa_flags -
-See -function::sa_flags_str(3stap) - -
 for details. -
-

- -

-
sa_handler - -
-Returns the string representation of an sa_handler -
-See -function::sa_handler(3stap) - -
 for details. -
-

- -

-
signal_str - -
-Returns the string representation of a signal number -
-See -function::signal_str(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::get_sa_flags(3stap), - - -function::get_sa_handler(3stap), - - -function::sigset_mask_str(3stap), - - -function::is_sig_blocked(3stap), - - -function::sa_flags_str(3stap), - - -function::sa_handler(3stap), - - -function::signal_str(3stap), - - -probe::signal.send(3stap), - - -probe::signal.send.return(3stap), - - -probe::signal.checkperm(3stap), - - -probe::signal.checkperm.return(3stap), - - -probe::signal.wakeup(3stap), - - -probe::signal.check_ignored(3stap), - - -probe::signal.check_ignored.return(3stap), - - -probe::signal.force_segv(3stap), - - -probe::signal.force_segv.return(3stap), - - -probe::signal.syskill(3stap), - - -probe::signal.syskill.return(3stap), - - -probe::signal.sys_tkill(3stap), - - -probe::signal.systkill.return(3stap), - - -probe::signal.sys_tgkill(3stap), - - -probe::signal.sys_tgkill.return(3stap), - - -probe::signal.send_sig_queue(3stap), - - -probe::signal.send_sig_queue.return(3stap), - - -probe::signal.pending(3stap), - - -probe::signal.pending.return(3stap), - - -probe::signal.handle(3stap), - - -probe::signal.handle.return(3stap), - - -probe::signal.do_action(3stap), - - -probe::signal.do_action.return(3stap), - - -probe::signal.procmask(3stap), - - -probe::signal.procmask.return(3stap), - - -probe::signal.flush(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::socket.3stap.html b/man/tapset::socket.3stap.html deleted file mode 100644 index 4c9d6df7..00000000 --- a/man/tapset::socket.3stap.html +++ /dev/null @@ -1,494 +0,0 @@ - -Manpage of TAPSET::SOCKET - -

TAPSET::SOCKET

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::socket - systemtap socket tapset -
  -  -

DESCRIPTION

- -

-
 This family of probe points is used to probe socket activities. -

-

-
-

- -

-
-
socket.send - -
-Message sent on a socket. -
-
 See  -probe::socket.send(3stap) - -
 for details. -
-

- -

-
socket.receive - -
-Message received on a socket. -
-
 See  -probe::socket.receive(3stap) - -
 for details. -
-

- -

-
socket.sendmsg - -
-Message is currently being sent on a socket. -
-
 See  -probe::socket.sendmsg(3stap) - -
 for details. -
-

- -

-
socket.sendmsg.return - -
-Return from socket.sendmsg. -
-
 See  -probe::socket.sendmsg.return(3stap) - -
 for details. -
-

- -

-
socket.recvmsg - -
-Message being received on socket -
-
 See  -probe::socket.recvmsg(3stap) - -
 for details. -
-

- -

-
socket.recvmsg.return - -
-Return from Message being received on socket -
-
 See  -probe::socket.recvmsg.return(3stap) - -
 for details. -
-

- -

-
socket.aio_write - -
-Message send via sock_aio_write() -
-
 See  -probe::socket.aio_write(3stap) - -
 for details. -
-

- -

-
socket.aio_write.return - -
-Conclusion of message send via sock_aio_write() -
-
 See  -probe::socket.aio_write.return(3stap) - -
 for details. -
-

- -

-
socket.aio_read - -
-Receiving message via sock_aio_read() -
-
 See  -probe::socket.aio_read(3stap) - -
 for details. -
-

- -

-
socket.aio_read.return - -
-Conclusion of message received via sock_aio_read() -
-
 See  -probe::socket.aio_read.return(3stap) - -
 for details. -
-

- -

-
socket.write_iter - -
-Message send via sock_write_iter() -
-
 See  -probe::socket.write_iter(3stap) - -
 for details. -
-

- -

-
socket.write_iter.return - -
-Conclusion of message send via sock_write_iter() -
-
 See  -probe::socket.write_iter.return(3stap) - -
 for details. -
-

- -

-
socket.read_iter - -
-Receiving message via sock_read_iter() -
-
 See  -probe::socket.read_iter(3stap) - -
 for details. -
-

- -

-
socket.read_iter.return - -
-Conclusion of message received via sock_read_iter() -
-
 See  -probe::socket.read_iter.return(3stap) - -
 for details. -
-

- -

-
socket.writev - -
-Message sent via socket_writev() -
-
 See  -probe::socket.writev(3stap) - -
 for details. -
-

- -

-
socket.writev.return - -
-Conclusion of message sent via socket_writev() -
-
 See  -probe::socket.writev.return(3stap) - -
 for details. -
-

- -

-
socket.readv - -
-Receiving a message via sock_readv() -
-
 See  -probe::socket.readv(3stap) - -
 for details. -
-

- -

-
socket.readv.return - -
-Conclusion of receiving a message via sock_readv() -
-
 See  -probe::socket.readv.return(3stap) - -
 for details. -
-

- -

-
socket.create - -
-Creation of a socket -
-
 See  -probe::socket.create(3stap) - -
 for details. -
-

- -

-
socket.create.return - -
-Return from Creation of a socket -
-
 See  -probe::socket.create.return(3stap) - -
 for details. -
-

- -

-
socket.close - -
-Close a socket -
-
 See  -probe::socket.close(3stap) - -
 for details. -
-

- -

-
socket.close.return - -
-Return from closing a socket -
-
 See  -probe::socket.close.return(3stap) - -
 for details. -
-

- -

-
sock_prot_num2str - -
-Given a protocol number, return a string representation -
-See -function::sock_prot_num2str(3stap) - -
 for details. -
-

- -

-
sock_prot_str2num - -
-Given a protocol name (string), return the corresponding protocol number -
-See -function::sock_prot_str2num(3stap) - -
 for details. -
-

- -

-
sock_fam_num2str - -
-Given a protocol family number, return a string representation -
-See -function::sock_fam_num2str(3stap) - -
 for details. -
-

- -

-
sock_fam_str2num - -
-Given a protocol family name (string), return the corresponding protocol family number -
-See -function::sock_fam_str2num(3stap) - -
 for details. -
-

- -

-
sock_state_num2str - -
-Given a socket state number, return a string representation -
-See -function::sock_state_num2str(3stap) - -
 for details. -
-

- -

-
sock_state_str2num - -
-Given a socket state string, return the corresponding state number -
-See -function::sock_state_str2num(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::sock_prot_num2str(3stap), - - -function::sock_prot_str2num(3stap), - - -function::sock_fam_num2str(3stap), - - -function::sock_fam_str2num(3stap), - - -function::sock_state_num2str(3stap), - - -function::sock_state_str2num(3stap), - - -probe::socket.send(3stap), - - -probe::socket.receive(3stap), - - -probe::socket.sendmsg(3stap), - - -probe::socket.sendmsg.return(3stap), - - -probe::socket.recvmsg(3stap), - - -probe::socket.recvmsg.return(3stap), - - -probe::socket.aio_write(3stap), - - -probe::socket.aio_write.return(3stap), - - -probe::socket.aio_read(3stap), - - -probe::socket.aio_read.return(3stap), - - -probe::socket.write_iter(3stap), - - -probe::socket.write_iter.return(3stap), - - -probe::socket.read_iter(3stap), - - -probe::socket.read_iter.return(3stap), - - -probe::socket.writev(3stap), - - -probe::socket.writev.return(3stap), - - -probe::socket.readv(3stap), - - -probe::socket.readv.return(3stap), - - -probe::socket.create(3stap), - - -probe::socket.create.return(3stap), - - -probe::socket.close(3stap), - - -probe::socket.close.return(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::speculative.3stap.html b/man/tapset::speculative.3stap.html deleted file mode 100644 index 82fbc85a..00000000 --- a/man/tapset::speculative.3stap.html +++ /dev/null @@ -1,107 +0,0 @@ - -Manpage of TAPSET::SPECULATIVE - -

TAPSET::SPECULATIVE

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::speculative - systemtap speculative tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
speculation - -
-Allocate a new id for speculative output -
-See -function::speculation(3stap) - -
 for details. -
-

- -

-
speculate - -
-Store a string for possible output later -
-See -function::speculate(3stap) - -
 for details. -
-

- -

-
discard - -
-Discard all output related to a speculation buffer -
-See -function::discard(3stap) - -
 for details. -
-

- -

-
commit - -
-Write out all output related to a speculation buffer -
-See -function::commit(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::speculation(3stap), - - -function::speculate(3stap), - - -function::discard(3stap), - - -function::commit(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::stap_staticmarkers.3stap.html b/man/tapset::stap_staticmarkers.3stap.html deleted file mode 100644 index c928ce58..00000000 --- a/man/tapset::stap_staticmarkers.3stap.html +++ /dev/null @@ -1,475 +0,0 @@ - -Manpage of TAPSET::STAP_STATICMARKERS - -

TAPSET::STAP_STATICMARKERS

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::stap_staticmarkers - systemtap stap_staticmarkers tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
stap.pass0 - -
-Starting stap pass0 (parsing command line arguments) -
-
 See  -probe::stap.pass0(3stap) - -
 for details. -
-

- -

-
stap.pass0.end - -
-Finished stap pass0 (parsing command line arguments) -
-
 See  -probe::stap.pass0.end(3stap) - -
 for details. -
-

- -

-
stap.pass1a - -
-Starting stap pass1 (parsing user script) -
-
 See  -probe::stap.pass1a(3stap) - -
 for details. -
-

- -

-
stap.pass1b - -
-Starting stap pass1 (parsing library scripts) -
-
 See  -probe::stap.pass1b(3stap) - -
 for details. -
-

- -

-
stap.pass1.end - -
-Finished stap pass1 (parsing scripts) -
-
 See  -probe::stap.pass1.end(3stap) - -
 for details. -
-

- -

-
stap.pass2 - -
-Starting stap pass2 (elaboration) -
-
 See  -probe::stap.pass2(3stap) - -
 for details. -
-

- -

-
stap.pass2.end - -
-Finished stap pass2 (elaboration) -
-
 See  -probe::stap.pass2.end(3stap) - -
 for details. -
-

- -

-
stap.pass3 - -
-Starting stap pass3 (translation to C) -
-
 See  -probe::stap.pass3(3stap) - -
 for details. -
-

- -

-
stap.pass3.end - -
-Finished stap pass3 (translation to C) -
-
 See  -probe::stap.pass3.end(3stap) - -
 for details. -
-

- -

-
stap.pass4 - -
-Starting stap pass4 (compile C code into kernel module) -
-
 See  -probe::stap.pass4(3stap) - -
 for details. -
-

- -

-
stap.pass4.end - -
-Finished stap pass4 (compile C code into kernel module) -
-
 See  -probe::stap.pass4.end(3stap) - -
 for details. -
-

- -

-
stap.pass5 - -
-Starting stap pass5 (running the instrumentation) -
-
 See  -probe::stap.pass5(3stap) - -
 for details. -
-

- -

-
stap.pass5.end - -
-Finished stap pass5 (running the instrumentation) -
-
 See  -probe::stap.pass5.end(3stap) - -
 for details. -
-

- -

-
stap.pass6 - -
-Starting stap pass6 (cleanup) -
-
 See  -probe::stap.pass6(3stap) - -
 for details. -
-

- -

-
stap.pass6.end - -
-Finished stap pass6 (cleanup) -
-
 See  -probe::stap.pass6.end(3stap) - -
 for details. -
-

- -

-
stap.cache_clean - -
-Removing file from stap cache -
-
 See  -probe::stap.cache_clean(3stap) - -
 for details. -
-

- -

-
stap.cache_add_mod - -
-Adding kernel instrumentation module to cache -
-
 See  -probe::stap.cache_add_mod(3stap) - -
 for details. -
-

- -

-
stap.cache_add_src - -
-Adding C code translation to cache -
-
 See  -probe::stap.cache_add_src(3stap) - -
 for details. -
-

- -

-
stap.cache_add_nss - -
-Add NSS (Network Security Services) information to cache -
-
 See  -probe::stap.cache_add_nss(3stap) - -
 for details. -
-

- -

-
stap.cache_get - -
-Found item in stap cache -
-
 See  -probe::stap.cache_get(3stap) - -
 for details. -
-

- -

-
stap.system - -
-Starting a command from stap -
-
 See  -probe::stap.system(3stap) - -
 for details. -
-

- -

-
stap.system.spawn - -
-stap spawned new process -
-
 See  -probe::stap.system.spawn(3stap) - -
 for details. -
-

- -

-
stap.system.return - -
-Finished a command from stap -
-
 See  -probe::stap.system.return(3stap) - -
 for details. -
-

- -

-
staprun.insert_module - -
-Inserting SystemTap instrumentation module -
-
 See  -probe::staprun.insert_module(3stap) - -
 for details. -
-

- -

-
staprun.remove_module - -
-Removing SystemTap instrumentation module -
-
 See  -probe::staprun.remove_module(3stap) - -
 for details. -
-

- -

-
staprun.send_control_message - -
-Sending a control message -
-
 See  -probe::staprun.send_control_message(3stap) - -
 for details. -
-

- -

-
stapio.receive_control_message - -
-Received a control message -
-
 See  -probe::stapio.receive_control_message(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::stap.pass0(3stap), - - -probe::stap.pass0.end(3stap), - - -probe::stap.pass1a(3stap), - - -probe::stap.pass1b(3stap), - - -probe::stap.pass1.end(3stap), - - -probe::stap.pass2(3stap), - - -probe::stap.pass2.end(3stap), - - -probe::stap.pass3(3stap), - - -probe::stap.pass3.end(3stap), - - -probe::stap.pass4(3stap), - - -probe::stap.pass4.end(3stap), - - -probe::stap.pass5(3stap), - - -probe::stap.pass5.end(3stap), - - -probe::stap.pass6(3stap), - - -probe::stap.pass6.end(3stap), - - -probe::stap.cache_clean(3stap), - - -probe::stap.cache_add_mod(3stap), - - -probe::stap.cache_add_src(3stap), - - -probe::stap.cache_add_nss(3stap), - - -probe::stap.cache_get(3stap), - - -probe::stap.system(3stap), - - -probe::stap.system.spawn(3stap), - - -probe::stap.system.return(3stap), - - -probe::staprun.insert_module(3stap), - - -probe::staprun.remove_module(3stap), - - -probe::staprun.send_control_message(3stap), - - -probe::stapio.receive_control_message(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::stopwatch.3stap.html b/man/tapset::stopwatch.3stap.html deleted file mode 100644 index 937a30bd..00000000 --- a/man/tapset::stopwatch.3stap.html +++ /dev/null @@ -1,155 +0,0 @@ - -Manpage of TAPSET::STOPWATCH - -

TAPSET::STOPWATCH

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::stopwatch - systemtap stopwatch tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
delete_stopwatch - -
-Remove an existing stopwatch -
-See -function::delete_stopwatch(3stap) - -
 for details. -
-

- -

-
start_stopwatch - -
-Start a stopwatch -
-See -function::start_stopwatch(3stap) - -
 for details. -
-

- -

-
stop_stopwatch - -
-Stop a stopwatch -
-See -function::stop_stopwatch(3stap) - -
 for details. -
-

- -

-
read_stopwatch_ns - -
-Reads the time in nanoseconds for a stopwatch -
-See -function::read_stopwatch_ns(3stap) - -
 for details. -
-

- -

-
read_stopwatch_us - -
-Reads the time in microseconds for a stopwatch -
-See -function::read_stopwatch_us(3stap) - -
 for details. -
-

- -

-
read_stopwatch_ms - -
-Reads the time in milliseconds for a stopwatch -
-See -function::read_stopwatch_ms(3stap) - -
 for details. -
-

- -

-
read_stopwatch_s - -
-Reads the time in seconds for a stopwatch -
-See -function::read_stopwatch_s(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::delete_stopwatch(3stap), - - -function::start_stopwatch(3stap), - - -function::stop_stopwatch(3stap), - - -function::read_stopwatch_ns(3stap), - - -function::read_stopwatch_us(3stap), - - -function::read_stopwatch_ms(3stap), - - -function::read_stopwatch_s(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::string.3stap.html b/man/tapset::string.3stap.html deleted file mode 100644 index 3dfcfc3f..00000000 --- a/man/tapset::string.3stap.html +++ /dev/null @@ -1,206 +0,0 @@ - -Manpage of TAPSET::STRING - -

TAPSET::STRING

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::string - systemtap string tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
strlen - -
-Returns the length of a string -
-See -function::strlen(3stap) - -
 for details. -
-

- -

-
substr - -
-Returns a substring -
-See -function::substr(3stap) - -
 for details. -
-

- -

-
stringat - -
-Returns the char at a given position in the string -
-See -function::stringat(3stap) - -
 for details. -
-

- -

-
isinstr - -
-Returns whether a string is a substring of another string -
-See -function::isinstr(3stap) - -
 for details. -
-

- -

-
strpos - -
-Returns location of a substring within another string -
-See -function::strpos(3stap) - -
 for details. -
-

- -

-
text_str - -
-Escape any non-printable chars in a string -
-See -function::text_str(3stap) - -
 for details. -
-

- -

-
text_strn - -
-Escape any non-printable chars in a string -
-See -function::text_strn(3stap) - -
 for details. -
-

- -

-
- strtol - -
-Convert a string to a long -
-See -function::-strtol(3stap) - -
 for details. -
-

- -

-
isdigit - -
-Checks for a digit -
-See -function::isdigit(3stap) - -
 for details. -
-

- -

-
string_quoted - -
-Quotes a given string -
-See -function::string_quoted(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::strlen(3stap), - - -function::substr(3stap), - - -function::stringat(3stap), - - -function::isinstr(3stap), - - -function::strpos(3stap), - - -function::text_str(3stap), - - -function::text_strn(3stap), - - -function::-(3stap), - - -function::strtol(3stap), - - -function::isdigit(3stap), - - -function::string_quoted(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::switchfile.3stap.html b/man/tapset::switchfile.3stap.html deleted file mode 100644 index daa1a562..00000000 --- a/man/tapset::switchfile.3stap.html +++ /dev/null @@ -1,59 +0,0 @@ - -Manpage of TAPSET::SWITCHFILE - -

TAPSET::SWITCHFILE

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::switchfile - systemtap switchfile tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
switch_file - -
-switch to the next output file -
-See -function::switch_file(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::switch_file(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::syscall_any.3stap.html b/man/tapset::syscall_any.3stap.html deleted file mode 100644 index 5cff5248..00000000 --- a/man/tapset::syscall_any.3stap.html +++ /dev/null @@ -1,75 +0,0 @@ - -Manpage of TAPSET::SYSCALL_ANY - -

TAPSET::SYSCALL_ANY

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::syscall_any - systemtap syscall_any tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
syscall_any - -
-Record entry into a syscall -
-
 See  -probe::syscall_any(3stap) - -
 for details. -
-

- -

-
syscall_any.return - -
-Record exit from a syscall -
-
 See  -probe::syscall_any.return(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::syscall_any(3stap), - - -probe::syscall_any.return(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::syscalls.3stap.html b/man/tapset::syscalls.3stap.html deleted file mode 100644 index f2c409f5..00000000 --- a/man/tapset::syscalls.3stap.html +++ /dev/null @@ -1,61 +0,0 @@ - -Manpage of TAPSET::SYSCALLS - -

TAPSET::SYSCALLS

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::syscalls - systemtap syscall tapset -

-  -

DESCRIPTION

- -Following is an overview of available syscall probes and -convenience variables they offer. By default, each syscall probe has name and -argstr convenience variables, which are not included in the overview in order -to keep it short. Non dwarf-based nd_syscall probes are supposed to have the -same convenience variables. -
-
-

- -

-
-
-

- -

-
-
syscall.b'accept - -
-$id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, abs_timeout_uaddr, abs_timeout_uaddr, act_str, act_str, act_str, act_str, act_uaddr, act_uaddr, act_uaddr, act_uaddr, actime, actime, addr, addr, addr, addr, addr, addr, addr, addr, addr_uaddr, addr_uaddr, addr_uaddr, addr_uaddr, addrlen, addrlen, addrlen_uaddr, addrlen_uaddr, addrlen_uaddr, advice, advice, advice, advice, advice, advice_str, advice_str, advice_str, advice_str, advice_str, arg1, arg2, arg2, arg2, arg3, arg3, arg4, arg4, arg5, arg5, arg, arg, arg, arg_uaddr, argp, args, args, args, args, args, attr_uaddr, attr_uaddr, backlog, brk, buf, buf, buf, buf_str, buf_str, buf_str, buf_str, buf_str, buf_str, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buffer_uaddr, buffer_uaddr, bufp_uaddr, bufsiz, bufsiz, bytecount, callout_info_uaddr, child_tid_uaddr, clk_id, clk_id, clk_id, clk_id, clk_id, clk_id, clk_id_str, clk_id_str, clk_id_str, clk_id_str, clk_id_str, clk_id_str, clockid, clockid, clockid_str, clockid_str, clone_flags, cmd, cmd, cmd, cmd, cmd, cmd, cmd, cmd, cmd, cmd, cmd_str, cmd_str, cmd_str, cmd_str, cmd_str, cmd_str, cmd_str, cmd_str, cmdline, cmdline_len, cmdstr, cmdstr, code, code_str, cookie, cookie, count, count, count, count, count, count, count, count, count, count, count, count, count, count, count, count, count, count, cpu, cpu_uaddr, ctx, ctx_id, ctx_id, ctx_id, ctxp_uaddr, data, data, data, data_str, data_uaddr, data_uaddr, description_str, description_uaddr, description_uaddr, destringid, dev, dev, dev, dev, dfd, dfd, dfd, dfd, dfd, dfd, dfd, dfd_str, dfd_str, dfd_str, dfd_str, dfd_str, dfd_str, dfd_str, dirent, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirp_uaddr, domainname_str, domainname_uaddr, egid, egid, egid, egid, egid_uaddr, entry, env_str, env_str, env_str, env_str, epfd, epfd, epfd, euid, euid, euid, euid, euid_uaddr, event_f_flags, event_f_flags_str, event_uaddr, events_uaddr, events_uaddr, events_uaddr, evp_uaddr, exceptfds, exceptfds, exceptfds_uaddr, exceptfds_uaddr, family, family, family_str, family_str, fanotify_fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd_in, fd_in, fd_out, fd_out, fdin, fdout, fds_uaddr, fds_uaddr, fildes, fildes, fildes_uaddr, filedes, filedes, filedes, filedes, filedes, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filesystemtype, flag, flag, flag_str, flag_str, flag_str, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, from, fsgid, fsuid, func, func, futex_uaddr, futex_uaddr, gid, group, group, group, group, group, group, group, group_fd, handle_uaddr, handle_uaddr, handler, handler_str, header_uaddr, header_uaddr, hostname_uaddr, how, how, how, how_str, how_str, how_str, id, idx1, idx2, in_fd, inc, info_str, info_uaddr, infop_uaddr, init_val, init_val_str, initrd_fd, intd_syscall.compat_clock_nanosleep, intd_syscall.compat_execve, intd_syscall.compat_futimesat, intd_syscall.compat_getitimer, intd_syscall.compat_ppoll, intd_syscall.compat_pselect6, intd_syscall.compat_readahead, intd_syscall.compat_select, intd_syscall.compat_truncate64, intd_syscall.compat_utimensat, intd_syscall.compat_vmsplice, intd_syscall.fallocate, intd_syscall.futex, intd_syscall.sigaction32, intd_syscall.userfaultfd, iocb_uaddr, iocbpp_uaddr, ioprio, ioprio_str, iov, iov, kernel_fd, key, key, key, key_str, key_str, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len_uaddr, length, length, length, length, length, length, length, length, length, length, level, level, level, level_str, level_str, library, library_uaddr, liovcnt, liovcnt, list_head_uaddr, list_head_uaddr, list_uaddr, list_uaddr, list_uaddr, list_uaddr, list_uaddr, local_iov_uaddr, local_iov_uaddr, magic2, magic2_str, magic, magic_str, mask, mask, mask, mask, mask, mask_str, mask_str, mask_str, mask_str, mask_uaddr, mask_uaddr, maxevents, maxevents, maxevents, maxnode, maxnode, maxnode, maxnode, min_nr, mmsg_uaddr, mmsg_uaddr, mmsg_uaddr, mnt_id_uaddr, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode_str, mode_str, mode_str, mode_str, mode_str, mode_str, mode_str, mode_str, modtime, modtime, mount_dfd, mount_dfd_str, mountflags, mountflags_str, mqdes, mqdes, mqdes, mqdes, msg_len, msg_len, msg_prio, msg_prio_uaddr, msg_ptr_uaddr, msg_ptr_uaddr, msg_uaddr, msg_uaddr, msg_uaddr, msg_uaddr, msgflg, msgflg, msgflg, msgflg, msgflg, msgflg_str, msgflg_str, msgflg_str, msgflg_str, msgflg_str, msgp_uaddr, msgp_uaddr, msgp_uaddr, msgp_uaddr, msgsz, msgsz, msgsz, msgsz, msgtyp, msgtyp, msqid, msqid, msqid, msqid, msqid, msqid, my_addr_uaddr, n, n, name_str, name_str, name_str, name_str, name_str, name_str, name_str, name_str, name_str, name_str, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_user, namelen_uaddr, namelen_uaddr, nbytes, new_address, new_nodes, new_rlim_str, new_rlim_uaddr, new_root_str, new_size, newdfd, newdfd, newdfd, newdfd_str, newdfd_str, newdfd_str, newdirfd, newdirfd_str, newfd, newfd, newmask, newmask_str, newname, newname, newname, newname_str, newname_str, newname_str, newpath, newpath, newpath, newpath, nfds, nfds, nfds, nfds, nfds, nmask_uaddr, nmask_uaddr, nmask_uaddr, node_uaddr, nodes, notification_uaddr, nr, nr, nr_pages, nr_segments, nr_segs, nr_segs, nsems, nsops, nsops, nsops, nstype, nstype_str, num, oact_uaddr, oact_uaddr, oact_uaddr, oact_uaddr, off_in, off_in, off_out, off_out, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset_high, offset_low, offset_uaddr, oflag, oflag_str, old_address, old_nodes, old_rlim_uaddr, old_root_str, old_size, olddfd, olddfd, olddfd_str, olddfd_str, olddirfd, olddirfd_str, oldfd, oldfd, oldfd, oldname, oldname, oldname, oldname_str, oldname_str, oldname_str, oldpath, oldpath, oldpath, oldpath, oldset_uaddr, oldset_uaddr, op, op, op, op, op_str, op_str, operation, option, option, option, options, options, options, options_str, options_str, options_str, optlen, optlen_uaddr, optname, optname, optname_str, optname_str, optval_uaddr, optval_uaddr, out_fd, ovalue_uaddr, ovalue_uaddr, ovalue_uaddr, ovalue_uaddr, owner, owner, owner, owner, owner, owner, owner, p_uaddr, p_uaddr, p_uaddr, pages, parent_tid_uaddr, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname_str, pathname_uaddr, pathname_uaddr, payload_uaddr, persona, pgid, pgoff, pgoffset, pid1, pid2, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pipe0, pipe1, pkey, pkey, plen, policy, policy, policy, policy_str, policy_str, policy_str, policy_uaddr, prio, prot, prot, prot, prot, prot_str, prot_str, prot_str, prot_str, protocol, protocol, protocol_str, protocol_str, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, ptr_uaddr, readfds, readfds, readfds_uaddr, readfds_uaddr, rem_uaddr, rem_uaddr, rem_uaddr, rem_uaddr, remote_iov_uaddr, remote_iov_uaddr, req_str, req_str, req_str, req_str, req_uaddr, req_uaddr, req_uaddr, req_uaddr, request, request, res_uaddr, resource, resource, resource, resource_str, resource_str, result_uaddr, result_uaddr, rgid, rgid, rgid, rgid, rgid_uaddr, ringid, riovcnt, riovcnt, rlim_str, rlim_uaddr, rlim_uaddr, ruid, ruid, ruid, ruid, ruid_uaddr, rusage_uaddr, rusage_uaddr, s, s, s, s, s, s, s, s, s, s, s, s, s, s, sched_attr_str, sched_attr_str, sched_attr_uaddr, sched_attr_uaddr, seconds, segments_uaddr, semflg, semflg_str, semid, semid, semid, semid, semid, semnum, semnum, serv_addr_uaddr, set, set_str, set_str, set_uaddr, set_uaddr, set_uaddr, set_uaddr, sgid, sgid, sgid_uaddr, shmaddr_uaddr, shmaddr_uaddr, shmaddr_uaddr, shmflg, shmflg, shmflg, shmflg_str, shmflg_str, shmflg_str, shmid, shmid, shmid, shmid, sig, sig, sig, sig, sig, sig, sig, sig, sig, sig, sig_name, sig_name, sig_str, sig_str, sig_str, sig_str, sig_str, sig_str, sig_str, sig_str, siginfo_str, sigmask, sigmask, sigmask, sigmask, sigmask_uaddr, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, size, size, size, size, size, size, size, size, size, size, size, size, size, size, size, size, size, sockfd, sockfd, sockfd, sockfd, sockfd, sops_uaddr, sops_uaddr, sops_uaddr, source, special, special_str, stack_start, start, start, start, start, start, start, start, status, status, status, status_uaddr, status_uaddr, suid, suid, suid_uaddr, sv_uaddr, swapflags, swapflags_str, sz, sz, t_uaddr, t_uaddr, target, target, tcache_uaddr, tgid, tgid, tid, tidptr_uaddr, timeout, timeout, timeout, timeout, timeout, timeout_str, timeout_str, timeout_str, timeout_str, timeout_str, timeout_str, timeout_str, timeout_str, timeout_uaddr, timeout_uaddr, timeout_uaddr, timeout_uaddr, timeout_uaddr, timeout_uaddr, timeout_uaddr, timerid, timerid, timerid, timerid, timerid_uaddr, timestr, timeval, to_str, to_uaddr, tolen, tp_uaddr, tp_uaddr, tp_uaddr, tp_uaddr_str, tsp, tsp, tsp_str, tsp_str, tsp_str, tsp_str, tsp_uaddr, tsp_uaddr, turn_on, tv_str, tv_str, tv_uaddr, tv_uaddr, tv_uaddr, tvp_str, tvp_str, tvp_uaddr, tvp_uaddr, tvp_uaddr, tvp_uaddr_str, tvp_uaddr_str, tx_uaddr, tx_uaddr_str, type, type, type, type, type_str, type_str, type_str, type_str, type_uaddr, type_uaddr, tz_str, tz_str, tz_uaddr, tz_uaddr, tz_uaddr, u_attr_uaddr, u_info_str, u_info_str, u_info_uaddr, u_info_uaddr, u_mqstat_uaddr, u_name, u_name_uaddr, u_omqstat_uaddr, uaddr2_uaddr, uaddr2_uaddr, uaddr_af, uaddr_af, uaddr_ip, uaddr_ip, uaddr_ip_port, uaddr_ip_port, uaddr_ipv6_flowinfo, uaddr_ipv6_flowinfo, uaddr_ipv6_scope_id, uaddr_ipv6_scope_id, uargs, uargs, uargs_uaddr, ubuf_uaddr, ubuf_uaddr, ufds_uaddr, uid, uinfo_str, uinfo_str, uinfo_uaddr, uinfo_uaddr, uinfo_uaddr, umod_uaddr, uname, unshare_flags, unshare_flags_str, uoss_uaddr, usage_uaddr, uss_str, uss_uaddr, uthese_str, uthese_uaddr, utime_uaddr, utime_uaddr, uts_str, uts_uaddr, val3, val3, val, val, value_str, value_str, value_str, value_str, value_str, value_str, value_str, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, vec_uaddr, vector_uaddr, vector_uaddr, vector_uaddr, vector_uaddr, vector_uaddr, vector_uaddr, vlen, vlen, vlen, wd, whence, whence, whence_str, whence_str, which, which, which, which, which, which, which, which, which, which_str, which_str, which_str, which_str, which_str, which_str, who, who, who, who, who, who_str, writefds, writefds, writefds_uaddr, writefds_uaddr -

-

-  -

SEE ALSO

- - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::system.3stap.html b/man/tapset::system.3stap.html deleted file mode 100644 index 9b91f079..00000000 --- a/man/tapset::system.3stap.html +++ /dev/null @@ -1,59 +0,0 @@ - -Manpage of TAPSET::SYSTEM - -

TAPSET::SYSTEM

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::system - systemtap system tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
system - -
-Issue a command to the system -
-See -function::system(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::system(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::target_set.3stap.html b/man/tapset::target_set.3stap.html deleted file mode 100644 index 4069340b..00000000 --- a/man/tapset::target_set.3stap.html +++ /dev/null @@ -1,75 +0,0 @@ - -Manpage of TAPSET::TARGET_SET - -

TAPSET::TARGET_SET

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::target_set - systemtap target_set tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
target_set_pid - -
-Does pid descend from target process? -
-See -function::target_set_pid(3stap) - -
 for details. -
-

- -

-
target_set_report - -
-Print a report about the target set -
-See -function::target_set_report(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::target_set_pid(3stap), - - -function::target_set_report(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::task.3stap.html b/man/tapset::task.3stap.html deleted file mode 100644 index 7085abff..00000000 --- a/man/tapset::task.3stap.html +++ /dev/null @@ -1,411 +0,0 @@ - -Manpage of TAPSET::TASK - -

TAPSET::TASK

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::task - systemtap task tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
task_current - -
-The current task_struct of the current task -
-See -function::task_current(3stap) - -
 for details. -
-

- -

-
task_parent - -
-The task_struct of the parent task -
-See -function::task_parent(3stap) - -
 for details. -
-

- -

-
task_state - -
-The state of the task -
-See -function::task_state(3stap) - -
 for details. -
-

- -

-
task_execname - -
-The name of the task -
-See -function::task_execname(3stap) - -
 for details. -
-

- -

-
task_pid - -
-The process identifier of the task -
-See -function::task_pid(3stap) - -
 for details. -
-

- -

-
task_ns_pid - -
-The process identifier of the task -
-See -function::task_ns_pid(3stap) - -
 for details. -
-

- -

-
pid2task - -
-The task_struct of the given process identifier -
-See -function::pid2task(3stap) - -
 for details. -
-

- -

-
pid2execname - -
-The name of the given process identifier -
-See -function::pid2execname(3stap) - -
 for details. -
-

- -

-
task_tid - -
-The thread identifier of the task -
-See -function::task_tid(3stap) - -
 for details. -
-

- -

-
task_ns_tid - -
-The thread identifier of the task as seen in a namespace -
-See -function::task_ns_tid(3stap) - -
 for details. -
-

- -

-
task_gid - -
-The group identifier of the task -
-See -function::task_gid(3stap) - -
 for details. -
-

- -

-
task_ns_gid - -
-The group identifier of the task as seen in a namespace -
-See -function::task_ns_gid(3stap) - -
 for details. -
-

- -

-
task_egid - -
-The effective group identifier of the task -
-See -function::task_egid(3stap) - -
 for details. -
-

- -

-
task_ns_egid - -
-The effective group identifier of the task -
-See -function::task_ns_egid(3stap) - -
 for details. -
-

- -

-
task_uid - -
-The user identifier of the task -
-See -function::task_uid(3stap) - -
 for details. -
-

- -

-
task_ns_uid - -
-The user identifier of the task -
-See -function::task_ns_uid(3stap) - -
 for details. -
-

- -

-
task_euid - -
-The effective user identifier of the task -
-See -function::task_euid(3stap) - -
 for details. -
-

- -

-
task_ns_euid - -
-The effective user identifier of the task -
-See -function::task_ns_euid(3stap) - -
 for details. -
-

- -

-
task_prio - -
-The priority value of the task -
-See -function::task_prio(3stap) - -
 for details. -
-

- -

-
task_nice - -
-The nice value of the task -
-See -function::task_nice(3stap) - -
 for details. -
-

- -

-
task_cpu - -
-The scheduled cpu of the task -
-See -function::task_cpu(3stap) - -
 for details. -
-

- -

-
task_open_file_handles - -
-The number of open files of the task -
-See -function::task_open_file_handles(3stap) - -
 for details. -
-

- -

-
task_max_file_handles - -
-The max number of open files for the task -
-See -function::task_max_file_handles(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::task_current(3stap), - - -function::task_parent(3stap), - - -function::task_state(3stap), - - -function::task_execname(3stap), - - -function::task_pid(3stap), - - -function::task_ns_pid(3stap), - - -function::pid2task(3stap), - - -function::pid2execname(3stap), - - -function::task_tid(3stap), - - -function::task_ns_tid(3stap), - - -function::task_gid(3stap), - - -function::task_ns_gid(3stap), - - -function::task_egid(3stap), - - -function::task_ns_egid(3stap), - - -function::task_uid(3stap), - - -function::task_ns_uid(3stap), - - -function::task_euid(3stap), - - -function::task_ns_euid(3stap), - - -function::task_prio(3stap), - - -function::task_nice(3stap), - - -function::task_cpu(3stap), - - -function::task_open_file_handles(3stap), - - -function::task_max_file_handles(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::task_ancestry.3stap.html b/man/tapset::task_ancestry.3stap.html deleted file mode 100644 index 89ea3a8d..00000000 --- a/man/tapset::task_ancestry.3stap.html +++ /dev/null @@ -1,59 +0,0 @@ - -Manpage of TAPSET::TASK_ANCESTRY - -

TAPSET::TASK_ANCESTRY

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::task_ancestry - systemtap task_ancestry tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
task_ancestry - -
-The ancestry of the given task -
-See -function::task_ancestry(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::task_ancestry(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::task_time.3stap.html b/man/tapset::task_time.3stap.html deleted file mode 100644 index edb69309..00000000 --- a/man/tapset::task_time.3stap.html +++ /dev/null @@ -1,256 +0,0 @@ - -Manpage of TAPSET::TASK_TIME - -

TAPSET::TASK_TIME

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::task_time - systemtap task_time tapset -
  -  -

DESCRIPTION

- -

-
 Task time query and utility functions provide information about -
 the time resource usage of the current task. These functions provide -
 information about the user time and system time of the current -
 task. And provide utility functions to turn the reported times -
 into miliseconds and create human readable string representations -
 of task time used. The reported times are approximates and should -
 be used for "coarse grained" measurements only. The reported user -
 and system time are only for the current task, not for the process -
 as a whole nor of any time spend by children of the current task. -

-

-
-

- -

-
-
task_utime - -
-User time of the task -
-See -function::task_utime(3stap) - -
 for details. -
-

- -

-
task_utime - -
-User time of the task -
-See -function::task_utime(3stap) - -
 for details. -
-

- -

-
task_stime - -
-System time of the task -
-See -function::task_stime(3stap) - -
 for details. -
-

- -

-
task_stime - -
-System time of the task -
-See -function::task_stime(3stap) - -
 for details. -
-

- -

-
task_start_time - -
-Start time of the given task -
-See -function::task_start_time(3stap) - -
 for details. -
-

- -

-
cputime_to_msecs - -
-Translates the given cputime into milliseconds -
-See -function::cputime_to_msecs(3stap) - -
 for details. -
-

- -

-
cputime_to_usecs - -
-Translates the given cputime into microseconds -
-See -function::cputime_to_usecs(3stap) - -
 for details. -
-

- -

-
msecs_to_string - -
-Human readable string for given milliseconds -
-See -function::msecs_to_string(3stap) - -
 for details. -
-

- -

-
usecs_to_string - -
-Human readable string for given microseconds -
-See -function::usecs_to_string(3stap) - -
 for details. -
-

- -

-
nsecs_to_string - -
-Human readable string for given nanoseconds -
-See -function::nsecs_to_string(3stap) - -
 for details. -
-

- -

-
cputime_to_string - -
-Human readable string for given cputime -
-See -function::cputime_to_string(3stap) - -
 for details. -
-

- -

-
task_time_string - -
-Human readable string of task time usage -
-See -function::task_time_string(3stap) - -
 for details. -
-

- -

-
task_time_string_tid - -
-Human readable string of task time usage -
-See -function::task_time_string_tid(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::task_utime(3stap), - - -function::task_stime(3stap), - - -function::task_start_time(3stap), - - -function::cputime_to_msecs(3stap), - - -function::cputime_to_usecs(3stap), - - -function::msecs_to_string(3stap), - - -function::usecs_to_string(3stap), - - -function::nsecs_to_string(3stap), - - -function::cputime_to_string(3stap), - - -function::task_time_string(3stap), - - -function::task_time_string_tid(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::tcp.3stap.html b/man/tapset::tcp.3stap.html deleted file mode 100644 index 26eace08..00000000 --- a/man/tapset::tcp.3stap.html +++ /dev/null @@ -1,190 +0,0 @@ - -Manpage of TAPSET::TCP - -

TAPSET::TCP

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::tcp - systemtap tcp tapset -
  -  -

DESCRIPTION

- -

-
 This family of probe points is used to probe events that occur in the TCP layer,  -

-

-
-

- -

-
-
tcp.sendmsg - -
-Sending a tcp message -
-
 See  -probe::tcp.sendmsg(3stap) - -
 for details. -
-

- -

-
tcp.sendmsg.return - -
-
 Sending TCP message is done -
-
 See  -probe::tcp.sendmsg.return(3stap) - -
 for details. -
-

- -

-
tcp.recvmsg - -
-Receiving TCP message -
-
 See  -probe::tcp.recvmsg(3stap) - -
 for details. -
-

- -

-
tcp.recvmsg.return - -
-Receiving TCP message complete -
-
 See  -probe::tcp.recvmsg.return(3stap) - -
 for details. -
-

- -

-
tcp.disconnect - -
-TCP socket disconnection -
-
 See  -probe::tcp.disconnect(3stap) - -
 for details. -
-

- -

-
tcp.disconnect.return - -
-TCP socket disconnection complete -
-
 See  -probe::tcp.disconnect.return(3stap) - -
 for details. -
-

- -

-
tcp.setsockopt - -
-Call to setsockopt() -
-
 See  -probe::tcp.setsockopt(3stap) - -
 for details. -
-

- -

-
tcp.setsockopt.return - -
-
 Return from setsockopt() -
-
 See  -probe::tcp.setsockopt.return(3stap) - -
 for details. -
-

- -

-
tcp.receive - -
-Called when a TCP packet is received -
-
 See  -probe::tcp.receive(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::tcp.sendmsg(3stap), - - -probe::tcp.sendmsg.return(3stap), - - -probe::tcp.recvmsg(3stap), - - -probe::tcp.recvmsg.return(3stap), - - -probe::tcp.disconnect(3stap), - - -probe::tcp.disconnect.return(3stap), - - -probe::tcp.setsockopt(3stap), - - -probe::tcp.setsockopt.return(3stap), - - -probe::tcp.receive(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::tcpmib-filter-default.3stap.html b/man/tapset::tcpmib-filter-default.3stap.html deleted file mode 100644 index 8ef58e17..00000000 --- a/man/tapset::tcpmib-filter-default.3stap.html +++ /dev/null @@ -1,59 +0,0 @@ - -Manpage of TAPSET::TCPMIB-FILTER-DEFAULT - -

TAPSET::TCPMIB-FILTER-DEFAULT

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::tcpmib-filter-default - systemtap tcpmib-filter-default tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
tcpmib_filter_key - -
-Default filter function for tcpmib.* probes -
-See -function::tcpmib_filter_key(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::tcpmib_filter_key(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::tcpmib.3stap.html b/man/tapset::tcpmib.3stap.html deleted file mode 100644 index 370bb523..00000000 --- a/man/tapset::tcpmib.3stap.html +++ /dev/null @@ -1,267 +0,0 @@ - -Manpage of TAPSET::TCPMIB - -

TAPSET::TCPMIB

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::tcpmib - systemtap tcpmib tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
tcpmib_get_state - -
-Get a socket's state -
-See -function::tcpmib_get_state(3stap) - -
 for details. -
-

- -

-
tcpmib_local_addr - -
-Get the source address -
-See -function::tcpmib_local_addr(3stap) - -
 for details. -
-

- -

-
tcpmib_remote_addr - -
-Get the remote address -
-See -function::tcpmib_remote_addr(3stap) - -
 for details. -
-

- -

-
tcpmib_local_port - -
-Get the local port -
-See -function::tcpmib_local_port(3stap) - -
 for details. -
-

- -

-
tcpmib_remote_port - -
-Get the remote port -
-See -function::tcpmib_remote_port(3stap) - -
 for details. -
-

- -

-
tcpmib.ActiveOpens - -
-Count an active opening of a socket -
-
 See  -probe::tcpmib.ActiveOpens(3stap) - -
 for details. -
-

- -

-
tcpmib.AttemptFails - -
-Count a failed attempt to open a socket -
-
 See  -probe::tcpmib.AttemptFails(3stap) - -
 for details. -
-

- -

-
tcpmib.CurrEstab - -
-Update the count of open sockets -
-
 See  -probe::tcpmib.CurrEstab(3stap) - -
 for details. -
-

- -

-
tcpmib.EstabResets - -
-Count the reset of a socket -
-
 See  -probe::tcpmib.EstabResets(3stap) - -
 for details. -
-

- -

-
tcpmib.InSegs - -
-Count an incoming tcp segment -
-
 See  -probe::tcpmib.InSegs(3stap) - -
 for details. -
-

- -

-
tcpmib.OutRsts - -
-Count the sending of a reset packet -
-
 See  -probe::tcpmib.OutRsts(3stap) - -
 for details. -
-

- -

-
tcpmib.OutSegs - -
-Count the sending of a TCP segment -
-
 See  -probe::tcpmib.OutSegs(3stap) - -
 for details. -
-

- -

-
tcpmib.PassiveOpens - -
-Count the passive creation of a socket -
-
 See  -probe::tcpmib.PassiveOpens(3stap) - -
 for details. -
-

- -

-
tcpmib.RetransSegs - -
-Count the retransmission of a TCP segment -
-
 See  -probe::tcpmib.RetransSegs(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::tcpmib_get_state(3stap), - - -function::tcpmib_local_addr(3stap), - - -function::tcpmib_remote_addr(3stap), - - -function::tcpmib_local_port(3stap), - - -function::tcpmib_remote_port(3stap), - - -probe::tcpmib.ActiveOpens(3stap), - - -probe::tcpmib.AttemptFails(3stap), - - -probe::tcpmib.CurrEstab(3stap), - - -probe::tcpmib.EstabResets(3stap), - - -probe::tcpmib.InSegs(3stap), - - -probe::tcpmib.OutRsts(3stap), - - -probe::tcpmib.OutSegs(3stap), - - -probe::tcpmib.PassiveOpens(3stap), - - -probe::tcpmib.RetransSegs(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::timestamp.3stap.html b/man/tapset::timestamp.3stap.html deleted file mode 100644 index 4e00638e..00000000 --- a/man/tapset::timestamp.3stap.html +++ /dev/null @@ -1,96 +0,0 @@ - -Manpage of TAPSET::TIMESTAMP - -

TAPSET::TIMESTAMP

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::timestamp - systemtap timestamp tapset -
  -  -

DESCRIPTION

- -

-
 Each timestamp function returns a value to indicate when a function is executed. These  -returned values can then be used to indicate when an event occurred, provide an ordering for events, -or compute the amount of time elapsed between two time stamps. -

-

-
-

- -

-
-
get_cycles - -
-Processor cycle count -
-See -function::get_cycles(3stap) - -
 for details. -
-

- -

-
jiffies - -
-Kernel jiffies count -
-See -function::jiffies(3stap) - -
 for details. -
-

- -

-
HZ - -
-Kernel HZ -
-See -function::HZ(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::get_cycles(3stap), - - -function::jiffies(3stap), - - -function::HZ(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::timestamp_gtod.3stap.html b/man/tapset::timestamp_gtod.3stap.html deleted file mode 100644 index 21a5cf39..00000000 --- a/man/tapset::timestamp_gtod.3stap.html +++ /dev/null @@ -1,107 +0,0 @@ - -Manpage of TAPSET::TIMESTAMP_GTOD - -

TAPSET::TIMESTAMP_GTOD

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::timestamp_gtod - systemtap timestamp_gtod tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
gettimeofday_ns - -
-Number of nanoseconds since UNIX epoch -
-See -function::gettimeofday_ns(3stap) - -
 for details. -
-

- -

-
gettimeofday_us - -
-Number of microseconds since UNIX epoch -
-See -function::gettimeofday_us(3stap) - -
 for details. -
-

- -

-
gettimeofday_ms - -
-Number of milliseconds since UNIX epoch -
-See -function::gettimeofday_ms(3stap) - -
 for details. -
-

- -

-
gettimeofday_s - -
-Number of seconds since UNIX epoch -
-See -function::gettimeofday_s(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::gettimeofday_ns(3stap), - - -function::gettimeofday_us(3stap), - - -function::gettimeofday_ms(3stap), - - -function::gettimeofday_s(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::timestamp_monotonic.3stap.html b/man/tapset::timestamp_monotonic.3stap.html deleted file mode 100644 index a835758b..00000000 --- a/man/tapset::timestamp_monotonic.3stap.html +++ /dev/null @@ -1,187 +0,0 @@ - -Manpage of TAPSET::TIMESTAMP_MONOTONIC - -

TAPSET::TIMESTAMP_MONOTONIC

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::timestamp_monotonic - systemtap timestamp_monotonic tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
cpu_clock_ns - -
-Number of nanoseconds on the given cpu's clock -
-See -function::cpu_clock_ns(3stap) - -
 for details. -
-

- -

-
cpu_clock_us - -
-Number of microseconds on the given cpu's clock -
-See -function::cpu_clock_us(3stap) - -
 for details. -
-

- -

-
cpu_clock_ms - -
-Number of milliseconds on the given cpu's clock -
-See -function::cpu_clock_ms(3stap) - -
 for details. -
-

- -

-
cpu_clock_s - -
-Number of seconds on the given cpu's clock -
-See -function::cpu_clock_s(3stap) - -
 for details. -
-

- -

-
local_clock_ns - -
-Number of nanoseconds on the local cpu's clock -
-See -function::local_clock_ns(3stap) - -
 for details. -
-

- -

-
local_clock_us - -
-Number of microseconds on the local cpu's clock -
-See -function::local_clock_us(3stap) - -
 for details. -
-

- -

-
local_clock_ms - -
-Number of milliseconds on the local cpu's clock -
-See -function::local_clock_ms(3stap) - -
 for details. -
-

- -

-
local_clock_s - -
-Number of seconds on the local cpu's clock -
-See -function::local_clock_s(3stap) - -
 for details. -
-

- -

-
ktime_get_ns - -
-Number of nanoseconds since boot -
-See -function::ktime_get_ns(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::cpu_clock_ns(3stap), - - -function::cpu_clock_us(3stap), - - -function::cpu_clock_ms(3stap), - - -function::cpu_clock_s(3stap), - - -function::local_clock_ns(3stap), - - -function::local_clock_us(3stap), - - -function::local_clock_ms(3stap), - - -function::local_clock_s(3stap), - - -function::ktime_get_ns(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::tokenize.3stap.html b/man/tapset::tokenize.3stap.html deleted file mode 100644 index f59f0d4b..00000000 --- a/man/tapset::tokenize.3stap.html +++ /dev/null @@ -1,72 +0,0 @@ - -Manpage of TAPSET::TOKENIZE - -

TAPSET::TOKENIZE

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::tokenize - systemtap tokenize tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
tokenize - -
-Return the next non-empty token in a string -
-See -function::tokenize(3stap) - -
 for details. -
-

- -

-
tokenize - -
-Return the next non-empty token in a string -
-See -function::tokenize(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::tokenize(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::tty.3stap.html b/man/tapset::tty.3stap.html deleted file mode 100644 index 8109b2f9..00000000 --- a/man/tapset::tty.3stap.html +++ /dev/null @@ -1,219 +0,0 @@ - -Manpage of TAPSET::TTY - -

TAPSET::TTY

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::tty - systemtap tty tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
tty.open - -
-Called when a tty is opened -
-
 See  -probe::tty.open(3stap) - -
 for details. -
-

- -

-
tty.release - -
-Called when the tty is closed -
-
 See  -probe::tty.release(3stap) - -
 for details. -
-

- -

-
tty.resize - -
-Called when a terminal resize happens -
-
 See  -probe::tty.resize(3stap) - -
 for details. -
-

- -

-
tty.ioctl - -
-called when a ioctl is request to the tty -
-
 See  -probe::tty.ioctl(3stap) - -
 for details. -
-

- -

-
tty.init - -
-Called when a tty is being initalized -
-
 See  -probe::tty.init(3stap) - -
 for details. -
-

- -

-
tty.register - -
-Called when a tty device is registred -
-
 See  -probe::tty.register(3stap) - -
 for details. -
-

- -

-
tty.unregister - -
-Called when a tty device is being unregistered -
-
 See  -probe::tty.unregister(3stap) - -
 for details. -
-

- -

-
tty.poll - -
-Called when a tty device is being polled -
-
 See  -probe::tty.poll(3stap) - -
 for details. -
-

- -

-
tty.receive - -
-called when a tty receives a message -
-
 See  -probe::tty.receive(3stap) - -
 for details. -
-

- -

-
tty.write - -
-write to the tty line -
-
 See  -probe::tty.write(3stap) - -
 for details. -
-

- -

-
tty.read - -
-called when a tty line will be read -
-
 See  -probe::tty.read(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::tty.open(3stap), - - -probe::tty.release(3stap), - - -probe::tty.resize(3stap), - - -probe::tty.ioctl(3stap), - - -probe::tty.init(3stap), - - -probe::tty.register(3stap), - - -probe::tty.unregister(3stap), - - -probe::tty.poll(3stap), - - -probe::tty.receive(3stap), - - -probe::tty.write(3stap), - - -probe::tty.read(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::tzinfo.3stap.html b/man/tapset::tzinfo.3stap.html deleted file mode 100644 index ff7023fc..00000000 --- a/man/tapset::tzinfo.3stap.html +++ /dev/null @@ -1,91 +0,0 @@ - -Manpage of TAPSET::TZINFO - -

TAPSET::TZINFO

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::tzinfo - systemtap tzinfo tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
tz_gmtoff - -
-Return local time zone offset -
-See -function::tz_gmtoff(3stap) - -
 for details. -
-

- -

-
tz_name - -
-Return local time zone name -
-See -function::tz_name(3stap) - -
 for details. -
-

- -

-
tz_ctime - -
-Convert seconds since epoch into human readable date/time string, with local time zone -
-See -function::tz_ctime(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::tz_gmtoff(3stap), - - -function::tz_name(3stap), - - -function::tz_ctime(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::ucontext-symbols.3stap.html b/man/tapset::ucontext-symbols.3stap.html deleted file mode 100644 index a88c3bfc..00000000 --- a/man/tapset::ucontext-symbols.3stap.html +++ /dev/null @@ -1,209 +0,0 @@ - -Manpage of TAPSET::UCONTEXT-SYMBOLS - -

TAPSET::UCONTEXT-SYMBOLS

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::ucontext-symbols - systemtap ucontext-symbols tapset -
  -  -

DESCRIPTION

- -

-
 User context symbol functions provide additional information about -
 addresses from an application. These functions can provide -
 information about the user space map (library) that the event occurred or -
 the function symbol of an address. -

-

-
-

- -

-
-
ustack - -
-Return address at given depth of user stack backtrace -
-See -function::ustack(3stap) - -
 for details. -
-

- -

-
usymname - -
-Return the symbol of an address in the current task. -
-See -function::usymname(3stap) - -
 for details. -
-

- -

-
usymdata - -
-Return the symbol and module offset of an address. -
-See -function::usymdata(3stap) - -
 for details. -
-

- -

-
print_ustack - -
-Print out stack for the current task from string. -
-See -function::print_ustack(3stap) - -
 for details. -
-

- -

-
print_usyms - -
-Print out user stack from string -
-See -function::print_usyms(3stap) - -
 for details. -
-

- -

-
sprint_ustack - -
-Return stack for the current task from string. -
-See -function::sprint_ustack(3stap) - -
 for details. -
-

- -

-
sprint_usyms - -
-Return stack for user addresses from string -
-See -function::sprint_usyms(3stap) - -
 for details. -
-

- -

-
usymfileline - -
-Return the file name and line number of an address. -
-See -function::usymfileline(3stap) - -
 for details. -
-

- -

-
usymfile - -
-Return the file name of a given address. -
-See -function::usymfile(3stap) - -
 for details. -
-

- -

-
usymline - -
-Return the line number of an address. -
-See -function::usymline(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::ustack(3stap), - - -function::usymname(3stap), - - -function::usymdata(3stap), - - -function::print_ustack(3stap), - - -function::print_usyms(3stap), - - -function::sprint_ustack(3stap), - - -function::sprint_usyms(3stap), - - -function::usymfileline(3stap), - - -function::usymfile(3stap), - - -function::usymline(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::ucontext-unwind.3stap.html b/man/tapset::ucontext-unwind.3stap.html deleted file mode 100644 index 6ba539df..00000000 --- a/man/tapset::ucontext-unwind.3stap.html +++ /dev/null @@ -1,136 +0,0 @@ - -Manpage of TAPSET::UCONTEXT-UNWIND - -

TAPSET::UCONTEXT-UNWIND

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::ucontext-unwind - systemtap ucontext-unwind tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
print_ubacktrace - -
-Print stack back trace for current user-space task. -
-See -function::print_ubacktrace(3stap) - -
 for details. -
-

- -

-
print_ubacktrace - -
-Print stack back trace for current user-space task. -
-See -function::print_ubacktrace(3stap) - -
 for details. -
-

- -

-
sprint_ubacktrace - -
-Return stack back trace for current user-space task as string. -
-See -function::sprint_ubacktrace(3stap) - -
 for details. -
-

- -

-
print_ubacktrace_fileline - -
-Print stack back trace for current user-space task. -
-See -function::print_ubacktrace_fileline(3stap) - -
 for details. -
-

- -

-
print_ubacktrace - -
-Print stack back trace for current user-space task. -
-See -function::print_ubacktrace(3stap) - -
 for details. -
-

- -

-
ubacktrace - -
-Hex backtrace of current user-space task stack. -
-See -function::ubacktrace(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::print_ubacktrace(3stap), - - -function::sprint_ubacktrace(3stap), - - -function::print_ubacktrace_fileline(3stap), - - -function::print_ubacktrace(3stap), - - -function::ubacktrace(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::ucontext.3stap.html b/man/tapset::ucontext.3stap.html deleted file mode 100644 index bb078951..00000000 --- a/man/tapset::ucontext.3stap.html +++ /dev/null @@ -1,75 +0,0 @@ - -Manpage of TAPSET::UCONTEXT - -

TAPSET::UCONTEXT

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::ucontext - systemtap ucontext tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
umodname - -
-Returns the (short) name of the user module. -
-See -function::umodname(3stap) - -
 for details. -
-

- -

-
ucallers - -
-Return first n elements of user stack backtrace -
-See -function::ucallers(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::umodname(3stap), - - -function::ucallers(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::uconversions-guru.3stap.html b/man/tapset::uconversions-guru.3stap.html deleted file mode 100644 index d6f8b396..00000000 --- a/man/tapset::uconversions-guru.3stap.html +++ /dev/null @@ -1,155 +0,0 @@ - -Manpage of TAPSET::UCONVERSIONS-GURU - -

TAPSET::UCONVERSIONS-GURU

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::uconversions-guru - systemtap uconversions-guru tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
set_user_string - -
-Writes a string to user memory -
-See -function::set_user_string(3stap) - -
 for details. -
-

- -

-
set_user_string_n - -
-Writes a string of given length to user memory -
-See -function::set_user_string_n(3stap) - -
 for details. -
-

- -

-
set_user_long - -
-Writes a long value to user memory -
-See -function::set_user_long(3stap) - -
 for details. -
-

- -

-
set_user_int - -
-Writes an int value to user memory -
-See -function::set_user_int(3stap) - -
 for details. -
-

- -

-
set_user_short - -
-Writes a short value to user memory -
-See -function::set_user_short(3stap) - -
 for details. -
-

- -

-
set_user_char - -
-Writes a char value to user memory -
-See -function::set_user_char(3stap) - -
 for details. -
-

- -

-
set_user_pointer - -
-Writes a pointer value to user memory. -
-See -function::set_user_pointer(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::set_user_string(3stap), - - -function::set_user_string_n(3stap), - - -function::set_user_long(3stap), - - -function::set_user_int(3stap), - - -function::set_user_short(3stap), - - -function::set_user_char(3stap), - - -function::set_user_pointer(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::uconversions.3stap.html b/man/tapset::uconversions.3stap.html deleted file mode 100644 index 96e14f6d..00000000 --- a/man/tapset::uconversions.3stap.html +++ /dev/null @@ -1,870 +0,0 @@ - -Manpage of TAPSET::UCONVERSIONS - -

TAPSET::UCONVERSIONS

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::uconversions - systemtap uconversions tapset -
  -  -

DESCRIPTION

- -
-
-

- -

-
-
user_string - -
-Retrieves string from user space -
-See -function::user_string(3stap) - -
 for details. -
-

- -

-
user_string - -
-Retrieves string from user space with alternative error string -
-See -function::user_string(3stap) - -
 for details. -
-

- -

-
user_string_warn - -
-Retrieves string from user space -
-See -function::user_string_warn(3stap) - -
 for details. -
-

- -

-
user_string_warn - -
-Retrieves string from user space with alternative warning string -
-See -function::user_string_warn(3stap) - -
 for details. -
-

- -

-
user_string_quoted - -
-Retrieves and quotes string from user space -
-See -function::user_string_quoted(3stap) - -
 for details. -
-

- -

-
user_string_n - -
-Retrieves string of given length from user space -
-See -function::user_string_n(3stap) - -
 for details. -
-

- -

-
user_string_n - -
-Retrieves string of given length from user space -
-See -function::user_string_n(3stap) - -
 for details. -
-

- -

-
user_string_n_warn - -
-Retrieves string from user space -
-See -function::user_string_n_warn(3stap) - -
 for details. -
-

- -

-
user_string_n_warn - -
-Retrieves string from user space with alternative warning string -
-See -function::user_string_n_warn(3stap) - -
 for details. -
-

- -

-
user_string_n_quoted - -
-Retrieves and quotes string from user space -
-See -function::user_string_n_quoted(3stap) - -
 for details. -
-

- -

-
user_string_n_quoted - -
-Retrieves and quotes string from user space -
-See -function::user_string_n_quoted(3stap) - -
 for details. -
-

- -

-
user_string_utf32 - -
-Retrieves UTF-32 string from user memory -
-See -function::user_string_utf32(3stap) - -
 for details. -
-

- -

-
user_string_utf32 - -
-Retrieves UTF-32 string from user memory with alternative error string -
-See -function::user_string_utf32(3stap) - -
 for details. -
-

- -

-
user_string_quoted_utf32 - -
-Quote given user UTF-32 string. -
-See -function::user_string_quoted_utf32(3stap) - -
 for details. -
-

- -

-
user_string_utf16 - -
-Retrieves UTF-16 string from user memory -
-See -function::user_string_utf16(3stap) - -
 for details. -
-

- -

-
user_string_utf16 - -
-Retrieves UTF-16 string from user memory with alternative error string -
-See -function::user_string_utf16(3stap) - -
 for details. -
-

- -

-
user_string_quoted_utf16 - -
-Quote given user UTF-16 string. -
-See -function::user_string_quoted_utf16(3stap) - -
 for details. -
-

- -

-
user_char_error - -
-Retrieves a char value stored in user space -
-See -function::user_char_error(3stap) - -
 for details. -
-

- -

-
user_char - -
-Retrieves a char value stored in user space -
-See -function::user_char(3stap) - -
 for details. -
-

- -

-
user_char_warn - -
-Retrieves a char value stored in user space -
-See -function::user_char_warn(3stap) - -
 for details. -
-

- -

-
user_short_error - -
-Retrieves a short value stored in user space -
-See -function::user_short_error(3stap) - -
 for details. -
-

- -

-
user_short - -
-Retrieves a short value stored in user space -
-See -function::user_short(3stap) - -
 for details. -
-

- -

-
user_short_warn - -
-Retrieves a short value stored in user space -
-See -function::user_short_warn(3stap) - -
 for details. -
-

- -

-
user_ushort_error - -
-Retrieves an unsigned short value stored in user space -
-See -function::user_ushort_error(3stap) - -
 for details. -
-

- -

-
user_ushort - -
-Retrieves an unsigned short value stored in user space -
-See -function::user_ushort(3stap) - -
 for details. -
-

- -

-
user_ushort_warn - -
-Retrieves an unsigned short value stored in user space -
-See -function::user_ushort_warn(3stap) - -
 for details. -
-

- -

-
user_int_error - -
-Retrieves an int value stored in user space -
-See -function::user_int_error(3stap) - -
 for details. -
-

- -

-
user_int - -
-Retrieves an int value stored in user space -
-See -function::user_int(3stap) - -
 for details. -
-

- -

-
user_int_warn - -
-Retrieves an int value stored in user space -
-See -function::user_int_warn(3stap) - -
 for details. -
-

- -

-
user_long_error - -
-Retrieves a long value stored in user space -
-See -function::user_long_error(3stap) - -
 for details. -
-

- -

-
user_long - -
-Retrieves a long value stored in user space -
-See -function::user_long(3stap) - -
 for details. -
-

- -

-
user_long_warn - -
-Retrieves a long value stored in user space -
-See -function::user_long_warn(3stap) - -
 for details. -
-

- -

-
user_ulong_error - -
-Retrieves a unsigned long value stored in user space -
-See -function::user_ulong_error(3stap) - -
 for details. -
-

- -

-
user_ulong - -
-Retrieves an unsigned long value stored in user space -
-See -function::user_ulong(3stap) - -
 for details. -
-

- -

-
user_ulong_warn - -
-Retrieves an unsigned long value stored in user space -
-See -function::user_ulong_warn(3stap) - -
 for details. -
-

- -

-
user_int8_error - -
-Retrieves a 8-bit integer value stored in user space -
-See -function::user_int8_error(3stap) - -
 for details. -
-

- -

-
user_int8 - -
-Retrieves a 8-bit integer value stored in user space -
-See -function::user_int8(3stap) - -
 for details. -
-

- -

-
user_uint8_error - -
-Retrieves a unsigned 8-bit integer value stored in user space -
-See -function::user_uint8_error(3stap) - -
 for details. -
-

- -

-
user_uint8 - -
-Retrieves a unsigned 8-bit integer value stored in user space -
-See -function::user_uint8(3stap) - -
 for details. -
-

- -

-
user_int16_error - -
-Retrieves a 16-bit integer value stored in user space -
-See -function::user_int16_error(3stap) - -
 for details. -
-

- -

-
user_int16 - -
-Retrieves a 16-bit integer value stored in user space -
-See -function::user_int16(3stap) - -
 for details. -
-

- -

-
user_uint16_error - -
-Retrieves an unsigned 16-bit integer value stored in user space -
-See -function::user_uint16_error(3stap) - -
 for details. -
-

- -

-
user_uint16 - -
-Retrieves an unsigned 16-bit integer value stored in user space -
-See -function::user_uint16(3stap) - -
 for details. -
-

- -

-
user_int32_error - -
-Retrieves a 32-bit integer value stored in user space -
-See -function::user_int32_error(3stap) - -
 for details. -
-

- -

-
user_int32 - -
-Retrieves a 32-bit integer value stored in user space -
-See -function::user_int32(3stap) - -
 for details. -
-

- -

-
user_uint32_error - -
-Retrieves an unsigned 32-bit integer value stored in user space -
-See -function::user_uint32_error(3stap) - -
 for details. -
-

- -

-
user_uint32 - -
-Retrieves an unsigned 32-bit integer value stored in user space -
-See -function::user_uint32(3stap) - -
 for details. -
-

- -

-
user_int64_error - -
-Retrieves a 64-bit integer value stored in user space -
-See -function::user_int64_error(3stap) - -
 for details. -
-

- -

-
user_int64 - -
-Retrieves a 64-bit integer value stored in user space -
-See -function::user_int64(3stap) - -
 for details. -
-

- -

-
user_uint64_error - -
-Retrieves an unsigned 64-bit integer value stored in user space -
-See -function::user_uint64_error(3stap) - -
 for details. -
-

- -

-
user_uint64 - -
-Retrieves an unsigned 64-bit integer value stored in user space -
-See -function::user_uint64(3stap) - -
 for details. -
-

- -

-
user_buffer_quoted - -
-Retrieves and quotes buffer from user space -
-See -function::user_buffer_quoted(3stap) - -
 for details. -
-

- -

-
user_buffer_quoted_error - -
-Retrieves and quotes buffer from user space -
-See -function::user_buffer_quoted_error(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -function::user_string(3stap), - - -function::user_string_warn(3stap), - - -function::user_string_quoted(3stap), - - -function::user_string_n(3stap), - - -function::user_string_n_warn(3stap), - - -function::user_string_n_quoted(3stap), - - -function::user_string_utf32(3stap), - - -function::user_string_quoted_utf32(3stap), - - -function::user_string_utf16(3stap), - - -function::user_string_quoted_utf16(3stap), - - -function::user_char_error(3stap), - - -function::user_char(3stap), - - -function::user_char_warn(3stap), - - -function::user_short_error(3stap), - - -function::user_short(3stap), - - -function::user_short_warn(3stap), - - -function::user_ushort_error(3stap), - - -function::user_ushort(3stap), - - -function::user_ushort_warn(3stap), - - -function::user_int_error(3stap), - - -function::user_int(3stap), - - -function::user_int_warn(3stap), - - -function::user_long_error(3stap), - - -function::user_long(3stap), - - -function::user_long_warn(3stap), - - -function::user_ulong_error(3stap), - - -function::user_ulong(3stap), - - -function::user_ulong_warn(3stap), - - -function::user_int8_error(3stap), - - -function::user_int8(3stap), - - -function::user_uint8_error(3stap), - - -function::user_uint8(3stap), - - -function::user_int16_error(3stap), - - -function::user_int16(3stap), - - -function::user_uint16_error(3stap), - - -function::user_uint16(3stap), - - -function::user_int32_error(3stap), - - -function::user_int32(3stap), - - -function::user_uint32_error(3stap), - - -function::user_uint32(3stap), - - -function::user_int64_error(3stap), - - -function::user_int64(3stap), - - -function::user_uint64_error(3stap), - - -function::user_uint64(3stap), - - -function::user_buffer_quoted(3stap), - - -function::user_buffer_quoted_error(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/tapset::udp.3stap.html b/man/tapset::udp.3stap.html deleted file mode 100644 index f65b8c57..00000000 --- a/man/tapset::udp.3stap.html +++ /dev/null @@ -1,142 +0,0 @@ - -Manpage of TAPSET::UDP - -

TAPSET::UDP

-Section: Misc. Reference Manual Pages (3stap)
Updated: June 2020
Index -Return to Main Contents
- -  -

NAME

- -tapset::udp - systemtap udp tapset -
  -  -

DESCRIPTION

- -

-
 This family of probe points is used to probe events that occur in the UDP layer.  -

-

-
-

- -

-
-
udp.sendmsg - -
-Fires whenever a process sends a UDP message -
-
 See  -probe::udp.sendmsg(3stap) - -
 for details. -
-

- -

-
udp.sendmsg.return - -
-Fires whenever an attempt to send a UDP message is completed -
-
 See  -probe::udp.sendmsg.return(3stap) - -
 for details. -
-

- -

-
udp.recvmsg - -
-Fires whenever a UDP message is received -
-
 See  -probe::udp.recvmsg(3stap) - -
 for details. -
-

- -

-
udp.recvmsg.return - -
-Fires whenever an attempt to receive a UDP message received is completed -
-
 See  -probe::udp.recvmsg.return(3stap) - -
 for details. -
-

- -

-
udp.disconnect - -
-Fires when a process requests for a UDP disconnection -
-
 See  -probe::udp.disconnect(3stap) - -
 for details. -
-

- -

-
udp.disconnect.return - -
-UDP has been disconnected successfully -
-
 See  -probe::udp.disconnect.return(3stap) - -
 for details. -

-

-  -

SEE ALSO

- - -probe::udp.sendmsg(3stap), - - -probe::udp.sendmsg.return(3stap), - - -probe::udp.recvmsg(3stap), - - -probe::udp.recvmsg.return(3stap), - - -probe::udp.disconnect(3stap), - - -probe::udp.disconnect.return(3stap), - - -stap(1), - -stapprobes(3stap) - -

- -


- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/warning::buildid.7stap.html b/man/warning::buildid.7stap.html deleted file mode 100644 index 4980679e..00000000 --- a/man/warning::buildid.7stap.html +++ /dev/null @@ -1,117 +0,0 @@ - -Manpage of WARNING::BUILDID - -

WARNING::BUILDID

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -warning::buildid - build-id verification failures -

- - - -

-

-  -

DESCRIPTION

- -

-Because systemtap's script translation / execution stages may be -executed at different times and places, it is sometimes necessary to -verify certain invariants. One such invariant is that if a script -was informed by translate-time analysis of executables, then those -same executables need to be used at run time. This checking -is done based upon the build-id, a binary hash that modern (post-2007) -compilers/toolchains add as an -NT_GNU_BUILD_ID - -ELF note to object files and executables. -Use the -readelf -n - -command to examine the build-ids of binaries, if you are interested. -

-

- -

-Only scripts are sensitive to executables' build-ids: generally those -that perform deep analysis of the binaries or their debuginfo. For example, -scripts that place -.function or .statement - -probes, or use stack backtrace-related tapset functions may be sensitive. -Other scripts that rely only on -process.mark or kernel.trace - -probes do not require debuginfo. See the DWARF DEBUGINFO section in the -stapprobes(3stap) - -man page. -

-

- -

-During translation, systemtap saves a copy of the relevant files' -build-ids within the compiled modules. At run-time, the modules -compare the saved ones to the actual run-time build-ids in memory. -The warning message indicates that they did not match, so the module -will decline placing a probe that was computed based upon obsolete -data. This is important for safety, as placing them at an -inappropriate address could crash the programs. However, this is not -necessarily a fatal error, since probes unrelated to the mismatching -binaries may operate. -

-

- -

-A build-id mismatch could be caused by a few different situations. -The main one is where the executable versions or architecture were -different between the systemtap translation and execution -times/places. For example, one may run a stap-server on a slightly -different version of the OS distribution. Someone may have rebuilt a -new kernel image, but preserved the previous version numbers. The -kernel running on the workstation may be slightly different from the -version being targeted - perhaps due to a pending kernel upgrade -leaving different files on disk versus running in memory. If your OS -distribution uses separate debuginfo packages, the split .debug -files may not exactly match the main binaries. -

-

- -

-To disable build-id verification warnings, if one is confident that they -are an artefact of build accidents rather than a real mismatch, one -might try the --DSTP_NO_BUILDID_CHECK - -option. -

-  -

SEE ALSO

- - -
-http://fedoraproject.org/wiki/Releases/FeatureBuildId,
-stap(1),
-stapprobes(3stap),
-warning::debuginfo(7stap),
-error::reporting(7stap)
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/warning::debuginfo.7stap.html b/man/warning::debuginfo.7stap.html deleted file mode 100644 index ef369b01..00000000 --- a/man/warning::debuginfo.7stap.html +++ /dev/null @@ -1,212 +0,0 @@ - -Manpage of WARNING::DEBUGINFO - -

WARNING::DEBUGINFO

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -warning::debuginfo - systemtap missing-debuginfo warnings -

- - - -

-  -

DESCRIPTION

- -For many symbolic probing operations, systemtap needs DWARF debuginfo for -the relevant binaries. This often includes resolving function/statement -probes, or $context variables in related handlers. DWARF debuginfo is -created by the compiler when using CFLAGS -g, and may -be found in the original binaries built during compilation, or may have -been split into separate files. The -SYSTEMTAP_DEBUGINFO_PATH - -environment variable affects where systemtap looks for these files. -

- -If your operating system came from a distributor, check with them if -debuginfo packages or variants are available. If your distributor does -not have debuginfo-equipped binaries at all, you may need to rebuild it. -

- -Systemtap uses the -elfutils - -library to process ELF/DWARF files. The version of elfutils used by systemtap -is the number after the slash in the --V - -output: - -

- -
- -

-
-% stap -V
-Systemtap translator/driver (version 4.2/0.178, rpm 4.2-1.fc30)
-Copyright (C) 2005-2019 Red Hat, Inc. and others
-[...]
-
-
- -
- - -

- -This indicates systemtap version 4.2 with elfutils version 0.178. -

-New enough versions of elfutils (0.178+) enable systemtap to automatically -download correct debuginfo from servers run by you, your organization, -and/or someone on the public internet. Try: - -

- -
- -

-
-% export DEBUGINFOD_URLS=https://debuginfod.elfutils.org/
-% export DEBUGINFOD_PROGRESS=1   # for progress messages, if you like
-
-
- -
- - -

- -and rerun systemtap. It might just work. If it doesn't, read on. -

-

-
kernel debuginfo
-For scripts that target the kernel, systemtap may search for the -vmlinux - -file created during its original build. This is distinct from the -boot-loader's compressed/stripped -vmlinuz - -file, and much larger. If you have a hand-built kernel, make sure -it was built with the -CONFIG_DEBUG_INFO=y - -option. Some Linux distributions may include several kernel variants, -including a confusingly named kernel-debug (an alternative kernel, -with its own kernel-debug-debuginfo package), which is not the same -thing as the kernel-debuginfo (DWARF data for the base kernel). -The -stap-prep - -program can help install the right set. -

-

process debuginfo
-For scripts that target user-space, systemtap may search for debuginfo. -If you have hand-built binaries, use -CFLAGS=-g -O2 - -to compile them. -

-

minidebuginfo
-On some systems, binaries may be compiled with a subset of debuginfo -useful for function tracing and backtraces. This 'Minidebuginfo' is -a xz compressed section labeled .gnu_debugdata. Support for -minidebuginfo relies on elfutils version 0.156 or later. -

-

compressed debuginfo
-On some systems, debuginfo may be available, but compressed into -.zdebug_* - -sections. Support for compressed debuginfo relies on elfutils -version 0.153 or later. -

-

unnecessary debuginfo
-In some cases, a script may be altered to avoid requiring debuginfo. -For example, as script that uses -probe syscall.* - -probes could try instead -probe nd_syscall.* - -(for non-DWARF syscall): these work similarly, and use more intricate -(fragile) tapset functions to extract system call arguments. Another -option is use of compiled-in instrumentation such as kernel tracepoints -or user-space -<sys/sdt.h> - -markers in libraries or executables, which do not require debuginfo. -If debuginfo was required for resolving a complicated -$var->foo->bar - -expression, it may be possible to use -@cast(var,foo,foo.h)->foo->bar - -to synthesize debuginfo for that type from a header file. -

-

-  -

OTHER AUTOMATION

- -

-On some platforms, systemtap may advise what commands to run, in order -to download needed debuginfo. Another possibility is to invoke systemtap -with the ---download-debuginfo - -flag, which uses ABRT. -The -stap-prep - -script included with systemtap may be able to download the -appropriate kernel debuginfo. Another possibility is to install and -use a -stap-server - -remote-compilation instance on a machine on your network, where -debuginfo and compilation resources can be centralized. Try the -stap --use-server - -option, in case such a server is already running. -

-  -

SEE ALSO

- - -
-gcc(1),
-stap(1),
-stappaths(7),
-stap-server(8),
-stap-prep(1),
-strip(1),
-warning::symbols(7stap),
-error::dwarf(7stap),
-error::reporting(7stap),
-error::contextvars(7stap),
-debuginfod(8),
-http://elfutils.org/,
-https://sourceware.org/elfutils/Debuginfod.html,
-http://fedoraproject.org/wiki/Features/MiniDebugInfo
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
OTHER AUTOMATION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/man/warning::symbols.7stap.html b/man/warning::symbols.7stap.html deleted file mode 100644 index 30085a1a..00000000 --- a/man/warning::symbols.7stap.html +++ /dev/null @@ -1,92 +0,0 @@ - -Manpage of WARNING::SYMBOLS - -

WARNING::SYMBOLS

-Section: Misc. Reference Manual Pages (7stap)
Index -Return to Main Contents
- -  -

NAME

- -warning::symbols - systemtap missing-symbols warnings -

- - - -

-  -

DESCRIPTION

- -

-For some probing operations, where DWARF debugging data is not available, -systemtap needs ELF symbols for the relevant binaries. This allows at -least probe addresses to be calculated, some variables resolved, and with -@cast() and headers, maybe even some types. -

-

-
kernel symbol table
-Systemtap may need a linux-build style System.map file to find -addresses of kernel functions/data. It may be possible to create it -by hand: - -

- -
- -

-
-% su
-# cp /proc/kallsyms /boot/System.map-`uname -r`
-or
-# nm /lib/modules/`uname -r`/build/vmlinux > /boot/System.map-`uname -r`
-
-
- -
- - -

- -

-

minisymbols
-On some systems, binaries may be compiled with a subset of symbols -useful for function tracing and backtraces. This 'Minisymbols' is -a xz compressed section labeled .gnu_debugdata. Support for -minisymbols relies on elfutils version 0.156 or later. -

-

compressed symbols
-On some systems, symbols may be available, but compressed into -.zdebug_* - -sections. Support for compressed symbols relies on elfutils -version 0.153 or later. -

-

-  -

SEE ALSO

- - -
-stap(1),
-stappaths(7),
-strip(1),
-warning::debuginfo(7stap),
-error::dwarf(7stap),
-error::reporting(7stap),
-http://fedoraproject.org/wiki/Features/MiniDebugInfo
-
-
-
- 

Index

-
-
NAME
-
DESCRIPTION
-
SEE ALSO
-
-
-This document was created by -man2html, -using the manual pages.
-Time: 15:23:49 GMT, June 11, 2020 - - diff --git a/tapsets/API-HZ.html b/tapsets/API-HZ.html index eb54534e..0645983c 100644 --- a/tapsets/API-HZ.html +++ b/tapsets/API-HZ.html @@ -2,9 +2,9 @@ Kernel HZ

Synopsis

     HZ:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the value of the kernel HZ macro, which corresponds to the rate of increase of the jiffies value.

diff --git a/tapsets/API-MAJOR.html b/tapsets/API-MAJOR.html index dbc558e1..9cb5d088 100644 --- a/tapsets/API-MAJOR.html +++ b/tapsets/API-MAJOR.html @@ -2,6 +2,6 @@ Extract major device number from a kernel device number (kdev_t)

Synopsis

     MAJOR:long(dev:long)
-

Arguments

dev

+

Arguments

dev

Kernel device number to query.

diff --git a/tapsets/API-MINOR.html b/tapsets/API-MINOR.html index 659791a5..6f7735d4 100644 --- a/tapsets/API-MINOR.html +++ b/tapsets/API-MINOR.html @@ -2,6 +2,6 @@ Extract minor device number from a kernel device number (kdev_t)

Synopsis

     MINOR:long(dev:long)
-

Arguments

dev

+

Arguments

dev

Kernel device number to query.

diff --git a/tapsets/API-MKDEV.html b/tapsets/API-MKDEV.html index 194b28c4..4345b755 100644 --- a/tapsets/API-MKDEV.html +++ b/tapsets/API-MKDEV.html @@ -2,7 +2,7 @@ Creates a value that can be compared to a kernel device number (kdev_t)

Synopsis

     MKDEV:long(major:long,minor:long)
-

Arguments

major

+

Arguments

major

Intended major device number.

minor

Intended minor device number. diff --git a/tapsets/API-abort.html b/tapsets/API-abort.html index 2a260935..ef263248 100644 --- a/tapsets/API-abort.html +++ b/tapsets/API-abort.html @@ -2,9 +2,9 @@ Immediately shutting down probing script.

Synopsis

     abort()
-

Arguments

+

Arguments

None -

Description

+

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, diff --git a/tapsets/API-addr-to-node.html b/tapsets/API-addr-to-node.html index 4910d9fd..e0d1d2bb 100644 --- a/tapsets/API-addr-to-node.html +++ b/tapsets/API-addr-to-node.html @@ -2,9 +2,9 @@ Returns which node a given address belongs to within a NUMA system

Synopsis

     addr_to_node:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the address of the faulting memory access -

Description

+

Description

This function accepts an address, and returns the node that the given address belongs to in a NUMA system.

diff --git a/tapsets/API-addr.html b/tapsets/API-addr.html index 6d577d0e..70047221 100644 --- a/tapsets/API-addr.html +++ b/tapsets/API-addr.html @@ -2,9 +2,9 @@ Address of the current probe point.

Synopsis

     addr:long()
-

Arguments

+

Arguments

None -

Description

+

Description

Returns the instruction pointer from the current probe's register state. Not all probe types have registers though, in which case zero is returned. The returned address is suitable for use with functions diff --git a/tapsets/API-ansi-clear-screen.html b/tapsets/API-ansi-clear-screen.html index 0824478f..67242f6f 100644 --- a/tapsets/API-ansi-clear-screen.html +++ b/tapsets/API-ansi-clear-screen.html @@ -2,9 +2,9 @@ Move cursor to top left and clear screen.

Synopsis

     ansi_clear_screen()
-

Arguments

+

Arguments

None -

Description

+

Description

Sends ansi code for moving cursor to top left and then the ansi code for clearing the screen from the cursor position to the end.

diff --git a/tapsets/API-ansi-cursor-hide.html b/tapsets/API-ansi-cursor-hide.html index fa0e78c8..e0b71403 100644 --- a/tapsets/API-ansi-cursor-hide.html +++ b/tapsets/API-ansi-cursor-hide.html @@ -2,8 +2,8 @@ Hides the cursor.

Synopsis

     ansi_cursor_hide()
-

Arguments

+

Arguments

None -

Description

+

Description

Sends ansi code for hiding the cursor.

diff --git a/tapsets/API-ansi-cursor-move.html b/tapsets/API-ansi-cursor-move.html index 37e9e03d..94f520d4 100644 --- a/tapsets/API-ansi-cursor-move.html +++ b/tapsets/API-ansi-cursor-move.html @@ -2,11 +2,11 @@ Move cursor to new coordinates.

Synopsis

     ansi_cursor_move(x:long,y:long)
-

Arguments

x

+

Arguments

x

Row to move the cursor to.

y

Colomn to move the cursor to. -

Description

+

Description

Sends ansi code for positioning the cursor at row x and column y. Coordinates start at one, (1,1) is the top-left corner.

diff --git a/tapsets/API-ansi-cursor-restore.html b/tapsets/API-ansi-cursor-restore.html index 468ebc98..2018565d 100644 --- a/tapsets/API-ansi-cursor-restore.html +++ b/tapsets/API-ansi-cursor-restore.html @@ -2,9 +2,9 @@ Restores a previously saved cursor position.

Synopsis

     ansi_cursor_restore()
-

Arguments

+

Arguments

None -

Description

+

Description

Sends ansi code for restoring the current cursor position previously saved with ansi_cursor_save.

diff --git a/tapsets/API-ansi-cursor-save.html b/tapsets/API-ansi-cursor-save.html index 627e10a7..415e7205 100644 --- a/tapsets/API-ansi-cursor-save.html +++ b/tapsets/API-ansi-cursor-save.html @@ -2,8 +2,8 @@ Saves the cursor position.

Synopsis

     ansi_cursor_save()
-

Arguments

+

Arguments

None -

Description

+

Description

Sends ansi code for saving the current cursor position.

diff --git a/tapsets/API-ansi-cursor-show.html b/tapsets/API-ansi-cursor-show.html index 92f0a211..ec8a9262 100644 --- a/tapsets/API-ansi-cursor-show.html +++ b/tapsets/API-ansi-cursor-show.html @@ -2,8 +2,8 @@ Shows the cursor.

Synopsis

     ansi_cursor_show()
-

Arguments

+

Arguments

None -

Description

+

Description

Sends ansi code for showing the cursor.

diff --git a/tapsets/API-ansi-new-line.html b/tapsets/API-ansi-new-line.html index 5784ec74..03b6aebe 100644 --- a/tapsets/API-ansi-new-line.html +++ b/tapsets/API-ansi-new-line.html @@ -2,8 +2,8 @@ Move cursor to new line.

Synopsis

     ansi_new_line()
-

Arguments

+

Arguments

None -

Description

+

Description

Sends ansi code new line.

diff --git a/tapsets/API-ansi-reset-color.html b/tapsets/API-ansi-reset-color.html index 55868d33..410b105d 100644 --- a/tapsets/API-ansi-reset-color.html +++ b/tapsets/API-ansi-reset-color.html @@ -2,9 +2,9 @@ Resets Select Graphic Rendition mode.

Synopsis

     ansi_reset_color()
-

Arguments

+

Arguments

None -

Description

+

Description

Sends ansi code to reset foreground, background and color attribute to default values.

diff --git a/tapsets/API-ansi-set-color.html b/tapsets/API-ansi-set-color.html index 0d312bc8..d133208a 100644 --- a/tapsets/API-ansi-set-color.html +++ b/tapsets/API-ansi-set-color.html @@ -1,12 +1,12 @@ function::ansi_set_color

Name

function::ansi_set_color — Set the ansi Select Graphic Rendition mode. -

Synopsis

1) ansi_set_color(fg:long)
2) ansi_set_color(fg:long,bg:long)
3) ansi_set_color(fg:long,bg:long,attr:long)

Arguments

fg

+

Synopsis

1) ansi_set_color(fg:long)
2) ansi_set_color(fg:long,bg:long)
3) ansi_set_color(fg:long,bg:long,attr:long)

Arguments

fg

Foreground color to set.

bg

Background color to set.

attr

Color attribute to set. -

Description

1) Sends ansi code for Select Graphic Rendition mode for the +

Description

1) Sends ansi code for Select Graphic Rendition mode for the given forground color. Black (30), Blue (34), Green (32), Cyan (36), Red (31), Purple (35), Brown (33), Light Gray (37).

2) Sends ansi code for Select Graphic Rendition mode for the given forground color, Black (30), Blue (34), Green (32), Cyan (36), diff --git a/tapsets/API-asmlinkage.html b/tapsets/API-asmlinkage.html index 468a2d03..9e9a1e0a 100644 --- a/tapsets/API-asmlinkage.html +++ b/tapsets/API-asmlinkage.html @@ -2,9 +2,9 @@ Mark function as declared asmlinkage

Synopsis

     asmlinkage()
-

Arguments

+

Arguments

None -

Description

+

Description

Call this function before accessing arguments using the *_arg functions if the probed kernel function was declared asmlinkage in the source. diff --git a/tapsets/API-assert.html b/tapsets/API-assert.html index 1ff4ba07..fc0dbc07 100644 --- a/tapsets/API-assert.html +++ b/tapsets/API-assert.html @@ -1,10 +1,10 @@ function::assert

Name

function::assert — evaluate assertion -

Synopsis

1) assert(expression:long)
2) assert(expression:long,msg:string)

Arguments

expression

+

Synopsis

1) assert(expression:long)
2) assert(expression:long,msg:string)

Arguments

expression

The expression to evaluate

msg

The formatted message string -

Description

1) This function checks the expression and aborts the +

Description

1) This function checks the expression and aborts the current running probe if expression evaluates to zero. Useserror and may be caught by try{} catch{}. A default message will be displayed. diff --git a/tapsets/API-atomic-long-read.html b/tapsets/API-atomic-long-read.html index 57423a22..39687a89 100644 --- a/tapsets/API-atomic-long-read.html +++ b/tapsets/API-atomic-long-read.html @@ -2,9 +2,9 @@ Retrieves an atomic long variable from kernel memory

Synopsis

     atomic_long_read:long(addr:long)
-

Arguments

addr

+

Arguments

addr

pointer to atomic long variable -

Description

+

Description

Safely perform the read of an atomic long variable. This will be a NOP on kernels that do not have ATOMIC_LONG_INIT set on the kernel config.

diff --git a/tapsets/API-atomic-read.html b/tapsets/API-atomic-read.html index c63646e0..42e7f5e6 100644 --- a/tapsets/API-atomic-read.html +++ b/tapsets/API-atomic-read.html @@ -2,8 +2,8 @@ Retrieves an atomic variable from kernel memory

Synopsis

     atomic_read:long(addr:long)
-

Arguments

addr

+

Arguments

addr

pointer to atomic variable -

Description

+

Description

Safely perform the read of an atomic variable.

diff --git a/tapsets/API-backtrace.html b/tapsets/API-backtrace.html index d1463c41..f163bc92 100644 --- a/tapsets/API-backtrace.html +++ b/tapsets/API-backtrace.html @@ -2,9 +2,9 @@ Hex backtrace of current kernel stack

Synopsis

     backtrace:string()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns a string of hex addresses that are a backtrace of the kernel stack. Output may be truncated as per maximum string length (MAXSTRINGLEN). See diff --git a/tapsets/API-bytes-to-string.html b/tapsets/API-bytes-to-string.html index d5e09147..61b83221 100644 --- a/tapsets/API-bytes-to-string.html +++ b/tapsets/API-bytes-to-string.html @@ -2,9 +2,9 @@ Human readable string for given bytes

Synopsis

     bytes_to_string:string(bytes:long)
-

Arguments

bytes

+

Arguments

bytes

Number of bytes to translate. -

Description

+

Description

Returns a string representing the number of bytes (up to 1024 bytes), the number of kilobytes (when less than 1024K) postfixed by 'K', the number of megabytes (when less than 1024M) diff --git a/tapsets/API-caller-addr.html b/tapsets/API-caller-addr.html index 2009de2b..330a2a12 100644 --- a/tapsets/API-caller-addr.html +++ b/tapsets/API-caller-addr.html @@ -2,8 +2,8 @@ Return caller address

Synopsis

     caller_addr:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the address of the calling function.

diff --git a/tapsets/API-caller.html b/tapsets/API-caller.html index 08ffa231..7ead9483 100644 --- a/tapsets/API-caller.html +++ b/tapsets/API-caller.html @@ -2,9 +2,9 @@ Return name and address of calling function

Synopsis

     caller:string()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the address and name of the calling function. This is equivalent to calling: sprintf("s 0xx", symname(caller_addr), caller_addr) diff --git a/tapsets/API-callers.html b/tapsets/API-callers.html index 84042a53..b26fcd2c 100644 --- a/tapsets/API-callers.html +++ b/tapsets/API-callers.html @@ -2,10 +2,10 @@ Return first n elements of kernel stack backtrace

Synopsis

     callers:string(n:long)
-

Arguments

n

+

Arguments

n

number of levels to descend in the stack (not counting the top level). If n is -1, print the entire stack. -

Description

+

Description

This function returns a string of the first n hex addresses from the backtrace of the kernel stack. Output may be truncated as per maximum string length (MAXSTRINGLEN). diff --git a/tapsets/API-cmdline-arg.html b/tapsets/API-cmdline-arg.html index eb05b7bf..a8abd98a 100644 --- a/tapsets/API-cmdline-arg.html +++ b/tapsets/API-cmdline-arg.html @@ -2,9 +2,9 @@ Fetch a command line argument

Synopsis

     cmdline_arg:string(n:long)
-

Arguments

n

+

Arguments

n

Argument to get (zero is the program itself) -

Description

+

Description

Returns argument the requested argument from the current process or the empty string when there are not that many arguments or there is a problem retrieving the argument. Argument diff --git a/tapsets/API-cmdline-args.html b/tapsets/API-cmdline-args.html index 1c7bb3fa..2437fbe0 100644 --- a/tapsets/API-cmdline-args.html +++ b/tapsets/API-cmdline-args.html @@ -2,13 +2,13 @@ Fetch command line arguments from current process

Synopsis

     cmdline_args:string(n:long,m:long,delim:string)
-

Arguments

n

+

Arguments

n

First argument to get (zero is normally the program itself)

m

Last argument to get (or minus one for all arguments after n)

delim

String to use to separate arguments when more than one. -

Description

+

Description

Returns arguments from the current process starting with argument number n, up to argument m. If there are less than n arguments, or the arguments cannot be retrieved from the current diff --git a/tapsets/API-cmdline-str.html b/tapsets/API-cmdline-str.html index 69ea5f3a..1296ecb6 100644 --- a/tapsets/API-cmdline-str.html +++ b/tapsets/API-cmdline-str.html @@ -2,9 +2,9 @@ Fetch all command line arguments from current process

Synopsis

     cmdline_str:string()
-

Arguments

+

Arguments

None -

Description

+

Description

Returns all arguments from the current process delimited by spaces. Returns the empty string when the arguments cannot be retrieved. diff --git a/tapsets/API-commit.html b/tapsets/API-commit.html index cde17080..c5981541 100644 --- a/tapsets/API-commit.html +++ b/tapsets/API-commit.html @@ -2,9 +2,9 @@ Write out all output related to a speculation buffer

Synopsis

     commit(id:long)
-

Arguments

id

+

Arguments

id

of the buffer to store the information in -

Description

+

Description

Output all the output for id in the order that it was entered into the speculative buffer by speculative.

diff --git a/tapsets/API-cpu-clock-ms.html b/tapsets/API-cpu-clock-ms.html index 87282d17..e6d9c410 100644 --- a/tapsets/API-cpu-clock-ms.html +++ b/tapsets/API-cpu-clock-ms.html @@ -2,9 +2,9 @@ Number of milliseconds on the given cpu's clock

Synopsis

     cpu_clock_ms:long(cpu:long)
-

Arguments

cpu

+

Arguments

cpu

Which processor's clock to read -

Description

+

Description

This function returns the number of milliseconds on the given cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). diff --git a/tapsets/API-cpu-clock-ns.html b/tapsets/API-cpu-clock-ns.html index 69b896f9..306d80f6 100644 --- a/tapsets/API-cpu-clock-ns.html +++ b/tapsets/API-cpu-clock-ns.html @@ -2,9 +2,9 @@ Number of nanoseconds on the given cpu's clock

Synopsis

     cpu_clock_ns:long(cpu:long)
-

Arguments

cpu

+

Arguments

cpu

Which processor's clock to read -

Description

+

Description

This function returns the number of nanoseconds on the given cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). diff --git a/tapsets/API-cpu-clock-s.html b/tapsets/API-cpu-clock-s.html index f906c029..b35bca98 100644 --- a/tapsets/API-cpu-clock-s.html +++ b/tapsets/API-cpu-clock-s.html @@ -2,9 +2,9 @@ Number of seconds on the given cpu's clock

Synopsis

     cpu_clock_s:long(cpu:long)
-

Arguments

cpu

+

Arguments

cpu

Which processor's clock to read -

Description

+

Description

This function returns the number of seconds on the given cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). diff --git a/tapsets/API-cpu-clock-us.html b/tapsets/API-cpu-clock-us.html index fd24e447..591c09e3 100644 --- a/tapsets/API-cpu-clock-us.html +++ b/tapsets/API-cpu-clock-us.html @@ -2,9 +2,9 @@ Number of microseconds on the given cpu's clock

Synopsis

     cpu_clock_us:long(cpu:long)
-

Arguments

cpu

+

Arguments

cpu

Which processor's clock to read -

Description

+

Description

This function returns the number of microseconds on the given cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). diff --git a/tapsets/API-cpu.html b/tapsets/API-cpu.html index 7d0068a8..1d33da6c 100644 --- a/tapsets/API-cpu.html +++ b/tapsets/API-cpu.html @@ -2,8 +2,8 @@ Returns the current cpu number

Synopsis

     cpu:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the current cpu number.

diff --git a/tapsets/API-cpuid.html b/tapsets/API-cpuid.html index 6440f793..ab26033e 100644 --- a/tapsets/API-cpuid.html +++ b/tapsets/API-cpuid.html @@ -2,9 +2,9 @@ Returns the current cpu number

Synopsis

     cpuid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the current cpu number. Deprecated in SystemTap 1.4 and removed in SystemTap 1.5.

diff --git a/tapsets/API-cputime-to-msecs.html b/tapsets/API-cputime-to-msecs.html index c0d9fbc6..41b8b7d3 100644 --- a/tapsets/API-cputime-to-msecs.html +++ b/tapsets/API-cputime-to-msecs.html @@ -2,6 +2,6 @@ Translates the given cputime into milliseconds

Synopsis

     cputime_to_msecs:long(cputime:long)
-

Arguments

cputime

+

Arguments

cputime

Time to convert to milliseconds.

diff --git a/tapsets/API-cputime-to-string.html b/tapsets/API-cputime-to-string.html index 0bede336..29b763a9 100644 --- a/tapsets/API-cputime-to-string.html +++ b/tapsets/API-cputime-to-string.html @@ -2,9 +2,9 @@ Human readable string for given cputime

Synopsis

     cputime_to_string:string(cputime:long)
-

Arguments

cputime

+

Arguments

cputime

Time to translate. -

Description

+

Description

Equivalent to calling: msec_to_string (cputime_to_msecs (cputime).

diff --git a/tapsets/API-cputime-to-usecs.html b/tapsets/API-cputime-to-usecs.html index 0dd42d64..78257b7b 100644 --- a/tapsets/API-cputime-to-usecs.html +++ b/tapsets/API-cputime-to-usecs.html @@ -2,6 +2,6 @@ Translates the given cputime into microseconds

Synopsis

     cputime_to_usecs:long(cputime:long)
-

Arguments

cputime

+

Arguments

cputime

Time to convert to microseconds.

diff --git a/tapsets/API-ctime.html b/tapsets/API-ctime.html index 2017e9c6..d2e5c307 100644 --- a/tapsets/API-ctime.html +++ b/tapsets/API-ctime.html @@ -1,8 +1,8 @@ function::ctime

Name

function::ctime — Convert seconds since epoch into human readable date/time string -

Synopsis

1) ctime:string(epochsecs:long)
2) ctime:string()

Arguments

epochsecs

+

Synopsis

1) ctime:string(epochsecs:long)
2) ctime:string()

Arguments

epochsecs

Number of seconds since epoch (as returned by gettimeofday_s) -

Description

1) Takes an argument of seconds since the epoch as returned bygettimeofday_s. Returns a string of the form +

Description

1) Takes an argument of seconds since the epoch as returned bygettimeofday_s. Returns a string of the form

2) “Wed Jun 30 21:49:08 1993”

diff --git a/tapsets/API-current-exe-file.html b/tapsets/API-current-exe-file.html index 313ad88b..2b0da48b 100644 --- a/tapsets/API-current-exe-file.html +++ b/tapsets/API-current-exe-file.html @@ -2,9 +2,9 @@ get the file struct pointer for the current task's executable file

Synopsis

     current_exe_file:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the file struct pointer for the current task's executable file. Note that the file struct pointer isn't locked on return. The return value of this function can be diff --git a/tapsets/API-d-name.html b/tapsets/API-d-name.html index 20225019..1c05d2b9 100644 --- a/tapsets/API-d-name.html +++ b/tapsets/API-d-name.html @@ -2,9 +2,9 @@ get the dirent name

Synopsis

     d_name:string(dentry:long)
-

Arguments

dentry

+

Arguments

dentry

Pointer to dentry. -

Description

+

Description

Returns the dirent name (path basename). diff --git a/tapsets/API-d-path.html b/tapsets/API-d-path.html index 86ae5d33..a303fc6b 100644 --- a/tapsets/API-d-path.html +++ b/tapsets/API-d-path.html @@ -2,9 +2,9 @@ get the full nameidata path

Synopsis

     d_path:string(nd:long)
-

Arguments

nd

+

Arguments

nd

Pointer to nameidata. -

Description

+

Description

Returns the full dirent name (full path to the root), like diff --git a/tapsets/API-delete-stopwatch.html b/tapsets/API-delete-stopwatch.html index 74b5e637..5729adae 100644 --- a/tapsets/API-delete-stopwatch.html +++ b/tapsets/API-delete-stopwatch.html @@ -2,8 +2,8 @@ Remove an existing stopwatch

Synopsis

     delete_stopwatch(name:string)
-

Arguments

name

+

Arguments

name

the stopwatch name -

Description

+

Description

Remove stopwatch name.

diff --git a/tapsets/API-discard.html b/tapsets/API-discard.html index e3b89675..7c45bc4e 100644 --- a/tapsets/API-discard.html +++ b/tapsets/API-discard.html @@ -2,6 +2,6 @@ Discard all output related to a speculation buffer

Synopsis

     discard(id:long)
-

Arguments

id

+

Arguments

id

of the buffer to store the information in

diff --git a/tapsets/API-dump-stack.html b/tapsets/API-dump-stack.html index 8df2105c..132db7d7 100644 --- a/tapsets/API-dump-stack.html +++ b/tapsets/API-dump-stack.html @@ -2,9 +2,9 @@ Send the kernel backtrace to the kernel trace buffer

Synopsis

     dump_stack()
-

Arguments

+

Arguments

None -

Description

+

Description

Print the current kernel backtrace to the kernel trace buffer. not be safely called from all kernel probe contexts, so is restricted to guru mode only. Under the hood, it calls the kernel C API diff --git a/tapsets/API-egid.html b/tapsets/API-egid.html index 0a6e69ae..d667ca5c 100644 --- a/tapsets/API-egid.html +++ b/tapsets/API-egid.html @@ -2,8 +2,8 @@ Returns the effective gid of a target process

Synopsis

     egid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the effective gid of a target process

diff --git a/tapsets/API-env-var.html b/tapsets/API-env-var.html index 6b34ed22..de3f3d11 100644 --- a/tapsets/API-env-var.html +++ b/tapsets/API-env-var.html @@ -2,9 +2,9 @@ Fetch environment variable from current process

Synopsis

     env_var:string(name:string)
-

Arguments

name

+

Arguments

name

Name of the environment variable to fetch -

Description

+

Description

Returns the contents of the specified environment value for the current process. If the variable isn't set an empty string is returned. diff --git a/tapsets/API-errno-str.html b/tapsets/API-errno-str.html index 0f92e96d..5ce1e0bf 100644 --- a/tapsets/API-errno-str.html +++ b/tapsets/API-errno-str.html @@ -2,9 +2,9 @@ Symbolic string associated with error code

Synopsis

     errno_str:string(err:long)
-

Arguments

err

+

Arguments

err

The error number received -

Description

+

Description

This function returns the symbolic string associated with the giver error code, such as ENOENT for the number 2, or E#3333 for an out-of-range value such as 3333. diff --git a/tapsets/API-error.html b/tapsets/API-error.html index a4ac528a..fda42484 100644 --- a/tapsets/API-error.html +++ b/tapsets/API-error.html @@ -2,9 +2,9 @@ Send an error message

Synopsis

     error(msg:string)
-

Arguments

msg

+

Arguments

msg

The formatted message string -

Description

+

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 diff --git a/tapsets/API-euid.html b/tapsets/API-euid.html index fbc12e05..c1287c53 100644 --- a/tapsets/API-euid.html +++ b/tapsets/API-euid.html @@ -2,8 +2,8 @@ Return the effective uid of a target process

Synopsis

     euid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

Returns the effective user ID of the target process.

diff --git a/tapsets/API-execname.html b/tapsets/API-execname.html index 09f5530b..7a1f413f 100644 --- a/tapsets/API-execname.html +++ b/tapsets/API-execname.html @@ -2,8 +2,8 @@ Returns the execname of a target process (or group of processes)

Synopsis

     execname:string()
-

Arguments

+

Arguments

None -

Description

+

Description

Returns the execname of a target process (or group of processes).

diff --git a/tapsets/API-exit.html b/tapsets/API-exit.html index b7cb2ec9..7af2705d 100644 --- a/tapsets/API-exit.html +++ b/tapsets/API-exit.html @@ -2,9 +2,9 @@ Start shutting down probing script.

Synopsis

     exit()
-

Arguments

+

Arguments

None -

Description

+

Description

This only enqueues a request to start shutting down the script. New probes will not fire (except “end” probes), but all currently diff --git a/tapsets/API-fastcall.html b/tapsets/API-fastcall.html index bcae6e50..5e9a2cf1 100644 --- a/tapsets/API-fastcall.html +++ b/tapsets/API-fastcall.html @@ -2,9 +2,9 @@ Mark function as declared fastcall

Synopsis

     fastcall()
-

Arguments

+

Arguments

None -

Description

+

Description

Call this function before accessing arguments using the *_arg functions if the probed kernel function was declared fastcall in the source. diff --git a/tapsets/API-format-ipaddr.html b/tapsets/API-format-ipaddr.html index 74bfb752..a62c21d6 100644 --- a/tapsets/API-format-ipaddr.html +++ b/tapsets/API-format-ipaddr.html @@ -2,7 +2,7 @@ Returns a string representation for an IP address

Synopsis

     format_ipaddr:string(addr:long,family:long)
-

Arguments

addr

+

Arguments

addr

the IP address

family

the IP address family (either AF_INET or AF_INET6) diff --git a/tapsets/API-fp-add.html b/tapsets/API-fp-add.html new file mode 100644 index 00000000..83163826 --- /dev/null +++ b/tapsets/API-fp-add.html @@ -0,0 +1,11 @@ +function::fp_add

Name

function::fp_add — + Addition between floating points +

Synopsis

+    fp_add:long(add1:long,add2:long)
+

Arguments

add1

+ the 64 bit floating point addend +

add2

+ second 64 bit floating point addend +

Description

+ Given addend 1 and addend 2, apply floating point adding +

diff --git a/tapsets/API-fp-eq.html b/tapsets/API-fp-eq.html new file mode 100644 index 00000000..e96a19ed --- /dev/null +++ b/tapsets/API-fp-eq.html @@ -0,0 +1,11 @@ +function::fp_eq

Name

function::fp_eq — + fp comparison function equal +

Synopsis

+    fp_eq:long(infp1:long,infp2:long)
+

Arguments

infp1

+ the 64 bit floating point input +

infp2

+ second 64 bit floating point input +

Description

+ check if infp1 is equal to infp2 +

diff --git a/tapsets/API-fp-le.html b/tapsets/API-fp-le.html new file mode 100644 index 00000000..54073041 --- /dev/null +++ b/tapsets/API-fp-le.html @@ -0,0 +1,11 @@ +function::fp_le

Name

function::fp_le — + Check if first fp is less than or equal to +

Synopsis

+    fp_le:long(infp1:long,infp2:long)
+

Arguments

infp1

+ the 64 bit floating point input +

infp2

+ second 64 bit floating point input +

Description

+ check if infp1 is less than or equal to infp2 +

diff --git a/tapsets/API-fp-lt.html b/tapsets/API-fp-lt.html new file mode 100644 index 00000000..55d72435 --- /dev/null +++ b/tapsets/API-fp-lt.html @@ -0,0 +1,11 @@ +function::fp_lt

Name

function::fp_lt — + fp comparison function less than +

Synopsis

+    fp_lt:long(infp1:long,infp2:long)
+

Arguments

infp1

+ the 64 bit floating point input +

infp2

+ second 64 bit floating point input +

Description

+ check if infp1 is strictly less than infp2 +

diff --git a/tapsets/API-fp-mul.html b/tapsets/API-fp-mul.html new file mode 100644 index 00000000..e022fed2 --- /dev/null +++ b/tapsets/API-fp-mul.html @@ -0,0 +1,11 @@ +function::fp_mul

Name

function::fp_mul — + Multiplication between floating points +

Synopsis

+    fp_mul:long(mul1:long,mul2:long)
+

Arguments

mul1

+ the 64 bit floating point multiplicand +

mul2

+ 64 bit floating point multiplier +

Description

+ result is multiplicand times multiplier +

diff --git a/tapsets/API-fp-rem.html b/tapsets/API-fp-rem.html new file mode 100644 index 00000000..9de8db33 --- /dev/null +++ b/tapsets/API-fp-rem.html @@ -0,0 +1,11 @@ +function::fp_rem

Name

function::fp_rem — + Floating point division +

Synopsis

+    fp_rem:long(div1:long,div2:long)
+

Arguments

div1

+ the 64 bit floating point dividend +

div2

+ 64 bit floating point divisor +

Description

+ result would be the remainder after divisor divides dividend +

diff --git a/tapsets/API-fp-sqrt.html b/tapsets/API-fp-sqrt.html new file mode 100644 index 00000000..5070eb16 --- /dev/null +++ b/tapsets/API-fp-sqrt.html @@ -0,0 +1,9 @@ +function::fp_sqrt

Name

function::fp_sqrt — + Floating point square root +

Synopsis

+    fp_sqrt:long(infp:long)
+

Arguments

infp

+ the 64 bit floating point input +

Description

+ apply sqrt to input floating point +

diff --git a/tapsets/API-fp-sub.html b/tapsets/API-fp-sub.html new file mode 100644 index 00000000..8a5c5ebc --- /dev/null +++ b/tapsets/API-fp-sub.html @@ -0,0 +1,11 @@ +function::fp_sub

Name

function::fp_sub — + Subtraction between floating points +

Synopsis

+    fp_sub:long(sub1:long,sub2:long)
+

Arguments

sub1

+ the 64 bit floating point minuend +

sub2

+ 64 bit floating point subtrahend +

Description

+ result would be minuend minus subtrahend +

diff --git a/tapsets/API-fp-to-long.html b/tapsets/API-fp-to-long.html new file mode 100644 index 00000000..9646a2dd --- /dev/null +++ b/tapsets/API-fp-to-long.html @@ -0,0 +1,17 @@ +function::fp_to_long

Name

function::fp_to_long — + Convert fp to int64 +

Synopsis

+    fp_to_long:long(infp:long,roundingMode:long,exact:long)
+

Arguments

infp

+ the 64 bit floating point stored in long +

roundingMode

+ through 0-6, which are round to nearest even, minMag, + min, max, near maxMag and round to odd +

exact

+ the boolean value, if exact is 1 than raising inexact + exception, otherwise ignore the exception. +

Description

+ Given a 64 bit floating point, which is stored in long, + use the long value to initiate self-defined float64_t type, then + apply the f64_to_i64 function to get the string representation. +

diff --git a/tapsets/API-fp-to-string.html b/tapsets/API-fp-to-string.html new file mode 100644 index 00000000..edc487e8 --- /dev/null +++ b/tapsets/API-fp-to-string.html @@ -0,0 +1,13 @@ +function::fp_to_string

Name

function::fp_to_string — + Convert 64 bit floating point to string +

Synopsis

+    fp_to_string:string(infp:long,precision:long)
+

Arguments

infp

+ the 64 bit floating point stored in long +

precision

+ number of digits after decimal point +

Description

+ Given a 64 bit floating point, which is stored in long, + use the long value to initiate self-defined float64_t type, then + apply the f64_to_i64 function to get the string representation. +

diff --git a/tapsets/API-fp32-to-fp64.html b/tapsets/API-fp32-to-fp64.html new file mode 100644 index 00000000..2797f008 --- /dev/null +++ b/tapsets/API-fp32-to-fp64.html @@ -0,0 +1,9 @@ +function::fp32_to_fp64

Name

function::fp32_to_fp64 — + Convert fp32 to 64 bit floating point +

Synopsis

+    fp32_to_fp64:long(input:long)
+

Arguments

input

+ a long integer +

Description

+ Convert from 32 bit floating point to a 64 bit softfloat floating point. +

diff --git a/tapsets/API-ftrace.html b/tapsets/API-ftrace.html index e19e2615..e943ad06 100644 --- a/tapsets/API-ftrace.html +++ b/tapsets/API-ftrace.html @@ -2,9 +2,9 @@ Send a message to the ftrace ring-buffer

Synopsis

     ftrace(msg:string)
-

Arguments

msg

+

Arguments

msg

The formatted message string -

Description

+

Description

If the ftrace ring-buffer is configured & available, see /debugfs/tracing/trace for the message. Otherwise, the message may be quietly dropped. An implicit end-of-line is added. diff --git a/tapsets/API-fullpath-struct-file.html b/tapsets/API-fullpath-struct-file.html index 18d7e326..19fcf5aa 100644 --- a/tapsets/API-fullpath-struct-file.html +++ b/tapsets/API-fullpath-struct-file.html @@ -2,11 +2,11 @@ get the full path

Synopsis

     fullpath_struct_file:string(task:long,file:long)
-

Arguments

task

+

Arguments

task

task_struct pointer.

file

Pointer to “struct file”. -

Description

+

Description

Returns the full dirent name (full path to the root), like diff --git a/tapsets/API-fullpath-struct-nameidata.html b/tapsets/API-fullpath-struct-nameidata.html index 74d35886..d327e2dc 100644 --- a/tapsets/API-fullpath-struct-nameidata.html +++ b/tapsets/API-fullpath-struct-nameidata.html @@ -2,9 +2,9 @@ get the full nameidata path

Synopsis

     fullpath_struct_nameidata(nd:)
-

Arguments

nd

+

Arguments

nd

Pointer to “struct nameidata”. -

Description

+

Description

Returns the full dirent name (full path to the root), like diff --git a/tapsets/API-fullpath-struct-path.html b/tapsets/API-fullpath-struct-path.html index 0b0ec11a..477eac96 100644 --- a/tapsets/API-fullpath-struct-path.html +++ b/tapsets/API-fullpath-struct-path.html @@ -2,9 +2,9 @@ get the full path

Synopsis

     fullpath_struct_path:string(path:long)
-

Arguments

path

+

Arguments

path

Pointer to “struct path”. -

Description

+

Description

Returns the full dirent name (full path to the root), like diff --git a/tapsets/API-get-cycles.html b/tapsets/API-get-cycles.html index f5f4f4e4..556799ac 100644 --- a/tapsets/API-get-cycles.html +++ b/tapsets/API-get-cycles.html @@ -2,9 +2,9 @@ Processor cycle count

Synopsis

     get_cycles:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the processor cycle counter value if available, else it returns zero. The cycle counter is free running and unsynchronized on each processor. Thus, the order of events cannot diff --git a/tapsets/API-get-loadavg-index.html b/tapsets/API-get-loadavg-index.html index d2e42403..73e150b1 100644 --- a/tapsets/API-get-loadavg-index.html +++ b/tapsets/API-get-loadavg-index.html @@ -2,9 +2,9 @@ Get the load average for a specified interval

Synopsis

     get_loadavg_index:long(indx:long)
-

Arguments

indx

+

Arguments

indx

The load average interval to capture. -

Description

+

Description

This function returns the load average at a specified interval. The three load average values 1, 5 and 15 minute average corresponds to indexes 0, 1 and 2 of the avenrun array - see linux/sched.h. diff --git a/tapsets/API-get-sa-flags.html b/tapsets/API-get-sa-flags.html index 226b9de6..a9d27cb5 100644 --- a/tapsets/API-get-sa-flags.html +++ b/tapsets/API-get-sa-flags.html @@ -2,6 +2,6 @@ Returns the numeric value of sa_flags

Synopsis

     get_sa_flags:long(act:long)
-

Arguments

act

+

Arguments

act

address of the sigaction to query.

diff --git a/tapsets/API-get-sa-handler.html b/tapsets/API-get-sa-handler.html index 82c0b2f4..c4cccdaf 100644 --- a/tapsets/API-get-sa-handler.html +++ b/tapsets/API-get-sa-handler.html @@ -2,6 +2,6 @@ Returns the numeric value of sa_handler

Synopsis

     get_sa_handler:long(act:long)
-

Arguments

act

+

Arguments

act

address of the sigaction to query.

diff --git a/tapsets/API-gettimeofday-ms.html b/tapsets/API-gettimeofday-ms.html index 652eb6f7..14f9fa78 100644 --- a/tapsets/API-gettimeofday-ms.html +++ b/tapsets/API-gettimeofday-ms.html @@ -2,9 +2,9 @@ Number of milliseconds since UNIX epoch

Synopsis

     gettimeofday_ms:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the number of milliseconds since the UNIX epoch.

diff --git a/tapsets/API-gettimeofday-ns.html b/tapsets/API-gettimeofday-ns.html index b98a5f57..81d9d660 100644 --- a/tapsets/API-gettimeofday-ns.html +++ b/tapsets/API-gettimeofday-ns.html @@ -2,9 +2,9 @@ Number of nanoseconds since UNIX epoch

Synopsis

     gettimeofday_ns:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the number of nanoseconds since the UNIX epoch.

diff --git a/tapsets/API-gettimeofday-s.html b/tapsets/API-gettimeofday-s.html index b06f589b..237b1735 100644 --- a/tapsets/API-gettimeofday-s.html +++ b/tapsets/API-gettimeofday-s.html @@ -2,9 +2,9 @@ Number of seconds since UNIX epoch

Synopsis

     gettimeofday_s:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the number of seconds since the UNIX epoch.

diff --git a/tapsets/API-gettimeofday-us.html b/tapsets/API-gettimeofday-us.html index 2d6f1374..310859cd 100644 --- a/tapsets/API-gettimeofday-us.html +++ b/tapsets/API-gettimeofday-us.html @@ -2,9 +2,9 @@ Number of microseconds since UNIX epoch

Synopsis

     gettimeofday_us:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the number of microseconds since the UNIX epoch.

diff --git a/tapsets/API-gid.html b/tapsets/API-gid.html index 17fc550b..72fccf9c 100644 --- a/tapsets/API-gid.html +++ b/tapsets/API-gid.html @@ -2,8 +2,8 @@ Returns the group ID of a target process

Synopsis

     gid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the group ID of a target process.

diff --git a/tapsets/API-htonl.html b/tapsets/API-htonl.html index 5eac6fcb..4a175113 100644 --- a/tapsets/API-htonl.html +++ b/tapsets/API-htonl.html @@ -2,6 +2,6 @@ Convert 32-bit long from host to network order

Synopsis

     htonl:long(x:long)
-

Arguments

x

+

Arguments

x

Value to convert

diff --git a/tapsets/API-htonll.html b/tapsets/API-htonll.html index d0101939..35a7d525 100644 --- a/tapsets/API-htonll.html +++ b/tapsets/API-htonll.html @@ -2,6 +2,6 @@ Convert 64-bit long long from host to network order

Synopsis

     htonll:long(x:long)
-

Arguments

x

+

Arguments

x

Value to convert

diff --git a/tapsets/API-htons.html b/tapsets/API-htons.html index 76324257..3d977ac1 100644 --- a/tapsets/API-htons.html +++ b/tapsets/API-htons.html @@ -2,6 +2,6 @@ Convert 16-bit short from host to network order

Synopsis

     htons:long(x:long)
-

Arguments

x

+

Arguments

x

Value to convert

diff --git a/tapsets/API-indent-depth.html b/tapsets/API-indent-depth.html index 63924df0..9f73e492 100644 --- a/tapsets/API-indent-depth.html +++ b/tapsets/API-indent-depth.html @@ -2,9 +2,9 @@ returns the global nested-depth

Synopsis

     indent_depth:long(delta:long)
-

Arguments

delta

+

Arguments

delta

the amount of depth added/removed for each call -

Description

+

Description

This function returns a number for appropriate indentation, similar to indent. Call it with a small positive or matching negative delta. Unlike the thread_indent_depth function, the indent does not track diff --git a/tapsets/API-indent.html b/tapsets/API-indent.html index 7611570b..c98c4cee 100644 --- a/tapsets/API-indent.html +++ b/tapsets/API-indent.html @@ -2,9 +2,9 @@ returns an amount of space to indent

Synopsis

     indent:string(delta:long)
-

Arguments

delta

+

Arguments

delta

the amount of space added/removed for each call -

Description

+

Description

This function returns a string with appropriate indentation. Call it with a small positive or matching negative delta. Unlike the thread_indent function, the indent does not diff --git a/tapsets/API-inet-get-ip-source.html b/tapsets/API-inet-get-ip-source.html index 2a36199c..5099232e 100644 --- a/tapsets/API-inet-get-ip-source.html +++ b/tapsets/API-inet-get-ip-source.html @@ -2,6 +2,6 @@ Provide IP source address string for a kernel socket

Synopsis

     inet_get_ip_source:string(sock:long)
-

Arguments

sock

+

Arguments

sock

pointer to the kernel socket

diff --git a/tapsets/API-inet-get-local-port.html b/tapsets/API-inet-get-local-port.html index bab00cfb..aa4e09ab 100644 --- a/tapsets/API-inet-get-local-port.html +++ b/tapsets/API-inet-get-local-port.html @@ -2,6 +2,6 @@ Provide local port number for a kernel socket

Synopsis

     inet_get_local_port:long(sock:long)
-

Arguments

sock

+

Arguments

sock

pointer to the kernel socket

diff --git a/tapsets/API-inode-name.html b/tapsets/API-inode-name.html index d51357be..453cc02f 100644 --- a/tapsets/API-inode-name.html +++ b/tapsets/API-inode-name.html @@ -2,9 +2,9 @@ get the inode name

Synopsis

     inode_name:string(inode:long)
-

Arguments

inode

+

Arguments

inode

Pointer to inode. -

Description

+

Description

Returns the first path basename associated with the given inode. diff --git a/tapsets/API-inode-path.html b/tapsets/API-inode-path.html index 189974d8..f3624017 100644 --- a/tapsets/API-inode-path.html +++ b/tapsets/API-inode-path.html @@ -2,9 +2,9 @@ get the path to an inode

Synopsis

     inode_path:string(inode:long)
-

Arguments

inode

+

Arguments

inode

Pointer to inode. -

Description

+

Description

Returns the full path associated with the given inode. diff --git a/tapsets/API-int-arg.html b/tapsets/API-int-arg.html index 222d8917..c3a1cfec 100644 --- a/tapsets/API-int-arg.html +++ b/tapsets/API-int-arg.html @@ -2,9 +2,9 @@ Return function argument as signed int

Synopsis

     int_arg:long(n:long)
-

Arguments

n

+

Arguments

n

index of argument to return -

Description

+

Description

Return the value of argument n as a signed int (i.e., a 32-bit integer sign-extended to 64 bits).

diff --git a/tapsets/API-ioblock-end.html b/tapsets/API-ioblock-end.html index 6b5f4df6..dce8b85c 100644 --- a/tapsets/API-ioblock-end.html +++ b/tapsets/API-ioblock-end.html @@ -1,11 +1,29 @@ probe::ioblock.end

Name

probe::ioblock.end — Fires whenever a block I/O transfer is complete. -

Synopsis

ioblock.end 

Values

bytes_done

+

Synopsis

ioblock.end 

Values

hw_segments

+ number of segments after physical and DMA remapping hardware coalescing is performed +

devname

+ block device name +

error

+ 0 on success +

size

+ total size in bytes +

name

+ name of the probe point +

rw

+ binary trace for read/write request +

bytes_done

number of bytes transferred +

vcnt

+ bio vector count which represents number of array element (page, offset, length) which makes up this I/O request

ino

i-node number of the mapped file -

rw

- binary trace for read/write request +

idx

+ offset into the bio vector array +

sector

+ beginning sector for the entire bio +

phys_segments

+ number of segments in this bio after physical address coalescing is performed.

flags

see below BIO_UPTODATE 0 ok after I/O completion @@ -16,26 +34,8 @@ BIO_BOUNCED 5 bio is a bounce bio BIO_USER_MAPPED 6 contains user pages BIO_EOPNOTSUPP 7 not supported -

idx

- offset into the bio vector array -

error

- 0 on success

opf

operations and flags -

hw_segments

- number of segments after physical and DMA remapping hardware coalescing is performed -

devname

- block device name -

phys_segments

- number of segments in this bio after physical address coalescing is performed. -

sector

- beginning sector for the entire bio -

name

- name of the probe point -

size

- total size in bytes -

vcnt

- bio vector count which represents number of array element (page, offset, length) which makes up this I/O request -

Context

+

Context

The process signals the transfer is done.

diff --git a/tapsets/API-ioblock-request.html b/tapsets/API-ioblock-request.html index d98909b8..6348dbe7 100644 --- a/tapsets/API-ioblock-request.html +++ b/tapsets/API-ioblock-request.html @@ -1,23 +1,25 @@ probe::ioblock.request

Name

probe::ioblock.request — Fires whenever making a generic block I/O request. -

Synopsis

ioblock.request 

Values

name

- name of the probe point -

bdev

- target block device +

Synopsis

ioblock.request 

Values

p_start_sect

+ points to the start sector of the partition structure of the device

vcnt

bio vector count which represents number of array element (page, offset, length) which make up this I/O request +

rw

+ binary trace for read/write request +

bdev

+ target block device +

devname

+ block device name +

hw_segments

+ number of segments after physical and DMA remapping hardware coalescing is performed +

name

+ name of the probe point

size

total size in bytes -

bdev_contains

- points to the device object which contains the partition (when bio structure represents a partition)

opf

operations and flags -

hw_segments

- number of segments after physical and DMA remapping hardware coalescing is performed

phys_segments

number of segments in this bio after physical address coalescing is performed -

devname

- block device name

sector

beginning sector for the entire bio

flags

@@ -30,14 +32,12 @@ BIO_BOUNCED 5 bio is a bounce bio BIO_USER_MAPPED 6 contains user pages BIO_EOPNOTSUPP 7 not supported -

p_start_sect

- points to the start sector of the partition structure of the device +

bdev_contains

+ points to the device object which contains the partition (when bio structure represents a partition)

idx

offset into the bio vector array

ino

i-node number of the mapped file -

rw

- binary trace for read/write request -

Context

+

Context

The process makes block I/O request

diff --git a/tapsets/API-ioblock-trace-bounce.html b/tapsets/API-ioblock-trace-bounce.html index 9199ccd6..9b864e6e 100644 --- a/tapsets/API-ioblock-trace-bounce.html +++ b/tapsets/API-ioblock-trace-bounce.html @@ -1,18 +1,23 @@ probe::ioblock_trace.bounce

Name

probe::ioblock_trace.bounce — Fires whenever a buffer bounce is needed for at least one page of a block IO request. -

Synopsis

ioblock_trace.bounce 

Values

rw

- binary trace for read/write request -

q

- request queue on which this bio was queued. -

bytes_done

- number of bytes transferred -

ino

- i-node number of the mapped file -

idx

- offset into the bio vector array - phys_segments - number of segments in this bio after physical address coalescing is performed. +

Synopsis

ioblock_trace.bounce 

Values

vcnt

+ bio vector count which represents number of array element (page, offset, length) which makes up this I/O request

p_start_sect

points to the start sector of the partition structure of the device +

size

+ total size in bytes +

name

+ name of the probe point +

devname

+ device for which a buffer bounce was needed. +

bdev

+ target block device +

bytes_done

+ number of bytes transferred +

rw

+ binary trace for read/write request +

bdev_contains

+ points to the device object which contains the partition (when bio structure represents a partition)

flags

see below BIO_UPTODATE 0 ok after I/O completion @@ -23,22 +28,17 @@ BIO_BOUNCED 5 bio is a bounce bio BIO_USER_MAPPED 6 contains user pages BIO_EOPNOTSUPP 7 not supported -

devname

- device for which a buffer bounce was needed.

sector

beginning sector for the entire bio -

bdev_contains

- points to the device object which contains the partition (when bio structure represents a partition) +

q

+ request queue on which this bio was queued.

opf

operations and flags -

vcnt

- bio vector count which represents number of array element (page, offset, length) which makes up this I/O request -

size

- total size in bytes -

name

- name of the probe point -

bdev

- target block device -

Context

+

ino

+ i-node number of the mapped file +

idx

+ offset into the bio vector array + phys_segments - number of segments in this bio after physical address coalescing is performed. +

Context

The process creating a block IO request.

diff --git a/tapsets/API-ioblock-trace-end.html b/tapsets/API-ioblock-trace-end.html index c15872c7..7e9464f4 100644 --- a/tapsets/API-ioblock-trace-end.html +++ b/tapsets/API-ioblock-trace-end.html @@ -1,10 +1,16 @@ probe::ioblock_trace.end

Name

probe::ioblock_trace.end — Fires whenever a block I/O transfer is complete. -

Synopsis

ioblock_trace.end 

Values

idx

+

Synopsis

ioblock_trace.end 

Values

idx

offset into the bio vector array phys_segments - number of segments in this bio after physical address coalescing is performed. -

p_start_sect

- points to the start sector of the partition structure of the device +

ino

+ i-node number of the mapped file +

opf

+ operations and flags +

q

+ request queue on which this bio was queued. +

bdev_contains

+ points to the device object which contains the partition (when bio structure represents a partition)

flags

see below BIO_UPTODATE 0 ok after I/O completion @@ -15,30 +21,24 @@ BIO_BOUNCED 5 bio is a bounce bio BIO_USER_MAPPED 6 contains user pages BIO_EOPNOTSUPP 7 not supported -

rw

- binary trace for read/write request -

q

- request queue on which this bio was queued. -

ino

- i-node number of the mapped file +

sector

+ beginning sector for the entire bio

bytes_done

number of bytes transferred -

vcnt

- bio vector count which represents number of array element (page, offset, length) which makes up this I/O request +

bdev

+ target block device +

rw

+ binary trace for read/write request

size

total size in bytes

name

name of the probe point -

bdev

- target block device -

sector

- beginning sector for the entire bio

devname

block device name -

bdev_contains

- points to the device object which contains the partition (when bio structure represents a partition) -

opf

- operations and flags -

Context

+

vcnt

+ bio vector count which represents number of array element (page, offset, length) which makes up this I/O request +

p_start_sect

+ points to the start sector of the partition structure of the device +

Context

The process signals the transfer is done.

diff --git a/tapsets/API-ioblock-trace-request.html b/tapsets/API-ioblock-trace-request.html index 7b6b3a2a..7977fc57 100644 --- a/tapsets/API-ioblock-trace-request.html +++ b/tapsets/API-ioblock-trace-request.html @@ -1,24 +1,6 @@ probe::ioblock_trace.request

Name

probe::ioblock_trace.request — Fires just as a generic block I/O request is created for a bio. -

Synopsis

ioblock_trace.request 

Values

name

- name of the probe point -

bdev

- target block device -

vcnt

- bio vector count which represents number of array element (page, offset, length) which make up this I/O request -

size

- total size in bytes -

opf

- operations and flags -

bdev_contains

- points to the device object which contains the partition (when bio structure represents a partition) -

devname

- block device name -

sector

- beginning sector for the entire bio -

p_start_sect

- points to the start sector of the partition structure of the device -

flags

+

Synopsis

ioblock_trace.request 

Values

flags

see below BIO_UPTODATE 0 ok after I/O completion BIO_RW_BLOCK 1 RW_AHEAD set, and read/write would block @@ -28,17 +10,35 @@ BIO_BOUNCED 5 bio is a bounce bio BIO_USER_MAPPED 6 contains user pages BIO_EOPNOTSUPP 7 not supported -

idx

- offset into the bio vector array - phys_segments - number of segments in this bio after physical address coalescing is performed. +

bdev_contains

+ points to the device object which contains the partition (when bio structure represents a partition) +

sector

+ beginning sector for the entire bio +

opf

+ operations and flags

q

request queue on which this bio was queued.

ino

i-node number of the mapped file +

idx

+ offset into the bio vector array + phys_segments - number of segments in this bio after physical address coalescing is performed. +

vcnt

+ bio vector count which represents number of array element (page, offset, length) which make up this I/O request +

p_start_sect

+ points to the start sector of the partition structure of the device +

name

+ name of the probe point +

size

+ total size in bytes +

devname

+ block device name +

bdev

+ target block device

bytes_done

number of bytes transferred

rw

binary trace for read/write request -

Context

+

Context

The process makes block I/O request

diff --git a/tapsets/API-ioscheduler-elv-add-request-kp.html b/tapsets/API-ioscheduler-elv-add-request-kp.html index 91f0927e..7ad6a914 100644 --- a/tapsets/API-ioscheduler-elv-add-request-kp.html +++ b/tapsets/API-ioscheduler-elv-add-request-kp.html @@ -1,17 +1,17 @@ probe::ioscheduler.elv_add_request.kp

Name

probe::ioscheduler.elv_add_request.kp — kprobe based probe to indicate that a request was added to the request queue -

Synopsis

ioscheduler.elv_add_request.kp 

Values

rq

- Address of the request -

q

+

Synopsis

ioscheduler.elv_add_request.kp 

Values

q

pointer to request queue -

name

- Name of the probe point -

elevator_name

- The type of I/O elevator currently enabled -

rq_flags

- Request flags

disk_major

Disk major number of the request

disk_minor

Disk minor number of the request +

elevator_name

+ The type of I/O elevator currently enabled +

name

+ Name of the probe point +

rq_flags

+ Request flags +

rq

+ Address of the request

diff --git a/tapsets/API-ioscheduler-elv-add-request-tp.html b/tapsets/API-ioscheduler-elv-add-request-tp.html index e5cd605c..83aa05ac 100644 --- a/tapsets/API-ioscheduler-elv-add-request-tp.html +++ b/tapsets/API-ioscheduler-elv-add-request-tp.html @@ -1,17 +1,17 @@ probe::ioscheduler.elv_add_request.tp

Name

probe::ioscheduler.elv_add_request.tp — tracepoint based probe to indicate a request is added to the request queue. -

Synopsis

ioscheduler.elv_add_request.tp 

Values

disk_minor

- Disk minor number of request. -

disk_major

- Disk major no of request. -

rq_flags

- Request flags. -

elevator_name

+

Synopsis

ioscheduler.elv_add_request.tp 

Values

elevator_name

The type of I/O elevator currently enabled.

name

Name of the probe point -

q

- Pointer to request queue. +

rq_flags

+ Request flags.

rq

Address of request. +

q

+ Pointer to request queue. +

disk_major

+ Disk major no of request. +

disk_minor

+ Disk minor number of request.

diff --git a/tapsets/API-ioscheduler-elv-add-request.html b/tapsets/API-ioscheduler-elv-add-request.html index 410587d6..d22664c5 100644 --- a/tapsets/API-ioscheduler-elv-add-request.html +++ b/tapsets/API-ioscheduler-elv-add-request.html @@ -1,15 +1,15 @@ probe::ioscheduler.elv_add_request

Name

probe::ioscheduler.elv_add_request — probe to indicate request is added to the request queue. -

Synopsis

ioscheduler.elv_add_request 

Values

rq

- Address of request. -

q

+

Synopsis

ioscheduler.elv_add_request 

Values

q

Pointer to request queue. -

elevator_name

- The type of I/O elevator currently enabled. -

rq_flags

- Request flags.

disk_minor

Disk minor number of request.

disk_major

Disk major no of request. +

elevator_name

+ The type of I/O elevator currently enabled. +

rq

+ Address of request. +

rq_flags

+ Request flags.

diff --git a/tapsets/API-ioscheduler-elv-completed-request.html b/tapsets/API-ioscheduler-elv-completed-request.html index f45b2105..3c01cfae 100644 --- a/tapsets/API-ioscheduler-elv-completed-request.html +++ b/tapsets/API-ioscheduler-elv-completed-request.html @@ -1,15 +1,15 @@ probe::ioscheduler.elv_completed_request

Name

probe::ioscheduler.elv_completed_request — Fires when a request is completed -

Synopsis

ioscheduler.elv_completed_request 

Values

disk_minor

- Disk minor number of the request -

disk_major

- Disk major number of the request -

rq_flags

- Request flags -

elevator_name

+

Synopsis

ioscheduler.elv_completed_request 

Values

elevator_name

The type of I/O elevator currently enabled

name

Name of the probe point

rq

Address of the request +

rq_flags

+ Request flags +

disk_major

+ Disk major number of the request +

disk_minor

+ Disk minor number of the request

diff --git a/tapsets/API-ioscheduler-elv-next-request-return.html b/tapsets/API-ioscheduler-elv-next-request-return.html index e5ca1734..366d9605 100644 --- a/tapsets/API-ioscheduler-elv-next-request-return.html +++ b/tapsets/API-ioscheduler-elv-next-request-return.html @@ -1,9 +1,9 @@ probe::ioscheduler.elv_next_request.return

Name

probe::ioscheduler.elv_next_request.return — Fires when a request retrieval issues a return signal -

Synopsis

ioscheduler.elv_next_request.return 

Values

rq_flags

- Request flags -

disk_major

+

Synopsis

ioscheduler.elv_next_request.return 

Values

disk_major

Disk major number of the request +

rq_flags

+ Request flags

disk_minor

Disk minor number of the request

rq

diff --git a/tapsets/API-ioscheduler-elv-next-request.html b/tapsets/API-ioscheduler-elv-next-request.html index 40343e36..8866f74d 100644 --- a/tapsets/API-ioscheduler-elv-next-request.html +++ b/tapsets/API-ioscheduler-elv-next-request.html @@ -1,7 +1,7 @@ probe::ioscheduler.elv_next_request

Name

probe::ioscheduler.elv_next_request — Fires when a request is retrieved from the request queue -

Synopsis

ioscheduler.elv_next_request 

Values

name

- Name of the probe point -

elevator_name

+

Synopsis

ioscheduler.elv_next_request 

Values

elevator_name

The type of I/O elevator currently enabled +

name

+ Name of the probe point

diff --git a/tapsets/API-ioscheduler-trace-elv-abort-request.html b/tapsets/API-ioscheduler-trace-elv-abort-request.html index 1d3c9a8a..dd65d107 100644 --- a/tapsets/API-ioscheduler-trace-elv-abort-request.html +++ b/tapsets/API-ioscheduler-trace-elv-abort-request.html @@ -1,15 +1,15 @@ probe::ioscheduler_trace.elv_abort_request

Name

probe::ioscheduler_trace.elv_abort_request — Fires when a request is aborted. -

Synopsis

ioscheduler_trace.elv_abort_request 

Values

disk_major

+

Synopsis

ioscheduler_trace.elv_abort_request 

Values

disk_major

Disk major no of request.

disk_minor

Disk minor number of request. -

rq_flags

- Request flags.

elevator_name

The type of I/O elevator currently enabled.

name

Name of the probe point +

rq_flags

+ Request flags.

rq

Address of request.

diff --git a/tapsets/API-ioscheduler-trace-elv-completed-request.html b/tapsets/API-ioscheduler-trace-elv-completed-request.html index 804abd93..98391210 100644 --- a/tapsets/API-ioscheduler-trace-elv-completed-request.html +++ b/tapsets/API-ioscheduler-trace-elv-completed-request.html @@ -1,17 +1,17 @@ probe::ioscheduler_trace.elv_completed_request

Name

probe::ioscheduler_trace.elv_completed_request — Fires when a request is -

Synopsis

ioscheduler_trace.elv_completed_request 

Values

disk_minor

- Disk minor number of request. -

disk_major

- Disk major no of request. +

Synopsis

ioscheduler_trace.elv_completed_request 

Values

rq_flags

+ Request flags. +

rq

+ Address of request.

elevator_name

The type of I/O elevator currently enabled. -

rq_flags

- Request flags.

name

Name of the probe point -

rq

- Address of request. -

Description

+

disk_major

+ Disk major no of request. +

disk_minor

+ Disk minor number of request. +

Description

completed.

diff --git a/tapsets/API-ioscheduler-trace-elv-issue-request.html b/tapsets/API-ioscheduler-trace-elv-issue-request.html index bc3b8ed8..6d2af2c5 100644 --- a/tapsets/API-ioscheduler-trace-elv-issue-request.html +++ b/tapsets/API-ioscheduler-trace-elv-issue-request.html @@ -1,17 +1,17 @@ probe::ioscheduler_trace.elv_issue_request

Name

probe::ioscheduler_trace.elv_issue_request — Fires when a request is -

Synopsis

ioscheduler_trace.elv_issue_request 

Values

disk_major

- Disk major no of request. -

disk_minor

- Disk minor number of request. +

Synopsis

ioscheduler_trace.elv_issue_request 

Values

rq_flags

+ Request flags. +

rq

+ Address of request.

elevator_name

The type of I/O elevator currently enabled. -

rq_flags

- Request flags.

name

Name of the probe point -

rq

- Address of request. -

Description

+

disk_major

+ Disk major no of request. +

disk_minor

+ Disk minor number of request. +

Description

scheduled.

diff --git a/tapsets/API-ioscheduler-trace-elv-requeue-request.html b/tapsets/API-ioscheduler-trace-elv-requeue-request.html index c2f957a1..eb7c747c 100644 --- a/tapsets/API-ioscheduler-trace-elv-requeue-request.html +++ b/tapsets/API-ioscheduler-trace-elv-requeue-request.html @@ -1,17 +1,17 @@ probe::ioscheduler_trace.elv_requeue_request

Name

probe::ioscheduler_trace.elv_requeue_request — Fires when a request is -

Synopsis

ioscheduler_trace.elv_requeue_request 

Values

name

- Name of the probe point -

rq

+

Synopsis

ioscheduler_trace.elv_requeue_request 

Values

rq

Address of request. -

disk_major

- Disk major no of request. -

disk_minor

- Disk minor number of request.

rq_flags

Request flags. +

name

+ Name of the probe point

elevator_name

The type of I/O elevator currently enabled. -

Description

+

disk_minor

+ Disk minor number of request. +

disk_major

+ Disk major no of request. +

Description

put back on the queue, when the hadware cannot accept more requests.

diff --git a/tapsets/API-ioscheduler-trace-plug.html b/tapsets/API-ioscheduler-trace-plug.html index 5a9c749a..739b321b 100644 --- a/tapsets/API-ioscheduler-trace-plug.html +++ b/tapsets/API-ioscheduler-trace-plug.html @@ -1,9 +1,9 @@ probe::ioscheduler_trace.plug

Name

probe::ioscheduler_trace.plug — Fires when a request queue is plugged; -

Synopsis

ioscheduler_trace.plug 

Values

name

- Name of the probe point -

rq_queue

+

Synopsis

ioscheduler_trace.plug 

Values

rq_queue

request queue -

Description

+

name

+ Name of the probe point +

Description

ie, requests in the queue cannot be serviced by block driver.

diff --git a/tapsets/API-ioscheduler-trace-unplug-io.html b/tapsets/API-ioscheduler-trace-unplug-io.html index 83ef459d..b1d6456c 100644 --- a/tapsets/API-ioscheduler-trace-unplug-io.html +++ b/tapsets/API-ioscheduler-trace-unplug-io.html @@ -1,10 +1,10 @@ probe::ioscheduler_trace.unplug_io

Name

probe::ioscheduler_trace.unplug_io — Fires when a request queue is unplugged; -

Synopsis

ioscheduler_trace.unplug_io 

Values

rq_queue

+

Synopsis

ioscheduler_trace.unplug_io 

Values

rq_queue

request queue

name

Name of the probe point -

Description

+

Description

Either, when number of pending requests in the queue exceeds threshold or, upon expiration of timer that was activated when queue was plugged.

diff --git a/tapsets/API-ioscheduler-trace-unplug-timer.html b/tapsets/API-ioscheduler-trace-unplug-timer.html index 464df5a0..1928485a 100644 --- a/tapsets/API-ioscheduler-trace-unplug-timer.html +++ b/tapsets/API-ioscheduler-trace-unplug-timer.html @@ -1,9 +1,9 @@ probe::ioscheduler_trace.unplug_timer

Name

probe::ioscheduler_trace.unplug_timer — Fires when unplug timer associated -

Synopsis

ioscheduler_trace.unplug_timer 

Values

rq_queue

+

Synopsis

ioscheduler_trace.unplug_timer 

Values

rq_queue

request queue

name

Name of the probe point -

Description

+

Description

with a request queue expires.

diff --git a/tapsets/API-ip-ntop.html b/tapsets/API-ip-ntop.html index 0e042675..9309b545 100644 --- a/tapsets/API-ip-ntop.html +++ b/tapsets/API-ip-ntop.html @@ -2,6 +2,6 @@ Returns a string representation for an IPv4 address

Synopsis

     ip_ntop:string(addr:long)
-

Arguments

addr

+

Arguments

addr

the IPv4 address represented as an integer

diff --git a/tapsets/API-ipmib-ForwDatagrams.html b/tapsets/API-ipmib-ForwDatagrams.html index 561c5555..a4658bb8 100644 --- a/tapsets/API-ipmib-ForwDatagrams.html +++ b/tapsets/API-ipmib-ForwDatagrams.html @@ -1,10 +1,10 @@ probe::ipmib.ForwDatagrams

Name

probe::ipmib.ForwDatagrams — Count forwarded packet -

Synopsis

ipmib.ForwDatagrams 

Values

skb

+

Synopsis

ipmib.ForwDatagrams 

Values

skb

pointer to the struct sk_buff being acted on

op

value to be added to the counter (default value of 1) -

Description

+

Description

The packet pointed to by skb is filtered by the function ipmib_filter_key. If the packet passes the filter is is counted in the global ForwDatagrams (equivalent to SNMP's MIB diff --git a/tapsets/API-ipmib-FragFails.html b/tapsets/API-ipmib-FragFails.html index adf6e27b..960eee17 100644 --- a/tapsets/API-ipmib-FragFails.html +++ b/tapsets/API-ipmib-FragFails.html @@ -1,10 +1,10 @@ probe::ipmib.FragFails

Name

probe::ipmib.FragFails — Count datagram fragmented unsuccessfully -

Synopsis

ipmib.FragFails 

Values

op

+

Synopsis

ipmib.FragFails 

Values

op

Value to be added to the counter (default value of 1)

skb

pointer to the struct sk_buff being acted on -

Description

+

Description

The packet pointed to by skb is filtered by the function ipmib_filter_key. If the packet passes the filter is is counted in the global FragFails (equivalent to SNMP's MIB diff --git a/tapsets/API-ipmib-FragOKs.html b/tapsets/API-ipmib-FragOKs.html index c03b6726..aaf6d9ea 100644 --- a/tapsets/API-ipmib-FragOKs.html +++ b/tapsets/API-ipmib-FragOKs.html @@ -1,10 +1,10 @@ probe::ipmib.FragOKs

Name

probe::ipmib.FragOKs — Count datagram fragmented successfully -

Synopsis

ipmib.FragOKs 

Values

skb

+

Synopsis

ipmib.FragOKs 

Values

skb

pointer to the struct sk_buff being acted on

op

value to be added to the counter (default value of 1) -

Description

+

Description

The packet pointed to by skb is filtered by the function ipmib_filter_key. If the packet passes the filter is is counted in the global FragOKs (equivalent to SNMP's MIB diff --git a/tapsets/API-ipmib-InAddrErrors.html b/tapsets/API-ipmib-InAddrErrors.html index 7e5b0ace..d16127ce 100644 --- a/tapsets/API-ipmib-InAddrErrors.html +++ b/tapsets/API-ipmib-InAddrErrors.html @@ -1,10 +1,10 @@ probe::ipmib.InAddrErrors

Name

probe::ipmib.InAddrErrors — Count arriving packets with an incorrect address -

Synopsis

ipmib.InAddrErrors 

Values

op

- value to be added to the counter (default value of 1) -

skb

+

Synopsis

ipmib.InAddrErrors 

Values

skb

pointer to the struct sk_buff being acted on -

Description

+

op

+ value to be added to the counter (default value of 1) +

Description

The packet pointed to by skb is filtered by the function ipmib_filter_key. If the packet passes the filter is is counted in the global InAddrErrors (equivalent to SNMP's MIB diff --git a/tapsets/API-ipmib-InDiscards.html b/tapsets/API-ipmib-InDiscards.html index 2e08842a..c6bc2b9a 100644 --- a/tapsets/API-ipmib-InDiscards.html +++ b/tapsets/API-ipmib-InDiscards.html @@ -1,10 +1,10 @@ probe::ipmib.InDiscards

Name

probe::ipmib.InDiscards — Count discarded inbound packets -

Synopsis

ipmib.InDiscards 

Values

skb

- pointer to the struct sk_buff being acted on -

op

+

Synopsis

ipmib.InDiscards 

Values

op

value to be added to the counter (default value of 1) -

Description

+

skb

+ pointer to the struct sk_buff being acted on +

Description

The packet pointed to by skb is filtered by the function ipmib_filter_key. If the packet passes the filter is is counted in the global InDiscards (equivalent to SNMP's MIB diff --git a/tapsets/API-ipmib-InNoRoutes.html b/tapsets/API-ipmib-InNoRoutes.html index e1efb380..052681ae 100644 --- a/tapsets/API-ipmib-InNoRoutes.html +++ b/tapsets/API-ipmib-InNoRoutes.html @@ -1,10 +1,10 @@ probe::ipmib.InNoRoutes

Name

probe::ipmib.InNoRoutes — Count an arriving packet with no matching socket -

Synopsis

ipmib.InNoRoutes 

Values

skb

+

Synopsis

ipmib.InNoRoutes 

Values

skb

pointer to the struct sk_buff being acted on

op

value to be added to the counter (default value of 1) -

Description

+

Description

The packet pointed to by skb is filtered by the function ipmib_filter_key. If the packet passes the filter is is counted in the global InNoRoutes (equivalent to SNMP's MIB diff --git a/tapsets/API-ipmib-InReceives.html b/tapsets/API-ipmib-InReceives.html index 152b84f4..ddf7c0b6 100644 --- a/tapsets/API-ipmib-InReceives.html +++ b/tapsets/API-ipmib-InReceives.html @@ -1,10 +1,10 @@ probe::ipmib.InReceives

Name

probe::ipmib.InReceives — Count an arriving packet -

Synopsis

ipmib.InReceives 

Values

skb

+

Synopsis

ipmib.InReceives 

Values

skb

pointer to the struct sk_buff being acted on

op

value to be added to the counter (default value of 1) -

Description

+

Description

The packet pointed to by skb is filtered by the function ipmib_filter_key. If the packet passes the filter is is counted in the global InReceives (equivalent to SNMP's MIB diff --git a/tapsets/API-ipmib-InUnknownProtos.html b/tapsets/API-ipmib-InUnknownProtos.html index 5f043f11..0e52d8cb 100644 --- a/tapsets/API-ipmib-InUnknownProtos.html +++ b/tapsets/API-ipmib-InUnknownProtos.html @@ -1,10 +1,10 @@ probe::ipmib.InUnknownProtos

Name

probe::ipmib.InUnknownProtos — Count arriving packets with an unbound proto -

Synopsis

ipmib.InUnknownProtos 

Values

skb

- pointer to the struct sk_buff being acted on -

op

+

Synopsis

ipmib.InUnknownProtos 

Values

op

value to be added to the counter (default value of 1) -

Description

+

skb

+ pointer to the struct sk_buff being acted on +

Description

The packet pointed to by skb is filtered by the function ipmib_filter_key. If the packet passes the filter is is counted in the global InUnknownProtos (equivalent to SNMP's MIB diff --git a/tapsets/API-ipmib-OutRequests.html b/tapsets/API-ipmib-OutRequests.html index 124f8d27..b3251db1 100644 --- a/tapsets/API-ipmib-OutRequests.html +++ b/tapsets/API-ipmib-OutRequests.html @@ -1,10 +1,10 @@ probe::ipmib.OutRequests

Name

probe::ipmib.OutRequests — Count a request to send a packet -

Synopsis

ipmib.OutRequests 

Values

skb

- pointer to the struct sk_buff being acted on -

op

+

Synopsis

ipmib.OutRequests 

Values

op

value to be added to the counter (default value of 1) -

Description

+

skb

+ pointer to the struct sk_buff being acted on +

Description

The packet pointed to by skb is filtered by the function ipmib_filter_key. If the packet passes the filter is is counted in the global OutRequests (equivalent to SNMP's MIB diff --git a/tapsets/API-ipmib-ReasmReqds.html b/tapsets/API-ipmib-ReasmReqds.html index 7ced9337..6c051900 100644 --- a/tapsets/API-ipmib-ReasmReqds.html +++ b/tapsets/API-ipmib-ReasmReqds.html @@ -1,10 +1,10 @@ probe::ipmib.ReasmReqds

Name

probe::ipmib.ReasmReqds — Count number of packet fragments reassembly requests -

Synopsis

ipmib.ReasmReqds 

Values

op

- value to be added to the counter (default value of 1) -

skb

+

Synopsis

ipmib.ReasmReqds 

Values

skb

pointer to the struct sk_buff being acted on -

Description

+

op

+ value to be added to the counter (default value of 1) +

Description

The packet pointed to by skb is filtered by the function ipmib_filter_key. If the packet passes the filter is is counted in the global ReasmReqds (equivalent to SNMP's MIB diff --git a/tapsets/API-ipmib-ReasmTimeout.html b/tapsets/API-ipmib-ReasmTimeout.html index 7a43ad7e..20d2884f 100644 --- a/tapsets/API-ipmib-ReasmTimeout.html +++ b/tapsets/API-ipmib-ReasmTimeout.html @@ -1,10 +1,10 @@ probe::ipmib.ReasmTimeout

Name

probe::ipmib.ReasmTimeout — Count Reassembly Timeouts -

Synopsis

ipmib.ReasmTimeout 

Values

op

- value to be added to the counter (default value of 1) -

skb

+

Synopsis

ipmib.ReasmTimeout 

Values

skb

pointer to the struct sk_buff being acted on -

Description

+

op

+ value to be added to the counter (default value of 1) +

Description

The packet pointed to by skb is filtered by the function ipmib_filter_key. If the packet passes the filter is is counted in the global ReasmTimeout (equivalent to SNMP's MIB diff --git a/tapsets/API-ipmib-filter-key.html b/tapsets/API-ipmib-filter-key.html index 82f8146c..81de48a5 100644 --- a/tapsets/API-ipmib-filter-key.html +++ b/tapsets/API-ipmib-filter-key.html @@ -2,13 +2,13 @@ Default filter function for ipmib.* probes

Synopsis

     ipmib_filter_key:long(skb:long,op:long,SourceIsLocal:long)
-

Arguments

skb

+

Arguments

skb

pointer to the struct sk_buff

op

value to be counted if skb passes the filter

SourceIsLocal

1 is local operation and 0 is non-local operation -

Description

+

Description

This function is a default filter function. The user can replace this function with their own. The user-supplied filter function returns an index key based on the values diff --git a/tapsets/API-ipmib-get-proto.html b/tapsets/API-ipmib-get-proto.html index cfe8b148..527ff810 100644 --- a/tapsets/API-ipmib-get-proto.html +++ b/tapsets/API-ipmib-get-proto.html @@ -2,8 +2,8 @@ Get the protocol value

Synopsis

     ipmib_get_proto:long(skb:long)
-

Arguments

skb

+

Arguments

skb

pointer to a struct sk_buff -

Description

+

Description

Returns the protocol value from skb.

diff --git a/tapsets/API-ipmib-local-addr.html b/tapsets/API-ipmib-local-addr.html index 45b3de4c..ee215b9e 100644 --- a/tapsets/API-ipmib-local-addr.html +++ b/tapsets/API-ipmib-local-addr.html @@ -2,10 +2,10 @@ Get the local ip address

Synopsis

     ipmib_local_addr:long(skb:long,SourceIsLocal:long)
-

Arguments

skb

+

Arguments

skb

pointer to a struct sk_buff

SourceIsLocal

flag to indicate whether local operation -

Description

+

Description

Returns the local ip address skb.

diff --git a/tapsets/API-ipmib-remote-addr.html b/tapsets/API-ipmib-remote-addr.html index 65310de7..0efb4657 100644 --- a/tapsets/API-ipmib-remote-addr.html +++ b/tapsets/API-ipmib-remote-addr.html @@ -2,10 +2,10 @@ Get the remote ip address

Synopsis

     ipmib_remote_addr:long(skb:long,SourceIsLocal:long)
-

Arguments

skb

+

Arguments

skb

pointer to a struct sk_buff

SourceIsLocal

flag to indicate whether local operation -

Description

+

Description

Returns the remote ip address from skb.

diff --git a/tapsets/API-ipmib-tcp-local-port.html b/tapsets/API-ipmib-tcp-local-port.html index ce6e0cb2..d79bba8f 100644 --- a/tapsets/API-ipmib-tcp-local-port.html +++ b/tapsets/API-ipmib-tcp-local-port.html @@ -2,10 +2,10 @@ Get the local tcp port

Synopsis

     ipmib_tcp_local_port:long(skb:long,SourceIsLocal:long)
-

Arguments

skb

+

Arguments

skb

pointer to a struct sk_buff

SourceIsLocal

flag to indicate whether local operation -

Description

+

Description

Returns the local tcp port from skb.

diff --git a/tapsets/API-ipmib-tcp-remote-port.html b/tapsets/API-ipmib-tcp-remote-port.html index c26a3db8..b318ddcb 100644 --- a/tapsets/API-ipmib-tcp-remote-port.html +++ b/tapsets/API-ipmib-tcp-remote-port.html @@ -2,10 +2,10 @@ Get the remote tcp port

Synopsis

     ipmib_tcp_remote_port:long(skb:long,SourceIsLocal:long)
-

Arguments

skb

+

Arguments

skb

pointer to a struct sk_buff

SourceIsLocal

flag to indicate whether local operation -

Description

+

Description

Returns the remote tcp port from skb.

diff --git a/tapsets/API-irq-handler-entry.html b/tapsets/API-irq-handler-entry.html index b21b143b..6296337f 100644 --- a/tapsets/API-irq-handler-entry.html +++ b/tapsets/API-irq-handler-entry.html @@ -1,27 +1,27 @@ probe::irq_handler.entry

Name

probe::irq_handler.entry — Execution of interrupt handler starting -

Synopsis

irq_handler.entry 

Values

thread_flags

- Flags related to thread -

action

- struct irqaction* for this interrupt num +

Synopsis

irq_handler.entry 

Values

thread_fn

+ interrupt handler function for threaded interrupts +

flags

+ Flags for IRQ handler +

thread

+ thread pointer for threaded interrupts

dir

pointer to the proc/irq/NN/name entry +

irq

+ irq number +

flags_str

+ symbolic string representation of IRQ flags +

thread_flags

+ Flags related to thread

dev_name

name of device +

action

+ struct irqaction* for this interrupt num +

handler

+ interrupt handler function

next_irqaction

pointer to next irqaction for shared interrupts

dev_id

Cookie to identify device -

thread

- thread pointer for threaded interrupts -

handler

- interrupt handler function -

flags

- Flags for IRQ handler -

irq

- irq number -

thread_fn

- interrupt handler function for threaded interrupts -

flags_str

- symbolic string representation of IRQ flags

diff --git a/tapsets/API-irq-handler-exit.html b/tapsets/API-irq-handler-exit.html index 38d23125..b572933d 100644 --- a/tapsets/API-irq-handler-exit.html +++ b/tapsets/API-irq-handler-exit.html @@ -1,29 +1,29 @@ probe::irq_handler.exit

Name

probe::irq_handler.exit — Execution of interrupt handler completed -

Synopsis

irq_handler.exit 

Values

dev_name

- name of device -

dir

+

Synopsis

irq_handler.exit 

Values

dir

pointer to the proc/irq/NN/name entry -

next_irqaction

- pointer to next irqaction for shared interrupts -

thread

- thread pointer for threaded interrupts -

handler

- interrupt handler function that was executed -

flags

- flags for IRQ handler -

flags_str

- symbolic string representation of IRQ flags

ret

return value of the handler -

thread_flags

- Flags related to thread -

action

- struct irqaction* -

dev_id

- Cookie to identify device

irq

interrupt number +

flags_str

+ symbolic string representation of IRQ flags +

thread_flags

+ Flags related to thread

thread_fn

interrupt handler function for threaded interrupts +

flags

+ flags for IRQ handler +

thread

+ thread pointer for threaded interrupts +

handler

+ interrupt handler function that was executed +

next_irqaction

+ pointer to next irqaction for shared interrupts +

dev_id

+ Cookie to identify device +

dev_name

+ name of device +

action

+ struct irqaction*

diff --git a/tapsets/API-is-myproc.html b/tapsets/API-is-myproc.html index 1338524d..1e3d5859 100644 --- a/tapsets/API-is-myproc.html +++ b/tapsets/API-is-myproc.html @@ -2,9 +2,9 @@ Determines if the current probe point has occurred in the user's own process

Synopsis

     is_myproc:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns 1 if the current probe point has occurred in the user's own process.

diff --git a/tapsets/API-is-return.html b/tapsets/API-is-return.html index 40b99b68..b319105b 100644 --- a/tapsets/API-is-return.html +++ b/tapsets/API-is-return.html @@ -2,9 +2,9 @@ Whether the current probe context is a return probe

Synopsis

     is_return:long()
-

Arguments

+

Arguments

None -

Description

+

Description

Returns 1 if the current probe context is a return probe, returns 0 otherwise.

diff --git a/tapsets/API-is-sig-blocked.html b/tapsets/API-is-sig-blocked.html index cbe55fe9..94391b74 100644 --- a/tapsets/API-is-sig-blocked.html +++ b/tapsets/API-is-sig-blocked.html @@ -2,7 +2,7 @@ Returns 1 if the signal is currently blocked, or 0 if it is not

Synopsis

     is_sig_blocked:long(task:long,sig:long)
-

Arguments

task

+

Arguments

task

address of the task_struct to query.

sig

the signal number to test. diff --git a/tapsets/API-isdigit.html b/tapsets/API-isdigit.html index 28841a46..a0afe757 100644 --- a/tapsets/API-isdigit.html +++ b/tapsets/API-isdigit.html @@ -2,9 +2,9 @@ Checks for a digit

Synopsis

     isdigit:long(str:string)
-

Arguments

str

+

Arguments

str

string to check -

Description

+

Description

Checks for a digit (0 through 9) as the first character of a string. Returns non-zero if true, and a zero if false. diff --git a/tapsets/API-isinstr.html b/tapsets/API-isinstr.html index 014ade11..d51bb05f 100644 --- a/tapsets/API-isinstr.html +++ b/tapsets/API-isinstr.html @@ -2,11 +2,11 @@ Returns whether a string is a substring of another string

Synopsis

     isinstr:long(s1:string,s2:string)
-

Arguments

s1

+

Arguments

s1

string to search in

s2

substring to find -

Description

+

Description

This function returns 1 if string s1 contains s2, otherwise zero.

diff --git a/tapsets/API-jiffies.html b/tapsets/API-jiffies.html index c98d4cf8..121a2747 100644 --- a/tapsets/API-jiffies.html +++ b/tapsets/API-jiffies.html @@ -2,9 +2,9 @@ Kernel jiffies count

Synopsis

     jiffies:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the value of the kernel jiffies variable. This value is incremented periodically by timer interrupts, and may wrap around a 32-bit or 64-bit boundary. See HZ. diff --git a/tapsets/API-json-add-array-numeric-metric.html b/tapsets/API-json-add-array-numeric-metric.html index 26984867..9d0f5bdf 100644 --- a/tapsets/API-json-add-array-numeric-metric.html +++ b/tapsets/API-json-add-array-numeric-metric.html @@ -2,7 +2,7 @@ Add a numeric metric to an array

Synopsis

     json_add_array_numeric_metric:long(array_name:string,metric_name:string,metric_description:string,metric_units:string)
-

Arguments

array_name

+

Arguments

array_name

The name of the array the numeric metric should be added to.

metric_name

@@ -11,7 +11,7 @@ Metric description. An empty string can be used.

metric_units

Metic units. An empty string can be used. -

Description

+

Description

This function adds a numeric metric to an array, setting up everything needed.

diff --git a/tapsets/API-json-add-array-string-metric.html b/tapsets/API-json-add-array-string-metric.html index 90352aaf..be1ec267 100644 --- a/tapsets/API-json-add-array-string-metric.html +++ b/tapsets/API-json-add-array-string-metric.html @@ -2,14 +2,14 @@ Add a string metric to an array

Synopsis

     json_add_array_string_metric:long(array_name:string,metric_name:string,metric_description:string)
-

Arguments

array_name

+

Arguments

array_name

The name of the array the string metric should be added to.

metric_name

The name of the string metric.

metric_description

Metric description. An empty string can be used. -

Description

+

Description

This function adds a string metric to an array, setting up everything needed.

diff --git a/tapsets/API-json-add-array.html b/tapsets/API-json-add-array.html index 81ccbe26..b0eaca39 100644 --- a/tapsets/API-json-add-array.html +++ b/tapsets/API-json-add-array.html @@ -2,11 +2,11 @@ Add an array

Synopsis

     json_add_array:long(name:string,description:string)
-

Arguments

name

+

Arguments

name

The name of the array.

description

Array description. An empty string can be used. -

Description

+

Description

This function adds a array, setting up everything needed. Arrays contain other metrics, added with json_add_array_numeric_metric or json_add_array_string_metric. diff --git a/tapsets/API-json-add-numeric-metric.html b/tapsets/API-json-add-numeric-metric.html index a9b89d14..af50a8e0 100644 --- a/tapsets/API-json-add-numeric-metric.html +++ b/tapsets/API-json-add-numeric-metric.html @@ -2,13 +2,13 @@ Add a numeric metric

Synopsis

     json_add_numeric_metric:long(name:string,description:string,units:string)
-

Arguments

name

+

Arguments

name

The name of the numeric metric.

description

Metric description. An empty string can be used.

units

Metic units. An empty string can be used. -

Description

+

Description

This function adds a numeric metric, setting up everything needed.

diff --git a/tapsets/API-json-add-string-metric.html b/tapsets/API-json-add-string-metric.html index fb363c38..f6644436 100644 --- a/tapsets/API-json-add-string-metric.html +++ b/tapsets/API-json-add-string-metric.html @@ -2,11 +2,11 @@ Add a string metric

Synopsis

     json_add_string_metric:long(name:string,description:string)
-

Arguments

name

+

Arguments

name

The name of the string metric.

description

Metric description. An empty string can be used. -

Description

+

Description

This function adds a string metric, setting up everything needed.

diff --git a/tapsets/API-json-data.html b/tapsets/API-json-data.html index 428d0fa0..a8527285 100644 --- a/tapsets/API-json-data.html +++ b/tapsets/API-json-data.html @@ -1,15 +1,15 @@ probe::json_data

Name

probe::json_data — Fires whenever JSON data is wanted by a reader. -

Synopsis

json_data 

Values

+

Synopsis

json_data 

Values

None -

Context

+

Context

This probe fires when the JSON data is about to be read. This probe must gather up data and then call the following macros to - output the data in JSON format. First, json_output_data_start() + output the data in JSON format. First, @json_output_data_start must be called. That call is followed by one or more of the following (one call for each data item): - json_output_string_value(), json_output_numeric_value(), - json_output_array_string_value(), and - json_output_array_numeric_value(). Finally json_output_data_end() + @json_output_string_value, @json_output_numeric_value, + @json_output_array_string_value, and + @json_output_array_numeric_value. Finally @json_output_data_end must be called.

diff --git a/tapsets/API-json-output-array-numeric-value.html b/tapsets/API-json-output-array-numeric-value.html index a084aaca..5c459242 100644 --- a/tapsets/API-json-output-array-numeric-value.html +++ b/tapsets/API-json-output-array-numeric-value.html @@ -2,7 +2,7 @@ Output a numeric value for metric in an array.

Synopsis

     @json_output_array_numeric_value(array_name,array_index,metric_name,value)
-

Arguments

array_name

+

Arguments

array_name

The name of the array.

array_index

The array index (as a string) indicating where to store the numeric value. @@ -10,7 +10,7 @@ The name of the numeric metric.

value

The numeric value to output. -

Description

+

Description

The json_output_array_numeric_value macro is designed to be called from the 'json_data' probe in the user's script to output a metric's numeric value that is in an array. This metric diff --git a/tapsets/API-json-output-array-string-value.html b/tapsets/API-json-output-array-string-value.html index 29206a69..ee9f0179 100644 --- a/tapsets/API-json-output-array-string-value.html +++ b/tapsets/API-json-output-array-string-value.html @@ -2,7 +2,7 @@ Output a string value for metric in an array.

Synopsis

     @json_output_array_string_value(array_name,array_index,metric_name,value)
-

Arguments

array_name

+

Arguments

array_name

The name of the array.

array_index

The array index (as a string) indicating where to store the string value. @@ -10,7 +10,7 @@ The name of the string metric.

value

The string value to output. -

Description

+

Description

The json_output_array_string_value macro is designed to be called from the 'json_data' probe in the user's script to output a metric's string value that is in an array. This metric diff --git a/tapsets/API-json-output-data-end.html b/tapsets/API-json-output-data-end.html index 8d2659e7..b7ec0634 100644 --- a/tapsets/API-json-output-data-end.html +++ b/tapsets/API-json-output-data-end.html @@ -2,9 +2,9 @@ End the json output.

Synopsis

     @json_output_data_end()
-

Arguments

+

Arguments

None -

Description

+

Description

The json_output_data_end macro is designed to be called from the 'json_data' probe from the user's script. It marks the end of the JSON output. diff --git a/tapsets/API-json-output-data-start.html b/tapsets/API-json-output-data-start.html index 01dd743e..c8ee49c0 100644 --- a/tapsets/API-json-output-data-start.html +++ b/tapsets/API-json-output-data-start.html @@ -2,9 +2,9 @@ Start the json output.

Synopsis

     @json_output_data_start()
-

Arguments

+

Arguments

None -

Description

+

Description

The json_output_data_start macro is designed to be called from the 'json_data' probe from the user's script. It marks the start of the JSON output. diff --git a/tapsets/API-json-output-numeric-value.html b/tapsets/API-json-output-numeric-value.html index 9def89c0..da3a8d36 100644 --- a/tapsets/API-json-output-numeric-value.html +++ b/tapsets/API-json-output-numeric-value.html @@ -2,11 +2,11 @@ Output a numeric value.

Synopsis

     @json_output_numeric_value(name,value)
-

Arguments

name

+

Arguments

name

The name of the numeric metric.

value

The numeric value to output. -

Description

+

Description

The json_output_numeric_value macro is designed to be called from the 'json_data' probe in the user's script to output a metric's numeric value. This metric should have been added with diff --git a/tapsets/API-json-output-string-value.html b/tapsets/API-json-output-string-value.html index d9b537ee..6236d894 100644 --- a/tapsets/API-json-output-string-value.html +++ b/tapsets/API-json-output-string-value.html @@ -2,11 +2,11 @@ Output a string value.

Synopsis

     @json_output_string_value(name,value)
-

Arguments

name

+

Arguments

name

The name of the string metric.

value

The string value to output. -

Description

+

Description

The json_output_string_value macro is designed to be called from the 'json_data' probe in the user's script to output a metric's string value. This metric should have been added with diff --git a/tapsets/API-json-set-prefix.html b/tapsets/API-json-set-prefix.html index 6398fc4b..9b34f62d 100644 --- a/tapsets/API-json-set-prefix.html +++ b/tapsets/API-json-set-prefix.html @@ -2,9 +2,9 @@ Set the metric prefix.

Synopsis

     json_set_prefix:long(prefix:string)
-

Arguments

prefix

+

Arguments

prefix

The prefix name to be used. -

Description

+

Description

This function sets the “prefix”, which is the name of the base of the metric hierarchy. Calling this function is optional, by default the name of the systemtap module is used. diff --git a/tapsets/API-kernel-buffer-quoted-error.html b/tapsets/API-kernel-buffer-quoted-error.html index 1c894623..f016a746 100644 --- a/tapsets/API-kernel-buffer-quoted-error.html +++ b/tapsets/API-kernel-buffer-quoted-error.html @@ -2,13 +2,13 @@ Retrieves and quotes buffer from kernel space

Synopsis

     kernel_buffer_quoted_error:string(addr:long,inlen:long,outlen:long)
-

Arguments

addr

+

Arguments

addr

the kernel space address to retrieve the buffer from

inlen

the exact length of the buffer to read

outlen

the maximum length of the output string -

Description

+

Description

Reads inlen characters of a buffer from the given kernel space memory address, and returns up to outlen characters, where any ASCII characters that are not printable are replaced by the corresponding escape diff --git a/tapsets/API-kernel-buffer-quoted.html b/tapsets/API-kernel-buffer-quoted.html index a83e261a..f2e8b0d1 100644 --- a/tapsets/API-kernel-buffer-quoted.html +++ b/tapsets/API-kernel-buffer-quoted.html @@ -1,12 +1,12 @@ function::kernel_buffer_quoted

Name

function::kernel_buffer_quoted — Retrieves and quotes buffer from kernel space -

Synopsis

1) kernel_buffer_quoted:string(addr:long,inlen:long)
2) kernel_buffer_quoted:string(addr:long,inlen:long,outlen:long)

Arguments

addr

+

Synopsis

1) kernel_buffer_quoted:string(addr:long,inlen:long)
2) kernel_buffer_quoted:string(addr:long,inlen:long,outlen:long)

Arguments

addr

the kernel space address to retrieve the buffer from

inlen

the exact length of the buffer to read

outlen

the maximum length of the output string -

Description

1) Reads inlen characters of a buffer from the given kernel space +

Description

1) Reads inlen characters of a buffer from the given kernel space memory address, and returns up to MAXSTRINGLEN characters, where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note that the string will be surrounded by diff --git a/tapsets/API-kernel-char.html b/tapsets/API-kernel-char.html index 1bf086c7..fb1a91f9 100644 --- a/tapsets/API-kernel-char.html +++ b/tapsets/API-kernel-char.html @@ -2,9 +2,9 @@ Retrieves a char value stored in kernel memory

Synopsis

     kernel_char:long(addr:long)
-

Arguments

addr

+

Arguments

addr

The kernel address to retrieve the char from -

Description

+

Description

Returns the char value from a given kernel memory address. Reports an error when reading from the given address fails.

diff --git a/tapsets/API-kernel-int.html b/tapsets/API-kernel-int.html index 374d1776..f1871e83 100644 --- a/tapsets/API-kernel-int.html +++ b/tapsets/API-kernel-int.html @@ -2,9 +2,9 @@ Retrieves an int value stored in kernel memory

Synopsis

     kernel_int:long(addr:long)
-

Arguments

addr

+

Arguments

addr

The kernel address to retrieve the int from -

Description

+

Description

Returns the int value from a given kernel memory address. Reports an error when reading from the given address fails.

diff --git a/tapsets/API-kernel-long.html b/tapsets/API-kernel-long.html index 3f301fc2..e5153836 100644 --- a/tapsets/API-kernel-long.html +++ b/tapsets/API-kernel-long.html @@ -2,9 +2,9 @@ Retrieves a long value stored in kernel memory

Synopsis

     kernel_long:long(addr:long)
-

Arguments

addr

+

Arguments

addr

The kernel address to retrieve the long from -

Description

+

Description

Returns the long value from a given kernel memory address. Reports an error when reading from the given address fails.

diff --git a/tapsets/API-kernel-pointer.html b/tapsets/API-kernel-pointer.html index 536c3142..30eab826 100644 --- a/tapsets/API-kernel-pointer.html +++ b/tapsets/API-kernel-pointer.html @@ -2,9 +2,9 @@ Retrieves a pointer value stored in kernel memory

Synopsis

     kernel_pointer:long(addr:long)
-

Arguments

addr

+

Arguments

addr

The kernel address to retrieve the pointer from -

Description

+

Description

Returns the pointer value from a given kernel memory address. Reports an error when reading from the given address fails. diff --git a/tapsets/API-kernel-short.html b/tapsets/API-kernel-short.html index 54670b11..87c945d0 100644 --- a/tapsets/API-kernel-short.html +++ b/tapsets/API-kernel-short.html @@ -2,9 +2,9 @@ Retrieves a short value stored in kernel memory

Synopsis

     kernel_short:long(addr:long)
-

Arguments

addr

+

Arguments

addr

The kernel address to retrieve the short from -

Description

+

Description

Returns the short value from a given kernel memory address. Reports an error when reading from the given address fails.

diff --git a/tapsets/API-kernel-string-n.html b/tapsets/API-kernel-string-n.html index 29ac3263..b373a680 100644 --- a/tapsets/API-kernel-string-n.html +++ b/tapsets/API-kernel-string-n.html @@ -2,11 +2,11 @@ Retrieves string of given length from kernel memory

Synopsis

     kernel_string_n:string(addr:long,n:long)
-

Arguments

addr

+

Arguments

addr

The kernel address to retrieve the string from

n

The maximum length of the string (if not null terminated) -

Description

+

Description

Returns the C string of a maximum given length from a given kernel memory address. Reports an error on string copy fault.

diff --git a/tapsets/API-kernel-string-quoted-utf16.html b/tapsets/API-kernel-string-quoted-utf16.html index e678fe62..cdc2e649 100644 --- a/tapsets/API-kernel-string-quoted-utf16.html +++ b/tapsets/API-kernel-string-quoted-utf16.html @@ -2,9 +2,9 @@ Quote given kernel UTF-16 string.

Synopsis

     kernel_string_quoted_utf16:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The kernel address to retrieve the string from -

Description

+

Description

This function combines quoting as per string_quoted and UTF-16 decoding as per kernel_string_utf16.

diff --git a/tapsets/API-kernel-string-quoted-utf32.html b/tapsets/API-kernel-string-quoted-utf32.html index c8075681..aca38716 100644 --- a/tapsets/API-kernel-string-quoted-utf32.html +++ b/tapsets/API-kernel-string-quoted-utf32.html @@ -2,9 +2,9 @@ Quote given UTF-32 kernel string.

Synopsis

     kernel_string_quoted_utf32:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The kernel address to retrieve the string from -

Description

+

Description

This function combines quoting as per string_quoted and UTF-32 decoding as per kernel_string_utf32.

diff --git a/tapsets/API-kernel-string-quoted.html b/tapsets/API-kernel-string-quoted.html index b04fd6f0..fe33b2e7 100644 --- a/tapsets/API-kernel-string-quoted.html +++ b/tapsets/API-kernel-string-quoted.html @@ -2,9 +2,9 @@ Retrieves and quotes string from kernel memory

Synopsis

     kernel_string_quoted:string(addr:long)
-

Arguments

addr

+

Arguments

addr

the kernel memory address to retrieve the string from -

Description

+

Description

Returns the null terminated C string from a given kernel memory address where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note diff --git a/tapsets/API-kernel-string-utf16.html b/tapsets/API-kernel-string-utf16.html index 0bb9c565..dbc9d017 100644 --- a/tapsets/API-kernel-string-utf16.html +++ b/tapsets/API-kernel-string-utf16.html @@ -1,10 +1,10 @@ function::kernel_string_utf16

Name

function::kernel_string_utf16 — Retrieves UTF-16 string from kernel memory -

Synopsis

1) kernel_string_utf16:string(addr:long)
2) kernel_string_utf16:string(addr:long,err_msg:string)

Arguments

addr

+

Synopsis

1) kernel_string_utf16:string(addr:long)
2) kernel_string_utf16:string(addr:long,err_msg:string)

Arguments

addr

The kernel address to retrieve the string from

err_msg

The error message to return when data isn't available -

Description

1) This function returns a null terminated UTF-8 string converted +

Description

1) This function returns a null terminated UTF-8 string converted from the UTF-16 string at a given kernel memory address. Reports an error on string copy fault or conversion error.

2) This function returns a null terminated UTF-8 string converted from the UTF-16 string at a given kernel memory address. Reports the given diff --git a/tapsets/API-kernel-string-utf32.html b/tapsets/API-kernel-string-utf32.html index b648562b..2b535b8e 100644 --- a/tapsets/API-kernel-string-utf32.html +++ b/tapsets/API-kernel-string-utf32.html @@ -1,10 +1,10 @@ function::kernel_string_utf32

Name

function::kernel_string_utf32 — Retrieves UTF-32 string from kernel memory -

Synopsis

1) kernel_string_utf32:string(addr:long)
2) kernel_string_utf32:string(addr:long,err_msg:string)

Arguments

addr

+

Synopsis

1) kernel_string_utf32:string(addr:long)
2) kernel_string_utf32:string(addr:long,err_msg:string)

Arguments

addr

The kernel address to retrieve the string from

err_msg

The error message to return when data isn't available -

Description

1) This function returns a null terminated UTF-8 string converted +

Description

1) This function returns a null terminated UTF-8 string converted from the UTF-32 string at a given kernel memory address. Reports an error on string copy fault or conversion error.

2) This function returns a null terminated UTF-8 string converted from the UTF-32 string at a given kernel memory address. Reports the given diff --git a/tapsets/API-kernel-string.html b/tapsets/API-kernel-string.html index 3c027cc1..ec038053 100644 --- a/tapsets/API-kernel-string.html +++ b/tapsets/API-kernel-string.html @@ -1,10 +1,10 @@ function::kernel_string

Name

function::kernel_string — Retrieves string from kernel memory -

Synopsis

1) kernel_string:string(addr:long)
2) kernel_string:string(addr:long,err_msg:string)

Arguments

addr

+

Synopsis

1) kernel_string:string(addr:long)
2) kernel_string:string(addr:long,err_msg:string)

Arguments

addr

The kernel address to retrieve the string from

err_msg

The error message to return when data isn't available -

Description

1) This function returns the null terminated C string +

Description

1) This function returns the null terminated C string from a given kernel memory address. Reports an error on string copy fault.

2) This function returns the null terminated C string from a given kernel memory address. Reports the given error message diff --git a/tapsets/API-kprocess-create.html b/tapsets/API-kprocess-create.html index 572944bc..80131f27 100644 --- a/tapsets/API-kprocess-create.html +++ b/tapsets/API-kprocess-create.html @@ -1,12 +1,12 @@ probe::kprocess.create

Name

probe::kprocess.create — Fires whenever a new process or thread is successfully created -

Synopsis

kprocess.create 

Values

new_pid

+

Synopsis

kprocess.create 

Values

new_pid

The PID of the newly created process

new_tid

The TID of the newly created task -

Context

+

Context

Parent of the created process. -

Description

+

Description

Fires whenever a new process is successfully created, either as a result of fork (or one of its syscall variants), or a new kernel thread.

diff --git a/tapsets/API-kprocess-exec-complete.html b/tapsets/API-kprocess-exec-complete.html index ec658196..65e1ad4b 100644 --- a/tapsets/API-kprocess-exec-complete.html +++ b/tapsets/API-kprocess-exec-complete.html @@ -1,17 +1,17 @@ probe::kprocess.exec_complete

Name

probe::kprocess.exec_complete — Return from exec to a new program -

Synopsis

kprocess.exec_complete 

Values

errno

- The error number resulting from the exec -

success

- A boolean indicating whether the exec was successful -

name

+

Synopsis

kprocess.exec_complete 

Values

name

Name of the system call (“execve”) (SystemTap v2.5+) +

errno

+ The error number resulting from the exec

retstr

A string representation of errno (SystemTap v2.5+) -

Context

+

success

+ A boolean indicating whether the exec was successful +

Context

On success, the context of the new executable. On failure, remains in the context of the caller. -

Description

+

Description

Fires at the completion of an exec call. Aliased to the syscall.execve.return probe in SystemTap v2.5+.

diff --git a/tapsets/API-kprocess-exec.html b/tapsets/API-kprocess-exec.html index 227a6b05..e1eefcaf 100644 --- a/tapsets/API-kprocess-exec.html +++ b/tapsets/API-kprocess-exec.html @@ -1,18 +1,18 @@ probe::kprocess.exec

Name

probe::kprocess.exec — Attempt to exec to a new program -

Synopsis

kprocess.exec 

Values

filename

- The path to the new executable +

Synopsis

kprocess.exec 

Values

name

+ Name of the system call (“execve”) (SystemTap v2.5+)

argstr

A string containing the filename followed by the arguments to pass, excluding 0th arg (SystemTap v2.5+)

args

The arguments to pass to the new executable, including the 0th arg (SystemTap v2.5+) -

name

- Name of the system call (“execve”) (SystemTap v2.5+) -

Context

+

filename

+ The path to the new executable +

Context

The caller of exec. -

Description

+

Description

Fires whenever a process attempts to exec to a new program. Aliased to the syscall.execve probe in SystemTap v2.5+.

diff --git a/tapsets/API-kprocess-exit.html b/tapsets/API-kprocess-exit.html index 68b0faee..65f9ffec 100644 --- a/tapsets/API-kprocess-exit.html +++ b/tapsets/API-kprocess-exit.html @@ -1,10 +1,10 @@ probe::kprocess.exit

Name

probe::kprocess.exit — Exit from process -

Synopsis

kprocess.exit 

Values

code

+

Synopsis

kprocess.exit 

Values

code

The exit code of the process -

Context

+

Context

The process which is terminating. -

Description

+

Description

Fires when a process terminates. This will always be followed by a kprocess.release, though the latter may be delayed if the process waits in a zombie state. diff --git a/tapsets/API-kprocess-release.html b/tapsets/API-kprocess-release.html index 17da9d03..92e49bd4 100644 --- a/tapsets/API-kprocess-release.html +++ b/tapsets/API-kprocess-release.html @@ -1,17 +1,17 @@ probe::kprocess.release

Name

probe::kprocess.release — Process released -

Synopsis

kprocess.release 

Values

released_tid

- TID of the task being released +

Synopsis

kprocess.release 

Values

task

+ A task handle to the process being released

pid

Same as released_pid for compatibility (deprecated)

released_pid

PID of the process being released -

task

- A task handle to the process being released -

Context

+

released_tid

+ TID of the task being released +

Context

The context of the parent, if it wanted notification of this process' termination, else the context of the process itself. -

Description

+

Description

Fires when a process is released from the kernel. This always follows a kprocess.exit, though it may be delayed somewhat if the process waits in a zombie state. diff --git a/tapsets/API-kprocess-start.html b/tapsets/API-kprocess-start.html index 0b9511a6..ec6a3594 100644 --- a/tapsets/API-kprocess-start.html +++ b/tapsets/API-kprocess-start.html @@ -1,9 +1,9 @@ probe::kprocess.start

Name

probe::kprocess.start — Starting new process -

Synopsis

kprocess.start 

Values

+

Synopsis

kprocess.start 

Values

None -

Context

+

Context

Newly created process. -

Description

+

Description

Fires immediately before a new process begins execution.

diff --git a/tapsets/API-ktime-get-ns.html b/tapsets/API-ktime-get-ns.html index df0aeefd..182e64d9 100644 --- a/tapsets/API-ktime-get-ns.html +++ b/tapsets/API-ktime-get-ns.html @@ -2,8 +2,8 @@ Number of nanoseconds since boot

Synopsis

     ktime_get_ns:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the system ktime.

diff --git a/tapsets/API-linuxmib-DelayedACKs.html b/tapsets/API-linuxmib-DelayedACKs.html index a00e4739..fbf707f2 100644 --- a/tapsets/API-linuxmib-DelayedACKs.html +++ b/tapsets/API-linuxmib-DelayedACKs.html @@ -1,10 +1,10 @@ probe::linuxmib.DelayedACKs

Name

probe::linuxmib.DelayedACKs — Count of delayed acks -

Synopsis

linuxmib.DelayedACKs 

Values

op

+

Synopsis

linuxmib.DelayedACKs 

Values

op

Value to be added to the counter (default value of 1)

sk

Pointer to the struct sock being acted on -

Description

+

Description

The packet pointed to by skb is filtered by the function linuxmib_filter_key. If the packet passes the filter is is counted in the global DelayedACKs (equivalent to SNMP's MIB diff --git a/tapsets/API-linuxmib-ListenDrops.html b/tapsets/API-linuxmib-ListenDrops.html index 000d4f06..4a6881a0 100644 --- a/tapsets/API-linuxmib-ListenDrops.html +++ b/tapsets/API-linuxmib-ListenDrops.html @@ -1,10 +1,10 @@ probe::linuxmib.ListenDrops

Name

probe::linuxmib.ListenDrops — Count of times conn request that were dropped -

Synopsis

linuxmib.ListenDrops 

Values

op

+

Synopsis

linuxmib.ListenDrops 

Values

op

Value to be added to the counter (default value of 1)

sk

Pointer to the struct sock being acted on -

Description

+

Description

The packet pointed to by skb is filtered by the function linuxmib_filter_key. If the packet passes the filter is is counted in the global ListenDrops (equivalent to SNMP's MIB diff --git a/tapsets/API-linuxmib-ListenOverflows.html b/tapsets/API-linuxmib-ListenOverflows.html index 7395bb9b..f781dc6b 100644 --- a/tapsets/API-linuxmib-ListenOverflows.html +++ b/tapsets/API-linuxmib-ListenOverflows.html @@ -1,10 +1,10 @@ probe::linuxmib.ListenOverflows

Name

probe::linuxmib.ListenOverflows — Count of times a listen queue overflowed -

Synopsis

linuxmib.ListenOverflows 

Values

op

+

Synopsis

linuxmib.ListenOverflows 

Values

op

Value to be added to the counter (default value of 1)

sk

Pointer to the struct sock being acted on -

Description

+

Description

The packet pointed to by skb is filtered by the function linuxmib_filter_key. If the packet passes the filter is is counted in the global ListenOverflows (equivalent to SNMP's MIB diff --git a/tapsets/API-linuxmib-TCPMemoryPressures.html b/tapsets/API-linuxmib-TCPMemoryPressures.html index 0a639cda..1be047d7 100644 --- a/tapsets/API-linuxmib-TCPMemoryPressures.html +++ b/tapsets/API-linuxmib-TCPMemoryPressures.html @@ -1,10 +1,10 @@ probe::linuxmib.TCPMemoryPressures

Name

probe::linuxmib.TCPMemoryPressures — Count of times memory pressure was used -

Synopsis

linuxmib.TCPMemoryPressures 

Values

sk

+

Synopsis

linuxmib.TCPMemoryPressures 

Values

sk

Pointer to the struct sock being acted on

op

Value to be added to the counter (default value of 1) -

Description

+

Description

The packet pointed to by skb is filtered by the function linuxmib_filter_key. If the packet passes the filter is is counted in the global TCPMemoryPressures (equivalent to SNMP's MIB diff --git a/tapsets/API-linuxmib-filter-key.html b/tapsets/API-linuxmib-filter-key.html index f95250be..0b1ad31a 100644 --- a/tapsets/API-linuxmib-filter-key.html +++ b/tapsets/API-linuxmib-filter-key.html @@ -2,11 +2,11 @@ Default filter function for linuxmib.* probes

Synopsis

     linuxmib_filter_key:long(sk:long,op:long)
-

Arguments

sk

+

Arguments

sk

pointer to the struct sock

op

value to be counted if sk passes the filter -

Description

+

Description

This function is a default filter function. The user can replace this function with their own. The user-supplied filter function returns an index key based on the values diff --git a/tapsets/API-local-clock-ms.html b/tapsets/API-local-clock-ms.html index 27ae3130..6f4ef2aa 100644 --- a/tapsets/API-local-clock-ms.html +++ b/tapsets/API-local-clock-ms.html @@ -2,9 +2,9 @@ Number of milliseconds on the local cpu's clock

Synopsis

     local_clock_ms:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the number of milliseconds on the local cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). diff --git a/tapsets/API-local-clock-ns.html b/tapsets/API-local-clock-ns.html index aac1d0e3..4a6efea1 100644 --- a/tapsets/API-local-clock-ns.html +++ b/tapsets/API-local-clock-ns.html @@ -2,9 +2,9 @@ Number of nanoseconds on the local cpu's clock

Synopsis

     local_clock_ns:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the number of nanoseconds on the local cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). diff --git a/tapsets/API-local-clock-s.html b/tapsets/API-local-clock-s.html index 731b2aed..776e2c3c 100644 --- a/tapsets/API-local-clock-s.html +++ b/tapsets/API-local-clock-s.html @@ -2,9 +2,9 @@ Number of seconds on the local cpu's clock

Synopsis

     local_clock_s:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the number of seconds on the local cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). diff --git a/tapsets/API-local-clock-us.html b/tapsets/API-local-clock-us.html index 759d3ff8..bbe60769 100644 --- a/tapsets/API-local-clock-us.html +++ b/tapsets/API-local-clock-us.html @@ -2,9 +2,9 @@ Number of microseconds on the local cpu's clock

Synopsis

     local_clock_us:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the number of microseconds on the local cpu's clock. This is always monotonic comparing on the same cpu, but may have some drift between cpus (within about a jiffy). diff --git a/tapsets/API-log.html b/tapsets/API-log.html index d9a44939..7a98ff58 100644 --- a/tapsets/API-log.html +++ b/tapsets/API-log.html @@ -2,9 +2,9 @@ Send a line to the common trace buffer

Synopsis

     log(msg:string)
-

Arguments

msg

+

Arguments

msg

The formatted message string -

Description

+

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 diff --git a/tapsets/API-long-arg.html b/tapsets/API-long-arg.html index 1ee27c37..c1153094 100644 --- a/tapsets/API-long-arg.html +++ b/tapsets/API-long-arg.html @@ -2,9 +2,9 @@ Return function argument as signed long

Synopsis

     long_arg:long(n:long)
-

Arguments

n

+

Arguments

n

index of argument to return -

Description

+

Description

Return the value of argument n as a signed long. On architectures where a long is 32 bits, the value is sign-extended to 64 bits. diff --git a/tapsets/API-long-to-fp.html b/tapsets/API-long-to-fp.html new file mode 100644 index 00000000..bc356bf2 --- /dev/null +++ b/tapsets/API-long-to-fp.html @@ -0,0 +1,9 @@ +function::long_to_fp

Name

function::long_to_fp — + Convert long int to 64 bit floating point +

Synopsis

+    long_to_fp:long(input:long)
+

Arguments

input

+ a long integer +

Description

+ Convert from a long to a 64 bit softfloat floating point. +

diff --git a/tapsets/API-longlong-arg.html b/tapsets/API-longlong-arg.html index c7ab3542..4035fb56 100644 --- a/tapsets/API-longlong-arg.html +++ b/tapsets/API-longlong-arg.html @@ -2,8 +2,8 @@ Return function argument as 64-bit value

Synopsis

     longlong_arg:long(n:long)
-

Arguments

n

+

Arguments

n

index of argument to return -

Description

+

Description

Return the value of argument n as a 64-bit value.

diff --git a/tapsets/API-matched-str.html b/tapsets/API-matched-str.html index ec0ee2c8..e4efb823 100644 --- a/tapsets/API-matched-str.html +++ b/tapsets/API-matched-str.html @@ -2,9 +2,9 @@ Return the last matched string.

Synopsis

     matched_str:string()
-

Arguments

+

Arguments

None -

Description

+

Description

returns the string matched by the last successful use of the =~ regexp matching operator. Returns an error if the last use of =~ led to a failed match. diff --git a/tapsets/API-matched.html b/tapsets/API-matched.html index 9fafcd7c..b510321d 100644 --- a/tapsets/API-matched.html +++ b/tapsets/API-matched.html @@ -2,10 +2,10 @@ Return a given matched subexpression.

Synopsis

     matched:string(n:long)
-

Arguments

n

+

Arguments

n

index to the subexpression to return. 0 corresponds to the entire regular expression. -

Description

+

Description

returns the content of the n'th subexpression of the last successful use of the =~ regex matching operator. Returns an empty string if the n'th subexpression was not matched (e.g. due to diff --git a/tapsets/API-mdelay.html b/tapsets/API-mdelay.html index 370c0618..ea5852f1 100644 --- a/tapsets/API-mdelay.html +++ b/tapsets/API-mdelay.html @@ -2,9 +2,9 @@ millisecond delay

Synopsis

     mdelay(ms:long)
-

Arguments

ms

+

Arguments

ms

Number of milliseconds to delay. -

Description

+

Description

This function inserts a multi-millisecond busy-delay into a probe handler. It requires guru mode.

diff --git a/tapsets/API-mem-page-size.html b/tapsets/API-mem-page-size.html index 3fdb007b..8062ab32 100644 --- a/tapsets/API-mem-page-size.html +++ b/tapsets/API-mem-page-size.html @@ -2,6 +2,6 @@ Number of bytes in a page for this architecture

Synopsis

     mem_page_size:long()
-

Arguments

+

Arguments

None

diff --git a/tapsets/API-modname.html b/tapsets/API-modname.html index 8d009ee5..151c4119 100644 --- a/tapsets/API-modname.html +++ b/tapsets/API-modname.html @@ -2,9 +2,9 @@ Return the kernel module name loaded at the address

Synopsis

     modname:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The address to map to a kernel module name -

Description

+

Description

Returns the module name associated with the given address if known. If not known it will raise an error. If the address was not in a kernel module, but in the kernel itself, then diff --git a/tapsets/API-module-name.html b/tapsets/API-module-name.html index 80c9892a..726f824f 100644 --- a/tapsets/API-module-name.html +++ b/tapsets/API-module-name.html @@ -2,9 +2,9 @@ The module name of the current script

Synopsis

     module_name:string()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the name of the stap module. Either generated randomly (stap_[0-9a-f]+_[0-9a-f]+) or set by stap -m <module_name>. diff --git a/tapsets/API-module-size.html b/tapsets/API-module-size.html index 086ece8c..c7baff99 100644 --- a/tapsets/API-module-size.html +++ b/tapsets/API-module-size.html @@ -2,9 +2,9 @@ The module size of the current script

Synopsis

     module_size:string()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the sizes of various sections of the stap module.

diff --git a/tapsets/API-msecs-to-string.html b/tapsets/API-msecs-to-string.html index 06f08ff3..baa08881 100644 --- a/tapsets/API-msecs-to-string.html +++ b/tapsets/API-msecs-to-string.html @@ -2,9 +2,9 @@ Human readable string for given milliseconds

Synopsis

     msecs_to_string:string(msecs:long)
-

Arguments

msecs

+

Arguments

msecs

Number of milliseconds to translate. -

Description

+

Description

Returns a string representing the number of milliseconds as a human readable string consisting of “XmY.ZZZs”, where X is the number of minutes, Y is the number of seconds and diff --git a/tapsets/API-netdev-change-mac.html b/tapsets/API-netdev-change-mac.html index 35bf3a04..4a8f468c 100644 --- a/tapsets/API-netdev-change-mac.html +++ b/tapsets/API-netdev-change-mac.html @@ -1,11 +1,11 @@ probe::netdev.change_mac

Name

probe::netdev.change_mac — Called when the netdev_name has the MAC changed -

Synopsis

netdev.change_mac 

Values

old_mac

- The current MAC address -

new_mac

+

Synopsis

netdev.change_mac 

Values

new_mac

The new MAC address -

dev_name

- The device that will have the MAC changed

mac_len

The MAC length +

dev_name

+ The device that will have the MAC changed +

old_mac

+ The current MAC address

diff --git a/tapsets/API-netdev-change-mtu.html b/tapsets/API-netdev-change-mtu.html index b908d1f9..58407eba 100644 --- a/tapsets/API-netdev-change-mtu.html +++ b/tapsets/API-netdev-change-mtu.html @@ -1,9 +1,9 @@ probe::netdev.change_mtu

Name

probe::netdev.change_mtu — Called when the netdev MTU is changed -

Synopsis

netdev.change_mtu 

Values

old_mtu

+

Synopsis

netdev.change_mtu 

Values

old_mtu

The current MTU -

new_mtu

- The new MTU

dev_name

The device that will have the MTU changed +

new_mtu

+ The new MTU

diff --git a/tapsets/API-netdev-change-rx-flag.html b/tapsets/API-netdev-change-rx-flag.html index 5df650e0..e098f4f9 100644 --- a/tapsets/API-netdev-change-rx-flag.html +++ b/tapsets/API-netdev-change-rx-flag.html @@ -1,7 +1,7 @@ probe::netdev.change_rx_flag

Name

probe::netdev.change_rx_flag — Called when the device RX flag will be changed -

Synopsis

netdev.change_rx_flag 

Values

dev_name

- The device that will be changed -

flags

+

Synopsis

netdev.change_rx_flag 

Values

flags

The new flags +

dev_name

+ The device that will be changed

diff --git a/tapsets/API-netdev-close.html b/tapsets/API-netdev-close.html index 85ab4fdc..bab822c5 100644 --- a/tapsets/API-netdev-close.html +++ b/tapsets/API-netdev-close.html @@ -1,5 +1,5 @@ probe::netdev.close

Name

probe::netdev.close — Called when the device is closed -

Synopsis

netdev.close 

Values

dev_name

+

Synopsis

netdev.close 

Values

dev_name

The device that is going to be closed

diff --git a/tapsets/API-netdev-get-stats.html b/tapsets/API-netdev-get-stats.html index d324c7c5..da555ec2 100644 --- a/tapsets/API-netdev-get-stats.html +++ b/tapsets/API-netdev-get-stats.html @@ -1,5 +1,5 @@ probe::netdev.get_stats

Name

probe::netdev.get_stats — Called when someone asks the device statistics -

Synopsis

netdev.get_stats 

Values

dev_name

+

Synopsis

netdev.get_stats 

Values

dev_name

The device that is going to provide the statistics

diff --git a/tapsets/API-netdev-hard-transmit.html b/tapsets/API-netdev-hard-transmit.html index d0ea61c6..70e0a17a 100644 --- a/tapsets/API-netdev-hard-transmit.html +++ b/tapsets/API-netdev-hard-transmit.html @@ -1,11 +1,11 @@ probe::netdev.hard_transmit

Name

probe::netdev.hard_transmit — Called when the devices is going to TX (hard) -

Synopsis

netdev.hard_transmit 

Values

length

- The length of the transmit buffer. -

truesize

- The size of the data to be transmitted. -

protocol

+

Synopsis

netdev.hard_transmit 

Values

protocol

The protocol used in the transmission

dev_name

The device scheduled to transmit +

truesize

+ The size of the data to be transmitted. +

length

+ The length of the transmit buffer.

diff --git a/tapsets/API-netdev-ioctl.html b/tapsets/API-netdev-ioctl.html index 5828625a..4734d900 100644 --- a/tapsets/API-netdev-ioctl.html +++ b/tapsets/API-netdev-ioctl.html @@ -1,7 +1,7 @@ probe::netdev.ioctl

Name

probe::netdev.ioctl — Called when the device suffers an IOCTL -

Synopsis

netdev.ioctl 

Values

arg

- The IOCTL argument (usually the netdev interface) -

cmd

+

Synopsis

netdev.ioctl 

Values

cmd

The IOCTL request +

arg

+ The IOCTL argument (usually the netdev interface)

diff --git a/tapsets/API-netdev-open.html b/tapsets/API-netdev-open.html index 82391266..4d2430fd 100644 --- a/tapsets/API-netdev-open.html +++ b/tapsets/API-netdev-open.html @@ -1,5 +1,5 @@ probe::netdev.open

Name

probe::netdev.open — Called when the device is opened -

Synopsis

netdev.open 

Values

dev_name

+

Synopsis

netdev.open 

Values

dev_name

The device that is going to be opened

diff --git a/tapsets/API-netdev-receive.html b/tapsets/API-netdev-receive.html index 8d826ebc..baebbb81 100644 --- a/tapsets/API-netdev-receive.html +++ b/tapsets/API-netdev-receive.html @@ -1,9 +1,9 @@ probe::netdev.receive

Name

probe::netdev.receive — Data received from network device. -

Synopsis

netdev.receive 

Values

dev_name

- The name of the device. e.g: eth0, ath1. -

protocol

+

Synopsis

netdev.receive 

Values

protocol

Protocol of received packet. +

dev_name

+ The name of the device. e.g: eth0, ath1.

length

The length of the receiving buffer.

diff --git a/tapsets/API-netdev-register.html b/tapsets/API-netdev-register.html index 3b8877a1..d15c7e1f 100644 --- a/tapsets/API-netdev-register.html +++ b/tapsets/API-netdev-register.html @@ -1,5 +1,5 @@ probe::netdev.register

Name

probe::netdev.register — Called when the device is registered -

Synopsis

netdev.register 

Values

dev_name

+

Synopsis

netdev.register 

Values

dev_name

The device that is going to be registered

diff --git a/tapsets/API-netdev-rx.html b/tapsets/API-netdev-rx.html index 9cc97343..18988064 100644 --- a/tapsets/API-netdev-rx.html +++ b/tapsets/API-netdev-rx.html @@ -1,7 +1,7 @@ probe::netdev.rx

Name

probe::netdev.rx — Called when the device is going to receive a packet -

Synopsis

netdev.rx 

Values

protocol

- The packet protocol -

dev_name

+

Synopsis

netdev.rx 

Values

dev_name

The device received the packet +

protocol

+ The packet protocol

diff --git a/tapsets/API-netdev-set-promiscuity.html b/tapsets/API-netdev-set-promiscuity.html index 5cb789c1..d0b94067 100644 --- a/tapsets/API-netdev-set-promiscuity.html +++ b/tapsets/API-netdev-set-promiscuity.html @@ -1,11 +1,11 @@ probe::netdev.set_promiscuity

Name

probe::netdev.set_promiscuity — Called when the device enters/leaves promiscuity -

Synopsis

netdev.set_promiscuity 

Values

inc

- Count the number of promiscuity openers +

Synopsis

netdev.set_promiscuity 

Values

enable

+ If the device is entering promiscuity mode

disable

If the device is leaving promiscuity mode +

inc

+ Count the number of promiscuity openers

dev_name

The device that is entering/leaving promiscuity mode -

enable

- If the device is entering promiscuity mode

diff --git a/tapsets/API-netdev-transmit.html b/tapsets/API-netdev-transmit.html index 288c0766..2d1a30e2 100644 --- a/tapsets/API-netdev-transmit.html +++ b/tapsets/API-netdev-transmit.html @@ -1,11 +1,11 @@ probe::netdev.transmit

Name

probe::netdev.transmit — Network device transmitting buffer -

Synopsis

netdev.transmit 

Values

length

- The length of the transmit buffer. -

truesize

- The size of the data to be transmitted. -

protocol

+

Synopsis

netdev.transmit 

Values

protocol

The protocol of this packet(defined in include/linux/if_ether.h).

dev_name

The name of the device. e.g: eth0, ath1. +

truesize

+ The size of the data to be transmitted. +

length

+ The length of the transmit buffer.

diff --git a/tapsets/API-netdev-unregister.html b/tapsets/API-netdev-unregister.html index 4d28de7b..b674ede5 100644 --- a/tapsets/API-netdev-unregister.html +++ b/tapsets/API-netdev-unregister.html @@ -1,5 +1,5 @@ probe::netdev.unregister

Name

probe::netdev.unregister — Called when the device is being unregistered -

Synopsis

netdev.unregister 

Values

dev_name

+

Synopsis

netdev.unregister 

Values

dev_name

The device that is going to be unregistered

diff --git a/tapsets/API-netfilter-arp-forward.html b/tapsets/API-netfilter-arp-forward.html index 77a83ac8..4f5ae23f 100644 --- a/tapsets/API-netfilter-arp-forward.html +++ b/tapsets/API-netfilter-arp-forward.html @@ -1,53 +1,53 @@ probe::netfilter.arp.forward

Name

probe::netfilter.arp.forward — - Called for each ARP packet to be forwarded -

Synopsis

netfilter.arp.forward 

Values

nf_drop

- Constant used to signify a 'drop' verdict -

ar_sip

- Ethernet+IP only (ar_pro==0x800): source IP address -

arphdr

+

Synopsis

netfilter.arp.forward 

Values

arphdr

Address of ARP header -

ar_hln

- Length of hardware address -

outdev_name

- Name of network device packet will be routed to (if known) -

nf_stolen

- Constant used to signify a 'stolen' verdict -

data_hex

- A hexadecimal string representing the packet buffer contents +

nf_drop

+ Constant used to signify a 'drop' verdict +

ar_tip

+ Ethernet+IP only (ar_pro==0x800): target IP address

ar_pro

Format of protocol address -

ar_hrd

- Format of hardware address +

data_hex

+ A hexadecimal string representing the packet buffer contents

ar_tha

Ethernet+IP only (ar_pro==0x800): target hardware (MAC) address -

pf

- Protocol family -- always “arp” +

outdev

+ Address of net_device representing output device, 0 if unknown +

indev

+ Address of net_device representing input device, 0 if unknown +

nf_stolen

+ Constant used to signify a 'stolen' verdict

indev_name

Name of network device packet was received on (if known)

nf_accept

Constant used to signify an 'accept' verdict -

data_str

- A string representing the packet buffer contents -

indev

- Address of net_device representing input device, 0 if unknown +

pf

+ Protocol family -- always “arp” +

ar_hln

+ Length of hardware address

nf_repeat

Constant used to signify a 'repeat' verdict -

ar_tip

- Ethernet+IP only (ar_pro==0x800): target IP address -

length

- The length of the packet buffer contents, in bytes +

ar_hrd

+ Format of hardware address +

data_str

+ A string representing the packet buffer contents +

ar_data

+ Address of ARP packet data region (after the header)

nf_stop

Constant used to signify a 'stop' verdict

nf_queue

Constant used to signify a 'queue' verdict -

outdev

- Address of net_device representing output device, 0 if unknown -

ar_sha

- Ethernet+IP only (ar_pro==0x800): source hardware (MAC) address -

ar_data

- Address of ARP packet data region (after the header)

ar_op

ARP opcode (command) +

length

+ The length of the packet buffer contents, in bytes +

ar_sha

+ Ethernet+IP only (ar_pro==0x800): source hardware (MAC) address +

outdev_name

+ Name of network device packet will be routed to (if known)

ar_pln

Length of protocol address +

ar_sip

+ Ethernet+IP only (ar_pro==0x800): source IP address

diff --git a/tapsets/API-netfilter-arp-in.html b/tapsets/API-netfilter-arp-in.html index 6ff6bedc..a2778689 100644 --- a/tapsets/API-netfilter-arp-in.html +++ b/tapsets/API-netfilter-arp-in.html @@ -1,53 +1,53 @@ probe::netfilter.arp.in

Name

probe::netfilter.arp.in — - Called for each incoming ARP packet -

Synopsis

netfilter.arp.in 

Values

ar_pln

+

Synopsis

netfilter.arp.in 

Values

ar_tip

+ Ethernet+IP only (ar_pro==0x800): target IP address +

nf_drop

+ Constant used to signify a 'drop' verdict +

outdev

+ Address of net_device representing output device, 0 if unknown +

data_hex

+ A hexadecimal string representing the packet buffer contents +

ar_tha

+ Ethernet+IP only (ar_pro==0x800): target hardware (MAC) address +

ar_pro

+ Format of protocol address +

arphdr

+ Address of ARP header +

ar_pln

Length of protocol address -

ar_op

- ARP opcode (command) -

ar_data

- Address of ARP packet data region (after the header) +

outdev_name

+ Name of network device packet will be routed to (if known)

ar_sha

Ethernet+IP only (ar_pro==0x800): source hardware (MAC) address -

outdev

- Address of net_device representing output device, 0 if unknown -

nf_queue

- Constant used to signify a 'queue' verdict -

nf_stop

- Constant used to signify a 'stop' verdict -

length

- The length of the packet buffer contents, in bytes -

ar_tip

- Ethernet+IP only (ar_pro==0x800): target IP address -

nf_repeat

- Constant used to signify a 'repeat' verdict -

indev

- Address of net_device representing input device, 0 if unknown -

data_str

- A string representing the packet buffer contents +

ar_sip

+ Ethernet+IP only (ar_pro==0x800): source IP address

nf_accept

Constant used to signify an 'accept' verdict

pf

Protocol family -- always “arp”

indev_name

Name of network device packet was received on (if known) -

ar_hrd

- Format of hardware address -

ar_tha

- Ethernet+IP only (ar_pro==0x800): target hardware (MAC) address -

data_hex

- A hexadecimal string representing the packet buffer contents -

ar_pro

- Format of protocol address

nf_stolen

Constant used to signify a 'stolen' verdict -

outdev_name

- Name of network device packet will be routed to (if known) -

arphdr

- Address of ARP header -

ar_sip

- Ethernet+IP only (ar_pro==0x800): source IP address +

indev

+ Address of net_device representing input device, 0 if unknown +

nf_queue

+ Constant used to signify a 'queue' verdict +

length

+ The length of the packet buffer contents, in bytes +

ar_op

+ ARP opcode (command) +

ar_data

+ Address of ARP packet data region (after the header) +

nf_stop

+ Constant used to signify a 'stop' verdict +

data_str

+ A string representing the packet buffer contents +

ar_hrd

+ Format of hardware address

ar_hln

Length of hardware address -

nf_drop

- Constant used to signify a 'drop' verdict +

nf_repeat

+ Constant used to signify a 'repeat' verdict

diff --git a/tapsets/API-netfilter-arp-out.html b/tapsets/API-netfilter-arp-out.html index 77a5e60c..aba9a162 100644 --- a/tapsets/API-netfilter-arp-out.html +++ b/tapsets/API-netfilter-arp-out.html @@ -1,53 +1,53 @@ probe::netfilter.arp.out

Name

probe::netfilter.arp.out — - Called for each outgoing ARP packet -

Synopsis

netfilter.arp.out 

Values

outdev_name

- Name of network device packet will be routed to (if known) -

ar_sip

- Ethernet+IP only (ar_pro==0x800): source IP address -

ar_hln

- Length of hardware address -

arphdr

- Address of ARP header -

nf_drop

- Constant used to signify a 'drop' verdict -

indev_name

- Name of network device packet was received on (if known) -

pf

+

Synopsis

netfilter.arp.out 

Values

pf

Protocol family -- always “arp”

nf_accept

Constant used to signify an 'accept' verdict -

data_hex

- A hexadecimal string representing the packet buffer contents -

ar_pro

- Format of protocol address -

ar_tha

- Ethernet+IP only (ar_pro==0x800): target hardware (MAC) address -

ar_hrd

- Format of hardware address +

indev_name

+ Name of network device packet was received on (if known)

nf_stolen

Constant used to signify a 'stolen' verdict +

indev

+ Address of net_device representing input device, 0 if unknown +

nf_queue

+ Constant used to signify a 'queue' verdict

length

The length of the packet buffer contents, in bytes +

ar_op

+ ARP opcode (command)

nf_stop

Constant used to signify a 'stop' verdict -

nf_queue

- Constant used to signify a 'queue' verdict -

nf_repeat

- Constant used to signify a 'repeat' verdict -

ar_tip

- Ethernet+IP only (ar_pro==0x800): target IP address +

ar_data

+ Address of ARP packet data region (after the header)

data_str

A string representing the packet buffer contents -

indev

- Address of net_device representing input device, 0 if unknown +

ar_hrd

+ Format of hardware address +

ar_hln

+ Length of hardware address +

nf_repeat

+ Constant used to signify a 'repeat' verdict

ar_pln

Length of protocol address -

ar_op

- ARP opcode (command) -

ar_data

- Address of ARP packet data region (after the header) +

outdev_name

+ Name of network device packet will be routed to (if known)

ar_sha

Ethernet+IP only (ar_pro==0x800): source hardware (MAC) address +

ar_sip

+ Ethernet+IP only (ar_pro==0x800): source IP address +

arphdr

+ Address of ARP header +

ar_tip

+ Ethernet+IP only (ar_pro==0x800): target IP address +

nf_drop

+ Constant used to signify a 'drop' verdict

outdev

Address of net_device representing output device, 0 if unknown +

ar_tha

+ Ethernet+IP only (ar_pro==0x800): target hardware (MAC) address +

data_hex

+ A hexadecimal string representing the packet buffer contents +

ar_pro

+ Format of protocol address

diff --git a/tapsets/API-netfilter-bridge-forward.html b/tapsets/API-netfilter-bridge-forward.html index e428e3e9..57b0a960 100644 --- a/tapsets/API-netfilter-bridge-forward.html +++ b/tapsets/API-netfilter-bridge-forward.html @@ -1,67 +1,67 @@ probe::netfilter.bridge.forward

Name

probe::netfilter.bridge.forward — Called on an incoming bridging packet destined for some other computer -

Synopsis

netfilter.bridge.forward 

Values

indev

- Address of net_device representing input device, 0 if unknown -

data_str

- A string representing the packet buffer contents -

br_rmac

- Root bridge MAC address -

nf_repeat

- Constant used to signify a 'repeat' verdict +

Synopsis

netfilter.bridge.forward 

Values

br_type

+ BPDU type +

br_poid

+ Port identifier +

protocol

+ Packet protocol +

br_vid

+ Protocol version identifier +

llcpdu

+ Address of LLC Protocol Data Unit +

br_flags

+ BPDU flags +

outdev_name

+ Name of network device packet will be routed to (if known)

nf_queue

Constant used to signify a 'queue' verdict -

nf_stop

- Constant used to signify a 'stop' verdict -

br_cost

- Total cost from transmitting bridge to root -

br_prid

- Protocol identifier

length

The length of the packet buffer contents, in bytes -

br_htime

- Hello time in 1/256 secs -

br_fd

- Forward delay in 1/256 secs -

outdev

- Address of net_device representing output device, 0 if unknown -

llcpdu

- Address of LLC Protocol Data Unit -

llcproto_stp

- Constant used to signify Bridge Spanning Tree Protocol packet +

nf_stop

+ Constant used to signify a 'stop' verdict

br_mac

Bridge MAC address -

br_rid

- Identity of root bridge -

br_max

- Max age in 1/256 secs -

br_flags

- BPDU flags -

brhdr

- Address of bridge header -

nf_drop

- Constant used to signify a 'drop' verdict +

data_str

+ A string representing the packet buffer contents +

nf_repeat

+ Constant used to signify a 'repeat' verdict +

pf

+ Protocol family -- always “bridge” +

nf_accept

+ Constant used to signify an 'accept' verdict +

indev_name

+ Name of network device packet was received on (if known)

br_msg

Message age in 1/256 secs -

outdev_name

- Name of network device packet will be routed to (if known) -

br_vid

- Protocol version identifier

nf_stolen

Constant used to signify a 'stolen' verdict -

protocol

- Packet protocol -

br_type

- BPDU type -

br_bid

- Identity of bridge +

br_rid

+ Identity of root bridge +

indev

+ Address of net_device representing input device, 0 if unknown +

outdev

+ Address of net_device representing output device, 0 if unknown

data_hex

A hexadecimal string representing the packet buffer contents -

nf_accept

- Constant used to signify an 'accept' verdict -

pf

- Protocol family -- always “bridge” -

indev_name

- Name of network device packet was received on (if known) -

br_poid

- Port identifier +

br_max

+ Max age in 1/256 secs +

br_bid

+ Identity of bridge +

br_prid

+ Protocol identifier +

llcproto_stp

+ Constant used to signify Bridge Spanning Tree Protocol packet +

nf_drop

+ Constant used to signify a 'drop' verdict +

brhdr

+ Address of bridge header +

br_fd

+ Forward delay in 1/256 secs +

br_rmac

+ Root bridge MAC address +

br_htime

+ Hello time in 1/256 secs +

br_cost

+ Total cost from transmitting bridge to root

diff --git a/tapsets/API-netfilter-bridge-local-in.html b/tapsets/API-netfilter-bridge-local-in.html index bbe66e8f..81a6eea8 100644 --- a/tapsets/API-netfilter-bridge-local-in.html +++ b/tapsets/API-netfilter-bridge-local-in.html @@ -1,67 +1,67 @@ probe::netfilter.bridge.local_in

Name

probe::netfilter.bridge.local_in — Called on a bridging packet destined for the local computer -

Synopsis

netfilter.bridge.local_in 

Values

br_htime

- Hello time in 1/256 secs -

br_fd

- Forward delay in 1/256 secs -

length

- The length of the packet buffer contents, in bytes -

nf_stop

- Constant used to signify a 'stop' verdict -

nf_queue

- Constant used to signify a 'queue' verdict -

br_cost

- Total cost from transmitting bridge to root -

br_prid

- Protocol identifier +

Synopsis

netfilter.bridge.local_in 

Values

br_poid

+ Port identifier +

protocol

+ Packet protocol +

br_type

+ BPDU type +

outdev_name

+ Name of network device packet will be routed to (if known) +

br_flags

+ BPDU flags +

llcpdu

+ Address of LLC Protocol Data Unit +

br_vid

+ Protocol version identifier

nf_repeat

Constant used to signify a 'repeat' verdict

data_str

A string representing the packet buffer contents -

br_rmac

- Root bridge MAC address -

indev

- Address of net_device representing input device, 0 if unknown -

llcpdu

- Address of LLC Protocol Data Unit -

llcproto_stp

- Constant used to signify Bridge Spanning Tree Protocol packet

br_mac

Bridge MAC address -

outdev

- Address of net_device representing output device, 0 if unknown -

outdev_name

- Name of network device packet will be routed to (if known) -

br_vid

- Protocol version identifier -

br_msg

- Message age in 1/256 secs -

brhdr

- Address of bridge header -

nf_drop

- Constant used to signify a 'drop' verdict -

br_max

- Max age in 1/256 secs +

nf_stop

+ Constant used to signify a 'stop' verdict +

nf_queue

+ Constant used to signify a 'queue' verdict +

length

+ The length of the packet buffer contents, in bytes +

indev

+ Address of net_device representing input device, 0 if unknown

br_rid

Identity of root bridge -

br_flags

- BPDU flags -

br_poid

- Port identifier -

pf

- Protocol family -- always “bridge” +

nf_stolen

+ Constant used to signify a 'stolen' verdict +

br_msg

+ Message age in 1/256 secs

indev_name

Name of network device packet was received on (if known)

nf_accept

Constant used to signify an 'accept' verdict +

pf

+ Protocol family -- always “bridge”

br_bid

Identity of bridge +

br_max

+ Max age in 1/256 secs

data_hex

A hexadecimal string representing the packet buffer contents -

br_type

- BPDU type -

protocol

- Packet protocol -

nf_stolen

- Constant used to signify a 'stolen' verdict +

outdev

+ Address of net_device representing output device, 0 if unknown +

brhdr

+ Address of bridge header +

llcproto_stp

+ Constant used to signify Bridge Spanning Tree Protocol packet +

nf_drop

+ Constant used to signify a 'drop' verdict +

br_prid

+ Protocol identifier +

br_cost

+ Total cost from transmitting bridge to root +

br_htime

+ Hello time in 1/256 secs +

br_rmac

+ Root bridge MAC address +

br_fd

+ Forward delay in 1/256 secs

diff --git a/tapsets/API-netfilter-bridge-local-out.html b/tapsets/API-netfilter-bridge-local-out.html index 1acdc852..05aa02ee 100644 --- a/tapsets/API-netfilter-bridge-local-out.html +++ b/tapsets/API-netfilter-bridge-local-out.html @@ -1,67 +1,67 @@ probe::netfilter.bridge.local_out

Name

probe::netfilter.bridge.local_out — Called on a bridging packet coming from a local process -

Synopsis

netfilter.bridge.local_out 

Values

outdev_name

- Name of network device packet will be routed to (if known) -

br_vid

- Protocol version identifier -

br_msg

- Message age in 1/256 secs +

Synopsis

netfilter.bridge.local_out 

Values

br_cost

+ Total cost from transmitting bridge to root +

br_htime

+ Hello time in 1/256 secs +

br_rmac

+ Root bridge MAC address +

br_fd

+ Forward delay in 1/256 secs +

br_bid

+ Identity of bridge +

br_max

+ Max age in 1/256 secs +

data_hex

+ A hexadecimal string representing the packet buffer contents +

outdev

+ Address of net_device representing output device, 0 if unknown

brhdr

Address of bridge header +

llcproto_stp

+ Constant used to signify Bridge Spanning Tree Protocol packet

nf_drop

Constant used to signify a 'drop' verdict -

br_flags

- BPDU flags -

br_max

- Max age in 1/256 secs +

br_prid

+ Protocol identifier +

nf_repeat

+ Constant used to signify a 'repeat' verdict +

br_mac

+ Bridge MAC address +

data_str

+ A string representing the packet buffer contents +

nf_stop

+ Constant used to signify a 'stop' verdict +

nf_queue

+ Constant used to signify a 'queue' verdict +

length

+ The length of the packet buffer contents, in bytes +

indev

+ Address of net_device representing input device, 0 if unknown +

nf_stolen

+ Constant used to signify a 'stolen' verdict

br_rid

Identity of root bridge -

br_poid

- Port identifier -

pf

- Protocol family -- always “bridge”

indev_name

Name of network device packet was received on (if known) +

br_msg

+ Message age in 1/256 secs +

pf

+ Protocol family -- always “bridge”

nf_accept

Constant used to signify an 'accept' verdict -

data_hex

- A hexadecimal string representing the packet buffer contents -

br_bid

- Identity of bridge

protocol

Packet protocol +

br_poid

+ Port identifier

br_type

BPDU type -

nf_stolen

- Constant used to signify a 'stolen' verdict -

br_htime

- Hello time in 1/256 secs -

br_fd

- Forward delay in 1/256 secs -

length

- The length of the packet buffer contents, in bytes -

nf_stop

- Constant used to signify a 'stop' verdict -

br_cost

- Total cost from transmitting bridge to root -

nf_queue

- Constant used to signify a 'queue' verdict -

br_prid

- Protocol identifier -

nf_repeat

- Constant used to signify a 'repeat' verdict -

data_str

- A string representing the packet buffer contents -

br_rmac

- Root bridge MAC address -

indev

- Address of net_device representing input device, 0 if unknown +

br_flags

+ BPDU flags +

outdev_name

+ Name of network device packet will be routed to (if known)

llcpdu

Address of LLC Protocol Data Unit -

br_mac

- Bridge MAC address -

llcproto_stp

- Constant used to signify Bridge Spanning Tree Protocol packet -

outdev

- Address of net_device representing output device, 0 if unknown +

br_vid

+ Protocol version identifier

diff --git a/tapsets/API-netfilter-bridge-post-routing.html b/tapsets/API-netfilter-bridge-post-routing.html index 4c849809..390cd534 100644 --- a/tapsets/API-netfilter-bridge-post-routing.html +++ b/tapsets/API-netfilter-bridge-post-routing.html @@ -1,67 +1,67 @@ probe::netfilter.bridge.post_routing

Name

probe::netfilter.bridge.post_routing — - Called before a bridging packet hits the wire -

Synopsis

netfilter.bridge.post_routing 

Values

nf_repeat

- Constant used to signify a 'repeat' verdict -

indev

- Address of net_device representing input device, 0 if unknown -

br_rmac

- Root bridge MAC address -

data_str

- A string representing the packet buffer contents -

br_fd

- Forward delay in 1/256 secs -

br_htime

- Hello time in 1/256 secs -

br_prid

- Protocol identifier -

nf_queue

- Constant used to signify a 'queue' verdict -

nf_stop

- Constant used to signify a 'stop' verdict -

br_cost

- Total cost from transmitting bridge to root -

length

- The length of the packet buffer contents, in bytes -

llcproto_stp

- Constant used to signify Bridge Spanning Tree Protocol packet -

br_mac

- Bridge MAC address -

llcpdu

- Address of LLC Protocol Data Unit +

Synopsis

netfilter.bridge.post_routing 

Values

data_hex

+ A hexadecimal string representing the packet buffer contents

outdev

Address of net_device representing output device, 0 if unknown +

br_bid

+ Identity of bridge

br_max

Max age in 1/256 secs -

br_flags

- BPDU flags -

br_rid

- Identity of root bridge

nf_drop

Constant used to signify a 'drop' verdict +

llcproto_stp

+ Constant used to signify Bridge Spanning Tree Protocol packet +

br_prid

+ Protocol identifier

brhdr

Address of bridge header -

br_msg

- Message age in 1/256 secs -

br_vid

- Protocol version identifier -

outdev_name

- Name of network device packet will be routed to (if known) +

br_fd

+ Forward delay in 1/256 secs +

br_htime

+ Hello time in 1/256 secs +

br_cost

+ Total cost from transmitting bridge to root +

br_rmac

+ Root bridge MAC address +

br_poid

+ Port identifier

protocol

Packet protocol

br_type

BPDU type -

br_bid

- Identity of bridge -

data_hex

- A hexadecimal string representing the packet buffer contents -

nf_stolen

- Constant used to signify a 'stolen' verdict -

br_poid

- Port identifier -

nf_accept

- Constant used to signify an 'accept' verdict +

llcpdu

+ Address of LLC Protocol Data Unit +

br_vid

+ Protocol version identifier +

br_flags

+ BPDU flags +

outdev_name

+ Name of network device packet will be routed to (if known) +

nf_stop

+ Constant used to signify a 'stop' verdict +

nf_queue

+ Constant used to signify a 'queue' verdict +

length

+ The length of the packet buffer contents, in bytes +

nf_repeat

+ Constant used to signify a 'repeat' verdict +

data_str

+ A string representing the packet buffer contents +

br_mac

+ Bridge MAC address

indev_name

Name of network device packet was received on (if known) +

br_msg

+ Message age in 1/256 secs +

nf_accept

+ Constant used to signify an 'accept' verdict

pf

Protocol family -- always “bridge” +

indev

+ Address of net_device representing input device, 0 if unknown +

nf_stolen

+ Constant used to signify a 'stolen' verdict +

br_rid

+ Identity of root bridge

diff --git a/tapsets/API-netfilter-bridge-pre-routing.html b/tapsets/API-netfilter-bridge-pre-routing.html index 2c94d79a..72265eb1 100644 --- a/tapsets/API-netfilter-bridge-pre-routing.html +++ b/tapsets/API-netfilter-bridge-pre-routing.html @@ -1,67 +1,67 @@ probe::netfilter.bridge.pre_routing

Name

probe::netfilter.bridge.pre_routing — - Called before a bridging packet is routed -

Synopsis

netfilter.bridge.pre_routing 

Values

br_msg

- Message age in 1/256 secs -

br_vid

- Protocol version identifier -

outdev_name

- Name of network device packet will be routed to (if known) -

br_max

- Max age in 1/256 secs -

br_rid

- Identity of root bridge -

br_flags

- BPDU flags -

nf_drop

- Constant used to signify a 'drop' verdict +

Synopsis

netfilter.bridge.pre_routing 

Values

br_htime

+ Hello time in 1/256 secs +

br_cost

+ Total cost from transmitting bridge to root +

br_rmac

+ Root bridge MAC address +

br_fd

+ Forward delay in 1/256 secs

brhdr

Address of bridge header -

nf_accept

- Constant used to signify an 'accept' verdict -

indev_name

- Name of network device packet was received on (if known) -

pf

- Protocol family -- always “bridge” -

br_poid

- Port identifier -

nf_stolen

- Constant used to signify a 'stolen' verdict -

protocol

- Packet protocol -

br_type

- BPDU type +

llcproto_stp

+ Constant used to signify Bridge Spanning Tree Protocol packet +

nf_drop

+ Constant used to signify a 'drop' verdict +

br_prid

+ Protocol identifier

br_bid

Identity of bridge +

br_max

+ Max age in 1/256 secs

data_hex

A hexadecimal string representing the packet buffer contents -

br_prid

- Protocol identifier -

nf_queue

- Constant used to signify a 'queue' verdict -

nf_stop

- Constant used to signify a 'stop' verdict -

br_cost

- Total cost from transmitting bridge to root -

length

- The length of the packet buffer contents, in bytes -

br_fd

- Forward delay in 1/256 secs -

br_htime

- Hello time in 1/256 secs +

outdev

+ Address of net_device representing output device, 0 if unknown

indev

Address of net_device representing input device, 0 if unknown -

br_rmac

- Root bridge MAC address -

data_str

- A string representing the packet buffer contents +

nf_stolen

+ Constant used to signify a 'stolen' verdict +

br_rid

+ Identity of root bridge +

indev_name

+ Name of network device packet was received on (if known) +

br_msg

+ Message age in 1/256 secs +

nf_accept

+ Constant used to signify an 'accept' verdict +

pf

+ Protocol family -- always “bridge”

nf_repeat

Constant used to signify a 'repeat' verdict -

outdev

- Address of net_device representing output device, 0 if unknown

br_mac

Bridge MAC address -

llcproto_stp

- Constant used to signify Bridge Spanning Tree Protocol packet +

data_str

+ A string representing the packet buffer contents +

nf_stop

+ Constant used to signify a 'stop' verdict +

length

+ The length of the packet buffer contents, in bytes +

nf_queue

+ Constant used to signify a 'queue' verdict +

br_flags

+ BPDU flags +

outdev_name

+ Name of network device packet will be routed to (if known)

llcpdu

Address of LLC Protocol Data Unit +

br_vid

+ Protocol version identifier +

br_poid

+ Port identifier +

protocol

+ Packet protocol +

br_type

+ BPDU type

diff --git a/tapsets/API-netfilter-ip-forward.html b/tapsets/API-netfilter-ip-forward.html index 95e15f5b..3daef1d9 100644 --- a/tapsets/API-netfilter-ip-forward.html +++ b/tapsets/API-netfilter-ip-forward.html @@ -1,61 +1,61 @@ probe::netfilter.ip.forward

Name

probe::netfilter.ip.forward — Called on an incoming IP packet addressed to some other computer -

Synopsis

netfilter.ip.forward 

Values

dport

- TCP or UDP destination port (ipv4 only) -

nf_repeat

- Constant used to signify a 'repeat' verdict -

iphdr

- Address of IP header -

family

- IP address family -

indev

- Address of net_device representing input device, 0 if unknown -

fin

- TCP FIN flag (if protocol is TCP; ipv4 only) -

data_str

- A string representing the packet buffer contents -

urg

- TCP URG flag (if protocol is TCP; ipv4 only) -

nf_queue

- Constant used to signify a 'queue' verdict -

nf_stop

- Constant used to signify a 'stop' verdict -

length

- The length of the packet buffer contents, in bytes -

outdev

- Address of net_device representing output device, 0 if unknown -

rst

- TCP RST flag (if protocol is TCP; ipv4 only) -

ipproto_udp

+

Synopsis

netfilter.ip.forward 

Values

ipproto_udp

Constant used to signify that the packet protocol is UDP -

syn

- TCP SYN flag (if protocol is TCP; ipv4 only)

sport

TCP or UDP source port (ipv4 only)

nf_drop

Constant used to signify a 'drop' verdict +

family

+ IP address family

ipproto_tcp

Constant used to signify that the packet protocol is TCP -

daddr

- A string representing the destination IP address +

data_hex

+ A hexadecimal string representing the packet buffer contents +

outdev

+ Address of net_device representing output device, 0 if unknown +

iphdr

+ Address of IP header +

dport

+ TCP or UDP destination port (ipv4 only) +

syn

+ TCP SYN flag (if protocol is TCP; ipv4 only) +

psh

+ TCP PSH flag (if protocol is TCP; ipv4 only) +

fin

+ TCP FIN flag (if protocol is TCP; ipv4 only) +

rst

+ TCP RST flag (if protocol is TCP; ipv4 only)

outdev_name

Name of network device packet will be routed to (if known) +

saddr

+ A string representing the source IP address

protocol

Packet protocol from driver (ipv4 only) -

data_hex

- A hexadecimal string representing the packet buffer contents +

indev

+ Address of net_device representing input device, 0 if unknown

nf_stolen

Constant used to signify a 'stolen' verdict -

saddr

- A string representing the source IP address -

ack

- TCP ACK flag (if protocol is TCP; ipv4 only) -

nf_accept

- Constant used to signify an 'accept' verdict +

daddr

+ A string representing the destination IP address

indev_name

Name of network device packet was received on (if known) +

nf_accept

+ Constant used to signify an 'accept' verdict

pf

Protocol family -- either “ipv4” or “ipv6” -

psh

- TCP PSH flag (if protocol is TCP; ipv4 only) +

nf_repeat

+ Constant used to signify a 'repeat' verdict +

data_str

+ A string representing the packet buffer contents +

ack

+ TCP ACK flag (if protocol is TCP; ipv4 only) +

urg

+ TCP URG flag (if protocol is TCP; ipv4 only) +

nf_stop

+ Constant used to signify a 'stop' verdict +

length

+ The length of the packet buffer contents, in bytes +

nf_queue

+ Constant used to signify a 'queue' verdict

diff --git a/tapsets/API-netfilter-ip-local-in.html b/tapsets/API-netfilter-ip-local-in.html index 4cfe0b67..ae37ff64 100644 --- a/tapsets/API-netfilter-ip-local-in.html +++ b/tapsets/API-netfilter-ip-local-in.html @@ -1,61 +1,61 @@ probe::netfilter.ip.local_in

Name

probe::netfilter.ip.local_in — Called on an incoming IP packet addressed to the local computer -

Synopsis

netfilter.ip.local_in 

Values

indev

- Address of net_device representing input device, 0 if unknown -

fin

- TCP FIN flag (if protocol is TCP; ipv4 only) -

data_str

- A string representing the packet buffer contents -

dport

- TCP or UDP destination port (ipv4 only) -

iphdr

- Address of IP header -

nf_repeat

- Constant used to signify a 'repeat' verdict +

Synopsis

netfilter.ip.local_in 

Values

sport

+ TCP or UDP source port (ipv4 only) +

ipproto_udp

+ Constant used to signify that the packet protocol is UDP +

ipproto_tcp

+ Constant used to signify that the packet protocol is TCP +

nf_drop

+ Constant used to signify a 'drop' verdict

family

IP address family -

nf_queue

- Constant used to signify a 'queue' verdict -

nf_stop

- Constant used to signify a 'stop' verdict -

length

- The length of the packet buffer contents, in bytes -

urg

- TCP URG flag (if protocol is TCP; ipv4 only)

outdev

Address of net_device representing output device, 0 if unknown -

rst

- TCP RST flag (if protocol is TCP; ipv4 only) -

ipproto_udp

- Constant used to signify that the packet protocol is UDP +

data_hex

+ A hexadecimal string representing the packet buffer contents

syn

TCP SYN flag (if protocol is TCP; ipv4 only) -

sport

- TCP or UDP source port (ipv4 only) -

nf_drop

- Constant used to signify a 'drop' verdict -

daddr

- A string representing the destination IP address +

dport

+ TCP or UDP destination port (ipv4 only) +

iphdr

+ Address of IP header +

psh

+ TCP PSH flag (if protocol is TCP; ipv4 only)

outdev_name

Name of network device packet will be routed to (if known) -

ipproto_tcp

- Constant used to signify that the packet protocol is TCP -

nf_stolen

- Constant used to signify a 'stolen' verdict +

rst

+ TCP RST flag (if protocol is TCP; ipv4 only) +

fin

+ TCP FIN flag (if protocol is TCP; ipv4 only)

saddr

A string representing the source IP address

protocol

Packet protocol from driver (ipv4 only) -

data_hex

- A hexadecimal string representing the packet buffer contents -

ack

- TCP ACK flag (if protocol is TCP; ipv4 only) +

nf_stolen

+ Constant used to signify a 'stolen' verdict +

indev

+ Address of net_device representing input device, 0 if unknown

nf_accept

Constant used to signify an 'accept' verdict -

indev_name

- Name of network device packet was received on (if known)

pf

Protocol family -- either “ipv4” or “ipv6” -

psh

- TCP PSH flag (if protocol is TCP; ipv4 only) +

daddr

+ A string representing the destination IP address +

indev_name

+ Name of network device packet was received on (if known) +

ack

+ TCP ACK flag (if protocol is TCP; ipv4 only) +

data_str

+ A string representing the packet buffer contents +

nf_repeat

+ Constant used to signify a 'repeat' verdict +

length

+ The length of the packet buffer contents, in bytes +

nf_queue

+ Constant used to signify a 'queue' verdict +

nf_stop

+ Constant used to signify a 'stop' verdict +

urg

+ TCP URG flag (if protocol is TCP; ipv4 only)

diff --git a/tapsets/API-netfilter-ip-local-out.html b/tapsets/API-netfilter-ip-local-out.html index 3e37ad36..48b259f4 100644 --- a/tapsets/API-netfilter-ip-local-out.html +++ b/tapsets/API-netfilter-ip-local-out.html @@ -1,61 +1,61 @@ probe::netfilter.ip.local_out

Name

probe::netfilter.ip.local_out — Called on an outgoing IP packet -

Synopsis

netfilter.ip.local_out 

Values

data_hex

- A hexadecimal string representing the packet buffer contents -

protocol

+

Synopsis

netfilter.ip.local_out 

Values

protocol

Packet protocol from driver (ipv4 only) +

outdev_name

+ Name of network device packet will be routed to (if known) +

rst

+ TCP RST flag (if protocol is TCP; ipv4 only) +

fin

+ TCP FIN flag (if protocol is TCP; ipv4 only)

saddr

A string representing the source IP address +

ack

+ TCP ACK flag (if protocol is TCP; ipv4 only) +

data_str

+ A string representing the packet buffer contents +

nf_repeat

+ Constant used to signify a 'repeat' verdict +

length

+ The length of the packet buffer contents, in bytes +

nf_queue

+ Constant used to signify a 'queue' verdict +

nf_stop

+ Constant used to signify a 'stop' verdict +

urg

+ TCP URG flag (if protocol is TCP; ipv4 only)

nf_stolen

Constant used to signify a 'stolen' verdict +

indev

+ Address of net_device representing input device, 0 if unknown

pf

Protocol family -- either “ipv4” or “ipv6” -

psh

- TCP PSH flag (if protocol is TCP; ipv4 only) -

indev_name

- Name of network device packet was received on (if known)

nf_accept

Constant used to signify an 'accept' verdict -

ack

- TCP ACK flag (if protocol is TCP; ipv4 only) -

nf_drop

- Constant used to signify a 'drop' verdict -

ipproto_tcp

- Constant used to signify that the packet protocol is TCP -

outdev_name

- Name of network device packet will be routed to (if known)

daddr

A string representing the destination IP address -

ipproto_udp

- Constant used to signify that the packet protocol is UDP -

rst

- TCP RST flag (if protocol is TCP; ipv4 only) +

indev_name

+ Name of network device packet was received on (if known)

outdev

Address of net_device representing output device, 0 if unknown +

data_hex

+ A hexadecimal string representing the packet buffer contents

sport

TCP or UDP source port (ipv4 only) -

syn

- TCP SYN flag (if protocol is TCP; ipv4 only) +

ipproto_udp

+ Constant used to signify that the packet protocol is UDP +

ipproto_tcp

+ Constant used to signify that the packet protocol is TCP +

nf_drop

+ Constant used to signify a 'drop' verdict

family

IP address family -

nf_repeat

- Constant used to signify a 'repeat' verdict -

iphdr

- Address of IP header +

psh

+ TCP PSH flag (if protocol is TCP; ipv4 only) +

syn

+ TCP SYN flag (if protocol is TCP; ipv4 only)

dport

TCP or UDP destination port (ipv4 only) -

data_str

- A string representing the packet buffer contents -

fin

- TCP FIN flag (if protocol is TCP; ipv4 only) -

indev

- Address of net_device representing input device, 0 if unknown -

urg

- TCP URG flag (if protocol is TCP; ipv4 only) -

length

- The length of the packet buffer contents, in bytes -

nf_queue

- Constant used to signify a 'queue' verdict -

nf_stop

- Constant used to signify a 'stop' verdict +

iphdr

+ Address of IP header

diff --git a/tapsets/API-netfilter-ip-post-routing.html b/tapsets/API-netfilter-ip-post-routing.html index 1a68225a..a7939a94 100644 --- a/tapsets/API-netfilter-ip-post-routing.html +++ b/tapsets/API-netfilter-ip-post-routing.html @@ -1,61 +1,61 @@ probe::netfilter.ip.post_routing

Name

probe::netfilter.ip.post_routing — Called immediately before an outgoing IP packet leaves the computer -

Synopsis

netfilter.ip.post_routing 

Values

ipproto_udp

- Constant used to signify that the packet protocol is UDP -

rst

- TCP RST flag (if protocol is TCP; ipv4 only) +

Synopsis

netfilter.ip.post_routing 

Values

data_hex

+ A hexadecimal string representing the packet buffer contents

outdev

Address of net_device representing output device, 0 if unknown

sport

TCP or UDP source port (ipv4 only) -

syn

- TCP SYN flag (if protocol is TCP; ipv4 only) +

ipproto_udp

+ Constant used to signify that the packet protocol is UDP +

ipproto_tcp

+ Constant used to signify that the packet protocol is TCP +

nf_drop

+ Constant used to signify a 'drop' verdict

family

IP address family +

psh

+ TCP PSH flag (if protocol is TCP; ipv4 only) +

dport

+ TCP or UDP destination port (ipv4 only)

iphdr

Address of IP header +

syn

+ TCP SYN flag (if protocol is TCP; ipv4 only) +

protocol

+ Packet protocol from driver (ipv4 only) +

rst

+ TCP RST flag (if protocol is TCP; ipv4 only) +

fin

+ TCP FIN flag (if protocol is TCP; ipv4 only) +

outdev_name

+ Name of network device packet will be routed to (if known) +

saddr

+ A string representing the source IP address

nf_repeat

Constant used to signify a 'repeat' verdict -

dport

- TCP or UDP destination port (ipv4 only)

data_str

A string representing the packet buffer contents -

fin

- TCP FIN flag (if protocol is TCP; ipv4 only) -

indev

- Address of net_device representing input device, 0 if unknown +

ack

+ TCP ACK flag (if protocol is TCP; ipv4 only) +

nf_stop

+ Constant used to signify a 'stop' verdict

urg

TCP URG flag (if protocol is TCP; ipv4 only)

length

The length of the packet buffer contents, in bytes

nf_queue

Constant used to signify a 'queue' verdict -

nf_stop

- Constant used to signify a 'stop' verdict -

data_hex

- A hexadecimal string representing the packet buffer contents -

protocol

- Packet protocol from driver (ipv4 only) -

saddr

- A string representing the source IP address +

indev

+ Address of net_device representing input device, 0 if unknown

nf_stolen

Constant used to signify a 'stolen' verdict -

psh

- TCP PSH flag (if protocol is TCP; ipv4 only) -

pf

- Protocol family -- either “ipv4” or “ipv6” +

daddr

+ A string representing the destination IP address

indev_name

Name of network device packet was received on (if known)

nf_accept

Constant used to signify an 'accept' verdict -

ack

- TCP ACK flag (if protocol is TCP; ipv4 only) -

nf_drop

- Constant used to signify a 'drop' verdict -

ipproto_tcp

- Constant used to signify that the packet protocol is TCP -

outdev_name

- Name of network device packet will be routed to (if known) -

daddr

- A string representing the destination IP address +

pf

+ Protocol family -- either “ipv4” or “ipv6”

diff --git a/tapsets/API-netfilter-ip-pre-routing.html b/tapsets/API-netfilter-ip-pre-routing.html index b07f0155..6af95964 100644 --- a/tapsets/API-netfilter-ip-pre-routing.html +++ b/tapsets/API-netfilter-ip-pre-routing.html @@ -1,61 +1,61 @@ probe::netfilter.ip.pre_routing

Name

probe::netfilter.ip.pre_routing — Called before an IP packet is routed -

Synopsis

netfilter.ip.pre_routing 

Values

dport

- TCP or UDP destination port (ipv4 only) -

family

- IP address family -

iphdr

- Address of IP header -

nf_repeat

+

Synopsis

netfilter.ip.pre_routing 

Values

nf_repeat

Constant used to signify a 'repeat' verdict -

indev

- Address of net_device representing input device, 0 if unknown +

ack

+ TCP ACK flag (if protocol is TCP; ipv4 only)

data_str

A string representing the packet buffer contents -

fin

- TCP FIN flag (if protocol is TCP; ipv4 only) +

nf_stop

+ Constant used to signify a 'stop' verdict

urg

TCP URG flag (if protocol is TCP; ipv4 only)

nf_queue

Constant used to signify a 'queue' verdict -

nf_stop

- Constant used to signify a 'stop' verdict

length

The length of the packet buffer contents, in bytes -

ipproto_udp

- Constant used to signify that the packet protocol is UDP -

rst

- TCP RST flag (if protocol is TCP; ipv4 only) -

outdev

- Address of net_device representing output device, 0 if unknown -

sport

- TCP or UDP source port (ipv4 only) -

syn

- TCP SYN flag (if protocol is TCP; ipv4 only) -

nf_drop

- Constant used to signify a 'drop' verdict -

ipproto_tcp

- Constant used to signify that the packet protocol is TCP +

indev

+ Address of net_device representing input device, 0 if unknown +

nf_stolen

+ Constant used to signify a 'stolen' verdict

daddr

A string representing the destination IP address -

outdev_name

- Name of network device packet will be routed to (if known) +

indev_name

+ Name of network device packet was received on (if known) +

pf

+ Protocol family - either 'ipv4' or 'ipv6' +

nf_accept

+ Constant used to signify an 'accept' verdict

protocol

Packet protocol from driver (ipv4 only) -

data_hex

- A hexadecimal string representing the packet buffer contents +

rst

+ TCP RST flag (if protocol is TCP; ipv4 only) +

fin

+ TCP FIN flag (if protocol is TCP; ipv4 only) +

outdev_name

+ Name of network device packet will be routed to (if known)

saddr

A string representing the source IP address -

nf_stolen

- Constant used to signify a 'stolen' verdict -

nf_accept

- Constant used to signify an 'accept' verdict -

ack

- TCP ACK flag (if protocol is TCP; ipv4 only) -

pf

- Protocol family - either 'ipv4' or 'ipv6'

psh

TCP PSH flag (if protocol is TCP; ipv4 only) -

indev_name

- Name of network device packet was received on (if known) +

dport

+ TCP or UDP destination port (ipv4 only) +

iphdr

+ Address of IP header +

syn

+ TCP SYN flag (if protocol is TCP; ipv4 only) +

data_hex

+ A hexadecimal string representing the packet buffer contents +

outdev

+ Address of net_device representing output device, 0 if unknown +

sport

+ TCP or UDP source port (ipv4 only) +

ipproto_udp

+ Constant used to signify that the packet protocol is UDP +

ipproto_tcp

+ Constant used to signify that the packet protocol is TCP +

family

+ IP address family +

nf_drop

+ Constant used to signify a 'drop' verdict

diff --git a/tapsets/API-nfs-aop-readpage.html b/tapsets/API-nfs-aop-readpage.html index 59e23077..f26c423d 100644 --- a/tapsets/API-nfs-aop-readpage.html +++ b/tapsets/API-nfs-aop-readpage.html @@ -1,27 +1,27 @@ probe::nfs.aop.readpage

Name

probe::nfs.aop.readpage — NFS client synchronously reading a page -

Synopsis

nfs.aop.readpage 

Values

size

- number of pages to be read in this execution -

file

- file argument +

Synopsis

nfs.aop.readpage 

Values

ino

+ inode number +

sb_flag

+ super block flags

dev

device identifier +

file

+ file argument

i_size

file length in bytes +

size

+ number of pages to be read in this execution +

__page

+ the address of page +

i_flag

+ file flags

rsize

read size (in bytes)

page_index

offset within mapping, can used a page identifier and position identifier in the page frame -

i_flag

- file flags -

sb_flag

- super block flags -

ino

- inode number -

__page

- the address of page -

Description

+

Description

Read the page over, only fires when a previous async read operation failed

diff --git a/tapsets/API-nfs-aop-readpages.html b/tapsets/API-nfs-aop-readpages.html index bab233d4..c1a7b981 100644 --- a/tapsets/API-nfs-aop-readpages.html +++ b/tapsets/API-nfs-aop-readpages.html @@ -1,19 +1,19 @@ probe::nfs.aop.readpages

Name

probe::nfs.aop.readpages — NFS client reading multiple pages -

Synopsis

nfs.aop.readpages 

Values

ino

- inode number -

nr_pages

- number of pages attempted to read in this execution -

file

- filp argument +

Synopsis

nfs.aop.readpages 

Values

rsize

+ read size (in bytes)

rpages

read size (in pages) +

nr_pages

+ number of pages attempted to read in this execution

size

number of pages attempted to read in this execution +

file

+ filp argument

dev

device identifier -

rsize

- read size (in bytes) -

Description

+

ino

+ inode number +

Description

Fires when in readahead way, read several pages once

diff --git a/tapsets/API-nfs-aop-release-page.html b/tapsets/API-nfs-aop-release-page.html index 9446a168..e2e54a16 100644 --- a/tapsets/API-nfs-aop-release-page.html +++ b/tapsets/API-nfs-aop-release-page.html @@ -1,16 +1,16 @@ probe::nfs.aop.release_page

Name

probe::nfs.aop.release_page — NFS client releasing page -

Synopsis

nfs.aop.release_page 

Values

__page

+

Synopsis

nfs.aop.release_page 

Values

page_index

+ offset within mapping, can used a page identifier + and position identifier in the page frame +

size

+ release pages +

__page

the address of page

ino

inode number -

page_index

- offset within mapping, can used a page identifier - and position identifier in the page frame

dev

device identifier -

size

- release pages -

Description

+

Description

Fires when do a release operation on NFS.

diff --git a/tapsets/API-nfs-aop-set-page-dirty.html b/tapsets/API-nfs-aop-set-page-dirty.html index a4bb1652..320cfda7 100644 --- a/tapsets/API-nfs-aop-set-page-dirty.html +++ b/tapsets/API-nfs-aop-set-page-dirty.html @@ -1,10 +1,10 @@ probe::nfs.aop.set_page_dirty

Name

probe::nfs.aop.set_page_dirty — NFS client marking page as dirty -

Synopsis

nfs.aop.set_page_dirty 

Values

__page

- the address of page -

page_flag

+

Synopsis

nfs.aop.set_page_dirty 

Values

page_flag

page flags -

Description

+

__page

+ the address of page +

Description

This probe attaches to the generic __set_page_dirty_nobuffers function. Thus, this probe is going to fire on many other file systems in addition to the NFS client. diff --git a/tapsets/API-nfs-aop-write-begin.html b/tapsets/API-nfs-aop-write-begin.html index da5a4df3..26001740 100644 --- a/tapsets/API-nfs-aop-write-begin.html +++ b/tapsets/API-nfs-aop-write-begin.html @@ -1,21 +1,21 @@ probe::nfs.aop.write_begin

Name

probe::nfs.aop.write_begin — NFS client begin to write data -

Synopsis

nfs.aop.write_begin 

Values

size

- write bytes -

dev

- device identifier -

offset

- start address of this write operation -

page_index

+

Synopsis

nfs.aop.write_begin 

Values

page_index

offset within mapping, can used a page identifier and position identifier in the page frame +

offset

+ start address of this write operation +

size

+ write bytes +

__page

+ the address of page

to

end address of this write operation

ino

inode number -

__page

- the address of page -

Description

+

dev

+ device identifier +

Description

Occurs when write operation occurs on nfs. It prepare a page for writing, look for a request corresponding to the page. If there is one, and it belongs to another file, it flush it out diff --git a/tapsets/API-nfs-aop-write-end.html b/tapsets/API-nfs-aop-write-end.html index b10fdd53..eb80756c 100644 --- a/tapsets/API-nfs-aop-write-end.html +++ b/tapsets/API-nfs-aop-write-end.html @@ -1,6 +1,12 @@ probe::nfs.aop.write_end

Name

probe::nfs.aop.write_end — NFS client complete writing data -

Synopsis

nfs.aop.write_end 

Values

dev

+

Synopsis

nfs.aop.write_end 

Values

ino

+ inode number +

to

+ end address of this write operation +

sb_flag

+ super block flags +

dev

device identifier

i_size

file length in bytes @@ -8,19 +14,13 @@ write bytes

__page

the address of page -

to

- end address of this write operation -

ino

- inode number

i_flag

file flags -

sb_flag

- super block flags -

page_index

- offset within mapping, can used a page identifier and position identifier in the page frame

offset

start address of this write operation -

Description

+

page_index

+ offset within mapping, can used a page identifier and position identifier in the page frame +

Description

Fires when do a write operation on nfs, often after prepare_write

diff --git a/tapsets/API-nfs-aop-writepage.html b/tapsets/API-nfs-aop-writepage.html index 3b98b2ab..f0df1632 100644 --- a/tapsets/API-nfs-aop-writepage.html +++ b/tapsets/API-nfs-aop-writepage.html @@ -1,33 +1,33 @@ probe::nfs.aop.writepage

Name

probe::nfs.aop.writepage — NFS client writing a mapped page to the NFS server -

Synopsis

nfs.aop.writepage 

Values

i_state

- inode state flags -

i_size

+

Synopsis

nfs.aop.writepage 

Values

i_size

file length in bytes -

dev

- device identifier -

for_reclaim

- a flag of writeback_control, - indicates if it's invoked from the page allocator -

wsize

- write size +

__page

+ the address of page

size

number of pages to be written in this execution +

wsize

+ write size +

sb_flag

+ super block flags +

ino

+ inode number +

dev

+ device identifier

for_kupdate

a flag of writeback_control, indicates if it's a kupdate writeback -

ino

- inode number -

__page

- the address of page

page_index

offset within mapping, can used a page identifier and position identifier in the page frame +

for_reclaim

+ a flag of writeback_control, + indicates if it's invoked from the page allocator +

i_state

+ inode state flags

i_flag

file flags -

sb_flag

- super block flags -

Description

+

Description

The priority of wb is decided by the flags for_reclaim and for_kupdate.

diff --git a/tapsets/API-nfs-aop-writepages.html b/tapsets/API-nfs-aop-writepages.html index cd30d1f1..4f7add28 100644 --- a/tapsets/API-nfs-aop-writepages.html +++ b/tapsets/API-nfs-aop-writepages.html @@ -1,24 +1,24 @@ probe::nfs.aop.writepages

Name

probe::nfs.aop.writepages — NFS client writing several dirty pages to the NFS server -

Synopsis

nfs.aop.writepages 

Values

ino

- inode number -

wpages

- write size (in pages) -

nr_to_write

+

Synopsis

nfs.aop.writepages 

Values

nr_to_write

number of pages attempted to be written in this execution

dev

device identifier -

size

- number of pages attempted to be written in this execution

wsize

write size -

for_reclaim

- a flag of writeback_control, - indicates if it's invoked from the page allocator +

ino

+ inode number +

size

+ number of pages attempted to be written in this execution +

wpages

+ write size (in pages)

for_kupdate

a flag of writeback_control, indicates if it's a kupdate writeback -

Description

+

for_reclaim

+ a flag of writeback_control, + indicates if it's invoked from the page allocator +

Description

The priority of wb is decided by the flags for_reclaim and for_kupdate.

diff --git a/tapsets/API-nfs-fop-aio-read.html b/tapsets/API-nfs-fop-aio-read.html index ee2b348f..ef335c4f 100644 --- a/tapsets/API-nfs-fop-aio-read.html +++ b/tapsets/API-nfs-fop-aio-read.html @@ -1,25 +1,25 @@ probe::nfs.fop.aio_read

Name

probe::nfs.fop.aio_read — NFS client aio_read file operation -

Synopsis

nfs.fop.aio_read 

Values

pos

+

Synopsis

nfs.fop.aio_read 

Values

parent_name

+ parent dir name +

pos

current position of file -

ino

- inode number -

cache_time

- when we started read-caching this inode -

buf

- the address of buf in user space -

dev

- device identifier +

attrtimeo

+ how long the cached information is assumed to be valid. + We need to revalidate the cached attrs for this inode + if jiffies - read_cache_jiffies > attrtimeo.

cache_valid

cache related bit mask flag

file_name

file name -

parent_name

- parent dir name

count

read bytes -

attrtimeo

- how long the cached information is assumed to be valid. - We need to revalidate the cached attrs for this inode - if jiffies - read_cache_jiffies > attrtimeo. +

cache_time

+ when we started read-caching this inode +

dev

+ device identifier +

ino

+ inode number +

buf

+ the address of buf in user space

diff --git a/tapsets/API-nfs-fop-aio-write.html b/tapsets/API-nfs-fop-aio-write.html index 7eec6107..5c5ae60d 100644 --- a/tapsets/API-nfs-fop-aio-write.html +++ b/tapsets/API-nfs-fop-aio-write.html @@ -1,17 +1,17 @@ probe::nfs.fop.aio_write

Name

probe::nfs.fop.aio_write — NFS client aio_write file operation -

Synopsis

nfs.fop.aio_write 

Values

parent_name

+

Synopsis

nfs.fop.aio_write 

Values

parent_name

parent dir name -

file_name

- file name +

pos

+ offset of the file

count

read bytes -

buf

- the address of buf in user space

dev

device identifier

ino

inode number -

pos

- offset of the file +

buf

+ the address of buf in user space +

file_name

+ file name

diff --git a/tapsets/API-nfs-fop-check-flags.html b/tapsets/API-nfs-fop-check-flags.html index ca6452dc..635ace9e 100644 --- a/tapsets/API-nfs-fop-check-flags.html +++ b/tapsets/API-nfs-fop-check-flags.html @@ -1,5 +1,5 @@ probe::nfs.fop.check_flags

Name

probe::nfs.fop.check_flags — NFS client checking flag operation -

Synopsis

nfs.fop.check_flags 

Values

flag

+

Synopsis

nfs.fop.check_flags 

Values

flag

file flag

diff --git a/tapsets/API-nfs-fop-flush.html b/tapsets/API-nfs-fop-flush.html index b831d7a2..28087358 100644 --- a/tapsets/API-nfs-fop-flush.html +++ b/tapsets/API-nfs-fop-flush.html @@ -1,11 +1,11 @@ probe::nfs.fop.flush

Name

probe::nfs.fop.flush — NFS client flush file operation -

Synopsis

nfs.fop.flush 

Values

ino

+

Synopsis

nfs.fop.flush 

Values

dev

+ device identifier +

ino

inode number

mode

file mode

ndirty

number of dirty page -

dev

- device identifier

diff --git a/tapsets/API-nfs-fop-fsync.html b/tapsets/API-nfs-fop-fsync.html index 78a520a9..56d87c73 100644 --- a/tapsets/API-nfs-fop-fsync.html +++ b/tapsets/API-nfs-fop-fsync.html @@ -1,9 +1,9 @@ probe::nfs.fop.fsync

Name

probe::nfs.fop.fsync — NFS client fsync operation -

Synopsis

nfs.fop.fsync 

Values

dev

+

Synopsis

nfs.fop.fsync 

Values

ino

+ inode number +

dev

device identifier

ndirty

number of dirty pages -

ino

- inode number

diff --git a/tapsets/API-nfs-fop-llseek.html b/tapsets/API-nfs-fop-llseek.html index d982d3b3..f552570c 100644 --- a/tapsets/API-nfs-fop-llseek.html +++ b/tapsets/API-nfs-fop-llseek.html @@ -1,13 +1,13 @@ probe::nfs.fop.llseek

Name

probe::nfs.fop.llseek — NFS client llseek operation -

Synopsis

nfs.fop.llseek 

Values

whence_str

+

Synopsis

nfs.fop.llseek 

Values

offset

+ the offset of the file will be repositioned +

whence_str

symbolic string representation of the position to seek from

dev

device identifier -

ino

- inode number -

offset

- the offset of the file will be repositioned

whence

the position to seek from +

ino

+ inode number

diff --git a/tapsets/API-nfs-fop-lock.html b/tapsets/API-nfs-fop-lock.html index 42a5dde8..f9addb6b 100644 --- a/tapsets/API-nfs-fop-lock.html +++ b/tapsets/API-nfs-fop-lock.html @@ -1,19 +1,19 @@ probe::nfs.fop.lock

Name

probe::nfs.fop.lock — NFS client file lock operation -

Synopsis

nfs.fop.lock 

Values

fl_end

- ending offset of locked region +

Synopsis

nfs.fop.lock 

Values

fl_start

+ starting offset of locked region

fl_type

lock type

cmd

cmd arguments -

dev

- device identifier

fl_flag

lock flags -

fl_start

- starting offset of locked region -

ino

- inode number +

fl_end

+ ending offset of locked region

i_mode

file type and access rights +

dev

+ device identifier +

ino

+ inode number

diff --git a/tapsets/API-nfs-fop-mmap.html b/tapsets/API-nfs-fop-mmap.html index 3e283696..eb94f166 100644 --- a/tapsets/API-nfs-fop-mmap.html +++ b/tapsets/API-nfs-fop-mmap.html @@ -1,27 +1,27 @@ probe::nfs.fop.mmap

Name

probe::nfs.fop.mmap — NFS client mmap operation -

Synopsis

nfs.fop.mmap 

Values

parent_name

- parent dir name -

file_name

- file name +

Synopsis

nfs.fop.mmap 

Values

cache_valid

+ cache related bit mask flag +

vm_start

+ start address within vm_mm

vm_flag

vm flags

buf

the address of buf in user space -

vm_end

- the first byte after end address within vm_mm -

ino

- inode number -

cache_time

- when we started read-caching this inode +

parent_name

+ parent dir name

attrtimeo

how long the cached information is assumed to be valid. We need to revalidate the cached attrs for this inode if jiffies - read_cache_jiffies > attrtimeo. -

vm_start

- start address within vm_mm +

file_name

+ file name

dev

device identifier -

cache_valid

- cache related bit mask flag +

cache_time

+ when we started read-caching this inode +

vm_end

+ the first byte after end address within vm_mm +

ino

+ inode number

diff --git a/tapsets/API-nfs-fop-open.html b/tapsets/API-nfs-fop-open.html index dee7f1cc..e17fd66c 100644 --- a/tapsets/API-nfs-fop-open.html +++ b/tapsets/API-nfs-fop-open.html @@ -1,13 +1,13 @@ probe::nfs.fop.open

Name

probe::nfs.fop.open — NFS client file open operation -

Synopsis

nfs.fop.open 

Values

flag

- file flag -

i_size

+

Synopsis

nfs.fop.open 

Values

i_size

file length in bytes

dev

device identifier -

file_name

- file name

ino

inode number +

file_name

+ file name +

flag

+ file flag

diff --git a/tapsets/API-nfs-fop-read-iter.html b/tapsets/API-nfs-fop-read-iter.html index fbfdeb4c..fae43a77 100644 --- a/tapsets/API-nfs-fop-read-iter.html +++ b/tapsets/API-nfs-fop-read-iter.html @@ -1,23 +1,23 @@ probe::nfs.fop.read_iter

Name

probe::nfs.fop.read_iter — NFS client read_iter file operation -

Synopsis

nfs.fop.read_iter 

Values

pos

- current position of file -

ino

- inode number -

cache_time

+

Synopsis

nfs.fop.read_iter 

Values

cache_time

when we started read-caching this inode

dev

device identifier -

cache_valid

- cache related bit mask flag -

parent_name

- parent dir name -

file_name

- file name

count

read bytes +

ino

+ inode number +

file_name

+ file name +

pos

+ current position of file +

parent_name

+ parent dir name

attrtimeo

how long the cached information is assumed to be valid. We need to revalidate the cached attrs for this inode if jiffies - read_cache_jiffies > attrtimeo. +

cache_valid

+ cache related bit mask flag

diff --git a/tapsets/API-nfs-fop-read.html b/tapsets/API-nfs-fop-read.html index 940e08e5..05dc08c3 100644 --- a/tapsets/API-nfs-fop-read.html +++ b/tapsets/API-nfs-fop-read.html @@ -1,8 +1,8 @@ probe::nfs.fop.read

Name

probe::nfs.fop.read — NFS client read operation -

Synopsis

nfs.fop.read 

Values

devname

+

Synopsis

nfs.fop.read 

Values

devname

block device name -

Description

+

Description

SystemTap uses the vfs.do_sync_read probe to implement this probe and as a result will get operations other than the NFS client read operations. diff --git a/tapsets/API-nfs-fop-release.html b/tapsets/API-nfs-fop-release.html index 23498eb6..af7bfa96 100644 --- a/tapsets/API-nfs-fop-release.html +++ b/tapsets/API-nfs-fop-release.html @@ -1,9 +1,9 @@ probe::nfs.fop.release

Name

probe::nfs.fop.release — NFS client release page operation -

Synopsis

nfs.fop.release 

Values

dev

+

Synopsis

nfs.fop.release 

Values

mode

+ file mode +

dev

device identifier

ino

inode number -

mode

- file mode

diff --git a/tapsets/API-nfs-fop-sendfile.html b/tapsets/API-nfs-fop-sendfile.html index baca8e98..13290c34 100644 --- a/tapsets/API-nfs-fop-sendfile.html +++ b/tapsets/API-nfs-fop-sendfile.html @@ -1,19 +1,19 @@ probe::nfs.fop.sendfile

Name

probe::nfs.fop.sendfile — NFS client send file operation -

Synopsis

nfs.fop.sendfile 

Values

ppos

- current position of file -

cache_time

- when we started read-caching this inode -

ino

- inode number -

dev

- device identifier -

cache_valid

+

Synopsis

nfs.fop.sendfile 

Values

cache_valid

cache related bit mask flag

attrtimeo

how long the cached information is assumed to be valid. We need to revalidate the cached attrs for this inode if jiffies - read_cache_jiffies > attrtimeo. +

ppos

+ current position of file

count

read bytes +

cache_time

+ when we started read-caching this inode +

dev

+ device identifier +

ino

+ inode number

diff --git a/tapsets/API-nfs-fop-write-iter.html b/tapsets/API-nfs-fop-write-iter.html index 6806ed6b..0d9a012f 100644 --- a/tapsets/API-nfs-fop-write-iter.html +++ b/tapsets/API-nfs-fop-write-iter.html @@ -1,15 +1,15 @@ probe::nfs.fop.write_iter

Name

probe::nfs.fop.write_iter — NFS client write_iter file operation -

Synopsis

nfs.fop.write_iter 

Values

parent_name

+

Synopsis

nfs.fop.write_iter 

Values

parent_name

parent dir name -

file_name

- file name +

pos

+ offset of the file

count

read bytes

dev

device identifier

ino

inode number -

pos

- offset of the file +

file_name

+ file name

diff --git a/tapsets/API-nfs-fop-write.html b/tapsets/API-nfs-fop-write.html index 7be97db0..d25c3a65 100644 --- a/tapsets/API-nfs-fop-write.html +++ b/tapsets/API-nfs-fop-write.html @@ -1,8 +1,8 @@ probe::nfs.fop.write

Name

probe::nfs.fop.write — NFS client write operation -

Synopsis

nfs.fop.write 

Values

devname

+

Synopsis

nfs.fop.write 

Values

devname

block device name -

Description

+

Description

SystemTap uses the vfs.do_sync_write probe to implement this probe and as a result will get operations other than the NFS client write operations. diff --git a/tapsets/API-nfs-proc-commit-done.html b/tapsets/API-nfs-proc-commit-done.html index 438952d3..23d60178 100644 --- a/tapsets/API-nfs-proc-commit-done.html +++ b/tapsets/API-nfs-proc-commit-done.html @@ -1,20 +1,20 @@ probe::nfs.proc.commit_done

Name

probe::nfs.proc.commit_done — NFS client response to a commit RPC task -

Synopsis

nfs.proc.commit_done 

Values

valid

+

Synopsis

nfs.proc.commit_done 

Values

version

+ NFS version +

valid

fattr->valid, indicates which fields are valid -

server_ip

- IP address of server -

timestamp

- V4 timestamp, which is used for lease renewal +

count

+ number of bytes committed

status

result of last operation

prot

transfer protocol -

version

- NFS version -

count

- number of bytes committed -

Description

+

server_ip

+ IP address of server +

timestamp

+ V4 timestamp, which is used for lease renewal +

Description

Fires when a reply to a commit RPC task is received or some commit operation error occur (timeout or socket shutdown).

diff --git a/tapsets/API-nfs-proc-commit-setup.html b/tapsets/API-nfs-proc-commit-setup.html index 5817bc4f..321ffe59 100644 --- a/tapsets/API-nfs-proc-commit-setup.html +++ b/tapsets/API-nfs-proc-commit-setup.html @@ -1,24 +1,24 @@ probe::nfs.proc.commit_setup

Name

probe::nfs.proc.commit_setup — NFS client setting up a commit RPC task -

Synopsis

nfs.proc.commit_setup 

Values

size

- bytes in this commit -

count

+

Synopsis

nfs.proc.commit_setup 

Values

server_ip

+ IP address of server +

size

bytes in this commit -

version

- NFS version

prot

transfer protocol -

bitmask1

+

bitmask0

V4 bitmask representing the set of attributes supported on this filesystem +

count

+ bytes in this commit

offset

the file offset -

bitmask0

+

version

+ NFS version +

bitmask1

V4 bitmask representing the set of attributes supported on this filesystem -

server_ip

- IP address of server -

Description

+

Description

The commit_setup function is used to setup a commit RPC task. Is is not doing the actual commit operation. It does not exist in NFSv2. diff --git a/tapsets/API-nfs-proc-commit.html b/tapsets/API-nfs-proc-commit.html index 82348cb1..7380906a 100644 --- a/tapsets/API-nfs-proc-commit.html +++ b/tapsets/API-nfs-proc-commit.html @@ -1,22 +1,22 @@ probe::nfs.proc.commit

Name

probe::nfs.proc.commit — NFS client committing data on server -

Synopsis

nfs.proc.commit 

Values

server_ip

- IP address of server -

bitmask0

+

Synopsis

nfs.proc.commit 

Values

bitmask1

V4 bitmask representing the set of attributes supported on this filesystem +

version

+ NFS version

offset

the file offset -

bitmask1

+

bitmask0

V4 bitmask representing the set of attributes supported on this filesystem -

prot

- transfer protocol -

version

- NFS version +

server_ip

+ IP address of server

size

read bytes in this execution -

Description

+

prot

+ transfer protocol +

Description

All the nfs.proc.commit kernel functions were removed in kernel commit 200baa in December 2006, so these probes do not exist on Linux 2.6.21 and newer kernels. diff --git a/tapsets/API-nfs-proc-create.html b/tapsets/API-nfs-proc-create.html index bb8e22ec..77b6e38f 100644 --- a/tapsets/API-nfs-proc-create.html +++ b/tapsets/API-nfs-proc-create.html @@ -1,17 +1,17 @@ probe::nfs.proc.create

Name

probe::nfs.proc.create — NFS client creating file on server -

Synopsis

nfs.proc.create 

Values

version

- NFS version (the function is used for all NFS version) +

Synopsis

nfs.proc.create 

Values

fh

+ file handle of parent dir

filename

file name -

prot

- transfer protocol

flag

indicates create mode (only for NFSv3 and NFSv4) -

filelen

- length of file name -

fh

- file handle of parent dir +

version

+ NFS version (the function is used for all NFS version) +

prot

+ transfer protocol

server_ip

IP address of server +

filelen

+ length of file name

diff --git a/tapsets/API-nfs-proc-handle-exception.html b/tapsets/API-nfs-proc-handle-exception.html index 912e1fc0..4e4d474c 100644 --- a/tapsets/API-nfs-proc-handle-exception.html +++ b/tapsets/API-nfs-proc-handle-exception.html @@ -1,7 +1,7 @@ probe::nfs.proc.handle_exception

Name

probe::nfs.proc.handle_exception — NFS client handling an NFSv4 exception -

Synopsis

nfs.proc.handle_exception 

Values

errorcode

+

Synopsis

nfs.proc.handle_exception 

Values

errorcode

indicates the type of error -

Description

+

Description

This is the error handling routine for processes for NFSv4.

diff --git a/tapsets/API-nfs-proc-lookup.html b/tapsets/API-nfs-proc-lookup.html index 6271d0e0..50959c21 100644 --- a/tapsets/API-nfs-proc-lookup.html +++ b/tapsets/API-nfs-proc-lookup.html @@ -1,19 +1,19 @@ probe::nfs.proc.lookup

Name

probe::nfs.proc.lookup — NFS client opens/searches a file on server -

Synopsis

nfs.proc.lookup 

Values

prot

- transfer protocol -

filename

+

Synopsis

nfs.proc.lookup 

Values

filename

the name of file which client opens/searches on server -

version

- NFS version

bitmask1

V4 bitmask representing the set of attributes supported on this filesystem +

version

+ NFS version

bitmask0

V4 bitmask representing the set of attributes supported on this filesystem -

server_ip

- IP address of server

name_len

the length of file name +

prot

+ transfer protocol +

server_ip

+ IP address of server

diff --git a/tapsets/API-nfs-proc-open.html b/tapsets/API-nfs-proc-open.html index 641f1312..db654854 100644 --- a/tapsets/API-nfs-proc-open.html +++ b/tapsets/API-nfs-proc-open.html @@ -1,17 +1,17 @@ probe::nfs.proc.open

Name

probe::nfs.proc.open — NFS client allocates file read/write context information -

Synopsis

nfs.proc.open 

Values

prot

- transfer protocol +

Synopsis

nfs.proc.open 

Values

version

+ NFS version (the function is used for all NFS version)

flag

file flag -

version

- NFS version (the function is used for all NFS version)

filename

file name -

mode

- file mode +

prot

+ transfer protocol

server_ip

IP address of server -

Description

+

mode

+ file mode +

Description

Allocate file read/write context information

diff --git a/tapsets/API-nfs-proc-read-done.html b/tapsets/API-nfs-proc-read-done.html index 23bc9269..f2cfba8c 100644 --- a/tapsets/API-nfs-proc-read-done.html +++ b/tapsets/API-nfs-proc-read-done.html @@ -1,18 +1,18 @@ probe::nfs.proc.read_done

Name

probe::nfs.proc.read_done — NFS client response to a read RPC task -

Synopsis

nfs.proc.read_done 

Values

status

- result of last operation -

timestamp

- V4 timestamp, which is used for lease renewal -

server_ip

- IP address of server -

count

+

Synopsis

nfs.proc.read_done 

Values

count

number of bytes read

version

NFS version +

timestamp

+ V4 timestamp, which is used for lease renewal

prot

transfer protocol -

Description

+

server_ip

+ IP address of server +

status

+ result of last operation +

Description

Fires when a reply to a read RPC task is received or some read error occurs (timeout or socket shutdown).

diff --git a/tapsets/API-nfs-proc-read-setup.html b/tapsets/API-nfs-proc-read-setup.html index b92cbb52..2a71b8f3 100644 --- a/tapsets/API-nfs-proc-read-setup.html +++ b/tapsets/API-nfs-proc-read-setup.html @@ -1,18 +1,18 @@ probe::nfs.proc.read_setup

Name

probe::nfs.proc.read_setup — NFS client setting up a read RPC task -

Synopsis

nfs.proc.read_setup 

Values

size

- read bytes in this execution -

count

- read bytes in this execution -

version

+

Synopsis

nfs.proc.read_setup 

Values

version

NFS version -

prot

- transfer protocol

offset

the file offset +

count

+ read bytes in this execution

server_ip

IP address of server -

Description

+

prot

+ transfer protocol +

size

+ read bytes in this execution +

Description

The read_setup function is used to setup a read RPC task. It is not doing the actual read operation.

diff --git a/tapsets/API-nfs-proc-read.html b/tapsets/API-nfs-proc-read.html index 7656afc3..7cd8884a 100644 --- a/tapsets/API-nfs-proc-read.html +++ b/tapsets/API-nfs-proc-read.html @@ -1,18 +1,18 @@ probe::nfs.proc.read

Name

probe::nfs.proc.read — NFS client synchronously reads file from server -

Synopsis

nfs.proc.read 

Values

flags

+

Synopsis

nfs.proc.read 

Values

flags

used to set task->tk_flags in rpc_init_task function -

offset

- the file offset -

server_ip

- IP address of server

count

read bytes in this execution +

offset

+ the file offset

version

NFS version

prot

transfer protocol -

Description

+

server_ip

+ IP address of server +

Description

All the nfs.proc.read kernel functions were removed in kernel commit 8e0969 in December 2006, so these probes do not exist on Linux 2.6.21 and newer kernels. diff --git a/tapsets/API-nfs-proc-release.html b/tapsets/API-nfs-proc-release.html index 2e411df9..249d22ce 100644 --- a/tapsets/API-nfs-proc-release.html +++ b/tapsets/API-nfs-proc-release.html @@ -1,17 +1,17 @@ probe::nfs.proc.release

Name

probe::nfs.proc.release — NFS client releases file read/write context information -

Synopsis

nfs.proc.release 

Values

mode

+

Synopsis

nfs.proc.release 

Values

mode

file mode -

server_ip

- IP address of server

prot

transfer protocol -

flag

- file flag +

server_ip

+ IP address of server

filename

file name +

flag

+ file flag

version

NFS version (the function is used for all NFS version) -

Description

+

Description

Release file read/write context information

diff --git a/tapsets/API-nfs-proc-remove.html b/tapsets/API-nfs-proc-remove.html index 73086228..b8b08462 100644 --- a/tapsets/API-nfs-proc-remove.html +++ b/tapsets/API-nfs-proc-remove.html @@ -1,15 +1,15 @@ probe::nfs.proc.remove

Name

probe::nfs.proc.remove — NFS client removes a file on server -

Synopsis

nfs.proc.remove 

Values

version

+

Synopsis

nfs.proc.remove 

Values

fh

+ file handle of parent dir +

version

NFS version (the function is used for all NFS version)

filename

file name +

server_ip

+ IP address of server

prot

transfer protocol

filelen

length of file name -

fh

- file handle of parent dir -

server_ip

- IP address of server

diff --git a/tapsets/API-nfs-proc-rename-done.html b/tapsets/API-nfs-proc-rename-done.html index 09b55544..06f82c48 100644 --- a/tapsets/API-nfs-proc-rename-done.html +++ b/tapsets/API-nfs-proc-rename-done.html @@ -1,20 +1,20 @@ probe::nfs.proc.rename_done

Name

probe::nfs.proc.rename_done — NFS client response to a rename RPC task -

Synopsis

nfs.proc.rename_done 

Values

prot

- transfer protocol -

version

+

Synopsis

nfs.proc.rename_done 

Values

version

NFS version -

server_ip

- IP address of server -

timestamp

- V4 timestamp, which is used for lease renewal -

old_fh

- file handle of old parent dir

new_fh

file handle of new parent dir

status

result of last operation -

Description

+

timestamp

+ V4 timestamp, which is used for lease renewal +

old_fh

+ file handle of old parent dir +

prot

+ transfer protocol +

server_ip

+ IP address of server +

Description

Fires when a reply to a rename RPC task is received or some rename error occurs (timeout or socket shutdown).

diff --git a/tapsets/API-nfs-proc-rename-setup.html b/tapsets/API-nfs-proc-rename-setup.html index 72b4aa50..1f772006 100644 --- a/tapsets/API-nfs-proc-rename-setup.html +++ b/tapsets/API-nfs-proc-rename-setup.html @@ -1,14 +1,14 @@ probe::nfs.proc.rename_setup

Name

probe::nfs.proc.rename_setup — NFS client setting up a rename RPC task -

Synopsis

nfs.proc.rename_setup 

Values

version

+

Synopsis

nfs.proc.rename_setup 

Values

fh

+ file handle of parent dir +

version

NFS version -

prot

- transfer protocol

server_ip

IP address of server -

fh

- file handle of parent dir -

Description

+

prot

+ transfer protocol +

Description

The rename_setup function is used to setup a rename RPC task. Is is not doing the actual rename operation.

diff --git a/tapsets/API-nfs-proc-rename.html b/tapsets/API-nfs-proc-rename.html index ddfc57f5..ff128dce 100644 --- a/tapsets/API-nfs-proc-rename.html +++ b/tapsets/API-nfs-proc-rename.html @@ -1,21 +1,21 @@ probe::nfs.proc.rename

Name

probe::nfs.proc.rename — NFS client renames a file on server -

Synopsis

nfs.proc.rename 

Values

version

- NFS version (the function is used for all NFS version) -

prot

- transfer protocol +

Synopsis

nfs.proc.rename 

Values

old_filelen

+ length of old file name

new_name

new file name -

old_name

- old file name +

server_ip

+ IP address of server +

prot

+ transfer protocol

old_fh

file handle of old parent dir -

new_fh

- file handle of new parent dir

new_filelen

length of new file name -

old_filelen

- length of old file name -

server_ip

- IP address of server +

version

+ NFS version (the function is used for all NFS version) +

old_name

+ old file name +

new_fh

+ file handle of new parent dir

diff --git a/tapsets/API-nfs-proc-write-done.html b/tapsets/API-nfs-proc-write-done.html index 1625e2c7..64329961 100644 --- a/tapsets/API-nfs-proc-write-done.html +++ b/tapsets/API-nfs-proc-write-done.html @@ -1,20 +1,20 @@ probe::nfs.proc.write_done

Name

probe::nfs.proc.write_done — NFS client response to a write RPC task -

Synopsis

nfs.proc.write_done 

Values

prot

- transfer protocol -

count

+

Synopsis

nfs.proc.write_done 

Values

count

number of bytes written

version

NFS version +

valid

+ fattr->valid, indicates which fields are valid

server_ip

IP address of server +

prot

+ transfer protocol

timestamp

V4 timestamp, which is used for lease renewal -

valid

- fattr->valid, indicates which fields are valid

status

result of last operation -

Description

+

Description

Fires when a reply to a write RPC task is received or some write error occurs (timeout or socket shutdown).

diff --git a/tapsets/API-nfs-proc-write-setup.html b/tapsets/API-nfs-proc-write-setup.html index aee18493..2afd4b12 100644 --- a/tapsets/API-nfs-proc-write-setup.html +++ b/tapsets/API-nfs-proc-write-setup.html @@ -1,28 +1,28 @@ probe::nfs.proc.write_setup

Name

probe::nfs.proc.write_setup — NFS client setting up a write RPC task -

Synopsis

nfs.proc.write_setup 

Values

server_ip

- IP address of server -

bitmask0

- V4 bitmask representing the set of attributes supported - on this filesystem -

offset

- the file offset +

Synopsis

nfs.proc.write_setup 

Values

version

+ NFS version

bitmask1

V4 bitmask representing the set of attributes supported on this filesystem +

count

+ bytes written in this execution +

offset

+ the file offset

how

used to set args.stable. The stable value could be: NFS_UNSTABLE,NFS_DATA_SYNC,NFS_FILE_SYNC (in nfs.proc3.write_setup and nfs.proc4.write_setup) +

bitmask0

+ V4 bitmask representing the set of attributes supported + on this filesystem +

server_ip

+ IP address of server

prot

transfer protocol -

count

- bytes written in this execution -

version

- NFS version

size

bytes written in this execution -

Description

+

Description

The write_setup function is used to setup a write RPC task. It is not doing the actual write operation.

diff --git a/tapsets/API-nfs-proc-write.html b/tapsets/API-nfs-proc-write.html index 8f91895a..49342117 100644 --- a/tapsets/API-nfs-proc-write.html +++ b/tapsets/API-nfs-proc-write.html @@ -1,24 +1,24 @@ probe::nfs.proc.write

Name

probe::nfs.proc.write — NFS client synchronously writes file to server -

Synopsis

nfs.proc.write 

Values

flags

- used to set task->tk_flags in rpc_init_task function +

Synopsis

nfs.proc.write 

Values

version

+ NFS version

bitmask1

V4 bitmask representing the set of attributes supported on this filesystem

offset

the file offset +

flags

+ used to set task->tk_flags in rpc_init_task function

bitmask0

V4 bitmask representing the set of attributes supported on this filesystem -

server_ip

- IP address of server

size

read bytes in this execution -

version

- NFS version

prot

transfer protocol -

Description

+

server_ip

+ IP address of server +

Description

All the nfs.proc.write kernel functions were removed in kernel commit 200baa in December 2006, so these probes do not exist on Linux 2.6.21 and newer kernels. diff --git a/tapsets/API-nfsd-close.html b/tapsets/API-nfsd-close.html index a360490e..55e23598 100644 --- a/tapsets/API-nfsd-close.html +++ b/tapsets/API-nfsd-close.html @@ -1,7 +1,7 @@ probe::nfsd.close

Name

probe::nfsd.close — NFS server closing a file for client -

Synopsis

nfsd.close 

Values

filename

+

Synopsis

nfsd.close 

Values

filename

file name -

Description

+

Description

This probe point does not exist in kernels starting with 4.2.

diff --git a/tapsets/API-nfsd-commit.html b/tapsets/API-nfsd-commit.html index 2e4b3c89..b2745ad4 100644 --- a/tapsets/API-nfsd-commit.html +++ b/tapsets/API-nfsd-commit.html @@ -1,15 +1,15 @@ probe::nfsd.commit

Name

probe::nfsd.commit — NFS server committing all pending writes to stable storage -

Synopsis

nfsd.commit 

Values

count

+

Synopsis

nfsd.commit 

Values

size

read bytes -

client_ip

- the ip address of client

offset

the offset of file -

size

+

count

read bytes

fh

file handle (the first part is the length of the file handle) +

client_ip

+ the ip address of client

flag

indicates whether this execution is a sync operation

diff --git a/tapsets/API-nfsd-create.html b/tapsets/API-nfsd-create.html index fd4f973e..8bf17318 100644 --- a/tapsets/API-nfsd-create.html +++ b/tapsets/API-nfsd-create.html @@ -1,19 +1,19 @@ probe::nfsd.create

Name

probe::nfsd.create — NFS server creating a file(regular,dir,device,fifo) for client -

Synopsis

nfsd.create 

Values

client_ip

- the ip address of client -

filelen

- the length of file name -

fh

- file handle (the first part is the length of the file handle) -

iap_mode

- file access mode +

Synopsis

nfsd.create 

Values

filename

+ file name

type

file type(regular,dir,device,fifo ...) -

filename

- file name

iap_valid

Attribute flags -

Description

+

iap_mode

+ file access mode +

filelen

+ the length of file name +

fh

+ file handle (the first part is the length of the file handle) +

client_ip

+ the ip address of client +

Description

Sometimes nfsd will call nfsd_create_v3 instead of this this probe point.

diff --git a/tapsets/API-nfsd-createv3.html b/tapsets/API-nfsd-createv3.html index 6fb55969..d2561982 100644 --- a/tapsets/API-nfsd-createv3.html +++ b/tapsets/API-nfsd-createv3.html @@ -1,24 +1,24 @@ probe::nfsd.createv3

Name

probe::nfsd.createv3 — NFS server creating a regular file or set file attributes for client -

Synopsis

nfsd.createv3 

Values

truncp

- trunp arguments, indicates if the file shouldbe truncate +

Synopsis

nfsd.createv3 

Values

verifier

+ file attributes (atime,mtime,mode). It's used to reset file attributes for CREATE_EXCLUSIVE +

fh

+ file handle (the first part is the length of the file handle)

client_ip

the ip address of client -

filename

- file name -

iap_mode

- file access mode

filelen

the length of file name -

fh

- file handle (the first part is the length of the file handle) -

iap_valid

- Attribute flags

createmode

create mode .The possible values could be: NFS3_CREATE_EXCLUSIVE, NFS3_CREATE_UNCHECKED, or NFS3_CREATE_GUARDED -

verifier

- file attributes (atime,mtime,mode). It's used to reset file attributes for CREATE_EXCLUSIVE -

Description

+

iap_mode

+ file access mode +

iap_valid

+ Attribute flags +

truncp

+ trunp arguments, indicates if the file shouldbe truncate +

filename

+ file name +

Description

This probepoints is only called by nfsd3_proc_create and nfsd4_open when op_claim_type is NFS4_OPEN_CLAIM_NULL.

diff --git a/tapsets/API-nfsd-dispatch.html b/tapsets/API-nfsd-dispatch.html index bc0e94be..f78d9719 100644 --- a/tapsets/API-nfsd-dispatch.html +++ b/tapsets/API-nfsd-dispatch.html @@ -1,15 +1,15 @@ probe::nfsd.dispatch

Name

probe::nfsd.dispatch — NFS server receives an operation from client -

Synopsis

nfsd.dispatch 

Values

version

- nfs version -

proto

- transfer protocol +

Synopsis

nfsd.dispatch 

Values

xid

+ transmission id

proc

procedure number -

xid

- transmission id -

client_ip

- the ip address of client

prog

program number +

proto

+ transfer protocol +

client_ip

+ the ip address of client +

version

+ nfs version

diff --git a/tapsets/API-nfsd-lookup.html b/tapsets/API-nfsd-lookup.html index d05d18f4..1ea120ff 100644 --- a/tapsets/API-nfsd-lookup.html +++ b/tapsets/API-nfsd-lookup.html @@ -1,11 +1,11 @@ probe::nfsd.lookup

Name

probe::nfsd.lookup — NFS server opening or searching file for a file for client -

Synopsis

nfsd.lookup 

Values

filelen

- the length of file name -

fh

- file handle of parent dir(the first part is the length of the file handle) -

filename

+

Synopsis

nfsd.lookup 

Values

filename

file name +

filelen

+ the length of file name

client_ip

the ip address of client +

fh

+ file handle of parent dir(the first part is the length of the file handle)

diff --git a/tapsets/API-nfsd-open.html b/tapsets/API-nfsd-open.html index 72af9d50..de8bdfc5 100644 --- a/tapsets/API-nfsd-open.html +++ b/tapsets/API-nfsd-open.html @@ -1,11 +1,11 @@ probe::nfsd.open

Name

probe::nfsd.open — NFS server opening a file for client -

Synopsis

nfsd.open 

Values

client_ip

- the ip address of client -

fh

- file handle (the first part is the length of the file handle) -

type

+

Synopsis

nfsd.open 

Values

type

type of file (regular file or dir)

access

indicates the type of open (read/write/commit/readdir...) +

fh

+ file handle (the first part is the length of the file handle) +

client_ip

+ the ip address of client

diff --git a/tapsets/API-nfsd-proc-commit.html b/tapsets/API-nfsd-proc-commit.html index edc4d18d..59457c6b 100644 --- a/tapsets/API-nfsd-proc-commit.html +++ b/tapsets/API-nfsd-proc-commit.html @@ -1,21 +1,21 @@ probe::nfsd.proc.commit

Name

probe::nfsd.proc.commit — NFS server performing a commit operation for client -

Synopsis

nfsd.proc.commit 

Values

count

- read bytes -

uid

- requester's user id -

size

+

Synopsis

nfsd.proc.commit 

Values

count

read bytes +

proto

+ transfer protocol

fh

file handle (the first part is the length of the file handle)

version

nfs version

client_ip

the ip address of client +

uid

+ requester's user id

gid

requester's group id

offset

the offset of file -

proto

- transfer protocol +

size

+ read bytes

diff --git a/tapsets/API-nfsd-proc-create.html b/tapsets/API-nfsd-proc-create.html index be3342e8..a6ac6d4f 100644 --- a/tapsets/API-nfsd-proc-create.html +++ b/tapsets/API-nfsd-proc-create.html @@ -1,19 +1,19 @@ probe::nfsd.proc.create

Name

probe::nfsd.proc.create — NFS server creating a file for client -

Synopsis

nfsd.proc.create 

Values

uid

+

Synopsis

nfsd.proc.create 

Values

filename

+ file name +

uid

requester's user id +

gid

+ requester's group id +

proto

+ transfer protocol +

client_ip

+ the ip address of client

version

nfs version -

filename

- file name

fh

file handle (the first part is the length of the file handle)

filelen

length of file name -

proto

- transfer protocol -

gid

- requester's group id -

client_ip

- the ip address of client

diff --git a/tapsets/API-nfsd-proc-lookup.html b/tapsets/API-nfsd-proc-lookup.html index 65023b71..8deb828d 100644 --- a/tapsets/API-nfsd-proc-lookup.html +++ b/tapsets/API-nfsd-proc-lookup.html @@ -1,19 +1,19 @@ probe::nfsd.proc.lookup

Name

probe::nfsd.proc.lookup — NFS server opening or searching for a file for client -

Synopsis

nfsd.proc.lookup 

Values

proto

- transfer protocol -

client_ip

- the ip address of client -

gid

+

Synopsis

nfsd.proc.lookup 

Values

gid

requester's group id

filename

file name -

version

- nfs version

uid

requester's user id -

filelen

- the length of file name +

version

+ nfs version +

client_ip

+ the ip address of client

fh

file handle of parent dir (the first part is the length of the file handle) +

proto

+ transfer protocol +

filelen

+ the length of file name

diff --git a/tapsets/API-nfsd-proc-read.html b/tapsets/API-nfsd-proc-read.html index 078f6da9..564c1630 100644 --- a/tapsets/API-nfsd-proc-read.html +++ b/tapsets/API-nfsd-proc-read.html @@ -1,25 +1,25 @@ probe::nfsd.proc.read

Name

probe::nfsd.proc.read — NFS server reading file for client -

Synopsis

nfsd.proc.read 

Values

vec

- struct kvec, includes buf address in kernel address and length of each buffer +

Synopsis

nfsd.proc.read 

Values

proto

+ transfer protocol

vlen

read blocks -

count

- read bytes -

uid

- requester's user id +

fh

+ file handle (the first part is the length of the file handle)

client_ip

the ip address of client +

vec

+ struct kvec, includes buf address in kernel address and length of each buffer +

version

+ nfs version +

count

+ read bytes +

size

+ read bytes

offset

the offset of file +

uid

+ requester's user id

gid

requester's group id -

proto

- transfer protocol -

size

- read bytes -

fh

- file handle (the first part is the length of the file handle) -

version

- nfs version

diff --git a/tapsets/API-nfsd-proc-remove.html b/tapsets/API-nfsd-proc-remove.html index bd81c059..e919d346 100644 --- a/tapsets/API-nfsd-proc-remove.html +++ b/tapsets/API-nfsd-proc-remove.html @@ -1,19 +1,19 @@ probe::nfsd.proc.remove

Name

probe::nfsd.proc.remove — NFS server removing a file for client -

Synopsis

nfsd.proc.remove 

Values

uid

- requester's user id +

Synopsis

nfsd.proc.remove 

Values

filelen

+ length of file name

proto

transfer protocol +

fh

+ file handle (the first part is the length of the file handle)

client_ip

the ip address of client -

gid

- requester's group id -

filename

- file name

version

nfs version -

filelen

- length of file name -

fh

- file handle (the first part is the length of the file handle) +

uid

+ requester's user id +

filename

+ file name +

gid

+ requester's group id

diff --git a/tapsets/API-nfsd-proc-rename.html b/tapsets/API-nfsd-proc-rename.html index ec3d8a3a..bd21905b 100644 --- a/tapsets/API-nfsd-proc-rename.html +++ b/tapsets/API-nfsd-proc-rename.html @@ -1,21 +1,21 @@ probe::nfsd.proc.rename

Name

probe::nfsd.proc.rename — NFS Server renaming a file for client -

Synopsis

nfsd.proc.rename 

Values

tfh

+

Synopsis

nfsd.proc.rename 

Values

tname

+ new file name +

tfh

file handler of new path +

tlen

+ length of new file name +

gid

+ requester's group id +

uid

+ requester's user id

filename

old file name -

flen

- length of old file name

fh

file handler of old path

client_ip

the ip address of client -

gid

- requester's group id -

tlen

- length of new file name -

uid

- requester's user id -

tname

- new file name +

flen

+ length of old file name

diff --git a/tapsets/API-nfsd-proc-write.html b/tapsets/API-nfsd-proc-write.html index ea9988f1..843cbd62 100644 --- a/tapsets/API-nfsd-proc-write.html +++ b/tapsets/API-nfsd-proc-write.html @@ -1,27 +1,27 @@ probe::nfsd.proc.write

Name

probe::nfsd.proc.write — NFS server writing data to file for client -

Synopsis

nfsd.proc.write 

Values

count

- read bytes -

uid

- requester's user id -

vlen

- read blocks +

Synopsis

nfsd.proc.write 

Values

version

+ nfs version

vec

struct kvec, includes buf address in kernel address and length of each buffer -

version

- nfs version +

client_ip

+ the ip address of client

fh

file handle (the first part is the length of the file handle) -

size

- read bytes -

stable

- argp->stable +

vlen

+ read blocks

proto

transfer protocol -

gid

- requester's group id +

stable

+ argp->stable +

count

+ read bytes +

size

+ read bytes

offset

the offset of file -

client_ip

- the ip address of client +

gid

+ requester's group id +

uid

+ requester's user id

diff --git a/tapsets/API-nfsd-read.html b/tapsets/API-nfsd-read.html index d3e928e2..5b5cd3f8 100644 --- a/tapsets/API-nfsd-read.html +++ b/tapsets/API-nfsd-read.html @@ -1,19 +1,19 @@ probe::nfsd.read

Name

probe::nfsd.read — NFS server reading data from a file for client -

Synopsis

nfsd.read 

Values

client_ip

- the ip address of client -

offset

- the offset of file -

file

+

Synopsis

nfsd.read 

Values

file

argument file, indicates if the file has been opened.

size

read bytes -

fh

- file handle (the first part is the length of the file handle) +

offset

+ the offset of file +

count

+ read bytes

vlen

read blocks +

fh

+ file handle (the first part is the length of the file handle)

vec

struct kvec, includes buf address in kernel address and length of each buffer -

count

- read bytes +

client_ip

+ the ip address of client

diff --git a/tapsets/API-nfsd-rename.html b/tapsets/API-nfsd-rename.html index 74a98568..0195b654 100644 --- a/tapsets/API-nfsd-rename.html +++ b/tapsets/API-nfsd-rename.html @@ -1,17 +1,17 @@ probe::nfsd.rename

Name

probe::nfsd.rename — NFS server renaming a file for client -

Synopsis

nfsd.rename 

Values

client_ip

+

Synopsis

nfsd.rename 

Values

fh

+ file handler of old path +

client_ip

the ip address of client

flen

length of old file name -

fh

- file handler of old path -

tfh

- file handler of new path +

tlen

+ length of new file name

filename

old file name

tname

new file name -

tlen

- length of new file name +

tfh

+ file handler of new path

diff --git a/tapsets/API-nfsd-unlink.html b/tapsets/API-nfsd-unlink.html index ae00e848..fddd0c00 100644 --- a/tapsets/API-nfsd-unlink.html +++ b/tapsets/API-nfsd-unlink.html @@ -1,13 +1,13 @@ probe::nfsd.unlink

Name

probe::nfsd.unlink — NFS server removing a file or a directory for client -

Synopsis

nfsd.unlink 

Values

client_ip

+

Synopsis

nfsd.unlink 

Values

filelen

+ the length of file name +

fh

+ file handle (the first part is the length of the file handle) +

client_ip

the ip address of client

filename

file name

type

file type (file or dir) -

fh

- file handle (the first part is the length of the file handle) -

filelen

- the length of file name

diff --git a/tapsets/API-nfsd-write.html b/tapsets/API-nfsd-write.html index 1655078b..b1d211bc 100644 --- a/tapsets/API-nfsd-write.html +++ b/tapsets/API-nfsd-write.html @@ -1,19 +1,19 @@ probe::nfsd.write

Name

probe::nfsd.write — NFS server writing data to a file for client -

Synopsis

nfsd.write 

Values

file

- argument file, indicates if the file has been opened. -

size

+

Synopsis

nfsd.write 

Values

count

read bytes

fh

file handle (the first part is the length of the file handle)

client_ip

the ip address of client +

vec

+ struct kvec, includes buf address in kernel address and length of each buffer +

vlen

+ read blocks +

file

+ argument file, indicates if the file has been opened.

offset

the offset of file -

count

+

size

read bytes -

vlen

- read blocks -

vec

- struct kvec, includes buf address in kernel address and length of each buffer

diff --git a/tapsets/API-nfsderror.html b/tapsets/API-nfsderror.html index 1347dba3..2fd1c25c 100644 --- a/tapsets/API-nfsderror.html +++ b/tapsets/API-nfsderror.html @@ -2,9 +2,9 @@ Convert nfsd error number into string

Synopsis

     nfsderror:string(err:long)
-

Arguments

err

+

Arguments

err

errnum -

Description

+

Description

This function returns a string for the error number passed into the function.

diff --git a/tapsets/API-ngroups.html b/tapsets/API-ngroups.html index 68943a6f..ed5dcdbf 100644 --- a/tapsets/API-ngroups.html +++ b/tapsets/API-ngroups.html @@ -2,9 +2,9 @@ Number of subexpressions in the last match.

Synopsis

     ngroups:long()
-

Arguments

+

Arguments

None -

Description

+

Description

returns the number of subexpressions from the last successful use of the =~ regex matching operator.

diff --git a/tapsets/API-ns-egid.html b/tapsets/API-ns-egid.html index a96e8861..86336656 100644 --- a/tapsets/API-ns-egid.html +++ b/tapsets/API-ns-egid.html @@ -2,8 +2,8 @@ Returns the effective gid of a target process as seen in a user namespace

Synopsis

     ns_egid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the effective gid of a target process as seen in the target user namespace if provided, or the stap process namespace

diff --git a/tapsets/API-ns-euid.html b/tapsets/API-ns-euid.html index 0f6e2a14..10d80cb3 100644 --- a/tapsets/API-ns-euid.html +++ b/tapsets/API-ns-euid.html @@ -2,8 +2,8 @@ Returns the effective user ID of a target process as seen in a user namespace

Synopsis

     ns_euid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the effective user ID of the target process as seen in the target user namespace if provided, or the stap process namespace.

diff --git a/tapsets/API-ns-gid.html b/tapsets/API-ns-gid.html index 9a410bca..a455b931 100644 --- a/tapsets/API-ns-gid.html +++ b/tapsets/API-ns-gid.html @@ -2,8 +2,8 @@ Returns the group ID of a target process as seen in a user namespace

Synopsis

     ns_gid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the group ID of a target process as seen in the target user namespace if provided, or the stap process namespace.

diff --git a/tapsets/API-ns-pgrp.html b/tapsets/API-ns-pgrp.html index f10bfbb4..c088ad76 100644 --- a/tapsets/API-ns-pgrp.html +++ b/tapsets/API-ns-pgrp.html @@ -2,9 +2,9 @@ Returns the process group ID of the current process as seen in a pid namespace

Synopsis

     ns_pgrp:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the process group ID of the current process as seen in the target pid namespace if provided, or the stap process namespace.

diff --git a/tapsets/API-ns-pid.html b/tapsets/API-ns-pid.html index ecac7cd9..ae56e0f6 100644 --- a/tapsets/API-ns-pid.html +++ b/tapsets/API-ns-pid.html @@ -2,9 +2,9 @@ Returns the ID of a target process as seen in a pid namespace

Synopsis

     ns_pid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the ID of a target process as seen in the target pid namespace.

diff --git a/tapsets/API-ns-ppid.html b/tapsets/API-ns-ppid.html index 5ce54a24..95d63f13 100644 --- a/tapsets/API-ns-ppid.html +++ b/tapsets/API-ns-ppid.html @@ -2,8 +2,8 @@ Returns the process ID of a target process's parent process as seen in a pid namespace

Synopsis

     ns_ppid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function return the process ID of the target proccess's parent process as seen in the target pid namespace if provided, or the stap process namespace.

diff --git a/tapsets/API-ns-sid.html b/tapsets/API-ns-sid.html index 0d9a47e7..49f9f386 100644 --- a/tapsets/API-ns-sid.html +++ b/tapsets/API-ns-sid.html @@ -2,9 +2,9 @@ Returns the session ID of the current process as seen in a pid namespace

Synopsis

     ns_sid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

The namespace-aware session ID of a process is the process group ID of the session leader as seen in the target pid namespace if provided, or the stap process namespace. Session ID is stored in the signal_struct since Kernel 2.6.0. diff --git a/tapsets/API-ns-tid.html b/tapsets/API-ns-tid.html index a975ffac..2f1df28e 100644 --- a/tapsets/API-ns-tid.html +++ b/tapsets/API-ns-tid.html @@ -2,9 +2,9 @@ Returns the thread ID of a target process as seen in a pid namespace

Synopsis

     ns_tid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the thread ID of a target process as seen in the target pid namespace if provided, or the stap process namespace.

diff --git a/tapsets/API-ns-uid.html b/tapsets/API-ns-uid.html index 67153e76..cc0bc25c 100644 --- a/tapsets/API-ns-uid.html +++ b/tapsets/API-ns-uid.html @@ -2,8 +2,8 @@ Returns the user ID of a target process as seen in a user namespace

Synopsis

     ns_uid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the user ID of the target process as seen in the target user namespace if provided, or the stap process namespace.

diff --git a/tapsets/API-nsecs-to-string.html b/tapsets/API-nsecs-to-string.html index 43e82ac1..acb3d817 100644 --- a/tapsets/API-nsecs-to-string.html +++ b/tapsets/API-nsecs-to-string.html @@ -2,9 +2,9 @@ Human readable string for given nanoseconds

Synopsis

     nsecs_to_string:string(nsecs:long)
-

Arguments

nsecs

+

Arguments

nsecs

Number of nanoseconds to translate. -

Description

+

Description

Returns a string representing the number of nanoseconds as a human readable string consisting of “XmY.ZZZZZZs”, where X is the number of minutes, Y is the number of seconds and diff --git a/tapsets/API-ntohl.html b/tapsets/API-ntohl.html index ef2d69cb..82a6f7f1 100644 --- a/tapsets/API-ntohl.html +++ b/tapsets/API-ntohl.html @@ -2,6 +2,6 @@ Convert 32-bit long from network to host order

Synopsis

     ntohl:long(x:long)
-

Arguments

x

+

Arguments

x

Value to convert

diff --git a/tapsets/API-ntohll.html b/tapsets/API-ntohll.html index 8ab7083f..dc84f3da 100644 --- a/tapsets/API-ntohll.html +++ b/tapsets/API-ntohll.html @@ -2,6 +2,6 @@ Convert 64-bit long long from network to host order

Synopsis

     ntohll:long(x:long)
-

Arguments

x

+

Arguments

x

Value to convert

diff --git a/tapsets/API-ntohs.html b/tapsets/API-ntohs.html index 1c4c45c0..172c16d0 100644 --- a/tapsets/API-ntohs.html +++ b/tapsets/API-ntohs.html @@ -2,6 +2,6 @@ Convert 16-bit short from network to host order

Synopsis

     ntohs:long(x:long)
-

Arguments

x

+

Arguments

x

Value to convert

diff --git a/tapsets/API-pages-to-string.html b/tapsets/API-pages-to-string.html index 9d14ed6e..86c5d45d 100644 --- a/tapsets/API-pages-to-string.html +++ b/tapsets/API-pages-to-string.html @@ -2,9 +2,9 @@ Turns pages into a human readable string

Synopsis

     pages_to_string:string(pages:long)
-

Arguments

pages

+

Arguments

pages

Number of pages to translate. -

Description

+

Description

Multiplies pages by page_size to get the number of bytes and returns the result of bytes_to_string.

diff --git a/tapsets/API-panic.html b/tapsets/API-panic.html index f78c22d8..1e334f78 100644 --- a/tapsets/API-panic.html +++ b/tapsets/API-panic.html @@ -2,9 +2,9 @@ trigger a panic

Synopsis

     panic(msg:string)
-

Arguments

msg

+

Arguments

msg

message to pass to kernel's panic function -

Description

+

Description

This function triggers an immediate panic of the running kernel with a user-specified panic message. It requires guru mode. diff --git a/tapsets/API-pexecname.html b/tapsets/API-pexecname.html index 6f6b1482..54f8241f 100644 --- a/tapsets/API-pexecname.html +++ b/tapsets/API-pexecname.html @@ -2,9 +2,9 @@ Returns the execname of a target process's parent process

Synopsis

     pexecname:string()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the execname of a target process's parent procces.

diff --git a/tapsets/API-pgrp.html b/tapsets/API-pgrp.html index 1c9af3de..d6ddcb68 100644 --- a/tapsets/API-pgrp.html +++ b/tapsets/API-pgrp.html @@ -2,9 +2,9 @@ Returns the process group ID of the current process

Synopsis

     pgrp:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the process group ID of the current process.

diff --git a/tapsets/API-pid.html b/tapsets/API-pid.html index ee4e6c31..cd616602 100644 --- a/tapsets/API-pid.html +++ b/tapsets/API-pid.html @@ -2,8 +2,8 @@ Returns the ID of a target process

Synopsis

     pid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the ID of a target process.

diff --git a/tapsets/API-pid2execname.html b/tapsets/API-pid2execname.html index e6f6047e..0b5be5eb 100644 --- a/tapsets/API-pid2execname.html +++ b/tapsets/API-pid2execname.html @@ -2,8 +2,8 @@ The name of the given process identifier

Synopsis

     pid2execname:string(pid:long)
-

Arguments

pid

+

Arguments

pid

process identifier -

Description

+

Description

Return the name of the given process id.

diff --git a/tapsets/API-pid2task.html b/tapsets/API-pid2task.html index 2409b540..fae5c82c 100644 --- a/tapsets/API-pid2task.html +++ b/tapsets/API-pid2task.html @@ -2,8 +2,8 @@ The task_struct of the given process identifier

Synopsis

     pid2task:long(pid:long)
-

Arguments

pid

+

Arguments

pid

process identifier -

Description

+

Description

Return the task struct of the given process id.

diff --git a/tapsets/API-pn.html b/tapsets/API-pn.html index da4e0095..b76e8686 100644 --- a/tapsets/API-pn.html +++ b/tapsets/API-pn.html @@ -2,9 +2,9 @@ Returns the active probe name

Synopsis

     pn:string()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the script-level probe point associated with a currently running probe handler, including wild-card expansion effects. Context: The current probe point. diff --git a/tapsets/API-pnlabel.html b/tapsets/API-pnlabel.html index d78904a3..96415a39 100644 --- a/tapsets/API-pnlabel.html +++ b/tapsets/API-pnlabel.html @@ -2,12 +2,12 @@ Returns the label name parsed from the probe name

Synopsis

     pnlabel:string()
-

Arguments

+

Arguments

None -

Description

+

Description

This returns the label name as parsed from the script-level probe point. This function will only work if called directly from the body of a '.label' probe point (i.e. no aliases). -

Context

+

Context

The current probe point.

diff --git a/tapsets/API-pointer-arg.html b/tapsets/API-pointer-arg.html index 6b24ed51..77a177d4 100644 --- a/tapsets/API-pointer-arg.html +++ b/tapsets/API-pointer-arg.html @@ -2,9 +2,9 @@ Return function argument as pointer value

Synopsis

     pointer_arg:long(n:long)
-

Arguments

n

+

Arguments

n

index of argument to return -

Description

+

Description

Return the unsigned value of argument n, same as ulong_arg. Can be used with any type of pointer.

diff --git a/tapsets/API-pp.html b/tapsets/API-pp.html index 4e6d1afd..c9b4e2d6 100644 --- a/tapsets/API-pp.html +++ b/tapsets/API-pp.html @@ -2,9 +2,9 @@ Returns the active probe point

Synopsis

     pp:string()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the fully-resolved probe point associated with a currently running probe handler, including alias and wild-card expansion effects. Context: The current probe point. diff --git a/tapsets/API-ppfunc.html b/tapsets/API-ppfunc.html index fb8d35e0..7418678a 100644 --- a/tapsets/API-ppfunc.html +++ b/tapsets/API-ppfunc.html @@ -2,9 +2,9 @@ Returns the function name parsed from pp

Synopsis

     ppfunc:string()
-

Arguments

+

Arguments

None -

Description

+

Description

This returns the function name from the current pp. Not all pp have functions in them, in which case "" is returned.

diff --git a/tapsets/API-ppid.html b/tapsets/API-ppid.html index ff7f13aa..182e03d5 100644 --- a/tapsets/API-ppid.html +++ b/tapsets/API-ppid.html @@ -2,8 +2,8 @@ Returns the process ID of a target process's parent process

Synopsis

     ppid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function return the process ID of the target proccess's parent process.

diff --git a/tapsets/API-print-backtrace-fileline.html b/tapsets/API-print-backtrace-fileline.html index d8fc367a..ea301bfd 100644 --- a/tapsets/API-print-backtrace-fileline.html +++ b/tapsets/API-print-backtrace-fileline.html @@ -2,9 +2,9 @@ Print kernel stack back trace

Synopsis

     print_backtrace_fileline()
-

Arguments

+

Arguments

None -

Description

+

Description

This function is equivalent to print_backtrace, but output for each symbol is longer including file names and line numbers. The function does not return a value. diff --git a/tapsets/API-print-backtrace.html b/tapsets/API-print-backtrace.html index f9171e8f..b4a1c400 100644 --- a/tapsets/API-print-backtrace.html +++ b/tapsets/API-print-backtrace.html @@ -2,9 +2,9 @@ Print kernel stack back trace

Synopsis

     print_backtrace()
-

Arguments

+

Arguments

None -

Description

+

Description

This function is equivalent to print_stack(backtrace), except that deeper stack nesting may be supported. See print_ubacktrace for user-space backtrace. diff --git a/tapsets/API-print-regs.html b/tapsets/API-print-regs.html index 0023cbce..061f633a 100644 --- a/tapsets/API-print-regs.html +++ b/tapsets/API-print-regs.html @@ -2,8 +2,8 @@ Print a register dump

Synopsis

     print_regs()
-

Arguments

+

Arguments

None -

Description

+

Description

This function prints a register dump. Does nothing if no registers are available for the probe point.

diff --git a/tapsets/API-print-stack.html b/tapsets/API-print-stack.html index 05848513..1a0d9343 100644 --- a/tapsets/API-print-stack.html +++ b/tapsets/API-print-stack.html @@ -2,9 +2,9 @@ Print out kernel stack from string

Synopsis

     print_stack(stk:string)
-

Arguments

stk

+

Arguments

stk

String with list of hexadecimal addresses -

Description

+

Description

This function performs a symbolic lookup of the addresses in the given string, which is assumed to be the result of a prior call to @@ -14,6 +14,6 @@ Print one line per address, including the address, the name of the function containing the address, and an estimate of its position within that function. Return nothing. -

NOTE

+

NOTE

it is recommended to use print_syms instead of this function.

diff --git a/tapsets/API-print-syms.html b/tapsets/API-print-syms.html index 35fc901d..38f5fec2 100644 --- a/tapsets/API-print-syms.html +++ b/tapsets/API-print-syms.html @@ -2,9 +2,9 @@ Print out kernel stack from string

Synopsis

     print_syms(callers:string)
-

Arguments

callers

+

Arguments

callers

String with list of hexadecimal (kernel) addresses -

Description

+

Description

This function performs a symbolic lookup of the addresses in the given string, which are assumed to be the result of prior calls to stack, diff --git a/tapsets/API-print-ubacktrace-brief.html b/tapsets/API-print-ubacktrace-brief.html index 982b0379..6daf60cb 100644 --- a/tapsets/API-print-ubacktrace-brief.html +++ b/tapsets/API-print-ubacktrace-brief.html @@ -2,15 +2,15 @@ Print stack back trace for current user-space task.

Synopsis

     print_ubacktrace_brief()
-

Arguments

+

Arguments

None -

Description

+

Description

Equivalent to print_ubacktrace, but output for each symbol is shorter (just name and offset, or just the hex address of no symbol could be found). -

Note

+

Note

To get (full) backtraces for user space applications and shared shared libraries not mentioned in the current script run stap with -d /path/to/exe-or-so and/or add --ldd to load all needed unwind data. diff --git a/tapsets/API-print-ubacktrace-fileline.html b/tapsets/API-print-ubacktrace-fileline.html index db237c92..0429a989 100644 --- a/tapsets/API-print-ubacktrace-fileline.html +++ b/tapsets/API-print-ubacktrace-fileline.html @@ -1,17 +1,17 @@ function::print_ubacktrace_fileline

Name

function::print_ubacktrace_fileline — Print stack back trace for current user-space task. -

Synopsis

1) print_ubacktrace_fileline()
2) print_ubacktrace_fileline(pc:long,sp:long,fp:long)

Arguments

pc

+

Synopsis

1) print_ubacktrace_fileline()
2) print_ubacktrace_fileline(pc:long,sp:long,fp:long)

Arguments

pc

override PC

sp

override SP

fp

override FP -

Description

1)

2) Equivalent toprint_ubacktrace, but output for each symbol is +

Description

1)

2) Equivalent toprint_ubacktrace, but output for each symbol is longer including file names and line numbers.

Equivalent to print_ubacktrace_fileline, but it performs the backtrace using the pc, sp, and fp passed in. -

Note

+

Note

To get (full) backtraces for user space applications and shared shared libraries not mentioned in the current script run stap with -d /path/to/exe-or-so and/or add --ldd to load all needed unwind data. diff --git a/tapsets/API-print-ubacktrace.html b/tapsets/API-print-ubacktrace.html index 2545c786..ed681939 100644 --- a/tapsets/API-print-ubacktrace.html +++ b/tapsets/API-print-ubacktrace.html @@ -1,18 +1,18 @@ function::print_ubacktrace

Name

function::print_ubacktrace — Print stack back trace for current user-space task. -

Synopsis

1) print_ubacktrace()
2) print_ubacktrace(pc:long,sp:long,fp:long)

Arguments

pc

+

Synopsis

1) print_ubacktrace()
2) print_ubacktrace(pc:long,sp:long,fp:long)

Arguments

pc

override PC

sp

override SP

fp

override FP -

Description

1)

2) Equivalent to print_ustack(ubacktrace), except that deeper stack +

Description

1)

2) Equivalent to print_ustack(ubacktrace), except that deeper stack nesting may be supported. Returns nothing. See print_backtrace for kernel backtrace.

Equivalent to print_ubacktrace, but it performs the backtrace using the pc, sp, and fp provided. Useful -

Note

+

Note

To get (full) backtraces for user space applications and shared shared libraries not mentioned in the current script run stap with -d /path/to/exe-or-so and/or add --ldd to load all needed unwind data. diff --git a/tapsets/API-print-ustack.html b/tapsets/API-print-ustack.html index 1013cd2e..64c725cd 100644 --- a/tapsets/API-print-ustack.html +++ b/tapsets/API-print-ustack.html @@ -2,9 +2,9 @@ Print out stack for the current task from string.

Synopsis

     print_ustack(stk:string)
-

Arguments

stk

+

Arguments

stk

String with list of hexadecimal addresses for the current task. -

Description

+

Description

Perform a symbolic lookup of the addresses in the given string, which is assumed to be the result of a prior call to ubacktrace for the current task. @@ -13,6 +13,6 @@ Print one line per address, including the address, the name of the function containing the address, and an estimate of its position within that function. Return nothing. -

NOTE

+

NOTE

it is recommended to use print_usyms instead of this function.

diff --git a/tapsets/API-print-usyms.html b/tapsets/API-print-usyms.html index a0c84666..b89a4a07 100644 --- a/tapsets/API-print-usyms.html +++ b/tapsets/API-print-usyms.html @@ -2,9 +2,9 @@ Print out user stack from string

Synopsis

     print_usyms(callers:string)
-

Arguments

callers

+

Arguments

callers

String with list of hexadecimal (user) addresses -

Description

+

Description

This function performs a symbolic lookup of the addresses in the given string, which are assumed to be the result of prior calls to ustack, diff --git a/tapsets/API-printk.html b/tapsets/API-printk.html index 219a41aa..d37800e6 100644 --- a/tapsets/API-printk.html +++ b/tapsets/API-printk.html @@ -2,11 +2,11 @@ Send a message to the kernel trace buffer

Synopsis

     printk(level:long,msg:string)
-

Arguments

level

+

Arguments

level

an integer for the severity level (0=KERN_EMERG ... 7=KERN_DEBUG)

msg

The formatted message string -

Description

+

Description

Print a line of text to the kernel dmesg/console with the given severity. An implicit end-of-line is added. This function may not be safely called from all kernel probe contexts, so is restricted diff --git a/tapsets/API-probe-type.html b/tapsets/API-probe-type.html index 39c891c2..99a787ba 100644 --- a/tapsets/API-probe-type.html +++ b/tapsets/API-probe-type.html @@ -2,9 +2,9 @@ The low level probe handler type of the current probe.

Synopsis

     probe_type:string()
-

Arguments

+

Arguments

None -

Description

+

Description

Returns a short string describing the low level probe handler type for the current probe point. This is for informational purposes only. Depending on the low level probe handler different context functions can diff --git a/tapsets/API-probefunc.html b/tapsets/API-probefunc.html index 8311d41c..16da3330 100644 --- a/tapsets/API-probefunc.html +++ b/tapsets/API-probefunc.html @@ -2,14 +2,14 @@ Return the probe point's function name, if known

Synopsis

     probefunc:string()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the name of the function being probed based on the current address, as computed by symname(addr) or usymname(uaddr) depending on probe context (whether the probe is a user probe or a kernel probe). -

Please note

+

Please note

this function's behaviour differs between SystemTap 2.0 and earlier versions. Prior to 2.0, probefunc obtained the function name from the probe point string as returned by pp, and used the diff --git a/tapsets/API-probemod.html b/tapsets/API-probemod.html index 101c3c1e..d57b35f9 100644 --- a/tapsets/API-probemod.html +++ b/tapsets/API-probemod.html @@ -2,9 +2,9 @@ Return the probe point's kernel module name

Synopsis

     probemod:string()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the name of the kernel module containing the probe point, if known.

diff --git a/tapsets/API-proc-mem-data.html b/tapsets/API-proc-mem-data.html index acb38590..bda382f8 100644 --- a/tapsets/API-proc-mem-data.html +++ b/tapsets/API-proc-mem-data.html @@ -1,8 +1,8 @@ function::proc_mem_data

Name

function::proc_mem_data — Program data size (data + stack) in pages -

Synopsis

1) proc_mem_data:long()
2) proc_mem_data:long(pid:long)

Arguments

pid

+

Synopsis

1) proc_mem_data:long()
2) proc_mem_data:long(pid:long)

Arguments

pid

The pid of process to examine -

Description

1) Returns the current process data size (data + stack) +

Description

1) Returns the current process data size (data + stack) in pages, or zero when there is no current process or the number of pages couldn't be retrieved.

2) Returns the given process data size (data + stack) in pages, or zero when the process doesn't exist or the number of diff --git a/tapsets/API-proc-mem-rss.html b/tapsets/API-proc-mem-rss.html index 43c7906a..fd04a9f5 100644 --- a/tapsets/API-proc-mem-rss.html +++ b/tapsets/API-proc-mem-rss.html @@ -1,8 +1,8 @@ function::proc_mem_rss

Name

function::proc_mem_rss — Program resident set size in pages -

Synopsis

1) proc_mem_rss:long()
2) proc_mem_rss:long(pid:long)

Arguments

pid

+

Synopsis

1) proc_mem_rss:long()
2) proc_mem_rss:long(pid:long)

Arguments

pid

The pid of process to examine -

Description

1) Returns the resident set size in pages of the current +

Description

1) Returns the resident set size in pages of the current process, or zero when there is no current process or the number of pages couldn't be retrieved.

2) Returns the resident set size in pages of the given process, or zero when the process doesn't exist or the number of diff --git a/tapsets/API-proc-mem-shr.html b/tapsets/API-proc-mem-shr.html index 15e57338..04d052c2 100644 --- a/tapsets/API-proc-mem-shr.html +++ b/tapsets/API-proc-mem-shr.html @@ -1,8 +1,8 @@ function::proc_mem_shr

Name

function::proc_mem_shr — Program shared pages (from shared mappings) -

Synopsis

1) proc_mem_shr:long()
2) proc_mem_shr:long(pid:long)

Arguments

pid

+

Synopsis

1) proc_mem_shr:long()
2) proc_mem_shr:long(pid:long)

Arguments

pid

The pid of process to examine -

Description

1) Returns the shared pages (from shared mappings) of the +

Description

1) Returns the shared pages (from shared mappings) of the current process, or zero when there is no current process or the number of pages couldn't be retrieved.

2) Returns the shared pages (from shared mappings) of the given process, or zero when the process doesn't exist or the diff --git a/tapsets/API-proc-mem-size.html b/tapsets/API-proc-mem-size.html index 3171e9ba..223ce87d 100644 --- a/tapsets/API-proc-mem-size.html +++ b/tapsets/API-proc-mem-size.html @@ -1,8 +1,8 @@ function::proc_mem_size

Name

function::proc_mem_size — Total program virtual memory size in pages -

Synopsis

1) proc_mem_size:long()
2) proc_mem_size:long(pid:long)

Arguments

pid

+

Synopsis

1) proc_mem_size:long()
2) proc_mem_size:long(pid:long)

Arguments

pid

The pid of process to examine -

Description

1) Returns the total virtual memory size in pages of the +

Description

1) Returns the total virtual memory size in pages of the current process, or zero when there is no current process or the number of pages couldn't be retrieved.

2) Returns the total virtual memory size in pages of the given process, or zero when that process doesn't exist or the diff --git a/tapsets/API-proc-mem-string.html b/tapsets/API-proc-mem-string.html index 72ddf38f..33c47f58 100644 --- a/tapsets/API-proc-mem-string.html +++ b/tapsets/API-proc-mem-string.html @@ -1,8 +1,8 @@ function::proc_mem_string

Name

function::proc_mem_string — Human readable string of process memory usage -

Synopsis

1) proc_mem_string:string()
2) proc_mem_string:string(pid:long)

Arguments

pid

+

Synopsis

1) proc_mem_string:string()
2) proc_mem_string:string(pid:long)

Arguments

pid

The pid of process to examine -

Description

1) Returns a human readable string showing the size, rss, +

Description

1) Returns a human readable string showing the size, rss, shr, txt and data of the memory used by the current process. For example“size: 301m, rss: 11m, shr: 8m, txt: 52k, data: 2248k”.

2) Returns a human readable string showing the size, rss, diff --git a/tapsets/API-proc-mem-txt.html b/tapsets/API-proc-mem-txt.html index bb1283d2..e702b6f2 100644 --- a/tapsets/API-proc-mem-txt.html +++ b/tapsets/API-proc-mem-txt.html @@ -1,8 +1,8 @@ function::proc_mem_txt

Name

function::proc_mem_txt — Program text (code) size in pages -

Synopsis

1) proc_mem_txt:long()
2) proc_mem_txt:long(pid:long)

Arguments

pid

+

Synopsis

1) proc_mem_txt:long()
2) proc_mem_txt:long(pid:long)

Arguments

pid

The pid of process to examine -

Description

1) Returns the current process text (code) size in pages, +

Description

1) Returns the current process text (code) size in pages, or zero when there is no current process or the number of pages couldn't be retrieved.

2) Returns the given process text (code) size in pages, or zero when the process doesn't exist or the number of pages diff --git a/tapsets/API-pstrace.html b/tapsets/API-pstrace.html index 958bad0a..7adb32c0 100644 --- a/tapsets/API-pstrace.html +++ b/tapsets/API-pstrace.html @@ -2,9 +2,9 @@ Chain of processes and pids back to init(1)

Synopsis

     pstrace:string(task:long)
-

Arguments

task

+

Arguments

task

Pointer to task struct of process -

Description

+

Description

This function returns a string listing execname and pid for each process starting from task back to the process ancestor that init(1) spawned. diff --git a/tapsets/API-qs-done.html b/tapsets/API-qs-done.html index 3947eec8..913da891 100644 --- a/tapsets/API-qs-done.html +++ b/tapsets/API-qs-done.html @@ -2,9 +2,9 @@ Function to record finishing request

Synopsis

     qs_done(qname:string)
-

Arguments

qname

+

Arguments

qname

the name of the service that finished -

Description

+

Description

This function records that a request originally from the given queue has completed being serviced. diff --git a/tapsets/API-qs-run.html b/tapsets/API-qs-run.html index 94e7ce46..046302de 100644 --- a/tapsets/API-qs-run.html +++ b/tapsets/API-qs-run.html @@ -2,9 +2,9 @@ Function to record being moved from wait queue to being serviced

Synopsis

     qs_run(qname:string)
-

Arguments

qname

+

Arguments

qname

the name of the service being moved and started -

Description

+

Description

This function records that the previous enqueued request was removed from the given wait queue and is now being serviced. diff --git a/tapsets/API-qs-wait.html b/tapsets/API-qs-wait.html index 2049c121..6422e4bc 100644 --- a/tapsets/API-qs-wait.html +++ b/tapsets/API-qs-wait.html @@ -2,9 +2,9 @@ Function to record enqueue requests

Synopsis

     qs_wait(qname:string)
-

Arguments

qname

+

Arguments

qname

the name of the queue requesting enqueue -

Description

+

Description

This function records that a new request was enqueued for the given queue name.

diff --git a/tapsets/API-qsq-blocked.html b/tapsets/API-qsq-blocked.html index 4b32217c..8bec9af8 100644 --- a/tapsets/API-qsq-blocked.html +++ b/tapsets/API-qsq-blocked.html @@ -2,11 +2,11 @@ Returns the time reqest was on the wait queue

Synopsis

     qsq_blocked:long(qname:string,scale:long)
-

Arguments

qname

+

Arguments

qname

queue name

scale

scale variable to take account for interval fraction -

Description

+

Description

This function returns the fraction of elapsed time during which one or more requests were on the wait queue.

diff --git a/tapsets/API-qsq-print.html b/tapsets/API-qsq-print.html index 31981a4e..61f67171 100644 --- a/tapsets/API-qsq-print.html +++ b/tapsets/API-qsq-print.html @@ -2,11 +2,11 @@ Prints a line of statistics for the given queue

Synopsis

     qsq_print(qname:string)
-

Arguments

qname

+

Arguments

qname

queue name -

Description

+

Description

This function prints a line containing the following -

statistics for the given queue

+

statistics for the given queue

the queue name, the average rate of requests per second, the average wait queue length, diff --git a/tapsets/API-qsq-service-time.html b/tapsets/API-qsq-service-time.html index bb848fe0..eacc7c10 100644 --- a/tapsets/API-qsq-service-time.html +++ b/tapsets/API-qsq-service-time.html @@ -2,11 +2,11 @@ Amount of time per request service

Synopsis

     qsq_service_time:long(qname:string,scale:long)
-

Arguments

qname

+

Arguments

qname

queue name

scale

scale variable to take account for interval fraction -

Description

+

Description

This function returns the average time in microseconds required to service a request once it is removed from the wait queue.

diff --git a/tapsets/API-qsq-start.html b/tapsets/API-qsq-start.html index 26b66a66..424ab812 100644 --- a/tapsets/API-qsq-start.html +++ b/tapsets/API-qsq-start.html @@ -2,9 +2,9 @@ Function to reset the stats for a queue

Synopsis

     qsq_start(qname:string)
-

Arguments

qname

+

Arguments

qname

the name of the service that finished -

Description

+

Description

This function resets the statistics counters for the given queue, and restarts tracking from the moment the function was called. This function is also used to create intialize a queue. diff --git a/tapsets/API-qsq-throughput.html b/tapsets/API-qsq-throughput.html index a43432ef..7df80839 100644 --- a/tapsets/API-qsq-throughput.html +++ b/tapsets/API-qsq-throughput.html @@ -2,11 +2,11 @@ Number of requests served per unit time

Synopsis

     qsq_throughput:long(qname:string,scale:long)
-

Arguments

qname

+

Arguments

qname

queue name

scale

scale variable to take account for interval fraction -

Description

+

Description

This function returns the average number or requests served per microsecond.

diff --git a/tapsets/API-qsq-utilization.html b/tapsets/API-qsq-utilization.html index f84e42a5..fe86160b 100644 --- a/tapsets/API-qsq-utilization.html +++ b/tapsets/API-qsq-utilization.html @@ -2,11 +2,11 @@ Fraction of time that any request was being serviced

Synopsis

     qsq_utilization:long(qname:string,scale:long)
-

Arguments

qname

+

Arguments

qname

queue name

scale

scale variable to take account for interval fraction -

Description

+

Description

This function returns the average time in microseconds that at least one request was being serviced.

diff --git a/tapsets/API-qsq-wait-queue-length.html b/tapsets/API-qsq-wait-queue-length.html index a33533b3..2358e391 100644 --- a/tapsets/API-qsq-wait-queue-length.html +++ b/tapsets/API-qsq-wait-queue-length.html @@ -2,10 +2,10 @@ length of wait queue

Synopsis

     qsq_wait_queue_length:long(qname:string,scale:long)
-

Arguments

qname

+

Arguments

qname

queue name

scale

scale variable to take account for interval fraction -

Description

+

Description

This function returns the average length of the wait queue

diff --git a/tapsets/API-qsq-wait-time.html b/tapsets/API-qsq-wait-time.html index 520acf45..caf72311 100644 --- a/tapsets/API-qsq-wait-time.html +++ b/tapsets/API-qsq-wait-time.html @@ -2,11 +2,11 @@ Amount of time in queue + service per request

Synopsis

     qsq_wait_time:long(qname:string,scale:long)
-

Arguments

qname

+

Arguments

qname

queue name

scale

scale variable to take account for interval fraction -

Description

+

Description

This function returns the average time in microseconds that it took for a request to be serviced (qs_wait to qa_done).

diff --git a/tapsets/API-raise.html b/tapsets/API-raise.html index a0ff9348..d4c8454a 100644 --- a/tapsets/API-raise.html +++ b/tapsets/API-raise.html @@ -2,9 +2,9 @@ raise a signal in the current thread

Synopsis

     raise(signo:long)
-

Arguments

signo

+

Arguments

signo

signal number -

Description

+

Description

This function calls the kernel send_sig routine on the current thread, with the given raw unchecked signal number. It may raise an error if send_sig failed. diff --git a/tapsets/API-randint.html b/tapsets/API-randint.html index b9516791..e0bf1188 100644 --- a/tapsets/API-randint.html +++ b/tapsets/API-randint.html @@ -2,6 +2,6 @@ Return a random number between [0,n)

Synopsis

     randint:long(n:long)
-

Arguments

n

+

Arguments

n

Number past upper limit of range, not larger than 2**20.

diff --git a/tapsets/API-read-stopwatch-ms.html b/tapsets/API-read-stopwatch-ms.html index 8dbe660b..62ddc446 100644 --- a/tapsets/API-read-stopwatch-ms.html +++ b/tapsets/API-read-stopwatch-ms.html @@ -2,9 +2,9 @@ Reads the time in milliseconds for a stopwatch

Synopsis

     read_stopwatch_ms:long(name:string)
-

Arguments

name

+

Arguments

name

stopwatch name -

Description

+

Description

Returns time in milliseconds for stopwatch name. Creates stopwatch name if it does not currently exist.

diff --git a/tapsets/API-read-stopwatch-ns.html b/tapsets/API-read-stopwatch-ns.html index c4d417d0..b5cc8f98 100644 --- a/tapsets/API-read-stopwatch-ns.html +++ b/tapsets/API-read-stopwatch-ns.html @@ -2,9 +2,9 @@ Reads the time in nanoseconds for a stopwatch

Synopsis

     read_stopwatch_ns:long(name:string)
-

Arguments

name

+

Arguments

name

stopwatch name -

Description

+

Description

Returns time in nanoseconds for stopwatch name. Creates stopwatch name if it does not currently exist.

diff --git a/tapsets/API-read-stopwatch-s.html b/tapsets/API-read-stopwatch-s.html index b5dcb897..adc02614 100644 --- a/tapsets/API-read-stopwatch-s.html +++ b/tapsets/API-read-stopwatch-s.html @@ -2,9 +2,9 @@ Reads the time in seconds for a stopwatch

Synopsis

     read_stopwatch_s:long(name:string)
-

Arguments

name

+

Arguments

name

stopwatch name -

Description

+

Description

Returns time in seconds for stopwatch name. Creates stopwatch name if it does not currently exist.

diff --git a/tapsets/API-read-stopwatch-us.html b/tapsets/API-read-stopwatch-us.html index 4b647376..a3b7776c 100644 --- a/tapsets/API-read-stopwatch-us.html +++ b/tapsets/API-read-stopwatch-us.html @@ -2,9 +2,9 @@ Reads the time in microseconds for a stopwatch

Synopsis

     read_stopwatch_us:long(name:string)
-

Arguments

name

+

Arguments

name

stopwatch name -

Description

+

Description

Returns time in microseconds for stopwatch name. Creates stopwatch name if it does not currently exist.

diff --git a/tapsets/API-real-mount.html b/tapsets/API-real-mount.html index f62f99c0..91a823ec 100644 --- a/tapsets/API-real-mount.html +++ b/tapsets/API-real-mount.html @@ -2,9 +2,9 @@ get the 'struct mount' pointer

Synopsis

     real_mount:long(vfsmnt:long)
-

Arguments

vfsmnt

+

Arguments

vfsmnt

Pointer to 'struct vfsmount' -

Description

+

Description

Returns the 'struct mount' pointer value for a 'struct vfsmount' diff --git a/tapsets/API-register.html b/tapsets/API-register.html index 0c3d0f39..5d5a9d0c 100644 --- a/tapsets/API-register.html +++ b/tapsets/API-register.html @@ -2,9 +2,9 @@ Return the signed value of the named CPU register

Synopsis

     register:long(name:string)
-

Arguments

name

+

Arguments

name

Name of the register to return -

Description

+

Description

Return the value of the named CPU register, as it was saved when the current probe point was hit. If the register is 32 bits, it is sign-extended to 64 bits. diff --git a/tapsets/API-registers-valid.html b/tapsets/API-registers-valid.html index 3ff63d79..87261a64 100644 --- a/tapsets/API-registers-valid.html +++ b/tapsets/API-registers-valid.html @@ -2,9 +2,9 @@ Determines validity of register and u_register in current context

Synopsis

     registers_valid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns 1 if register and u_register can be used in the current context, or 0 otherwise. For example, registers_valid returns 0 diff --git a/tapsets/API-regparm.html b/tapsets/API-regparm.html index 3a415e83..7955aeed 100644 --- a/tapsets/API-regparm.html +++ b/tapsets/API-regparm.html @@ -2,9 +2,9 @@ Specify regparm value used to compile function

Synopsis

     regparm(n:long)
-

Arguments

n

+

Arguments

n

original regparm value -

Description

+

Description

Call this function with argument n before accessing function arguments using the *_arg function is the function was build with the gcc -mregparm=n option. diff --git a/tapsets/API-remote-id.html b/tapsets/API-remote-id.html index d595ec5c..36f5ffa4 100644 --- a/tapsets/API-remote-id.html +++ b/tapsets/API-remote-id.html @@ -2,9 +2,9 @@ The index of this instance in a remote execution.

Synopsis

     remote_id:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns a number 0..N, which is the unique index of this particular script execution from a swarm of “stap --remote A --remote B ...” runs, and is the same number diff --git a/tapsets/API-remote-uri.html b/tapsets/API-remote-uri.html index c6f42b57..d7b56338 100644 --- a/tapsets/API-remote-uri.html +++ b/tapsets/API-remote-uri.html @@ -2,9 +2,9 @@ The name of this instance in a remote execution.

Synopsis

     remote_uri:string()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the remote host used to invoke this particular script execution from a swarm of “stap --remote” runs. It may not be unique among the swarm. diff --git a/tapsets/API-return-str.html b/tapsets/API-return-str.html index 65fd5def..039f72ed 100644 --- a/tapsets/API-return-str.html +++ b/tapsets/API-return-str.html @@ -2,11 +2,11 @@ Formats the return value as a string

Synopsis

     return_str:string(format:long,ret:long)
-

Arguments

format

+

Arguments

format

Variable to determine return type base value

ret

Return value (typically $return) -

Description

+

Description

This function is used by the syscall tapset, and returns a string. Set format equal to 1 for a decimal, 2 for hex, 3 for octal. diff --git a/tapsets/API-returnstr.html b/tapsets/API-returnstr.html index 7ac8423b..59bdad14 100644 --- a/tapsets/API-returnstr.html +++ b/tapsets/API-returnstr.html @@ -2,9 +2,9 @@ Formats the return value as a string

Synopsis

     returnstr:string(format:long)
-

Arguments

format

+

Arguments

format

Variable to determine return type base value -

Description

+

Description

This function is used by the nd_syscall tapset, and returns a string. Set format equal to 1 for a decimal, 2 for hex, 3 for octal. diff --git a/tapsets/API-returnval.html b/tapsets/API-returnval.html index d00d7a9b..435b6172 100644 --- a/tapsets/API-returnval.html +++ b/tapsets/API-returnval.html @@ -2,9 +2,9 @@ Possible return value of probed function

Synopsis

     returnval:long()
-

Arguments

+

Arguments

None -

Description

+

Description

Return the value of the register in which function values are typically returned. Can be used in probes where $return isn't available. This is only a guess of the actual return value and can be diff --git a/tapsets/API-reverse-path-walk.html b/tapsets/API-reverse-path-walk.html index a36c93f4..caeedea7 100644 --- a/tapsets/API-reverse-path-walk.html +++ b/tapsets/API-reverse-path-walk.html @@ -2,9 +2,9 @@ get the full dirent path

Synopsis

     reverse_path_walk:string(dentry:long)
-

Arguments

dentry

+

Arguments

dentry

Pointer to dentry. -

Description

+

Description

Returns the path name (partial path to mount point). diff --git a/tapsets/API-rlimit-from-str.html b/tapsets/API-rlimit-from-str.html index e3fa3d03..8b8910a7 100644 --- a/tapsets/API-rlimit-from-str.html +++ b/tapsets/API-rlimit-from-str.html @@ -2,9 +2,9 @@ Symbolic string associated with resource limit code

Synopsis

     rlimit_from_str:long(lim_str:string)
-

Arguments

lim_str

+

Arguments

lim_str

The string representation of limit -

Description

+

Description

This function returns the number associated with the given string, such as 0 for the string RLIMIT_CPU, or -1 for an out-of-range value. diff --git a/tapsets/API-s32-arg.html b/tapsets/API-s32-arg.html index 8fc9c54a..2a3eb35c 100644 --- a/tapsets/API-s32-arg.html +++ b/tapsets/API-s32-arg.html @@ -2,9 +2,9 @@ Return function argument as signed 32-bit value

Synopsis

     s32_arg:long(n:long)
-

Arguments

n

+

Arguments

n

index of argument to return -

Description

+

Description

Return the signed 32-bit value of argument n, same as int_arg.

diff --git a/tapsets/API-s64-arg.html b/tapsets/API-s64-arg.html index e0b82ff8..b2e55f3a 100644 --- a/tapsets/API-s64-arg.html +++ b/tapsets/API-s64-arg.html @@ -1,10 +1,10 @@ -function::s64_arg

Name

function::s64_arg — +function::s64_arg

Name

function::s64_arg — Return function argument as signed 64-bit value

Synopsis

     s64_arg:long(n:long)
-

Arguments

n

+

Arguments

n

index of argument to return -

Description

+

Description

Return the signed 64-bit value of argument n, same as longlong_arg. -

+

diff --git a/tapsets/API-sa-flags-str.html b/tapsets/API-sa-flags-str.html index eea40467..66cb7142 100644 --- a/tapsets/API-sa-flags-str.html +++ b/tapsets/API-sa-flags-str.html @@ -2,6 +2,6 @@ Returns the string representation of sa_flags

Synopsis

     sa_flags_str:string(sa_flags:long)
-

Arguments

sa_flags

+

Arguments

sa_flags

the set of flags to convert to string.

diff --git a/tapsets/API-sa-handler-str.html b/tapsets/API-sa-handler-str.html index 9f6d9e1f..a51e5f7e 100644 --- a/tapsets/API-sa-handler-str.html +++ b/tapsets/API-sa-handler-str.html @@ -2,9 +2,9 @@ Returns the string representation of an sa_handler

Synopsis

     sa_handler_str(handler:)
-

Arguments

handler

+

Arguments

handler

the sa_handler to convert to string. -

Description

+

Description

Returns the string representation of an sa_handler. If it is not SIG_DFL, SIG_IGN or SIG_ERR, it will return the address of the handler. diff --git a/tapsets/API-scheduler-balance.html b/tapsets/API-scheduler-balance.html index ea2f0fa1..42a4bbeb 100644 --- a/tapsets/API-scheduler-balance.html +++ b/tapsets/API-scheduler-balance.html @@ -1,7 +1,7 @@ probe::scheduler.balance

Name

probe::scheduler.balance — A cpu attempting to find more work. -

Synopsis

scheduler.balance 

Values

name

+

Synopsis

scheduler.balance 

Values

name

name of the probe point -

Context

+

Context

The cpu looking for more work.

diff --git a/tapsets/API-scheduler-cpu-off.html b/tapsets/API-scheduler-cpu-off.html index f766c050..63058ede 100644 --- a/tapsets/API-scheduler-cpu-off.html +++ b/tapsets/API-scheduler-cpu-off.html @@ -1,13 +1,13 @@ probe::scheduler.cpu_off

Name

probe::scheduler.cpu_off — Process is about to stop running on a cpu -

Synopsis

scheduler.cpu_off 

Values

task_prev

+

Synopsis

scheduler.cpu_off 

Values

idle

+ boolean indicating whether current is the idle process +

task_prev

the process leaving the cpu (same as current)

name

name of the probe point

task_next

the process replacing current -

idle

- boolean indicating whether current is the idle process -

Context

+

Context

The process leaving the cpu.

diff --git a/tapsets/API-scheduler-cpu-on.html b/tapsets/API-scheduler-cpu-on.html index 234f4ff5..b57b4040 100644 --- a/tapsets/API-scheduler-cpu-on.html +++ b/tapsets/API-scheduler-cpu-on.html @@ -1,11 +1,11 @@ probe::scheduler.cpu_on

Name

probe::scheduler.cpu_on — Process is beginning execution on a cpu -

Synopsis

scheduler.cpu_on 

Values

name

+

Synopsis

scheduler.cpu_on 

Values

name

name of the probe point

task_prev

the process that was previously running on this cpu

idle

- boolean indicating whether current is the idle process -

Context

+

Context

The resuming process.

diff --git a/tapsets/API-scheduler-ctxswitch.html b/tapsets/API-scheduler-ctxswitch.html index e1d4fe5a..38c9e7f3 100644 --- a/tapsets/API-scheduler-ctxswitch.html +++ b/tapsets/API-scheduler-ctxswitch.html @@ -1,25 +1,25 @@ probe::scheduler.ctxswitch

Name

probe::scheduler.ctxswitch — A context switch is occuring. -

Synopsis

scheduler.ctxswitch 

Values

prev_task_name

- The name of the process to be switched out -

prev_priority

- The priority of the process to be switched out -

next_pid

- The PID of the process to be switched in -

next_tid

- The TID of the process to be switched in -

nexttsk_state

- the state of the process to be switched in +

Synopsis

scheduler.ctxswitch 

Values

prev_pid

+ The PID of the process to be switched out +

name

+ name of the probe point +

prev_tid

+ The TID of the process to be switched out

prevtsk_state

the state of the process to be switched out +

prev_priority

+ The priority of the process to be switched out

next_task_name

The name of the process to be switched in -

prev_tid

- The TID of the process to be switched out +

nexttsk_state

+ the state of the process to be switched in +

prev_task_name

+ The name of the process to be switched out

next_priority

The priority of the process to be switched in -

prev_pid

- The PID of the process to be switched out -

name

- name of the probe point +

next_pid

+ The PID of the process to be switched in +

next_tid

+ The TID of the process to be switched in

diff --git a/tapsets/API-scheduler-kthread-stop-return.html b/tapsets/API-scheduler-kthread-stop-return.html index 6b80dd19..9497b510 100644 --- a/tapsets/API-scheduler-kthread-stop-return.html +++ b/tapsets/API-scheduler-kthread-stop-return.html @@ -1,7 +1,7 @@ probe::scheduler.kthread_stop.return

Name

probe::scheduler.kthread_stop.return — A kthread is stopped and gets the return value -

Synopsis

scheduler.kthread_stop.return 

Values

name

- name of the probe point -

return_value

+

Synopsis

scheduler.kthread_stop.return 

Values

return_value

return value after stopping the thread +

name

+ name of the probe point

diff --git a/tapsets/API-scheduler-kthread-stop.html b/tapsets/API-scheduler-kthread-stop.html index d60955da..d0de8d43 100644 --- a/tapsets/API-scheduler-kthread-stop.html +++ b/tapsets/API-scheduler-kthread-stop.html @@ -1,6 +1,6 @@ probe::scheduler.kthread_stop

Name

probe::scheduler.kthread_stop — A thread created by kthread_create is being stopped -

Synopsis

scheduler.kthread_stop 

Values

thread_pid

+

Synopsis

scheduler.kthread_stop 

Values

thread_pid

PID of the thread being stopped

thread_priority

priority of the thread diff --git a/tapsets/API-scheduler-migrate.html b/tapsets/API-scheduler-migrate.html index 98b2f71a..3a2934f3 100644 --- a/tapsets/API-scheduler-migrate.html +++ b/tapsets/API-scheduler-migrate.html @@ -1,15 +1,15 @@ probe::scheduler.migrate

Name

probe::scheduler.migrate — Task migrating across cpus -

Synopsis

scheduler.migrate 

Values

cpu_from

- the original cpu -

cpu_to

+

Synopsis

scheduler.migrate 

Values

cpu_to

the destination cpu +

cpu_from

+ the original cpu +

priority

+ priority of the task being migrated +

pid

+ PID of the task being migrated

name

name of the probe point

task

the process that is being migrated -

pid

- PID of the task being migrated -

priority

- priority of the task being migrated

diff --git a/tapsets/API-scheduler-process-exit.html b/tapsets/API-scheduler-process-exit.html index 73a9c61d..9346e09d 100644 --- a/tapsets/API-scheduler-process-exit.html +++ b/tapsets/API-scheduler-process-exit.html @@ -1,9 +1,9 @@ probe::scheduler.process_exit

Name

probe::scheduler.process_exit — Process exiting -

Synopsis

scheduler.process_exit 

Values

name

- name of the probe point -

priority

+

Synopsis

scheduler.process_exit 

Values

priority

priority of the process exiting +

name

+ name of the probe point

pid

PID of the process exiting

diff --git a/tapsets/API-scheduler-process-fork.html b/tapsets/API-scheduler-process-fork.html index 45775a97..04c154d3 100644 --- a/tapsets/API-scheduler-process-fork.html +++ b/tapsets/API-scheduler-process-fork.html @@ -1,9 +1,9 @@ probe::scheduler.process_fork

Name

probe::scheduler.process_fork — Process forked -

Synopsis

scheduler.process_fork 

Values

parent_pid

- PID of the parent process -

name

+

Synopsis

scheduler.process_fork 

Values

name

name of the probe point

child_pid

PID of the child process +

parent_pid

+ PID of the parent process

diff --git a/tapsets/API-scheduler-process-free.html b/tapsets/API-scheduler-process-free.html index 7084dc22..05b081f6 100644 --- a/tapsets/API-scheduler-process-free.html +++ b/tapsets/API-scheduler-process-free.html @@ -1,9 +1,9 @@ probe::scheduler.process_free

Name

probe::scheduler.process_free — Scheduler freeing a data structure for a process -

Synopsis

scheduler.process_free 

Values

pid

+

Synopsis

scheduler.process_free 

Values

name

+ name of the probe point +

pid

PID of the process getting freed

priority

priority of the process getting freed -

name

- name of the probe point

diff --git a/tapsets/API-scheduler-process-wait.html b/tapsets/API-scheduler-process-wait.html index 2f0ac5e2..ad02bc61 100644 --- a/tapsets/API-scheduler-process-wait.html +++ b/tapsets/API-scheduler-process-wait.html @@ -1,7 +1,7 @@ probe::scheduler.process_wait

Name

probe::scheduler.process_wait — Scheduler starting to wait on a process -

Synopsis

scheduler.process_wait 

Values

pid

- PID of the process scheduler is waiting on -

name

+

Synopsis

scheduler.process_wait 

Values

name

name of the probe point +

pid

+ PID of the process scheduler is waiting on

diff --git a/tapsets/API-scheduler-signal-send.html b/tapsets/API-scheduler-signal-send.html index bad5113b..8349a579 100644 --- a/tapsets/API-scheduler-signal-send.html +++ b/tapsets/API-scheduler-signal-send.html @@ -1,9 +1,9 @@ probe::scheduler.signal_send

Name

probe::scheduler.signal_send — Sending a signal -

Synopsis

scheduler.signal_send 

Values

name

- name of the probe point -

signal_number

+

Synopsis

scheduler.signal_send 

Values

signal_number

signal number

pid

pid of the process sending signal +

name

+ name of the probe point

diff --git a/tapsets/API-scheduler-tick.html b/tapsets/API-scheduler-tick.html index b22b793c..4bbe84e8 100644 --- a/tapsets/API-scheduler-tick.html +++ b/tapsets/API-scheduler-tick.html @@ -1,9 +1,9 @@ probe::scheduler.tick

Name

probe::scheduler.tick — Schedulers internal tick, a processes timeslice accounting is updated -

Synopsis

scheduler.tick 

Values

idle

- boolean indicating whether current is the idle process -

name

+

Synopsis

scheduler.tick 

Values

name

name of the probe point -

Context

+

idle

+ boolean indicating whether current is the idle process +

Context

The process whose accounting will be updated.

diff --git a/tapsets/API-scheduler-wait-task.html b/tapsets/API-scheduler-wait-task.html index fc2369b2..0ff4082d 100644 --- a/tapsets/API-scheduler-wait-task.html +++ b/tapsets/API-scheduler-wait-task.html @@ -1,9 +1,9 @@ probe::scheduler.wait_task

Name

probe::scheduler.wait_task — Waiting on a task to unschedule (become inactive) -

Synopsis

scheduler.wait_task 

Values

task_pid

- PID of the task the scheduler is waiting on +

Synopsis

scheduler.wait_task 

Values

task_priority

+ priority of the task

name

name of the probe point -

task_priority

- priority of the task +

task_pid

+ PID of the task the scheduler is waiting on

diff --git a/tapsets/API-scheduler-wakeup-new.html b/tapsets/API-scheduler-wakeup-new.html index 2cc5909a..442ef62d 100644 --- a/tapsets/API-scheduler-wakeup-new.html +++ b/tapsets/API-scheduler-wakeup-new.html @@ -1,15 +1,15 @@ probe::scheduler.wakeup_new

Name

probe::scheduler.wakeup_new — Newly created task is woken up for the first time -

Synopsis

scheduler.wakeup_new 

Values

task_tid

- TID of the new task woken up -

task_pid

- PID of the new task woken up +

Synopsis

scheduler.wakeup_new 

Values

task_cpu

+ cpu of the task woken up

name

name of the probe point -

task_state

- state of the task woken up -

task_cpu

- cpu of the task woken up

task_priority

priority of the new task +

task_state

+ state of the task woken up +

task_tid

+ TID of the new task woken up +

task_pid

+ PID of the new task woken up

diff --git a/tapsets/API-scheduler-wakeup.html b/tapsets/API-scheduler-wakeup.html index e73dc003..ae931dab 100644 --- a/tapsets/API-scheduler-wakeup.html +++ b/tapsets/API-scheduler-wakeup.html @@ -1,15 +1,15 @@ probe::scheduler.wakeup

Name

probe::scheduler.wakeup — Task is woken up -

Synopsis

scheduler.wakeup 

Values

task_cpu

- cpu of the task being woken up +

Synopsis

scheduler.wakeup 

Values

task_pid

+ PID of the task being woken up +

task_tid

+ tid of the task being woken up

task_state

state of the task being woken up

task_priority

priority of the task being woken up -

task_tid

- tid of the task being woken up -

task_pid

- PID of the task being woken up

name

name of the probe point +

task_cpu

+ cpu of the task being woken up

diff --git a/tapsets/API-scsi-iocompleted.html b/tapsets/API-scsi-iocompleted.html index 6ed9f9cf..ec936437 100644 --- a/tapsets/API-scsi-iocompleted.html +++ b/tapsets/API-scsi-iocompleted.html @@ -1,24 +1,24 @@ probe::scsi.iocompleted

Name

probe::scsi.iocompleted — SCSI mid-layer running the completion processing for block device I/O requests -

Synopsis

scsi.iocompleted 

Values

data_direction_str

- Data direction, as a string -

data_direction

- The data_direction specifies whether this command is from/to - the device -

req_addr

- The current struct request pointer, as a number -

goodbytes

- The bytes completed +

Synopsis

scsi.iocompleted 

Values

channel

+ The channel number

device_state_str

The current state of the device, as a string

host_no

The host number -

device_state

- The current state of the device

lun

The lun number -

channel

- The channel number +

data_direction_str

+ Data direction, as a string +

goodbytes

+ The bytes completed +

device_state

+ The current state of the device +

data_direction

+ The data_direction specifies whether this command is from/to + the device

dev_id

The scsi device id +

req_addr

+ The current struct request pointer, as a number

diff --git a/tapsets/API-scsi-iodispatching.html b/tapsets/API-scsi-iodispatching.html index 029f305f..09a1f717 100644 --- a/tapsets/API-scsi-iodispatching.html +++ b/tapsets/API-scsi-iodispatching.html @@ -1,27 +1,27 @@ probe::scsi.iodispatching

Name

probe::scsi.iodispatching — SCSI mid-layer dispatched low-level SCSI command -

Synopsis

scsi.iodispatching 

Values

lun

- The lun number -

device_state

+

Synopsis

scsi.iodispatching 

Values

device_state

The current state of the device -

host_no

- The host number -

dev_id

- The scsi device id -

channel

- The channel number

data_direction_str

Data direction, as a string -

request_buffer

- The request buffer address -

device_state_str

- The current state of the device, as a string

req_addr

The current struct request pointer, as a number

data_direction

The data_direction specifies whether this command is from/to the device 0 (DMA_BIDIRECTIONAL), 1 (DMA_TO_DEVICE), 2 (DMA_FROM_DEVICE), 3 (DMA_NONE) +

dev_id

+ The scsi device id +

request_buffer

+ The request buffer address +

device_state_str

+ The current state of the device, as a string +

channel

+ The channel number +

lun

+ The lun number

request_bufflen

The request buffer length +

host_no

+ The host number

diff --git a/tapsets/API-scsi-iodone.html b/tapsets/API-scsi-iodone.html index 49eac813..99535254 100644 --- a/tapsets/API-scsi-iodone.html +++ b/tapsets/API-scsi-iodone.html @@ -1,23 +1,23 @@ probe::scsi.iodone

Name

probe::scsi.iodone — SCSI command completed by low level driver and enqueued into the done queue. -

Synopsis

scsi.iodone 

Values

lun

+

Synopsis

scsi.iodone 

Values

device_state_str

+ The current state of the device, as a string +

channel

+ The channel number +

lun

The lun number

host_no

The host number

device_state

The current state of the device -

dev_id

- The scsi device id

scsi_timer_pending

1 if a timer is pending on this request -

channel

- The channel number

data_direction_str

Data direction, as a string -

device_state_str

- The current state of the device, as a string

req_addr

The current struct request pointer, as a number +

dev_id

+ The scsi device id

data_direction

The data_direction specifies whether this command is from/to the device. diff --git a/tapsets/API-scsi-ioentry.html b/tapsets/API-scsi-ioentry.html index 712123d1..ab0e7d27 100644 --- a/tapsets/API-scsi-ioentry.html +++ b/tapsets/API-scsi-ioentry.html @@ -1,13 +1,13 @@ probe::scsi.ioentry

Name

probe::scsi.ioentry — Prepares a SCSI mid-layer request -

Synopsis

scsi.ioentry 

Values

device_state_str

- The current state of the device, as a string -

disk_major

+

Synopsis

scsi.ioentry 

Values

disk_major

The major number of the disk (-1 if no information) -

disk_minor

- The minor number of the disk (-1 if no information)

device_state

The current state of the device

req_addr

The current struct request pointer, as a number +

device_state_str

+ The current state of the device, as a string +

disk_minor

+ The minor number of the disk (-1 if no information)

diff --git a/tapsets/API-scsi-ioexecute.html b/tapsets/API-scsi-ioexecute.html index c6a74748..3cb823c3 100644 --- a/tapsets/API-scsi-ioexecute.html +++ b/tapsets/API-scsi-ioexecute.html @@ -1,28 +1,28 @@ probe::scsi.ioexecute

Name

probe::scsi.ioexecute — Create mid-layer SCSI request and wait for the result -

Synopsis

scsi.ioexecute 

Values

device_state_str

- The current state of the device, as a string -

request_bufflen

- The data buffer buffer length +

Synopsis

scsi.ioexecute 

Values

device_state

+ The current state of the device +

data_direction_str

+ Data direction, as a string

data_direction

The data_direction specifies whether this command is from/to the device. -

request_buffer

- The data buffer address -

timeout

- Request timeout in seconds -

data_direction_str

- Data direction, as a string

dev_id

The scsi device id +

request_buffer

+ The data buffer address +

device_state_str

+ The current state of the device, as a string

channel

The channel number

retries

Number of times to retry request

lun

The lun number +

request_bufflen

+ The data buffer buffer length

host_no

The host number -

device_state

- The current state of the device +

timeout

+ Request timeout in seconds

diff --git a/tapsets/API-scsi-set-state.html b/tapsets/API-scsi-set-state.html index 2c4918f5..be8b8b90 100644 --- a/tapsets/API-scsi-set-state.html +++ b/tapsets/API-scsi-set-state.html @@ -1,19 +1,19 @@ probe::scsi.set_state

Name

probe::scsi.set_state — Order SCSI device state change -

Synopsis

scsi.set_state 

Values

old_state

- The current state of the device -

state_str

- The new state of the device, as a string -

state

+

Synopsis

scsi.set_state 

Values

state

The new state of the device -

host_no

- The host number -

lun

- The lun number -

channel

- The channel number

old_state_str

The current state of the device, as a string

dev_id

The scsi device id +

channel

+ The channel number +

state_str

+ The new state of the device, as a string +

lun

+ The lun number +

old_state

+ The current state of the device +

host_no

+ The host number

diff --git a/tapsets/API-set-int-arg.html b/tapsets/API-set-int-arg.html new file mode 100644 index 00000000..c97ca17f --- /dev/null +++ b/tapsets/API-set-int-arg.html @@ -0,0 +1,12 @@ +function::set_int_arg

Name

function::set_int_arg — + Set function argument as signed int +

Synopsis

+    set_int_arg(n:long,v:long)
+

Arguments

n

+ index of argument to return +

v

+ value to set +

Description

+ Set the value of argument n as a signed int + (i.e., a 32-bit integer sign-extended to 64 bits). +

diff --git a/tapsets/API-set-kernel-char.html b/tapsets/API-set-kernel-char.html index b3d6a658..60406535 100644 --- a/tapsets/API-set-kernel-char.html +++ b/tapsets/API-set-kernel-char.html @@ -2,11 +2,11 @@ Writes a char value to kernel memory

Synopsis

     set_kernel_char(addr:long,val:long)
-

Arguments

addr

+

Arguments

addr

The kernel address to write the char to

val

The char which is to be written -

Description

+

Description

Writes the char value to a given kernel memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). diff --git a/tapsets/API-set-kernel-int.html b/tapsets/API-set-kernel-int.html index 732c5104..33a7e396 100644 --- a/tapsets/API-set-kernel-int.html +++ b/tapsets/API-set-kernel-int.html @@ -2,11 +2,11 @@ Writes an int value to kernel memory

Synopsis

     set_kernel_int(addr:long,val:long)
-

Arguments

addr

+

Arguments

addr

The kernel address to write the int to

val

The int which is to be written -

Description

+

Description

Writes the int value to a given kernel memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). diff --git a/tapsets/API-set-kernel-long.html b/tapsets/API-set-kernel-long.html index 1e5fad6e..43a320c9 100644 --- a/tapsets/API-set-kernel-long.html +++ b/tapsets/API-set-kernel-long.html @@ -2,11 +2,11 @@ Writes a long value to kernel memory

Synopsis

     set_kernel_long(addr:long,val:long)
-

Arguments

addr

+

Arguments

addr

The kernel address to write the long to

val

The long which is to be written -

Description

+

Description

Writes the long value to a given kernel memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). diff --git a/tapsets/API-set-kernel-pointer.html b/tapsets/API-set-kernel-pointer.html index df81f68e..f2871101 100644 --- a/tapsets/API-set-kernel-pointer.html +++ b/tapsets/API-set-kernel-pointer.html @@ -2,11 +2,11 @@ Writes a pointer value to kernel memory.

Synopsis

     set_kernel_pointer(addr:long,val:long)
-

Arguments

addr

+

Arguments

addr

The kernel address to write the pointer to

val

The pointer which is to be written -

Description

+

Description

Writes the pointer value to a given kernel memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). diff --git a/tapsets/API-set-kernel-short.html b/tapsets/API-set-kernel-short.html index b4417c23..8b7ba084 100644 --- a/tapsets/API-set-kernel-short.html +++ b/tapsets/API-set-kernel-short.html @@ -2,11 +2,11 @@ Writes a short value to kernel memory

Synopsis

     set_kernel_short(addr:long,val:long)
-

Arguments

addr

+

Arguments

addr

The kernel address to write the short to

val

The short which is to be written -

Description

+

Description

Writes the short value to a given kernel memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). diff --git a/tapsets/API-set-kernel-string-n.html b/tapsets/API-set-kernel-string-n.html index c404e6ca..a53c8438 100644 --- a/tapsets/API-set-kernel-string-n.html +++ b/tapsets/API-set-kernel-string-n.html @@ -2,13 +2,13 @@ Writes a string of given length to kernel memory

Synopsis

     set_kernel_string_n(addr:long,n:long,val:string)
-

Arguments

addr

+

Arguments

addr

The kernel address to write the string to

n

The maximum length of the string

val

The string which is to be written -

Description

+

Description

Writes the given string up to a maximum given length to a given kernel memory address. Reports an error on string copy fault. Requires the use of guru mode (-g). diff --git a/tapsets/API-set-kernel-string.html b/tapsets/API-set-kernel-string.html index a0f1cd6a..34f09021 100644 --- a/tapsets/API-set-kernel-string.html +++ b/tapsets/API-set-kernel-string.html @@ -2,11 +2,11 @@ Writes a string to kernel memory

Synopsis

     set_kernel_string(addr:long,val:string)
-

Arguments

addr

+

Arguments

addr

The kernel address to write the string to

val

The string which is to be written -

Description

+

Description

Writes the given string to a given kernel memory address. Reports an error on string copy fault. Requires the use of guru mode (-g). diff --git a/tapsets/API-set-long-arg.html b/tapsets/API-set-long-arg.html new file mode 100644 index 00000000..995b95ce --- /dev/null +++ b/tapsets/API-set-long-arg.html @@ -0,0 +1,13 @@ +function::set_long_arg

Name

function::set_long_arg — + Set argument as signed long +

Synopsis

+    set_long_arg(n:long,v:long)
+

Arguments

n

+ index of argument to set +

v

+ value to set +

Description

+ Set the value of argument n as a signed long. + On architectures where a long is 32 bits, the value is sign-extended + to 64 bits. +

diff --git a/tapsets/API-set-longlong-arg.html b/tapsets/API-set-longlong-arg.html new file mode 100644 index 00000000..26cd1397 --- /dev/null +++ b/tapsets/API-set-longlong-arg.html @@ -0,0 +1,11 @@ +function::set_longlong_arg

Name

function::set_longlong_arg — + Set function argument as 64-bit value +

Synopsis

+    set_longlong_arg:long(n:long,v:long)
+

Arguments

n

+ index of argument to return +

v

+ value to set +

Description

+ Set the value of argument n as a 64-bit value. +

diff --git a/tapsets/API-set-pointer-arg.html b/tapsets/API-set-pointer-arg.html new file mode 100644 index 00000000..1bf6e54c --- /dev/null +++ b/tapsets/API-set-pointer-arg.html @@ -0,0 +1,12 @@ +function::set_pointer_arg

Name

function::set_pointer_arg — + Set function argument as pointer value +

Synopsis

+    set_pointer_arg(n:long,v:long)
+

Arguments

n

+ index of argument to return +

v

+ value to set +

Description

+ Set the unsigned value of argument n, same as ulong_arg. + Can be used with any type of pointer. +

diff --git a/tapsets/API-set-s32-arg.html b/tapsets/API-set-s32-arg.html new file mode 100644 index 00000000..c6efdecd --- /dev/null +++ b/tapsets/API-set-s32-arg.html @@ -0,0 +1,12 @@ +function::set_s32_arg

Name

function::set_s32_arg — + Set function argument as signed 32-bit value +

Synopsis

+    set_s32_arg(n:long,v:long)
+

Arguments

n

+ index of argument to return +

v

+ value to set +

Description

+ Set the signed 32-bit value of argument n, + same as int_arg. +

diff --git a/tapsets/API-set-s64-arg.html b/tapsets/API-set-s64-arg.html new file mode 100644 index 00000000..004b8b20 --- /dev/null +++ b/tapsets/API-set-s64-arg.html @@ -0,0 +1,12 @@ +function::set_s64_arg

Name

function::set_s64_arg — + Set function argument as signed 64-bit value +

Synopsis

+    set_s64_arg(n:long,v:long)
+

Arguments

n

+ index of argument to return +

v

+ value to set +

Description

+ Set the signed 64-bit value of argument n, + same as longlong_arg. +

diff --git a/tapsets/API-set-u32-arg.html b/tapsets/API-set-u32-arg.html new file mode 100644 index 00000000..c77c2e0b --- /dev/null +++ b/tapsets/API-set-u32-arg.html @@ -0,0 +1,12 @@ +function::set_u32_arg

Name

function::set_u32_arg — + Set function argument as unsigned 32-bit value +

Synopsis

+    set_u32_arg(n:long,v:long)
+

Arguments

n

+ index of argument to return +

v

+ value to set +

Description

+ Set the unsigned 32-bit value of argument n, + same as uint_arg. +

diff --git a/tapsets/API-set-u64-arg.html b/tapsets/API-set-u64-arg.html new file mode 100644 index 00000000..c92674d0 --- /dev/null +++ b/tapsets/API-set-u64-arg.html @@ -0,0 +1,12 @@ +function::set_u64_arg

Name

function::set_u64_arg — + Set function argument as unsigned 64-bit value +

Synopsis

+    set_u64_arg(n:long,v:long)
+

Arguments

n

+ index of argument to return +

v

+ value to set +

Description

+ Set the unsigned 64-bit value of argument n, + same as ulonglong_arg. +

diff --git a/tapsets/API-set-uint-arg.html b/tapsets/API-set-uint-arg.html new file mode 100644 index 00000000..5acf934c --- /dev/null +++ b/tapsets/API-set-uint-arg.html @@ -0,0 +1,12 @@ +function::set_uint_arg

Name

function::set_uint_arg — + Set argument as unsigned int +

Synopsis

+    set_uint_arg:long(n:long,v:long)
+

Arguments

n

+ index of argument to set +

v

+ value to set +

Description

+ Set the value of argument n as an unsigned int + (i.e., a 32-bit integer zero-extended to 64 bits). +

diff --git a/tapsets/API-set-ulong-arg.html b/tapsets/API-set-ulong-arg.html new file mode 100644 index 00000000..58fc423a --- /dev/null +++ b/tapsets/API-set-ulong-arg.html @@ -0,0 +1,13 @@ +function::set_ulong_arg

Name

function::set_ulong_arg — + Set function argument as unsigned long +

Synopsis

+    set_ulong_arg(n:long,v:long)
+

Arguments

n

+ index of argument to return +

v

+ value to set +

Description

+ Set the value of argument n as an unsigned long. + On architectures where a long is 32 bits, the value is zero-extended + to 64 bits. +

diff --git a/tapsets/API-set-ulonglong-arg.html b/tapsets/API-set-ulonglong-arg.html new file mode 100644 index 00000000..283be53e --- /dev/null +++ b/tapsets/API-set-ulonglong-arg.html @@ -0,0 +1,12 @@ +function::set_ulonglong_arg

Name

function::set_ulonglong_arg — + Set function argument as 64-bit value +

Synopsis

+    set_ulonglong_arg(n:long,v:long)
+

Arguments

n

+ index of argument to return +

v

+ value to set +

Description

+ Set the value of argument n as a 64-bit value. + (Same as longlong_arg.) +

diff --git a/tapsets/API-set-user-char.html b/tapsets/API-set-user-char.html index ec423476..123760af 100644 --- a/tapsets/API-set-user-char.html +++ b/tapsets/API-set-user-char.html @@ -2,11 +2,11 @@ Writes a char value to user memory

Synopsis

     set_user_char(addr:long,val:long)
-

Arguments

addr

+

Arguments

addr

The user address to write the char to

val

The char which is to be written -

Description

+

Description

Writes the char value to a given user memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). diff --git a/tapsets/API-set-user-int.html b/tapsets/API-set-user-int.html index a0e1ea02..df622c3e 100644 --- a/tapsets/API-set-user-int.html +++ b/tapsets/API-set-user-int.html @@ -2,11 +2,11 @@ Writes an int value to user memory

Synopsis

     set_user_int(addr:long,val:long)
-

Arguments

addr

+

Arguments

addr

The user address to write the int to

val

The int which is to be written -

Description

+

Description

Writes the int value to a given user memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). diff --git a/tapsets/API-set-user-long.html b/tapsets/API-set-user-long.html index b217dcdb..a34414bc 100644 --- a/tapsets/API-set-user-long.html +++ b/tapsets/API-set-user-long.html @@ -2,11 +2,11 @@ Writes a long value to user memory

Synopsis

     set_user_long(addr:long,val:long)
-

Arguments

addr

+

Arguments

addr

The user address to write the long to

val

The long which is to be written -

Description

+

Description

Writes the long value to a given user memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). diff --git a/tapsets/API-set-user-pointer.html b/tapsets/API-set-user-pointer.html index 64f77c98..a38fafa8 100644 --- a/tapsets/API-set-user-pointer.html +++ b/tapsets/API-set-user-pointer.html @@ -2,11 +2,11 @@ Writes a pointer value to user memory.

Synopsis

     set_user_pointer(addr:long,val:long)
-

Arguments

addr

+

Arguments

addr

The user address to write the pointer to

val

The pointer which is to be written -

Description

+

Description

Writes the pointer value to a given user memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). diff --git a/tapsets/API-set-user-short.html b/tapsets/API-set-user-short.html index d2be3a46..c25914fd 100644 --- a/tapsets/API-set-user-short.html +++ b/tapsets/API-set-user-short.html @@ -2,11 +2,11 @@ Writes a short value to user memory

Synopsis

     set_user_short(addr:long,val:long)
-

Arguments

addr

+

Arguments

addr

The user address to write the short to

val

The short which is to be written -

Description

+

Description

Writes the short value to a given user memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). diff --git a/tapsets/API-set-user-string-arg.html b/tapsets/API-set-user-string-arg.html new file mode 100644 index 00000000..b8bef545 --- /dev/null +++ b/tapsets/API-set-user-string-arg.html @@ -0,0 +1,13 @@ +function::set_user_string_arg

Name

function::set_user_string_arg — + Writes a string to user memory. +

Synopsis

+    set_user_string_arg(addr:long,val:string)
+

Arguments

addr

+ The user address to write the string to +

val

+ The string which is to be written +

Description

+ Writes the given string to a given user memory address. + Reports a warning on string copy fault. + Requires the use of guru mode (-g). +

diff --git a/tapsets/API-set-user-string-n.html b/tapsets/API-set-user-string-n.html index 18347b60..507b5dea 100644 --- a/tapsets/API-set-user-string-n.html +++ b/tapsets/API-set-user-string-n.html @@ -1,15 +1,15 @@ -function::set_user_string_n

Name

function::set_user_string_n — +function::set_user_string_n

Name

function::set_user_string_n — Writes a string of given length to user memory

Synopsis

     set_user_string_n(addr:long,n:long,val:string)
-

Arguments

addr

+

Arguments

addr

The user address to write the string to

n

The maximum length of the string

val

The string which is to be written -

Description

+

Description

Writes the given string up to a maximum given length to a given user memory address. Reports an error on string copy fault. Requires the use of guru mode (-g). -

+

diff --git a/tapsets/API-set-user-string.html b/tapsets/API-set-user-string.html index 68acf8c9..41c55fe8 100644 --- a/tapsets/API-set-user-string.html +++ b/tapsets/API-set-user-string.html @@ -1,13 +1,13 @@ -function::set_user_string

Name

function::set_user_string — +function::set_user_string

Name

function::set_user_string — Writes a string to user memory

Synopsis

     set_user_string(addr:long,val:string)
-

Arguments

addr

+

Arguments

addr

The user address to write the string to

val

The string which is to be written -

Description

+

Description

Writes the given string to a given user memory address. Reports an error when writing to the given address fails. Requires the use of guru mode (-g). -

+

diff --git a/tapsets/API-sid.html b/tapsets/API-sid.html index daaffaed..ca65a93d 100644 --- a/tapsets/API-sid.html +++ b/tapsets/API-sid.html @@ -1,11 +1,11 @@ -function::sid

Name

function::sid — +function::sid

Name

function::sid — Returns the session ID of the current process

Synopsis

     sid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

The session ID of a process is the process group ID of the session leader. Session ID is stored in the signal_struct since Kernel 2.6.0. -

+

diff --git a/tapsets/API-signal-check-ignored-return.html b/tapsets/API-signal-check-ignored-return.html index 5c43dcfd..77a04e1a 100644 --- a/tapsets/API-signal-check-ignored-return.html +++ b/tapsets/API-signal-check-ignored-return.html @@ -1,6 +1,6 @@ probe::signal.check_ignored.return

Name

probe::signal.check_ignored.return — Check to see signal is ignored completed -

Synopsis

signal.check_ignored.return 

Values

name

+

Synopsis

signal.check_ignored.return 

Values

name

Name of the probe point

retstr

Return value as a string diff --git a/tapsets/API-signal-check-ignored.html b/tapsets/API-signal-check-ignored.html index 978c347e..fadce6fc 100644 --- a/tapsets/API-signal-check-ignored.html +++ b/tapsets/API-signal-check-ignored.html @@ -1,11 +1,11 @@ probe::signal.check_ignored

Name

probe::signal.check_ignored — Checking to see signal is ignored -

Synopsis

signal.check_ignored 

Values

sig_name

- A string representation of the signal +

Synopsis

signal.check_ignored 

Values

sig

+ The number of the signal

sig_pid

The PID of the process receiving the signal -

sig

- The number of the signal

pid_name

Name of the process receiving the signal +

sig_name

+ A string representation of the signal

diff --git a/tapsets/API-signal-checkperm-return.html b/tapsets/API-signal-checkperm-return.html index b031b386..d782f96b 100644 --- a/tapsets/API-signal-checkperm-return.html +++ b/tapsets/API-signal-checkperm-return.html @@ -1,6 +1,6 @@ probe::signal.checkperm.return

Name

probe::signal.checkperm.return — Check performed on a sent signal completed -

Synopsis

signal.checkperm.return 

Values

name

+

Synopsis

signal.checkperm.return 

Values

name

Name of the probe point

retstr

Return value as a string diff --git a/tapsets/API-signal-checkperm.html b/tapsets/API-signal-checkperm.html index 6902bdf3..07cb0e93 100644 --- a/tapsets/API-signal-checkperm.html +++ b/tapsets/API-signal-checkperm.html @@ -1,19 +1,19 @@ probe::signal.checkperm

Name

probe::signal.checkperm — Check being performed on a sent signal -

Synopsis

signal.checkperm 

Values

sig_name

+

Synopsis

signal.checkperm 

Values

sig_pid

+ The PID of the process receiving the signal +

task

+ A task handle to the signal recipient +

sig_name

A string representation of the signal -

si_code

- Indicates the signal type

sinfo

The address of the siginfo structure -

task

- A task handle to the signal recipient

name

Name of the probe point +

si_code

+ Indicates the signal type

pid_name

Name of the process receiving the signal -

sig_pid

- The PID of the process receiving the signal

sig

The number of the signal

diff --git a/tapsets/API-signal-do-action-return.html b/tapsets/API-signal-do-action-return.html index 7505b072..e6694883 100644 --- a/tapsets/API-signal-do-action-return.html +++ b/tapsets/API-signal-do-action-return.html @@ -1,7 +1,7 @@ probe::signal.do_action.return

Name

probe::signal.do_action.return — Examining or changing a signal action completed -

Synopsis

signal.do_action.return 

Values

name

- Name of the probe point -

retstr

+

Synopsis

signal.do_action.return 

Values

retstr

Return value as a string +

name

+ Name of the probe point

diff --git a/tapsets/API-signal-do-action.html b/tapsets/API-signal-do-action.html index 22b708e0..104c9b98 100644 --- a/tapsets/API-signal-do-action.html +++ b/tapsets/API-signal-do-action.html @@ -1,19 +1,19 @@ probe::signal.do_action

Name

probe::signal.do_action — Examining or changing a signal action -

Synopsis

signal.do_action 

Values

sig

- The signal to be examined/changed -

name

- Name of the probe point +

Synopsis

signal.do_action 

Values

sa_mask

+ The new mask of the signal +

sig_name

+ A string representation of the signal

oldsigact_addr

The address of the old sigaction struct associated with the signal +

name

+ Name of the probe point

sa_handler

The new handler of the signal -

sig_name

- A string representation of the signal +

sig

+ The signal to be examined/changed

sigact_addr

The address of the new sigaction struct associated with the signal -

sa_mask

- The new mask of the signal

diff --git a/tapsets/API-signal-flush.html b/tapsets/API-signal-flush.html index e72dad91..1922eb71 100644 --- a/tapsets/API-signal-flush.html +++ b/tapsets/API-signal-flush.html @@ -1,10 +1,10 @@ probe::signal.flush

Name

probe::signal.flush — Flushing all pending signals for a task -

Synopsis

signal.flush 

Values

name

- Name of the probe point -

pid_name

+

Synopsis

signal.flush 

Values

pid_name

The name of the process associated with the task performing the flush +

name

+ Name of the probe point

task

The task handler of the process performing the flush

sig_pid

diff --git a/tapsets/API-signal-force-segv-return.html b/tapsets/API-signal-force-segv-return.html index f51c07a7..3adb698a 100644 --- a/tapsets/API-signal-force-segv-return.html +++ b/tapsets/API-signal-force-segv-return.html @@ -1,7 +1,7 @@ probe::signal.force_segv.return

Name

probe::signal.force_segv.return — Forcing send of SIGSEGV complete -

Synopsis

signal.force_segv.return 

Values

name

- Name of the probe point -

retstr

+

Synopsis

signal.force_segv.return 

Values

retstr

Return value as a string +

name

+ Name of the probe point

diff --git a/tapsets/API-signal-force-segv.html b/tapsets/API-signal-force-segv.html index 911f2709..5c27c5d2 100644 --- a/tapsets/API-signal-force-segv.html +++ b/tapsets/API-signal-force-segv.html @@ -1,13 +1,13 @@ probe::signal.force_segv

Name

probe::signal.force_segv — Forcing send of SIGSEGV -

Synopsis

signal.force_segv 

Values

sig_name

- A string representation of the signal -

name

- Name of the probe point +

Synopsis

signal.force_segv 

Values

sig

+ The number of the signal

pid_name

Name of the process receiving the signal +

name

+ Name of the probe point +

sig_name

+ A string representation of the signal

sig_pid

The PID of the process receiving the signal -

sig

- The number of the signal

diff --git a/tapsets/API-signal-handle-return.html b/tapsets/API-signal-handle-return.html index 4bcc0534..6437cbd3 100644 --- a/tapsets/API-signal-handle-return.html +++ b/tapsets/API-signal-handle-return.html @@ -1,9 +1,9 @@ probe::signal.handle.return

Name

probe::signal.handle.return — Signal handler invocation completed -

Synopsis

signal.handle.return 

Values

retstr

+

Synopsis

signal.handle.return 

Values

retstr

Return value as a string

name

Name of the probe point -

Description

+

Description

(deprecated in SystemTap 2.1)

diff --git a/tapsets/API-signal-handle.html b/tapsets/API-signal-handle.html index 9871e7e2..b0a9e208 100644 --- a/tapsets/API-signal-handle.html +++ b/tapsets/API-signal-handle.html @@ -1,24 +1,24 @@ probe::signal.handle

Name

probe::signal.handle — Signal handler being invoked -

Synopsis

signal.handle 

Values

sig_name

- A string representation of the signal +

Synopsis

signal.handle 

Values

sig_mode

+ Indicates whether the signal was a user-mode or kernel-mode signal

sig

The signal number that invoked the signal handler

regs

The address of the kernel-mode stack area (deprecated in SystemTap 2.1) -

sig_mode

- Indicates whether the signal was a user-mode or kernel-mode signal

ka_addr

The address of the k_sigaction table associated with the signal -

sig_code

- The si_code value of the siginfo signal -

sinfo

- The address of the siginfo table

oldset_addr

The address of the bitmask array of blocked signals (deprecated in SystemTap 2.1)

name

Name of the probe point +

sig_name

+ A string representation of the signal +

sig_code

+ The si_code value of the siginfo signal +

sinfo

+ The address of the siginfo table

diff --git a/tapsets/API-signal-pending-return.html b/tapsets/API-signal-pending-return.html index aa7b8f43..3b9cda66 100644 --- a/tapsets/API-signal-pending-return.html +++ b/tapsets/API-signal-pending-return.html @@ -1,6 +1,6 @@ probe::signal.pending.return

Name

probe::signal.pending.return — Examination of pending signal completed -

Synopsis

signal.pending.return 

Values

name

+

Synopsis

signal.pending.return 

Values

name

Name of the probe point

retstr

Return value as a string diff --git a/tapsets/API-signal-pending.html b/tapsets/API-signal-pending.html index cd2eeea6..691d820a 100644 --- a/tapsets/API-signal-pending.html +++ b/tapsets/API-signal-pending.html @@ -1,13 +1,13 @@ probe::signal.pending

Name

probe::signal.pending — Examining pending signal -

Synopsis

signal.pending 

Values

name

- Name of the probe point -

sigset_add

+

Synopsis

signal.pending 

Values

sigset_add

The address of the user-space signal set (sigset_t)

sigset_size

The size of the user-space signal set -

Description

+

name

+ Name of the probe point +

Description

This probe is used to examine a set of signals pending for delivery to a specific thread. This normally occurs when the do_sigpending kernel function is executed. diff --git a/tapsets/API-signal-procmask-return.html b/tapsets/API-signal-procmask-return.html index 0f917afb..4f39ce2b 100644 --- a/tapsets/API-signal-procmask-return.html +++ b/tapsets/API-signal-procmask-return.html @@ -1,7 +1,7 @@ probe::signal.procmask.return

Name

probe::signal.procmask.return — Examining or changing blocked signals completed -

Synopsis

signal.procmask.return 

Values

retstr

- Return value as a string -

name

+

Synopsis

signal.procmask.return 

Values

name

Name of the probe point +

retstr

+ Return value as a string

diff --git a/tapsets/API-signal-procmask.html b/tapsets/API-signal-procmask.html index 44284510..49913dc2 100644 --- a/tapsets/API-signal-procmask.html +++ b/tapsets/API-signal-procmask.html @@ -1,19 +1,19 @@ probe::signal.procmask

Name

probe::signal.procmask — Examining or changing blocked signals -

Synopsis

signal.procmask 

Values

name

- Name of the probe point -

sigset

- The actual value to be set for sigset_t - (correct?) +

Synopsis

signal.procmask 

Values

sigset_addr

+ The address of the signal set (sigset_t) + to be implemented

how

Indicates how to change the blocked signals; possible values are SIG_BLOCK=0 (for blocking signals), SIG_UNBLOCK=1 (for unblocking signals), and SIG_SETMASK=2 for setting the signal mask. +

sigset

+ The actual value to be set for sigset_t + (correct?)

oldsigset_addr

The old address of the signal set (sigset_t) -

sigset_addr

- The address of the signal set (sigset_t) - to be implemented +

name

+ Name of the probe point

diff --git a/tapsets/API-signal-send-return.html b/tapsets/API-signal-send-return.html index 7b720f70..0726e640 100644 --- a/tapsets/API-signal-send-return.html +++ b/tapsets/API-signal-send-return.html @@ -1,16 +1,16 @@ probe::signal.send.return

Name

probe::signal.send.return — Signal being sent to a process completed (deprecated in SystemTap 2.1) -

Synopsis

signal.send.return 

Values

send2queue

- Indicates whether the sent signal was sent to an existing sigqueue +

Synopsis

signal.send.return 

Values

name

+ The name of the function used to send out the signal

shared

Indicates whether the sent signal is shared by the thread group. +

send2queue

+ Indicates whether the sent signal was sent to an existing sigqueue

retstr

The return value to either __group_send_sig_info, specific_send_sig_info, or send_sigqueue -

name

- The name of the function used to send out the signal -

Context

+

Context

The signal's sender. (correct?) -

Description

+

Description

Possible __group_send_sig_info and specific_send_sig_info return values are as follows;

diff --git a/tapsets/API-signal-send-sig-queue-return.html b/tapsets/API-signal-send-sig-queue-return.html index 57d4ff9d..6e855d5e 100644 --- a/tapsets/API-signal-send-sig-queue-return.html +++ b/tapsets/API-signal-send-sig-queue-return.html @@ -1,7 +1,7 @@ probe::signal.send_sig_queue.return

Name

probe::signal.send_sig_queue.return — Queuing a signal to a process completed -

Synopsis

signal.send_sig_queue.return 

Values

name

- Name of the probe point -

retstr

+

Synopsis

signal.send_sig_queue.return 

Values

retstr

Return value as a string +

name

+ Name of the probe point

diff --git a/tapsets/API-signal-send-sig-queue.html b/tapsets/API-signal-send-sig-queue.html index 601f0dc9..ec1238e3 100644 --- a/tapsets/API-signal-send-sig-queue.html +++ b/tapsets/API-signal-send-sig-queue.html @@ -1,15 +1,15 @@ probe::signal.send_sig_queue

Name

probe::signal.send_sig_queue — Queuing a signal to a process -

Synopsis

signal.send_sig_queue 

Values

sig_name

+

Synopsis

signal.send_sig_queue 

Values

sig_name

A string representation of the signal -

sig

- The queued signal -

sig_pid

- The PID of the process to which the signal is queued

sigqueue_addr

The address of the signal queue -

name

- Name of the probe point

pid_name

Name of the process to which the signal is queued +

name

+ Name of the probe point +

sig_pid

+ The PID of the process to which the signal is queued +

sig

+ The queued signal

diff --git a/tapsets/API-signal-send.html b/tapsets/API-signal-send.html index 0c92226d..3eb915dd 100644 --- a/tapsets/API-signal-send.html +++ b/tapsets/API-signal-send.html @@ -1,26 +1,26 @@ probe::signal.send

Name

probe::signal.send — Signal being sent to a process -

Synopsis

signal.send 

Values

sig_name

- A string representation of the signal -

send2queue

- Indicates whether the signal is sent to an existing - sigqueue (deprecated in SystemTap 2.1) -

si_code

- Indicates the signal type +

Synopsis

signal.send 

Values

sig

+ The number of the signal

sinfo

The address of siginfo struct +

sig_name

+ A string representation of the signal

pid_name

The name of the signal recipient

name

The name of the function used to send out the signal -

task

- A task handle to the signal recipient

shared

Indicates whether the signal is shared by the thread group +

si_code

+ Indicates the signal type +

send2queue

+ Indicates whether the signal is sent to an existing + sigqueue (deprecated in SystemTap 2.1) +

task

+ A task handle to the signal recipient

sig_pid

The PID of the process receiving the signal -

sig

- The number of the signal -

Context

+

Context

The signal's sender.

diff --git a/tapsets/API-signal-str.html b/tapsets/API-signal-str.html index 1b4ad9c8..eadcf3f1 100644 --- a/tapsets/API-signal-str.html +++ b/tapsets/API-signal-str.html @@ -2,6 +2,6 @@ Returns the string representation of a signal number

Synopsis

     signal_str(num:)
-

Arguments

num

+

Arguments

num

the signal number to convert to string.

diff --git a/tapsets/API-signal-sys-tgkill-return.html b/tapsets/API-signal-sys-tgkill-return.html index 3a39679f..c23fd425 100644 --- a/tapsets/API-signal-sys-tgkill-return.html +++ b/tapsets/API-signal-sys-tgkill-return.html @@ -1,6 +1,6 @@ probe::signal.sys_tgkill.return

Name

probe::signal.sys_tgkill.return — Sending kill signal to a thread group completed -

Synopsis

signal.sys_tgkill.return 

Values

name

+

Synopsis

signal.sys_tgkill.return 

Values

name

Name of the probe point

retstr

The return value to either __group_send_sig_info, diff --git a/tapsets/API-signal-sys-tgkill.html b/tapsets/API-signal-sys-tgkill.html index 72f85c47..b8aaba2a 100644 --- a/tapsets/API-signal-sys-tgkill.html +++ b/tapsets/API-signal-sys-tgkill.html @@ -1,20 +1,20 @@ probe::signal.sys_tgkill

Name

probe::signal.sys_tgkill — Sending kill signal to a thread group -

Synopsis

signal.sys_tgkill 

Values

name

+

Synopsis

signal.sys_tgkill 

Values

sig_name

+ A string representation of the signal +

tgid

+ The thread group ID of the thread receiving the kill signal +

name

Name of the probe point -

task

- A task handle to the signal recipient

pid_name

The name of the signal recipient -

sig

- The specific kill signal sent to the process

sig_pid

The PID of the thread receiving the kill signal -

sig_name

- A string representation of the signal -

tgid

- The thread group ID of the thread receiving the kill signal -

Description

+

task

+ A task handle to the signal recipient +

sig

+ The specific kill signal sent to the process +

Description

The tgkill call is similar to tkill, except that it also allows the caller to specify the thread group ID of the thread to be signalled. This protects against TID reuse. diff --git a/tapsets/API-signal-sys-tkill.html b/tapsets/API-signal-sys-tkill.html index e90c65f7..baa94219 100644 --- a/tapsets/API-signal-sys-tkill.html +++ b/tapsets/API-signal-sys-tkill.html @@ -1,18 +1,18 @@ probe::signal.sys_tkill

Name

probe::signal.sys_tkill — Sending a kill signal to a thread -

Synopsis

signal.sys_tkill 

Values

sig

+

Synopsis

signal.sys_tkill 

Values

sig

The specific signal sent to the process -

sig_pid

- The PID of the process receiving the kill signal -

task

- A task handle to the signal recipient

name

Name of the probe point

pid_name

The name of the signal recipient

sig_name

A string representation of the signal -

Description

+

task

+ A task handle to the signal recipient +

sig_pid

+ The PID of the process receiving the kill signal +

Description

The tkill call is analogous to kill(2), except that it also allows a process within a specific thread group to be targeted. Such processes are targeted through their unique diff --git a/tapsets/API-signal-syskill-return.html b/tapsets/API-signal-syskill-return.html index 06bf8688..38375b0b 100644 --- a/tapsets/API-signal-syskill-return.html +++ b/tapsets/API-signal-syskill-return.html @@ -1,5 +1,5 @@ probe::signal.syskill.return

Name

probe::signal.syskill.return — Sending kill signal completed -

Synopsis

signal.syskill.return 

Values

+

Synopsis

signal.syskill.return 

Values

None

diff --git a/tapsets/API-signal-syskill.html b/tapsets/API-signal-syskill.html index 00e1f5c7..53715b5b 100644 --- a/tapsets/API-signal-syskill.html +++ b/tapsets/API-signal-syskill.html @@ -1,15 +1,15 @@ probe::signal.syskill

Name

probe::signal.syskill — Sending kill signal to a process -

Synopsis

signal.syskill 

Values

sig

+

Synopsis

signal.syskill 

Values

sig

The specific signal sent to the process -

sig_pid

- The PID of the process receiving the signal +

sig_name

+ A string representation of the signal

pid_name

The name of the signal recipient -

task

- A task handle to the signal recipient

name

Name of the probe point -

sig_name

- A string representation of the signal +

sig_pid

+ The PID of the process receiving the signal +

task

+ A task handle to the signal recipient

diff --git a/tapsets/API-signal-systkill-return.html b/tapsets/API-signal-systkill-return.html index bfc8f227..19a72546 100644 --- a/tapsets/API-signal-systkill-return.html +++ b/tapsets/API-signal-systkill-return.html @@ -1,6 +1,6 @@ probe::signal.systkill.return

Name

probe::signal.systkill.return — Sending kill signal to a thread completed -

Synopsis

signal.systkill.return 

Values

retstr

+

Synopsis

signal.systkill.return 

Values

retstr

The return value to either __group_send_sig_info,

name

Name of the probe point diff --git a/tapsets/API-signal-wakeup.html b/tapsets/API-signal-wakeup.html index ba0fae10..9bf2fb95 100644 --- a/tapsets/API-signal-wakeup.html +++ b/tapsets/API-signal-wakeup.html @@ -1,15 +1,15 @@ probe::signal.wakeup

Name

probe::signal.wakeup — Sleeping process being wakened for signal -

Synopsis

signal.wakeup 

Values

pid_name

- Name of the process to wake -

resume

- Indicates whether to wake up a task in a - STOPPED or TRACED state -

state_mask

+

Synopsis

signal.wakeup 

Values

state_mask

A string representation indicating the mask of task states to wake. Possible values are TASK_INTERRUPTIBLE, TASK_STOPPED, TASK_TRACED, TASK_WAKEKILL, and TASK_INTERRUPTIBLE. +

resume

+ Indicates whether to wake up a task in a + STOPPED or TRACED state +

pid_name

+ Name of the process to wake

sig_pid

The PID of the process to wake

diff --git a/tapsets/API-sigset-mask-str.html b/tapsets/API-sigset-mask-str.html index 2354cc85..52d8ccd9 100644 --- a/tapsets/API-sigset-mask-str.html +++ b/tapsets/API-sigset-mask-str.html @@ -2,6 +2,6 @@ Returns the string representation of a sigset

Synopsis

     sigset_mask_str:string(mask:long)
-

Arguments

mask

+

Arguments

mask

the sigset to convert to string.

diff --git a/tapsets/API-sock-fam-num2str.html b/tapsets/API-sock-fam-num2str.html index 28960d0e..8515b5ce 100644 --- a/tapsets/API-sock-fam-num2str.html +++ b/tapsets/API-sock-fam-num2str.html @@ -2,6 +2,6 @@ Given a protocol family number, return a string representation

Synopsis

     sock_fam_num2str:string(family:long)
-

Arguments

family

+

Arguments

family

The family number

diff --git a/tapsets/API-sock-fam-str2num.html b/tapsets/API-sock-fam-str2num.html index 9934b1e3..db580d68 100644 --- a/tapsets/API-sock-fam-str2num.html +++ b/tapsets/API-sock-fam-str2num.html @@ -2,6 +2,6 @@ Given a protocol family name (string), return the corresponding protocol family number

Synopsis

     sock_fam_str2num:long(family:string)
-

Arguments

family

+

Arguments

family

The family name

diff --git a/tapsets/API-sock-prot-num2str.html b/tapsets/API-sock-prot-num2str.html index 5a946978..3443141b 100644 --- a/tapsets/API-sock-prot-num2str.html +++ b/tapsets/API-sock-prot-num2str.html @@ -2,6 +2,6 @@ Given a protocol number, return a string representation

Synopsis

     sock_prot_num2str:string(proto:long)
-

Arguments

proto

+

Arguments

proto

The protocol number

diff --git a/tapsets/API-sock-prot-str2num.html b/tapsets/API-sock-prot-str2num.html index 063d7481..539163a2 100644 --- a/tapsets/API-sock-prot-str2num.html +++ b/tapsets/API-sock-prot-str2num.html @@ -2,6 +2,6 @@ Given a protocol name (string), return the corresponding protocol number

Synopsis

     sock_prot_str2num:long(proto:string)
-

Arguments

proto

+

Arguments

proto

The protocol name

diff --git a/tapsets/API-sock-state-num2str.html b/tapsets/API-sock-state-num2str.html index 892bcfd6..c5d03f7d 100644 --- a/tapsets/API-sock-state-num2str.html +++ b/tapsets/API-sock-state-num2str.html @@ -2,6 +2,6 @@ Given a socket state number, return a string representation

Synopsis

     sock_state_num2str:string(state:long)
-

Arguments

state

+

Arguments

state

The state number

diff --git a/tapsets/API-sock-state-str2num.html b/tapsets/API-sock-state-str2num.html index 34853059..3ade9587 100644 --- a/tapsets/API-sock-state-str2num.html +++ b/tapsets/API-sock-state-str2num.html @@ -2,6 +2,6 @@ Given a socket state string, return the corresponding state number

Synopsis

     sock_state_str2num:long(state:string)
-

Arguments

state

+

Arguments

state

The state name

diff --git a/tapsets/API-socket-aio-read-return.html b/tapsets/API-socket-aio-read-return.html index 9040e1fd..b2ef9a23 100644 --- a/tapsets/API-socket-aio-read-return.html +++ b/tapsets/API-socket-aio-read-return.html @@ -1,24 +1,24 @@ probe::socket.aio_read.return

Name

probe::socket.aio_read.return — Conclusion of message received via sock_aio_read -

Synopsis

socket.aio_read.return 

Values

type

- Socket type value -

family

- Protocol family value -

flags

- Socket flags value -

success

- Was receive successful? (1 = yes, 0 = no) -

protocol

+

Synopsis

socket.aio_read.return 

Values

protocol

Protocol value

size

Size of message received (in bytes) or error code if success = 0 -

state

- Socket state value

name

Name of this probe -

Context

+

family

+ Protocol family value +

state

+ Socket state value +

success

+ Was receive successful? (1 = yes, 0 = no) +

type

+ Socket type value +

flags

+ Socket flags value +

Context

The message receiver. -

Description

+

Description

Fires at the conclusion of receiving a message on a socket via the sock_aio_read function

diff --git a/tapsets/API-socket-aio-read.html b/tapsets/API-socket-aio-read.html index 32738176..fcb6d79f 100644 --- a/tapsets/API-socket-aio-read.html +++ b/tapsets/API-socket-aio-read.html @@ -1,22 +1,22 @@ probe::socket.aio_read

Name

probe::socket.aio_read — Receiving message via sock_aio_read -

Synopsis

socket.aio_read 

Values

flags

- Socket flags value -

protocol

- Protocol value -

type

+

Synopsis

socket.aio_read 

Values

type

Socket type value -

family

- Protocol family value +

flags

+ Socket flags value

state

Socket state value -

name

- Name of this probe

size

Message size in bytes -

Context

+

family

+ Protocol family value +

name

+ Name of this probe +

protocol

+ Protocol value +

Context

The message sender -

Description

+

Description

Fires at the beginning of receiving a message on a socket via the sock_aio_read function

diff --git a/tapsets/API-socket-aio-write-return.html b/tapsets/API-socket-aio-write-return.html index 87f4745d..92e8ca32 100644 --- a/tapsets/API-socket-aio-write-return.html +++ b/tapsets/API-socket-aio-write-return.html @@ -1,24 +1,24 @@ probe::socket.aio_write.return

Name

probe::socket.aio_write.return — Conclusion of message send via sock_aio_write -

Synopsis

socket.aio_write.return 

Values

name

+

Synopsis

socket.aio_write.return 

Values

family

+ Protocol family value +

name

Name of this probe -

state

- Socket state value

size

Size of message received (in bytes) or error code if success = 0 -

success

- Was receive successful? (1 = yes, 0 = no)

protocol

Protocol value

flags

Socket flags value -

family

- Protocol family value

type

Socket type value -

Context

+

success

+ Was receive successful? (1 = yes, 0 = no) +

state

+ Socket state value +

Context

The message receiver. -

Description

+

Description

Fires at the conclusion of sending a message on a socket via the sock_aio_write function

diff --git a/tapsets/API-socket-aio-write.html b/tapsets/API-socket-aio-write.html index 8afe0a1a..359fb19a 100644 --- a/tapsets/API-socket-aio-write.html +++ b/tapsets/API-socket-aio-write.html @@ -1,22 +1,22 @@ probe::socket.aio_write

Name

probe::socket.aio_write — Message send via sock_aio_write -

Synopsis

socket.aio_write 

Values

state

- Socket state value +

Synopsis

socket.aio_write 

Values

family

+ Protocol family value

name

Name of this probe

size

Message size in bytes -

flags

- Socket flags value

protocol

Protocol value +

flags

+ Socket flags value

type

Socket type value -

family

- Protocol family value -

Context

+

state

+ Socket state value +

Context

The message sender -

Description

+

Description

Fires at the beginning of sending a message on a socket via the sock_aio_write function

diff --git a/tapsets/API-socket-close-return.html b/tapsets/API-socket-close-return.html index 9ee5583c..0ff997bf 100644 --- a/tapsets/API-socket-close-return.html +++ b/tapsets/API-socket-close-return.html @@ -1,9 +1,9 @@ probe::socket.close.return

Name

probe::socket.close.return — Return from closing a socket -

Synopsis

socket.close.return 

Values

name

+

Synopsis

socket.close.return 

Values

name

Name of this probe -

Context

+

Context

The requester (user process or kernel) -

Description

+

Description

Fires at the conclusion of closing a socket.

diff --git a/tapsets/API-socket-close.html b/tapsets/API-socket-close.html index 9f22182a..d3e57d56 100644 --- a/tapsets/API-socket-close.html +++ b/tapsets/API-socket-close.html @@ -1,19 +1,19 @@ probe::socket.close

Name

probe::socket.close — Close a socket -

Synopsis

socket.close 

Values

name

- Name of this probe -

state

+

Synopsis

socket.close 

Values

state

Socket state value -

family

- Protocol family value +

flags

+ Socket flags value

type

Socket type value

protocol

Protocol value -

flags

- Socket flags value -

Context

+

name

+ Name of this probe +

family

+ Protocol family value +

Context

The requester (user process or kernel) -

Description

+

Description

Fires at the beginning of closing a socket.

diff --git a/tapsets/API-socket-create-return.html b/tapsets/API-socket-create-return.html index cd6f11aa..53bc7201 100644 --- a/tapsets/API-socket-create-return.html +++ b/tapsets/API-socket-create-return.html @@ -1,21 +1,21 @@ probe::socket.create.return

Name

probe::socket.create.return — Return from Creation of a socket -

Synopsis

socket.create.return 

Values

name

+

Synopsis

socket.create.return 

Values

protocol

+ Protocol value +

requester

+ Requested by user process or the kernel (1 = kernel, 0 = user) +

name

Name of this probe -

type

- Socket type value

family

Protocol family value -

requester

- Requested by user process or the kernel (1 = kernel, 0 = user) -

protocol

- Protocol value

err

Error code if success == 0

success

Was socket creation successful? (1 = yes, 0 = no) -

Context

+

type

+ Socket type value +

Context

The requester (user process or kernel) -

Description

+

Description

Fires at the conclusion of creating a socket.

diff --git a/tapsets/API-socket-create.html b/tapsets/API-socket-create.html index d7ca66a4..605d53db 100644 --- a/tapsets/API-socket-create.html +++ b/tapsets/API-socket-create.html @@ -1,17 +1,17 @@ probe::socket.create

Name

probe::socket.create — Creation of a socket -

Synopsis

socket.create 

Values

protocol

+

Synopsis

socket.create 

Values

protocol

Protocol value

requester

Requested by user process or the kernel (1 = kernel, 0 = user) +

name

+ Name of this probe

family

Protocol family value

type

Socket type value -

name

- Name of this probe -

Context

+

Context

The requester (see requester variable) -

Description

+

Description

Fires at the beginning of creating a socket.

diff --git a/tapsets/API-socket-read-iter-return.html b/tapsets/API-socket-read-iter-return.html index 9d489896..186276fd 100644 --- a/tapsets/API-socket-read-iter-return.html +++ b/tapsets/API-socket-read-iter-return.html @@ -1,24 +1,24 @@ probe::socket.read_iter.return

Name

probe::socket.read_iter.return — Conclusion of message received via sock_read_iter -

Synopsis

socket.read_iter.return 

Values

size

+

Synopsis

socket.read_iter.return 

Values

protocol

+ Protocol value +

size

Size of message received (in bytes) or error code if success = 0 -

state

- Socket state value

name

Name of this probe -

type

- Socket type value

family

Protocol family value -

flags

- Socket flags value -

protocol

- Protocol value +

state

+ Socket state value

success

Was receive successful? (1 = yes, 0 = no) -

Context

+

type

+ Socket type value +

flags

+ Socket flags value +

Context

The message receiver. -

Description

+

Description

Fires at the conclusion of receiving a message on a socket via the sock_read_iter function

diff --git a/tapsets/API-socket-read-iter.html b/tapsets/API-socket-read-iter.html index dd0310de..ff5af673 100644 --- a/tapsets/API-socket-read-iter.html +++ b/tapsets/API-socket-read-iter.html @@ -1,22 +1,22 @@ probe::socket.read_iter

Name

probe::socket.read_iter — Receiving message via sock_read_iter -

Synopsis

socket.read_iter 

Values

size

+

Synopsis

socket.read_iter 

Values

protocol

+ Protocol value +

family

+ Protocol family value +

name

+ Name of this probe +

size

Message size in bytes

state

Socket state value -

name

- Name of this probe -

type

- Socket type value -

family

- Protocol family value

flags

Socket flags value -

protocol

- Protocol value -

Context

+

type

+ Socket type value +

Context

The message sender -

Description

+

Description

Fires at the beginning of receiving a message on a socket via the sock_read_iter function

diff --git a/tapsets/API-socket-readv-return.html b/tapsets/API-socket-readv-return.html index cf6076de..5011e3e8 100644 --- a/tapsets/API-socket-readv-return.html +++ b/tapsets/API-socket-readv-return.html @@ -1,24 +1,24 @@ probe::socket.readv.return

Name

probe::socket.readv.return — Conclusion of receiving a message via sock_readv -

Synopsis

socket.readv.return 

Values

family

- Protocol family value -

type

- Socket type value -

success

- Was receive successful? (1 = yes, 0 = no) -

protocol

+

Synopsis

socket.readv.return 

Values

protocol

Protocol value -

flags

- Socket flags value -

size

- Size of message received (in bytes) or error code if success = 0

name

Name of this probe +

family

+ Protocol family value +

size

+ Size of message received (in bytes) or error code if success = 0 +

success

+ Was receive successful? (1 = yes, 0 = no)

state

Socket state value -

Context

+

flags

+ Socket flags value +

type

+ Socket type value +

Context

The message receiver. -

Description

+

Description

Fires at the conclusion of receiving a message on a socket via the sock_readv function

diff --git a/tapsets/API-socket-readv.html b/tapsets/API-socket-readv.html index 6672bb56..5bf65c71 100644 --- a/tapsets/API-socket-readv.html +++ b/tapsets/API-socket-readv.html @@ -1,22 +1,22 @@ probe::socket.readv

Name

probe::socket.readv — Receiving a message via sock_readv -

Synopsis

socket.readv 

Values

flags

+

Synopsis

socket.readv 

Values

state

+ Socket state value +

type

+ Socket type value +

flags

Socket flags value

protocol

Protocol value -

type

- Socket type value -

family

- Protocol family value -

state

- Socket state value -

name

- Name of this probe

size

Message size in bytes -

Context

+

name

+ Name of this probe +

family

+ Protocol family value +

Context

The message sender -

Description

+

Description

Fires at the beginning of receiving a message on a socket via the sock_readv function

diff --git a/tapsets/API-socket-receive.html b/tapsets/API-socket-receive.html index 11066149..f1d53a7e 100644 --- a/tapsets/API-socket-receive.html +++ b/tapsets/API-socket-receive.html @@ -1,21 +1,21 @@ probe::socket.receive

Name

probe::socket.receive — Message received on a socket. -

Synopsis

socket.receive 

Values

name

- Name of this probe +

Synopsis

socket.receive 

Values

flags

+ Socket flags value +

type

+ Socket type value +

success

+ Was send successful? (1 = yes, 0 = no)

state

Socket state value +

name

+ Name of this probe +

family

+ Protocol family value

size

Size of message received (in bytes) or error code if success = 0 -

success

- Was send successful? (1 = yes, 0 = no)

protocol

Protocol value -

flags

- Socket flags value -

family

- Protocol family value -

type

- Socket type value -

Context

+

Context

The message receiver

diff --git a/tapsets/API-socket-recvmsg-return.html b/tapsets/API-socket-recvmsg-return.html index 003f8738..a04f32ba 100644 --- a/tapsets/API-socket-recvmsg-return.html +++ b/tapsets/API-socket-recvmsg-return.html @@ -1,24 +1,24 @@ probe::socket.recvmsg.return

Name

probe::socket.recvmsg.return — Return from Message being received on socket -

Synopsis

socket.recvmsg.return 

Values

state

- Socket state value +

Synopsis

socket.recvmsg.return 

Values

size

+ Size of message received (in bytes) or error code if success = 0

name

Name of this probe -

size

- Size of message received (in bytes) or error code if success = 0 -

flags

- Socket flags value -

success

- Was receive successful? (1 = yes, 0 = no) +

family

+ Protocol family value

protocol

Protocol value

type

Socket type value -

family

- Protocol family value -

Context

+

flags

+ Socket flags value +

state

+ Socket state value +

success

+ Was receive successful? (1 = yes, 0 = no) +

Context

The message receiver. -

Description

+

Description

Fires at the conclusion of receiving a message on a socket via the sock_recvmsg function.

diff --git a/tapsets/API-socket-recvmsg.html b/tapsets/API-socket-recvmsg.html index 880d3cf4..edbd3696 100644 --- a/tapsets/API-socket-recvmsg.html +++ b/tapsets/API-socket-recvmsg.html @@ -1,22 +1,22 @@ probe::socket.recvmsg

Name

probe::socket.recvmsg — Message being received on socket -

Synopsis

socket.recvmsg 

Values

state

+

Synopsis

socket.recvmsg 

Values

state

Socket state value -

name

- Name of this probe -

size

- Message size in bytes +

type

+ Socket type value

flags

Socket flags value

protocol

Protocol value -

type

- Socket type value +

size

+ Message size in bytes +

name

+ Name of this probe

family

Protocol family value -

Context

+

Context

The message receiver. -

Description

+

Description

Fires at the beginning of receiving a message on a socket via the sock_recvmsg function

diff --git a/tapsets/API-socket-send.html b/tapsets/API-socket-send.html index 651b4696..82918f7c 100644 --- a/tapsets/API-socket-send.html +++ b/tapsets/API-socket-send.html @@ -1,21 +1,21 @@ probe::socket.send

Name

probe::socket.send — Message sent on a socket. -

Synopsis

socket.send 

Values

size

- Size of message sent (in bytes) or error code if success = 0 -

state

+

Synopsis

socket.send 

Values

state

Socket state value -

name

- Name of this probe +

success

+ Was send successful? (1 = yes, 0 = no)

type

Socket type value -

family

- Protocol family value

flags

Socket flags value -

success

- Was send successful? (1 = yes, 0 = no)

protocol

Protocol value -

Context

+

size

+ Size of message sent (in bytes) or error code if success = 0 +

name

+ Name of this probe +

family

+ Protocol family value +

Context

The message sender

diff --git a/tapsets/API-socket-sendmsg-return.html b/tapsets/API-socket-sendmsg-return.html index 8d58fcb6..72dc587f 100644 --- a/tapsets/API-socket-sendmsg-return.html +++ b/tapsets/API-socket-sendmsg-return.html @@ -1,24 +1,24 @@ probe::socket.sendmsg.return

Name

probe::socket.sendmsg.return — Return from socket.sendmsg. -

Synopsis

socket.sendmsg.return 

Values

size

+

Synopsis

socket.sendmsg.return 

Values

size

Size of message sent (in bytes) or error code if success = 0

name

Name of this probe -

state

- Socket state value

family

Protocol family value -

type

- Socket type value -

success

- Was send successful? (1 = yes, 0 = no)

protocol

Protocol value +

type

+ Socket type value

flags

Socket flags value -

Context

+

state

+ Socket state value +

success

+ Was send successful? (1 = yes, 0 = no) +

Context

The message sender. -

Description

+

Description

Fires at the conclusion of sending a message on a socket via the sock_sendmsg function

diff --git a/tapsets/API-socket-sendmsg.html b/tapsets/API-socket-sendmsg.html index 8a825848..8c865f6c 100644 --- a/tapsets/API-socket-sendmsg.html +++ b/tapsets/API-socket-sendmsg.html @@ -1,22 +1,22 @@ probe::socket.sendmsg

Name

probe::socket.sendmsg — Message is currently being sent on a socket. -

Synopsis

socket.sendmsg 

Values

family

- Protocol family value +

Synopsis

socket.sendmsg 

Values

state

+ Socket state value +

flags

+ Socket flags value

type

Socket type value

protocol

Protocol value -

flags

- Socket flags value -

size

- Message size in bytes +

family

+ Protocol family value

name

Name of this probe -

state

- Socket state value -

Context

+

size

+ Message size in bytes +

Context

The message sender -

Description

+

Description

Fires at the beginning of sending a message on a socket via the sock_sendmsg function

diff --git a/tapsets/API-socket-write-iter-return.html b/tapsets/API-socket-write-iter-return.html index 4f773db6..2500a781 100644 --- a/tapsets/API-socket-write-iter-return.html +++ b/tapsets/API-socket-write-iter-return.html @@ -1,24 +1,24 @@ probe::socket.write_iter.return

Name

probe::socket.write_iter.return — Conclusion of message send via sock_write_iter -

Synopsis

socket.write_iter.return 

Values

family

+

Synopsis

socket.write_iter.return 

Values

size

+ Size of message received (in bytes) or error code if success = 0 +

family

Protocol family value -

type

- Socket type value -

success

- Was receive successful? (1 = yes, 0 = no) +

name

+ Name of this probe

protocol

Protocol value +

type

+ Socket type value

flags

Socket flags value -

size

- Size of message received (in bytes) or error code if success = 0 -

name

- Name of this probe

state

Socket state value -

Context

+

success

+ Was receive successful? (1 = yes, 0 = no) +

Context

The message receiver. -

Description

+

Description

Fires at the conclusion of sending a message on a socket via the sock_write_iter function

diff --git a/tapsets/API-socket-write-iter.html b/tapsets/API-socket-write-iter.html index 2cf630a6..f1e4fa0e 100644 --- a/tapsets/API-socket-write-iter.html +++ b/tapsets/API-socket-write-iter.html @@ -1,22 +1,22 @@ probe::socket.write_iter

Name

probe::socket.write_iter — Message send via sock_write_iter -

Synopsis

socket.write_iter 

Values

size

- Message size in bytes -

state

+

Synopsis

socket.write_iter 

Values

state

Socket state value -

name

- Name of this probe -

type

- Socket type value -

family

- Protocol family value

flags

Socket flags value +

type

+ Socket type value

protocol

Protocol value -

Context

+

family

+ Protocol family value +

name

+ Name of this probe +

size

+ Message size in bytes +

Context

The message sender -

Description

+

Description

Fires at the beginning of sending a message on a socket via the sock_write_iter function

diff --git a/tapsets/API-socket-writev-return.html b/tapsets/API-socket-writev-return.html index 0cd652a0..c1bd3788 100644 --- a/tapsets/API-socket-writev-return.html +++ b/tapsets/API-socket-writev-return.html @@ -1,24 +1,24 @@ probe::socket.writev.return

Name

probe::socket.writev.return — Conclusion of message sent via socket_writev -

Synopsis

socket.writev.return 

Values

state

- Socket state value -

name

+

Synopsis

socket.writev.return 

Values

name

Name of this probe +

family

+ Protocol family value

size

Size of message sent (in bytes) or error code if success = 0 -

flags

- Socket flags value -

success

- Was send successful? (1 = yes, 0 = no)

protocol

Protocol value +

flags

+ Socket flags value

type

Socket type value -

family

- Protocol family value -

Context

+

success

+ Was send successful? (1 = yes, 0 = no) +

state

+ Socket state value +

Context

The message receiver. -

Description

+

Description

Fires at the conclusion of sending a message on a socket via the sock_writev function

diff --git a/tapsets/API-socket-writev.html b/tapsets/API-socket-writev.html index 6cbcd528..5ef093ac 100644 --- a/tapsets/API-socket-writev.html +++ b/tapsets/API-socket-writev.html @@ -1,22 +1,22 @@ probe::socket.writev

Name

probe::socket.writev — Message sent via socket_writev -

Synopsis

socket.writev 

Values

state

- Socket state value -

name

+

Synopsis

socket.writev 

Values

name

Name of this probe +

family

+ Protocol family value

size

Message size in bytes -

flags

- Socket flags value

protocol

Protocol value +

flags

+ Socket flags value

type

Socket type value -

family

- Protocol family value -

Context

+

state

+ Socket state value +

Context

The message sender -

Description

+

Description

Fires at the beginning of sending a message on a socket via the sock_writev function

diff --git a/tapsets/API-softirq-entry.html b/tapsets/API-softirq-entry.html index 67ed17a8..3d7da479 100644 --- a/tapsets/API-softirq-entry.html +++ b/tapsets/API-softirq-entry.html @@ -1,11 +1,11 @@ probe::softirq.entry

Name

probe::softirq.entry — Execution of handler for a pending softirq starting -

Synopsis

softirq.entry 

Values

action

+

Synopsis

softirq.entry 

Values

h

+ struct softirq_action* for current pending softirq +

action

pointer to softirq handler just about to execute

vec_nr

softirq vector number -

h

- struct softirq_action* for current pending softirq

vec

softirq_action vector

diff --git a/tapsets/API-softirq-exit.html b/tapsets/API-softirq-exit.html index c81b8f7c..0f6cf5aa 100644 --- a/tapsets/API-softirq-exit.html +++ b/tapsets/API-softirq-exit.html @@ -1,11 +1,11 @@ probe::softirq.exit

Name

probe::softirq.exit — Execution of handler for a pending softirq completed -

Synopsis

softirq.exit 

Values

action

- pointer to softirq handler that just finished execution -

vec_nr

- softirq vector number -

h

+

Synopsis

softirq.exit 

Values

h

struct softirq_action* for just executed softirq +

action

+ pointer to softirq handler that just finished execution

vec

softirq_action vector +

vec_nr

+ softirq vector number

diff --git a/tapsets/API-speculate.html b/tapsets/API-speculate.html index 3845e40a..3ec9263c 100644 --- a/tapsets/API-speculate.html +++ b/tapsets/API-speculate.html @@ -2,10 +2,10 @@ Store a string for possible output later

Synopsis

     speculate(id:long,output:string)
-

Arguments

id

+

Arguments

id

buffer id to store the information in

output

string to write out when commit occurs -

Description

+

Description

Add a string to the speculaive buffer for id.

diff --git a/tapsets/API-speculation.html b/tapsets/API-speculation.html index 6cb395da..c6335eb3 100644 --- a/tapsets/API-speculation.html +++ b/tapsets/API-speculation.html @@ -2,9 +2,9 @@ Allocate a new id for speculative output

Synopsis

     speculation:long()
-

Arguments

+

Arguments

None -

Description

+

Description

The speculation function is called when a new speculation buffer is needed. diff --git a/tapsets/API-sprint-backtrace.html b/tapsets/API-sprint-backtrace.html index 814add02..571fed88 100644 --- a/tapsets/API-sprint-backtrace.html +++ b/tapsets/API-sprint-backtrace.html @@ -2,9 +2,9 @@ Return stack back trace as string

Synopsis

     sprint_backtrace:string()
-

Arguments

+

Arguments

None -

Description

+

Description

Returns a simple (kernel) backtrace. One line per address. diff --git a/tapsets/API-sprint-loadavg.html b/tapsets/API-sprint-loadavg.html index fce97ad5..3edd7962 100644 --- a/tapsets/API-sprint-loadavg.html +++ b/tapsets/API-sprint-loadavg.html @@ -2,9 +2,9 @@ Report a pretty-printed load average

Synopsis

     sprint_loadavg:string()
-

Arguments

+

Arguments

None -

Description

+

Description

Returns the a string with three decimal numbers in the usual format for 1-, 5- and 15-minute load averages.

diff --git a/tapsets/API-sprint-stack.html b/tapsets/API-sprint-stack.html index 1234c820..4230f21c 100644 --- a/tapsets/API-sprint-stack.html +++ b/tapsets/API-sprint-stack.html @@ -2,9 +2,9 @@ Return stack for kernel addresses from string

Synopsis

     sprint_stack:string(stk:string)
-

Arguments

stk

+

Arguments

stk

String with list of hexadecimal (kernel) addresses -

Description

+

Description

Perform a symbolic lookup of the addresses in the given string, which is assumed to be the result of a prior call to backtrace.

@@ -18,6 +18,6 @@ a newline character). Note that the returned stack will be truncated to MAXSTRINGLEN, to print fuller and richer stacks use print_stack. -

NOTE

+

NOTE

it is recommended to use sprint_syms instead of this function.

diff --git a/tapsets/API-sprint-syms.html b/tapsets/API-sprint-syms.html index 5b83b469..9b7bc027 100644 --- a/tapsets/API-sprint-syms.html +++ b/tapsets/API-sprint-syms.html @@ -2,9 +2,9 @@ Return stack for kernel addresses from string

Synopsis

     sprint_syms(callers:string)
-

Arguments

callers

+

Arguments

callers

String with list of hexadecimal (kernel) addresses -

Description

+

Description

Perform a symbolic lookup of the addresses in the given string, which are assumed to be the result of a prior calls to stack, callers, and similar functions. diff --git a/tapsets/API-sprint-ubacktrace.html b/tapsets/API-sprint-ubacktrace.html index 68766df1..2c63a90a 100644 --- a/tapsets/API-sprint-ubacktrace.html +++ b/tapsets/API-sprint-ubacktrace.html @@ -2,9 +2,9 @@ Return stack back trace for current user-space task as string.

Synopsis

     sprint_ubacktrace:string()
-

Arguments

+

Arguments

None -

Description

+

Description

Returns a simple backtrace for the current task. One line per @@ -18,7 +18,7 @@ print_ubacktrace. Equivalent to sprint_ustack(ubacktrace), but more efficient (no need to translate between hex strings and final backtrace string). -

Note

+

Note

To get (full) backtraces for user space applications and shared shared libraries not mentioned in the current script run stap with -d /path/to/exe-or-so and/or add --ldd to load all needed unwind data. diff --git a/tapsets/API-sprint-ustack.html b/tapsets/API-sprint-ustack.html index b53eceb4..ea346d6a 100644 --- a/tapsets/API-sprint-ustack.html +++ b/tapsets/API-sprint-ustack.html @@ -2,9 +2,9 @@ Return stack for the current task from string.

Synopsis

     sprint_ustack:string(stk:string)
-

Arguments

stk

+

Arguments

stk

String with list of hexadecimal addresses for the current task. -

Description

+

Description

Perform a symbolic lookup of the addresses in the given string, which is assumed to be the result of a prior call to ubacktrace for the current task. @@ -19,6 +19,6 @@ a newline character). Note that the returned stack will be truncated to MAXSTRINGLEN, to print fuller and richer stacks use print_ustack. -

NOTE

+

NOTE

it is recommended to use sprint_usyms instead of this function.

diff --git a/tapsets/API-sprint-usyms.html b/tapsets/API-sprint-usyms.html index 9f371efb..e5d37a0c 100644 --- a/tapsets/API-sprint-usyms.html +++ b/tapsets/API-sprint-usyms.html @@ -2,9 +2,9 @@ Return stack for user addresses from string

Synopsis

     sprint_usyms(callers:string)
-

Arguments

callers

+

Arguments

callers

String with list of hexadecimal (user) addresses -

Description

+

Description

Perform a symbolic lookup of the addresses in the given string, which are assumed to be the result of a prior calls to ustack, ucallers, and similar functions. diff --git a/tapsets/API-stack-size.html b/tapsets/API-stack-size.html index 4f28a580..3ce0b32f 100644 --- a/tapsets/API-stack-size.html +++ b/tapsets/API-stack-size.html @@ -2,8 +2,8 @@ Return the size of the kernel stack

Synopsis

     stack_size:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the size of the kernel stack.

diff --git a/tapsets/API-stack-unused.html b/tapsets/API-stack-unused.html index 34f41a60..988d0e65 100644 --- a/tapsets/API-stack-unused.html +++ b/tapsets/API-stack-unused.html @@ -2,9 +2,9 @@ Returns the amount of kernel stack currently available

Synopsis

     stack_unused:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function determines how many bytes are currently available in the kernel stack.

diff --git a/tapsets/API-stack-used.html b/tapsets/API-stack-used.html index e4d64006..e1dabfd0 100644 --- a/tapsets/API-stack-used.html +++ b/tapsets/API-stack-used.html @@ -2,9 +2,9 @@ Returns the amount of kernel stack used

Synopsis

     stack_used:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function determines how many bytes are currently used in the kernel stack.

diff --git a/tapsets/API-stack.html b/tapsets/API-stack.html index 81d97277..2a064cfb 100644 --- a/tapsets/API-stack.html +++ b/tapsets/API-stack.html @@ -2,9 +2,9 @@ Return address at given depth of kernel stack backtrace

Synopsis

     stack:long(n:long)
-

Arguments

n

+

Arguments

n

number of levels to descend in the stack. -

Description

+

Description

Performs a simple (kernel) backtrace, and returns the element at the specified position. The results of the backtrace itself are cached, so that the backtrace computation is performed at most once diff --git a/tapsets/API-stap-cache-add-mod.html b/tapsets/API-stap-cache-add-mod.html index 25dd8be5..4f293087 100644 --- a/tapsets/API-stap-cache-add-mod.html +++ b/tapsets/API-stap-cache-add-mod.html @@ -1,10 +1,10 @@ probe::stap.cache_add_mod

Name

probe::stap.cache_add_mod — Adding kernel instrumentation module to cache -

Synopsis

stap.cache_add_mod 

Values

source_path

- the path the .ko file is coming from (incl filename) -

dest_path

+

Synopsis

stap.cache_add_mod 

Values

dest_path

the path the .ko file is going to (incl filename) -

Description

+

source_path

+ the path the .ko file is coming from (incl filename) +

Description

Fires just before the file is actually moved. Note: if moving fails, cache_add_src and cache_add_nss will not fire.

diff --git a/tapsets/API-stap-cache-add-nss.html b/tapsets/API-stap-cache-add-nss.html index ebc534f0..f23bec37 100644 --- a/tapsets/API-stap-cache-add-nss.html +++ b/tapsets/API-stap-cache-add-nss.html @@ -1,10 +1,10 @@ probe::stap.cache_add_nss

Name

probe::stap.cache_add_nss — Add NSS (Network Security Services) information to cache -

Synopsis

stap.cache_add_nss 

Values

dest_path

+

Synopsis

stap.cache_add_nss 

Values

source_path

the path the .sgn file is coming from (incl filename) -

source_path

+

dest_path

the path the .sgn file is coming from (incl filename) -

Description

+

Description

Fires just before the file is actually moved. Note: stap must compiled with NSS support; if moving the kernel module fails, this probe will not fire. diff --git a/tapsets/API-stap-cache-add-src.html b/tapsets/API-stap-cache-add-src.html index 75ea2544..769cfbf0 100644 --- a/tapsets/API-stap-cache-add-src.html +++ b/tapsets/API-stap-cache-add-src.html @@ -1,10 +1,10 @@ probe::stap.cache_add_src

Name

probe::stap.cache_add_src — Adding C code translation to cache -

Synopsis

stap.cache_add_src 

Values

source_path

+

Synopsis

stap.cache_add_src 

Values

source_path

the path the .c file is coming from (incl filename)

dest_path

the path the .c file is going to (incl filename) -

Description

+

Description

Fires just before the file is actually moved. Note: if moving the kernel module fails, this probe will not fire.

diff --git a/tapsets/API-stap-cache-clean.html b/tapsets/API-stap-cache-clean.html index 5ec47cff..db8954ca 100644 --- a/tapsets/API-stap-cache-clean.html +++ b/tapsets/API-stap-cache-clean.html @@ -1,7 +1,7 @@ probe::stap.cache_clean

Name

probe::stap.cache_clean — Removing file from stap cache -

Synopsis

stap.cache_clean 

Values

path

+

Synopsis

stap.cache_clean 

Values

path

the path to the .ko/.c file being removed -

Description

+

Description

Fires just before the call to unlink the module/source file.

diff --git a/tapsets/API-stap-cache-get.html b/tapsets/API-stap-cache-get.html index e3e34db9..e29c969a 100644 --- a/tapsets/API-stap-cache-get.html +++ b/tapsets/API-stap-cache-get.html @@ -1,10 +1,10 @@ probe::stap.cache_get

Name

probe::stap.cache_get — Found item in stap cache -

Synopsis

stap.cache_get 

Values

source_path

+

Synopsis

stap.cache_get 

Values

source_path

the path of the .c source file

module_path

the path of the .ko kernel module file -

Description

+

Description

Fires just before the return of get_from_cache, when the cache grab is successful.

diff --git a/tapsets/API-stap-pass0-end.html b/tapsets/API-stap-pass0-end.html index 347f9fc2..6a879038 100644 --- a/tapsets/API-stap-pass0-end.html +++ b/tapsets/API-stap-pass0-end.html @@ -1,7 +1,7 @@ probe::stap.pass0.end

Name

probe::stap.pass0.end — Finished stap pass0 (parsing command line arguments) -

Synopsis

stap.pass0.end 

Values

session

+

Synopsis

stap.pass0.end 

Values

session

the systemtap_session variable s -

Description

+

Description

pass0.end fires just before the gettimeofday call for pass1.

diff --git a/tapsets/API-stap-pass0.html b/tapsets/API-stap-pass0.html index 98617be9..b24fad81 100644 --- a/tapsets/API-stap-pass0.html +++ b/tapsets/API-stap-pass0.html @@ -1,7 +1,7 @@ probe::stap.pass0

Name

probe::stap.pass0 — Starting stap pass0 (parsing command line arguments) -

Synopsis

stap.pass0 

Values

session

+

Synopsis

stap.pass0 

Values

session

the systemtap_session variable s -

Description

+

Description

pass0 fires after command line arguments have been parsed.

diff --git a/tapsets/API-stap-pass1-end.html b/tapsets/API-stap-pass1-end.html index de097825..5d41381d 100644 --- a/tapsets/API-stap-pass1-end.html +++ b/tapsets/API-stap-pass1-end.html @@ -1,7 +1,7 @@ probe::stap.pass1.end

Name

probe::stap.pass1.end — Finished stap pass1 (parsing scripts) -

Synopsis

stap.pass1.end 

Values

session

+

Synopsis

stap.pass1.end 

Values

session

the systemtap_session variable s -

Description

+

Description

pass1.end fires just before the jump to cleanup if s.last_pass = 1.

diff --git a/tapsets/API-stap-pass1a.html b/tapsets/API-stap-pass1a.html index b028038e..a69553d5 100644 --- a/tapsets/API-stap-pass1a.html +++ b/tapsets/API-stap-pass1a.html @@ -1,8 +1,8 @@ probe::stap.pass1a

Name

probe::stap.pass1a — Starting stap pass1 (parsing user script) -

Synopsis

stap.pass1a 

Values

session

+

Synopsis

stap.pass1a 

Values

session

the systemtap_session variable s -

Description

+

Description

pass1a fires just after the call to gettimeofday, before the user script is parsed.

diff --git a/tapsets/API-stap-pass1b.html b/tapsets/API-stap-pass1b.html index e658f485..fbfc03a1 100644 --- a/tapsets/API-stap-pass1b.html +++ b/tapsets/API-stap-pass1b.html @@ -1,7 +1,7 @@ probe::stap.pass1b

Name

probe::stap.pass1b — Starting stap pass1 (parsing library scripts) -

Synopsis

stap.pass1b 

Values

session

+

Synopsis

stap.pass1b 

Values

session

the systemtap_session variable s -

Description

+

Description

pass1b fires just before the library scripts are parsed.

diff --git a/tapsets/API-stap-pass2-end.html b/tapsets/API-stap-pass2-end.html index 6186f32f..4654d682 100644 --- a/tapsets/API-stap-pass2-end.html +++ b/tapsets/API-stap-pass2-end.html @@ -1,7 +1,7 @@ probe::stap.pass2.end

Name

probe::stap.pass2.end — Finished stap pass2 (elaboration) -

Synopsis

stap.pass2.end 

Values

session

+

Synopsis

stap.pass2.end 

Values

session

the systemtap_session variable s -

Description

+

Description

pass2.end fires just before the jump to cleanup if s.last_pass = 2

diff --git a/tapsets/API-stap-pass2.html b/tapsets/API-stap-pass2.html index 573d71ea..a479c332 100644 --- a/tapsets/API-stap-pass2.html +++ b/tapsets/API-stap-pass2.html @@ -1,8 +1,8 @@ probe::stap.pass2

Name

probe::stap.pass2 — Starting stap pass2 (elaboration) -

Synopsis

stap.pass2 

Values

session

+

Synopsis

stap.pass2 

Values

session

the systemtap_session variable s -

Description

+

Description

pass2 fires just after the call to gettimeofday, just before the call to semantic_pass.

diff --git a/tapsets/API-stap-pass3-end.html b/tapsets/API-stap-pass3-end.html index a5735b0a..a638e43b 100644 --- a/tapsets/API-stap-pass3-end.html +++ b/tapsets/API-stap-pass3-end.html @@ -1,7 +1,7 @@ probe::stap.pass3.end

Name

probe::stap.pass3.end — Finished stap pass3 (translation to C) -

Synopsis

stap.pass3.end 

Values

session

+

Synopsis

stap.pass3.end 

Values

session

the systemtap_session variable s -

Description

+

Description

pass3.end fires just before the jump to cleanup if s.last_pass = 3

diff --git a/tapsets/API-stap-pass3.html b/tapsets/API-stap-pass3.html index 3228eaf6..d5691bb2 100644 --- a/tapsets/API-stap-pass3.html +++ b/tapsets/API-stap-pass3.html @@ -1,8 +1,8 @@ probe::stap.pass3

Name

probe::stap.pass3 — Starting stap pass3 (translation to C) -

Synopsis

stap.pass3 

Values

session

+

Synopsis

stap.pass3 

Values

session

the systemtap_session variable s -

Description

+

Description

pass3 fires just after the call to gettimeofday, just before the call to translate_pass.

diff --git a/tapsets/API-stap-pass4-end.html b/tapsets/API-stap-pass4-end.html index 3864b6aa..3f8672db 100644 --- a/tapsets/API-stap-pass4-end.html +++ b/tapsets/API-stap-pass4-end.html @@ -1,7 +1,7 @@ probe::stap.pass4.end

Name

probe::stap.pass4.end — Finished stap pass4 (compile C code into kernel module) -

Synopsis

stap.pass4.end 

Values

session

+

Synopsis

stap.pass4.end 

Values

session

the systemtap_session variable s -

Description

+

Description

pass4.end fires just before the jump to cleanup if s.last_pass = 4

diff --git a/tapsets/API-stap-pass4.html b/tapsets/API-stap-pass4.html index dab99334..eaaa34d9 100644 --- a/tapsets/API-stap-pass4.html +++ b/tapsets/API-stap-pass4.html @@ -1,8 +1,8 @@ probe::stap.pass4

Name

probe::stap.pass4 — Starting stap pass4 (compile C code into kernel module) -

Synopsis

stap.pass4 

Values

session

+

Synopsis

stap.pass4 

Values

session

the systemtap_session variable s -

Description

+

Description

pass4 fires just after the call to gettimeofday, just before the call to compile_pass.

diff --git a/tapsets/API-stap-pass5-end.html b/tapsets/API-stap-pass5-end.html index 53345e19..881057ef 100644 --- a/tapsets/API-stap-pass5-end.html +++ b/tapsets/API-stap-pass5-end.html @@ -1,7 +1,7 @@ probe::stap.pass5.end

Name

probe::stap.pass5.end — Finished stap pass5 (running the instrumentation) -

Synopsis

stap.pass5.end 

Values

session

+

Synopsis

stap.pass5.end 

Values

session

the systemtap_session variable s -

Description

+

Description

pass5.end fires just before the cleanup label

diff --git a/tapsets/API-stap-pass5.html b/tapsets/API-stap-pass5.html index aa344c2a..9cf2f421 100644 --- a/tapsets/API-stap-pass5.html +++ b/tapsets/API-stap-pass5.html @@ -1,8 +1,8 @@ probe::stap.pass5

Name

probe::stap.pass5 — Starting stap pass5 (running the instrumentation) -

Synopsis

stap.pass5 

Values

session

+

Synopsis

stap.pass5 

Values

session

the systemtap_session variable s -

Description

+

Description

pass5 fires just after the call to gettimeofday, just before the call to run_pass.

diff --git a/tapsets/API-stap-pass6-end.html b/tapsets/API-stap-pass6-end.html index cc6bb1db..3de89335 100644 --- a/tapsets/API-stap-pass6-end.html +++ b/tapsets/API-stap-pass6-end.html @@ -1,7 +1,7 @@ probe::stap.pass6.end

Name

probe::stap.pass6.end — Finished stap pass6 (cleanup) -

Synopsis

stap.pass6.end 

Values

session

+

Synopsis

stap.pass6.end 

Values

session

the systemtap_session variable s -

Description

+

Description

pass6.end fires just before main's return.

diff --git a/tapsets/API-stap-pass6.html b/tapsets/API-stap-pass6.html index ba6f9735..c2359441 100644 --- a/tapsets/API-stap-pass6.html +++ b/tapsets/API-stap-pass6.html @@ -1,8 +1,8 @@ probe::stap.pass6

Name

probe::stap.pass6 — Starting stap pass6 (cleanup) -

Synopsis

stap.pass6 

Values

session

+

Synopsis

stap.pass6 

Values

session

the systemtap_session variable s -

Description

+

Description

pass6 fires just after the cleanup label, essentially the same spot as pass5.end

diff --git a/tapsets/API-stap-system-return.html b/tapsets/API-stap-system-return.html index 598b8c51..62b8fc30 100644 --- a/tapsets/API-stap-system-return.html +++ b/tapsets/API-stap-system-return.html @@ -1,8 +1,8 @@ probe::stap.system.return

Name

probe::stap.system.return — Finished a command from stap -

Synopsis

stap.system.return 

Values

ret

+

Synopsis

stap.system.return 

Values

ret

a return code associated with running waitpid on the spawned process; a non-zero value indicates error -

Description

+

Description

Fires just before the return of the stap_system function, after waitpid.

diff --git a/tapsets/API-stap-system-spawn.html b/tapsets/API-stap-system-spawn.html index b9ec79c0..e0b1a5c2 100644 --- a/tapsets/API-stap-system-spawn.html +++ b/tapsets/API-stap-system-spawn.html @@ -1,9 +1,9 @@ probe::stap.system.spawn

Name

probe::stap.system.spawn — stap spawned new process -

Synopsis

stap.system.spawn 

Values

pid

+

Synopsis

stap.system.spawn 

Values

pid

the pid of the spawned process

ret

the return value from posix_spawn -

Description

+

Description

Fires just after the call to posix_spawn.

diff --git a/tapsets/API-stap-system.html b/tapsets/API-stap-system.html index fac272fd..32dd9a31 100644 --- a/tapsets/API-stap-system.html +++ b/tapsets/API-stap-system.html @@ -1,7 +1,7 @@ probe::stap.system

Name

probe::stap.system — Starting a command from stap -

Synopsis

stap.system 

Values

command

+

Synopsis

stap.system 

Values

command

the command string to be run by posix_spawn (as sh -c <str>) -

Description

+

Description

Fires at the entry of the stap_system command.

diff --git a/tapsets/API-stapio-receive-control-message.html b/tapsets/API-stapio-receive-control-message.html index 4bdac59a..1d1032c7 100644 --- a/tapsets/API-stapio-receive-control-message.html +++ b/tapsets/API-stapio-receive-control-message.html @@ -1,11 +1,11 @@ probe::stapio.receive_control_message

Name

probe::stapio.receive_control_message — Received a control message -

Synopsis

stapio.receive_control_message 

Values

type

+

Synopsis

stapio.receive_control_message 

Values

type

type of message being send; defined in runtime/transport/transport_msgs.h -

len

- the length (in bytes) of the data blob

data

a ptr to a binary blob of data sent as the control message -

Description

+

len

+ the length (in bytes) of the data blob +

Description

Fires just after a message was receieved and before it's processed.

diff --git a/tapsets/API-staprun-insert-module.html b/tapsets/API-staprun-insert-module.html index 7aa254e8..f523bea4 100644 --- a/tapsets/API-staprun-insert-module.html +++ b/tapsets/API-staprun-insert-module.html @@ -1,7 +1,7 @@ probe::staprun.insert_module

Name

probe::staprun.insert_module — Inserting SystemTap instrumentation module -

Synopsis

staprun.insert_module 

Values

path

+

Synopsis

staprun.insert_module 

Values

path

the full path to the .ko kernel module about to be inserted -

Description

+

Description

Fires just before the call to insert the module.

diff --git a/tapsets/API-staprun-remove-module.html b/tapsets/API-staprun-remove-module.html index b8337fe6..59b2878a 100644 --- a/tapsets/API-staprun-remove-module.html +++ b/tapsets/API-staprun-remove-module.html @@ -1,7 +1,7 @@ probe::staprun.remove_module

Name

probe::staprun.remove_module — Removing SystemTap instrumentation module -

Synopsis

staprun.remove_module 

Values

name

+

Synopsis

staprun.remove_module 

Values

name

the stap module name to be removed (without the .ko extension) -

Description

+

Description

Fires just before the call to remove the module.

diff --git a/tapsets/API-staprun-send-control-message.html b/tapsets/API-staprun-send-control-message.html index 47473b31..5e27c90a 100644 --- a/tapsets/API-staprun-send-control-message.html +++ b/tapsets/API-staprun-send-control-message.html @@ -1,11 +1,11 @@ probe::staprun.send_control_message

Name

probe::staprun.send_control_message — Sending a control message -

Synopsis

staprun.send_control_message 

Values

type

- type of message being send; defined in runtime/transport/transport_msgs.h -

len

+

Synopsis

staprun.send_control_message 

Values

len

the length (in bytes) of the data blob

data

a ptr to a binary blob of data sent as the control message -

Description

+

type

+ type of message being send; defined in runtime/transport/transport_msgs.h +

Description

Fires at the beginning of the send_request function.

diff --git a/tapsets/API-start-stopwatch.html b/tapsets/API-start-stopwatch.html index 2db6d353..eb48d00c 100644 --- a/tapsets/API-start-stopwatch.html +++ b/tapsets/API-start-stopwatch.html @@ -2,9 +2,9 @@ Start a stopwatch

Synopsis

     start_stopwatch(name:string)
-

Arguments

name

+

Arguments

name

the stopwatch name -

Description

+

Description

Start stopwatch name. Creates stopwatch name if it does not currently exist.

diff --git a/tapsets/API-stop-stopwatch.html b/tapsets/API-stop-stopwatch.html index afeb4c1a..e1fb8b9e 100644 --- a/tapsets/API-stop-stopwatch.html +++ b/tapsets/API-stop-stopwatch.html @@ -2,9 +2,9 @@ Stop a stopwatch

Synopsis

     stop_stopwatch(name:string)
-

Arguments

name

+

Arguments

name

the stopwatch name -

Description

+

Description

Stop stopwatch name. Creates stopwatch name if it does not currently exist.

diff --git a/tapsets/API-stp-pid.html b/tapsets/API-stp-pid.html index 874df793..0916234d 100644 --- a/tapsets/API-stp-pid.html +++ b/tapsets/API-stp-pid.html @@ -2,9 +2,9 @@ The process id of the stapio process

Synopsis

     stp_pid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the process id of the stapio process that launched this script. There could be other SystemTap scripts and stapio processes running on diff --git a/tapsets/API-str-replace.html b/tapsets/API-str-replace.html index 0712a821..117fbb0c 100644 --- a/tapsets/API-str-replace.html +++ b/tapsets/API-str-replace.html @@ -2,13 +2,13 @@ str_replace Replaces all instances of a substring with another

Synopsis

     str_replace:string(prnt_str:string,srch_str:string,rplc_str:string)
-

Arguments

prnt_str

+

Arguments

prnt_str

the string to search and replace in

srch_str

the substring which is used to search in prnt_str string

rplc_str

the substring which is used to replace srch_str -

Description

+

Description

This function returns the given string with substrings replaced.

diff --git a/tapsets/API-string-quoted.html b/tapsets/API-string-quoted.html index 4079e6d4..b6939ea8 100644 --- a/tapsets/API-string-quoted.html +++ b/tapsets/API-string-quoted.html @@ -2,9 +2,9 @@ Quotes a given string

Synopsis

     string_quoted:string(str:string)
-

Arguments

str

+

Arguments

str

The kernel address to retrieve the string from -

Description

+

Description

Returns the quoted string version of the given string, with characters where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned diff --git a/tapsets/API-string-to-fp.html b/tapsets/API-string-to-fp.html new file mode 100644 index 00000000..0bdc7f01 --- /dev/null +++ b/tapsets/API-string-to-fp.html @@ -0,0 +1,10 @@ +function::string_to_fp

Name

function::string_to_fp — + Convert the given string into floating point +

Synopsis

+    string_to_fp:long(input:string)
+

Arguments

input

+ the string representation of a decimal number +

Description

+ Given the string representation of a decimal number, convert + it to a floating point which is stored in 64 bit long. +

diff --git a/tapsets/API-stringat.html b/tapsets/API-stringat.html index 2aee0a14..f4b3297e 100644 --- a/tapsets/API-stringat.html +++ b/tapsets/API-stringat.html @@ -2,11 +2,11 @@ Returns the char at a given position in the string

Synopsis

     stringat:long(str:string,pos:long)
-

Arguments

str

+

Arguments

str

the string to fetch the character from

pos

the position to get the character from (first character is 0) -

Description

+

Description

This function returns the character at a given position in the string or zero if the string doesn't have as many characters. Reports an error if pos is out of bounds. diff --git a/tapsets/API-strlen.html b/tapsets/API-strlen.html index d360bd00..a7465a01 100644 --- a/tapsets/API-strlen.html +++ b/tapsets/API-strlen.html @@ -2,9 +2,9 @@ Returns the length of a string

Synopsis

     strlen:long(s:string)
-

Arguments

s

+

Arguments

s

the string -

Description

+

Description

This function returns the length of the string, which can be zero up to MAXSTRINGLEN.

diff --git a/tapsets/API-strpos.html b/tapsets/API-strpos.html index 71387582..a07976ec 100644 --- a/tapsets/API-strpos.html +++ b/tapsets/API-strpos.html @@ -2,11 +2,11 @@ Returns location of a substring within another string

Synopsis

     strpos:long(s1:string,s2:string)
-

Arguments

s1

+

Arguments

s1

string to search in

s2

substring to find -

Description

+

Description

This function returns location of the first occurence of string s2 within s1, namely the return value is 0 in case s2 is a prefix of s1. If s2 is not a substring of s1, then the return value is -1. diff --git a/tapsets/API-strtol.html b/tapsets/API-strtol.html index eb605276..6a07e703 100644 --- a/tapsets/API-strtol.html +++ b/tapsets/API-strtol.html @@ -2,11 +2,11 @@ strtol - Convert a string to a long

Synopsis

     strtol:long(str:string,base:long)
-

Arguments

str

+

Arguments

str

string to convert

base

the base to use -

Description

+

Description

This function converts the string representation of a number to an integer. The base parameter indicates the number base to assume for the string (eg. 16 for hex, 8 for octal, 2 for binary).

diff --git a/tapsets/API-substr.html b/tapsets/API-substr.html index d25c6108..d6e15faa 100644 --- a/tapsets/API-substr.html +++ b/tapsets/API-substr.html @@ -2,13 +2,13 @@ Returns a substring

Synopsis

     substr:string(str:string,start:long,length:long)
-

Arguments

str

+

Arguments

str

the string to take a substring from

start

starting position of the extracted string (first character is 0)

length

length of string to return -

Description

+

Description

Returns the substring of the given string at the given start position with the given length (or smaller if the length of the original string is less than start + length, or length is bigger than diff --git a/tapsets/API-sunrpc-clnt-bind-new-program.html b/tapsets/API-sunrpc-clnt-bind-new-program.html index d92cd4d7..842e17af 100644 --- a/tapsets/API-sunrpc-clnt-bind-new-program.html +++ b/tapsets/API-sunrpc-clnt-bind-new-program.html @@ -1,17 +1,17 @@ probe::sunrpc.clnt.bind_new_program

Name

probe::sunrpc.clnt.bind_new_program — Bind a new RPC program to an existing client -

Synopsis

sunrpc.clnt.bind_new_program 

Values

old_vers

+

Synopsis

sunrpc.clnt.bind_new_program 

Values

old_vers

the version of old RPC program -

old_prog

- the number of old RPC program -

prog

- the number of new RPC program -

servername

- the server machine name +

vers

+ the version of new RPC program

progname

the name of new RPC program

old_progname

the name of old RPC program -

vers

- the version of new RPC program +

servername

+ the server machine name +

old_prog

+ the number of old RPC program +

prog

+ the number of new RPC program

diff --git a/tapsets/API-sunrpc-clnt-call-async.html b/tapsets/API-sunrpc-clnt-call-async.html index 896da17f..acdab8cd 100644 --- a/tapsets/API-sunrpc-clnt-call-async.html +++ b/tapsets/API-sunrpc-clnt-call-async.html @@ -1,25 +1,25 @@ probe::sunrpc.clnt.call_async

Name

probe::sunrpc.clnt.call_async — Make an asynchronous RPC call -

Synopsis

sunrpc.clnt.call_async 

Values

dead

+

Synopsis

sunrpc.clnt.call_async 

Values

xid

+ current transmission id +

flags

+ flags +

vers

+ the RPC program version number +

dead

whether this client is abandoned -

procname

- the procedure name in this RPC call

prog

the RPC program number +

prot

+ the IP protocol number

proc

the procedure number in this RPC call -

xid

- current transmission id -

port

- the port number -

flags

- flags

progname

the RPC program name

servername

the server machine name -

prot

- the IP protocol number -

vers

- the RPC program version number +

procname

+ the procedure name in this RPC call +

port

+ the port number

diff --git a/tapsets/API-sunrpc-clnt-call-sync.html b/tapsets/API-sunrpc-clnt-call-sync.html index 27aceb26..c9203c98 100644 --- a/tapsets/API-sunrpc-clnt-call-sync.html +++ b/tapsets/API-sunrpc-clnt-call-sync.html @@ -1,25 +1,25 @@ probe::sunrpc.clnt.call_sync

Name

probe::sunrpc.clnt.call_sync — Make a synchronous RPC call -

Synopsis

sunrpc.clnt.call_sync 

Values

vers

+

Synopsis

sunrpc.clnt.call_sync 

Values

dead

+ whether this client is abandoned +

vers

the RPC program version number -

proc

- the procedure number in this RPC call

xid

current transmission id +

flags

+ flags

port

the port number -

servername

- the server machine name +

procname

+ the procedure name in this RPC call

progname

the RPC program name -

flags

- flags +

servername

+ the server machine name

prot

the IP protocol number -

procname

- the procedure name in this RPC call +

proc

+ the procedure number in this RPC call

prog

the RPC program number -

dead

- whether this client is abandoned

diff --git a/tapsets/API-sunrpc-clnt-clone-client.html b/tapsets/API-sunrpc-clnt-clone-client.html index 497cbbec..67b93fad 100644 --- a/tapsets/API-sunrpc-clnt-clone-client.html +++ b/tapsets/API-sunrpc-clnt-clone-client.html @@ -1,17 +1,17 @@ probe::sunrpc.clnt.clone_client

Name

probe::sunrpc.clnt.clone_client — Clone an RPC client structure -

Synopsis

sunrpc.clnt.clone_client 

Values

vers

+

Synopsis

sunrpc.clnt.clone_client 

Values

prot

+ the IP protocol number +

vers

the RPC program version number +

authflavor

+ the authentication flavor

prog

the RPC program number

port

the port number -

authflavor

- the authentication flavor -

prot

- the IP protocol number -

servername

- the server machine name

progname

the RPC program name +

servername

+ the server machine name

diff --git a/tapsets/API-sunrpc-clnt-create-client.html b/tapsets/API-sunrpc-clnt-create-client.html index fe9522e5..fceaf869 100644 --- a/tapsets/API-sunrpc-clnt-create-client.html +++ b/tapsets/API-sunrpc-clnt-create-client.html @@ -1,17 +1,17 @@ probe::sunrpc.clnt.create_client

Name

probe::sunrpc.clnt.create_client — Create an RPC client -

Synopsis

sunrpc.clnt.create_client 

Values

servername

- the server machine name +

Synopsis

sunrpc.clnt.create_client 

Values

port

+ the port number

progname

the RPC program name +

servername

+ the server machine name

prot

the IP protocol number +

vers

+ the RPC program version number

authflavor

the authentication flavor -

port

- the port number

prog

the RPC program number -

vers

- the RPC program version number

diff --git a/tapsets/API-sunrpc-clnt-restart-call.html b/tapsets/API-sunrpc-clnt-restart-call.html index 9654ec25..75554fab 100644 --- a/tapsets/API-sunrpc-clnt-restart-call.html +++ b/tapsets/API-sunrpc-clnt-restart-call.html @@ -1,17 +1,17 @@ probe::sunrpc.clnt.restart_call

Name

probe::sunrpc.clnt.restart_call — Restart an asynchronous RPC call -

Synopsis

sunrpc.clnt.restart_call 

Values

servername

- the server machine name +

Synopsis

sunrpc.clnt.restart_call 

Values

xid

+ the transmission id

tk_priority

the task priority +

prog

+ the RPC program number

tk_pid

the debugging aid of task -

xid

- the transmission id

tk_flags

the task flags -

prog

- the RPC program number +

servername

+ the server machine name

tk_runstate

the task run status

diff --git a/tapsets/API-sunrpc-clnt-shutdown-client.html b/tapsets/API-sunrpc-clnt-shutdown-client.html index 07d28d00..edcfa3f7 100644 --- a/tapsets/API-sunrpc-clnt-shutdown-client.html +++ b/tapsets/API-sunrpc-clnt-shutdown-client.html @@ -1,39 +1,39 @@ probe::sunrpc.clnt.shutdown_client

Name

probe::sunrpc.clnt.shutdown_client — Shutdown an RPC client -

Synopsis

sunrpc.clnt.shutdown_client 

Values

tasks

- the number of references -

om_ops

- the count of operations -

om_queue

- the jiffies queued for xmit +

Synopsis

sunrpc.clnt.shutdown_client 

Values

vers

+ the RPC program version number

om_bytes_recv

the count of bytes in -

prog

- the RPC program number -

servername

- the server machine name -

progname

- the RPC program name

rpccnt

the count of RPC calls -

om_rtt

- the RPC RTT jiffies -

prot

- the IP protocol number

authflavor

the authentication flavor -

port

- the port number -

om_ntrans

- the count of RPC transmissions -

om_bytes_sent

- the count of bytes out +

prog

+ the RPC program number +

prot

+ the IP protocol number +

clones

+ the number of clones

om_execute

the RPC execution jiffies -

vers

- the RPC program version number

netreconn

the count of reconnections -

clones

- the number of clones +

om_queue

+ the jiffies queued for xmit +

progname

+ the RPC program name +

om_ntrans

+ the count of RPC transmissions +

om_rtt

+ the RPC RTT jiffies +

servername

+ the server machine name +

om_bytes_sent

+ the count of bytes out +

port

+ the port number +

om_ops

+ the count of operations +

tasks

+ the number of references

diff --git a/tapsets/API-sunrpc-sched-delay.html b/tapsets/API-sunrpc-sched-delay.html index eae7a8df..b4d9092d 100644 --- a/tapsets/API-sunrpc-sched-delay.html +++ b/tapsets/API-sunrpc-sched-delay.html @@ -1,17 +1,17 @@ probe::sunrpc.sched.delay

Name

probe::sunrpc.sched.delay — Delay an RPC task -

Synopsis

sunrpc.sched.delay 

Values

prog

+

Synopsis

sunrpc.sched.delay 

Values

prog

the program number in the RPC call -

tk_flags

- the flags of the task -

vers

- the program version in the RPC call

prot

the IP protocol in the RPC call +

tk_flags

+ the flags of the task +

tk_pid

+ the debugging id of the task

delay

the time delayed

xid

the transmission id in the RPC call -

tk_pid

- the debugging id of the task +

vers

+ the program version in the RPC call

diff --git a/tapsets/API-sunrpc-sched-execute.html b/tapsets/API-sunrpc-sched-execute.html index 748981de..e42d4025 100644 --- a/tapsets/API-sunrpc-sched-execute.html +++ b/tapsets/API-sunrpc-sched-execute.html @@ -1,15 +1,15 @@ probe::sunrpc.sched.execute

Name

probe::sunrpc.sched.execute — Execute the RPC `scheduler' -

Synopsis

sunrpc.sched.execute 

Values

xid

- the transmission id in the RPC call -

tk_pid

- the debugging id of the task +

Synopsis

sunrpc.sched.execute 

Values

prog

+ the program number in the RPC call

prot

the IP protocol in the RPC call -

vers

- the program version in the RPC call

tk_flags

the flags of the task -

prog

- the program number in the RPC call +

tk_pid

+ the debugging id of the task +

xid

+ the transmission id in the RPC call +

vers

+ the program version in the RPC call

diff --git a/tapsets/API-sunrpc-sched-new-task.html b/tapsets/API-sunrpc-sched-new-task.html index a6c4cb61..5f794803 100644 --- a/tapsets/API-sunrpc-sched-new-task.html +++ b/tapsets/API-sunrpc-sched-new-task.html @@ -1,13 +1,13 @@ probe::sunrpc.sched.new_task

Name

probe::sunrpc.sched.new_task — Create new task for the specified client -

Synopsis

sunrpc.sched.new_task 

Values

prog

+

Synopsis

sunrpc.sched.new_task 

Values

tk_flags

+ the flags of the task +

prot

+ the IP protocol in the RPC call +

prog

the program number in the RPC call

vers

the program version in the RPC call -

tk_flags

- the flags of the task

xid

the transmission id in the RPC call -

prot

- the IP protocol in the RPC call

diff --git a/tapsets/API-sunrpc-sched-release-task.html b/tapsets/API-sunrpc-sched-release-task.html index 4edcf417..2ce35236 100644 --- a/tapsets/API-sunrpc-sched-release-task.html +++ b/tapsets/API-sunrpc-sched-release-task.html @@ -1,16 +1,16 @@ probe::sunrpc.sched.release_task

Name

probe::sunrpc.sched.release_task — Release all resources associated with a task -

Synopsis

sunrpc.sched.release_task 

Values

prot

- the IP protocol in the RPC call -

xid

- the transmission id in the RPC call -

tk_flags

+

Synopsis

sunrpc.sched.release_task 

Values

tk_flags

the flags of the task -

vers

- the program version in the RPC call +

prot

+ the IP protocol in the RPC call

prog

the program number in the RPC call -

Description

+

vers

+ the program version in the RPC call +

xid

+ the transmission id in the RPC call +

Description

rpc_release_task function might not be found for a particular kernel. So, if we can't find it, just return '-1' for everything.

diff --git a/tapsets/API-sunrpc-svc-create.html b/tapsets/API-sunrpc-svc-create.html index d3f03d3e..187906b0 100644 --- a/tapsets/API-sunrpc-svc-create.html +++ b/tapsets/API-sunrpc-svc-create.html @@ -1,9 +1,9 @@ probe::sunrpc.svc.create

Name

probe::sunrpc.svc.create — Create an RPC service -

Synopsis

sunrpc.svc.create 

Values

progname

- the name of the program -

pg_nvers

+

Synopsis

sunrpc.svc.create 

Values

pg_nvers

the number of supported versions +

progname

+ the name of the program

bufsize

the buffer size

prog

diff --git a/tapsets/API-sunrpc-svc-destroy.html b/tapsets/API-sunrpc-svc-destroy.html index ae477cb7..76280df4 100644 --- a/tapsets/API-sunrpc-svc-destroy.html +++ b/tapsets/API-sunrpc-svc-destroy.html @@ -1,21 +1,21 @@ probe::sunrpc.svc.destroy

Name

probe::sunrpc.svc.destroy — Destroy an RPC service -

Synopsis

sunrpc.svc.destroy 

Values

rpccnt

- the count of valid RPC requests -

netcnt

- the count of received RPC requests -

sv_progname

- the name of the program -

rpcbadfmt

- the count of requests dropped for bad formats -

rpcbadauth

+

Synopsis

sunrpc.svc.destroy 

Values

rpcbadauth

the count of requests drooped for authentication failure +

nettcpconn

+ the count of accepted TCP connections +

rpccnt

+ the count of valid RPC requests

sv_prog

the number of the program +

rpcbadfmt

+ the count of requests dropped for bad formats

sv_name

the service name

sv_nrthreads

the number of concurrent threads -

nettcpconn

- the count of accepted TCP connections +

sv_progname

+ the name of the program +

netcnt

+ the count of received RPC requests

diff --git a/tapsets/API-sunrpc-svc-drop.html b/tapsets/API-sunrpc-svc-drop.html index 46ccf5bc..a3e39ee9 100644 --- a/tapsets/API-sunrpc-svc-drop.html +++ b/tapsets/API-sunrpc-svc-drop.html @@ -1,17 +1,17 @@ probe::sunrpc.svc.drop

Name

probe::sunrpc.svc.drop — Drop RPC request -

Synopsis

sunrpc.svc.drop 

Values

sv_name

+

Synopsis

sunrpc.svc.drop 

Values

peer_ip

+ the peer address where the request is from +

rq_vers

+ the program version in the request +

rq_xid

+ the transmission id in the request +

sv_name

the service name

rq_proc

the procedure number in the request -

rq_xid

- the transmission id in the request -

rq_vers

- the program version in the request

rq_prog

the program number in the request -

peer_ip

- the peer address where the request is from

rq_prot

the IP protocol of the reqeust

diff --git a/tapsets/API-sunrpc-svc-process.html b/tapsets/API-sunrpc-svc-process.html index c65ee9df..e0cec89c 100644 --- a/tapsets/API-sunrpc-svc-process.html +++ b/tapsets/API-sunrpc-svc-process.html @@ -1,21 +1,21 @@ probe::sunrpc.svc.process

Name

probe::sunrpc.svc.process — Process an RPC request -

Synopsis

sunrpc.svc.process 

Values

rq_prog

- the program number in the request -

peer_ip

- the peer address where the request is from -

rq_prot

- the IP protocol of the reqeust +

Synopsis

sunrpc.svc.process 

Values

sv_name

+ the service name

rq_proc

the procedure number in the request +

sv_nrthreads

+ the number of concurrent threads

rq_xid

the transmission id in the request +

rq_prot

+ the IP protocol of the reqeust +

rq_prog

+ the program number in the request

rq_vers

the program version in the request +

peer_ip

+ the peer address where the request is from

sv_prog

the number of the program -

sv_nrthreads

- the number of concurrent threads -

sv_name

- the service name

diff --git a/tapsets/API-sunrpc-svc-recv.html b/tapsets/API-sunrpc-svc-recv.html index b3faaa20..0005bb28 100644 --- a/tapsets/API-sunrpc-svc-recv.html +++ b/tapsets/API-sunrpc-svc-recv.html @@ -1,11 +1,11 @@ probe::sunrpc.svc.recv

Name

probe::sunrpc.svc.recv — Listen for the next RPC request on any socket -

Synopsis

sunrpc.svc.recv 

Values

sv_prog

- the number of the program -

sv_name

+

Synopsis

sunrpc.svc.recv 

Values

sv_name

the service name

sv_nrthreads

the number of concurrent threads +

sv_prog

+ the number of the program

timeout

the timeout of waiting for data

diff --git a/tapsets/API-sunrpc-svc-register.html b/tapsets/API-sunrpc-svc-register.html index e2e1b5b3..d969ba0d 100644 --- a/tapsets/API-sunrpc-svc-register.html +++ b/tapsets/API-sunrpc-svc-register.html @@ -1,15 +1,15 @@ probe::sunrpc.svc.register

Name

probe::sunrpc.svc.register — Register an RPC service with the local portmapper -

Synopsis

sunrpc.svc.register 

Values

progname

+

Synopsis

sunrpc.svc.register 

Values

progname

the name of the program -

prot

- the IP protocol number

port

the port number -

sv_name

- the service name

prog

the number of the program -

Description

+

sv_name

+ the service name +

prot

+ the IP protocol number +

Description

If proto and port are both 0, then unregister a service.

diff --git a/tapsets/API-sunrpc-svc-send.html b/tapsets/API-sunrpc-svc-send.html index 5f3f7637..fdbdc65f 100644 --- a/tapsets/API-sunrpc-svc-send.html +++ b/tapsets/API-sunrpc-svc-send.html @@ -1,17 +1,17 @@ probe::sunrpc.svc.send

Name

probe::sunrpc.svc.send — Return reply to RPC client -

Synopsis

sunrpc.svc.send 

Values

sv_name

- the service name -

rq_xid

- the transmission id in the request -

rq_proc

- the procedure number in the request +

Synopsis

sunrpc.svc.send 

Values

peer_ip

+ the peer address where the request is from

rq_vers

the program version in the request

rq_prot

the IP protocol of the reqeust -

peer_ip

- the peer address where the request is from

rq_prog

the program number in the request +

rq_xid

+ the transmission id in the request +

rq_proc

+ the procedure number in the request +

sv_name

+ the service name

diff --git a/tapsets/API-switch-file.html b/tapsets/API-switch-file.html index cd2c73d3..fefd6218 100644 --- a/tapsets/API-switch-file.html +++ b/tapsets/API-switch-file.html @@ -1,11 +1,11 @@ -function::switch_file

Name

function::switch_file — +function::switch_file

Name

function::switch_file — switch to the next output file

Synopsis

     switch_file()
-

Arguments

+

Arguments

None -

Description

+

Description

This function sends a signal to the stapio process, commanding it to rotate to the next output file when output is sent to file(s). -

+

diff --git a/tapsets/API-symdata.html b/tapsets/API-symdata.html index cd6e866b..76027fef 100644 --- a/tapsets/API-symdata.html +++ b/tapsets/API-symdata.html @@ -2,9 +2,9 @@ Return the kernel symbol and module offset for the address

Synopsis

     symdata:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The address to translate -

Description

+

Description

Returns the (function) symbol name associated with the given address if known, the offset from the start and size of the symbol, plus module name (between brackets). If symbol is unknown, diff --git a/tapsets/API-symfile.html b/tapsets/API-symfile.html index 1e8f741c..ba8d0eaa 100644 --- a/tapsets/API-symfile.html +++ b/tapsets/API-symfile.html @@ -2,9 +2,9 @@ Return the file name of a given address.

Synopsis

     symfile:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The address to translate. -

Description

+

Description

Returns the file name of the given address, if known. If the file name cannot be found, the hex string representation of the address will be returned. diff --git a/tapsets/API-symfileline.html b/tapsets/API-symfileline.html index 5abca7de..b8c66ee6 100644 --- a/tapsets/API-symfileline.html +++ b/tapsets/API-symfileline.html @@ -2,9 +2,9 @@ Return the file name and line number of an address.

Synopsis

     symfileline:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The address to translate. -

Description

+

Description

Returns the file name and the (approximate) line number of the given address, if known. If the file name or the line number cannot be found, the hex string representation of the address will be returned. diff --git a/tapsets/API-symline.html b/tapsets/API-symline.html index ca9116be..8ed90c53 100644 --- a/tapsets/API-symline.html +++ b/tapsets/API-symline.html @@ -2,9 +2,9 @@ Return the line number of an address.

Synopsis

     symline:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The address to translate. -

Description

+

Description

Returns the (approximate) line number of the given address, if known. If the line number cannot be found, the hex string representation of the address will be returned. diff --git a/tapsets/API-symname.html b/tapsets/API-symname.html index b1cdb492..8847b58d 100644 --- a/tapsets/API-symname.html +++ b/tapsets/API-symname.html @@ -2,9 +2,9 @@ Return the kernel symbol associated with the given address

Synopsis

     symname:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The address to translate -

Description

+

Description

Returns the (function) symbol name associated with the given address if known. If not known it will return the hex string representation of addr. diff --git a/tapsets/API-syscall-any-return.html b/tapsets/API-syscall-any-return.html index 5a1e2b37..0a2a7a24 100644 --- a/tapsets/API-syscall-any-return.html +++ b/tapsets/API-syscall-any-return.html @@ -1,14 +1,14 @@ -probe::syscall_any.return

Name

probe::syscall_any.return — +probe::syscall_any.return

Name

probe::syscall_any.return — Record exit from a syscall -

Synopsis

syscall_any.return 

Values

name

- name of the syscall -

retval

+

Synopsis

syscall_any.return 

Values

retval

return value of the syscall

syscall_nr

number of the syscall -

Context

+

name

+ name of the syscall +

Context

The process performing the syscall -

Description

+

Description

The syscall_any.return probe point is designed to be a low overhead that monitors all the syscalls returns via a kernel tracepoint. Because of the breadth of syscalls it monitors it provides @@ -19,4 +19,4 @@ This requires kernel 3.5+ and newer which have the kernel.trace(“sys_exit”) probe point. -

+

diff --git a/tapsets/API-syscall-any.html b/tapsets/API-syscall-any.html index 893c3cdc..d00e06a9 100644 --- a/tapsets/API-syscall-any.html +++ b/tapsets/API-syscall-any.html @@ -1,12 +1,12 @@ -probe::syscall_any

Name

probe::syscall_any — +probe::syscall_any

Name

probe::syscall_any — Record entry into a syscall -

Synopsis

syscall_any 

Values

syscall_nr

+

Synopsis

syscall_any 

Values

syscall_nr

number of the syscall

name

name of the syscall -

Context

+

Context

The process performing the syscall -

Description

+

Description

The syscall_any probe point is designed to be a low overhead that monitors all the syscalls entered via a kernel tracepoint. Because of the breadth of syscalls it monitors it provides @@ -16,4 +16,4 @@ This requires kernel 3.5+ and newer which have the kernel.trace(“sys_enter”) probe point. -

+

diff --git a/tapsets/API-system.html b/tapsets/API-system.html index a10d13e5..8abe9f25 100644 --- a/tapsets/API-system.html +++ b/tapsets/API-system.html @@ -2,9 +2,9 @@ Issue a command to the system

Synopsis

     system(cmd:string)
-

Arguments

cmd

+

Arguments

cmd

the command to issue to the system -

Description

+

Description

This function runs a command on the system. The command is started in the background some time after the current probe completes. The command is run with the same UID as the user diff --git a/tapsets/API-target-set-pid.html b/tapsets/API-target-set-pid.html index 8990e207..6ff71654 100644 --- a/tapsets/API-target-set-pid.html +++ b/tapsets/API-target-set-pid.html @@ -2,9 +2,9 @@ Does pid descend from target process?

Synopsis

     target_set_pid(pid:)
-

Arguments

pid

+

Arguments

pid

The pid of the process to query -

Description

+

Description

This function returns whether the given process-id is within the “target set”, that is whether it is a descendant of the top-level target process. diff --git a/tapsets/API-target-set-report.html b/tapsets/API-target-set-report.html index 0654c999..d1fec9cd 100644 --- a/tapsets/API-target-set-report.html +++ b/tapsets/API-target-set-report.html @@ -2,9 +2,9 @@ Print a report about the target set

Synopsis

     target_set_report()
-

Arguments

+

Arguments

None -

Description

+

Description

This function prints a report about the processes in the target set, and their ancestry.

diff --git a/tapsets/API-target.html b/tapsets/API-target.html index 327cab80..a542796d 100644 --- a/tapsets/API-target.html +++ b/tapsets/API-target.html @@ -2,9 +2,9 @@ Return the process ID of the target process

Synopsis

     target:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the process ID of the target process. This is useful in conjunction with the -x PID or -c CMD command-line options to stap. An example of its use is diff --git a/tapsets/API-task-ancestry.html b/tapsets/API-task-ancestry.html index 7fa72910..b1086382 100644 --- a/tapsets/API-task-ancestry.html +++ b/tapsets/API-task-ancestry.html @@ -2,12 +2,12 @@ The ancestry of the given task

Synopsis

     task_ancestry:string(task:long,with_time:long)
-

Arguments

task

+

Arguments

task

task_struct pointer

with_time

set to 1 to also print the start time of processes (given as a delta from boot time) -

Description

+

Description

Return the ancestry of the given task in the form of “grandparent_process=>parent_process=>process”.

diff --git a/tapsets/API-task-backtrace.html b/tapsets/API-task-backtrace.html index 050aa936..5e93958f 100644 --- a/tapsets/API-task-backtrace.html +++ b/tapsets/API-task-backtrace.html @@ -2,9 +2,9 @@ Hex backtrace of an arbitrary task

Synopsis

     task_backtrace:string(task:long)
-

Arguments

task

+

Arguments

task

pointer to task_struct -

Description

+

Description

This function returns a string of hex addresses that are a backtrace of the stack of a particular task Output may be truncated as per maximum string length. diff --git a/tapsets/API-task-cpu.html b/tapsets/API-task-cpu.html index 456e30a7..08067103 100644 --- a/tapsets/API-task-cpu.html +++ b/tapsets/API-task-cpu.html @@ -2,8 +2,8 @@ The scheduled cpu of the task

Synopsis

     task_cpu:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the scheduled cpu for the given task.

diff --git a/tapsets/API-task-current.html b/tapsets/API-task-current.html index 8c7db96a..64853216 100644 --- a/tapsets/API-task-current.html +++ b/tapsets/API-task-current.html @@ -2,9 +2,9 @@ The current task_struct of the current task

Synopsis

     task_current:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the task_struct representing the current process. This address can be passed to the various task_*() functions to extract more task-specific data. diff --git a/tapsets/API-task-cwd-path.html b/tapsets/API-task-cwd-path.html index 621d0273..c00247fa 100644 --- a/tapsets/API-task-cwd-path.html +++ b/tapsets/API-task-cwd-path.html @@ -2,6 +2,6 @@ get the path struct pointer for a task's current working directory

Synopsis

     task_cwd_path:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer.

diff --git a/tapsets/API-task-dentry-path.html b/tapsets/API-task-dentry-path.html index 87a34bf1..1c6ea2c7 100644 --- a/tapsets/API-task-dentry-path.html +++ b/tapsets/API-task-dentry-path.html @@ -2,13 +2,13 @@ get the full dentry path

Synopsis

     task_dentry_path:string(task:long,dentry:long,vfsmnt:long)
-

Arguments

task

+

Arguments

task

task_struct pointer.

dentry

direntry pointer.

vfsmnt

vfsmnt pointer. -

Description

+

Description

Returns the full dirent name (full path to the root), like diff --git a/tapsets/API-task-egid.html b/tapsets/API-task-egid.html index 22fe0b78..42934e3d 100644 --- a/tapsets/API-task-egid.html +++ b/tapsets/API-task-egid.html @@ -2,8 +2,8 @@ The effective group identifier of the task

Synopsis

     task_egid:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the effective group id of the given task.

diff --git a/tapsets/API-task-euid.html b/tapsets/API-task-euid.html index 602f3401..85bf1a3a 100644 --- a/tapsets/API-task-euid.html +++ b/tapsets/API-task-euid.html @@ -2,8 +2,8 @@ The effective user identifier of the task

Synopsis

     task_euid:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the effective user id of the given task.

diff --git a/tapsets/API-task-exe-file.html b/tapsets/API-task-exe-file.html index 3f700c79..ea6a97a1 100644 --- a/tapsets/API-task-exe-file.html +++ b/tapsets/API-task-exe-file.html @@ -2,6 +2,6 @@ get the file struct pointer for a task's executable file

Synopsis

     task_exe_file:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer.

diff --git a/tapsets/API-task-execname.html b/tapsets/API-task-execname.html index ef487916..2a70fc94 100644 --- a/tapsets/API-task-execname.html +++ b/tapsets/API-task-execname.html @@ -2,8 +2,8 @@ The name of the task

Synopsis

     task_execname:string(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

Return the name of the given task.

diff --git a/tapsets/API-task-fd-lookup.html b/tapsets/API-task-fd-lookup.html index f39cec36..52ec2995 100644 --- a/tapsets/API-task-fd-lookup.html +++ b/tapsets/API-task-fd-lookup.html @@ -2,11 +2,11 @@ get the file struct for a task's fd

Synopsis

     task_fd_lookup:long(task:long,fd:long)
-

Arguments

task

+

Arguments

task

task_struct pointer.

fd

file descriptor number. -

Description

+

Description

Returns the file struct pointer for a task's file descriptor.

diff --git a/tapsets/API-task-gid.html b/tapsets/API-task-gid.html index 1e1133a3..fa7c8d09 100644 --- a/tapsets/API-task-gid.html +++ b/tapsets/API-task-gid.html @@ -2,8 +2,8 @@ The group identifier of the task

Synopsis

     task_gid:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the group id of the given task.

diff --git a/tapsets/API-task-max-file-handles.html b/tapsets/API-task-max-file-handles.html index c4615c72..33d43808 100644 --- a/tapsets/API-task-max-file-handles.html +++ b/tapsets/API-task-max-file-handles.html @@ -2,8 +2,8 @@ The max number of open files for the task

Synopsis

     task_max_file_handles:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the maximum number of file handlers for the given task.

diff --git a/tapsets/API-task-nice.html b/tapsets/API-task-nice.html index 51abf086..bcf90c92 100644 --- a/tapsets/API-task-nice.html +++ b/tapsets/API-task-nice.html @@ -2,8 +2,8 @@ The nice value of the task

Synopsis

     task_nice:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the nice value of the given task.

diff --git a/tapsets/API-task-ns-egid.html b/tapsets/API-task-ns-egid.html index af6393f1..35261be9 100644 --- a/tapsets/API-task-ns-egid.html +++ b/tapsets/API-task-ns-egid.html @@ -2,8 +2,8 @@ The effective group identifier of the task

Synopsis

     task_ns_egid:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the effective group id of the given task.

diff --git a/tapsets/API-task-ns-euid.html b/tapsets/API-task-ns-euid.html index d3ef4919..31e828a3 100644 --- a/tapsets/API-task-ns-euid.html +++ b/tapsets/API-task-ns-euid.html @@ -2,8 +2,8 @@ The effective user identifier of the task

Synopsis

     task_ns_euid:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the effective user id of the given task.

diff --git a/tapsets/API-task-ns-gid.html b/tapsets/API-task-ns-gid.html index 1dfb5aa2..b4d5c50f 100644 --- a/tapsets/API-task-ns-gid.html +++ b/tapsets/API-task-ns-gid.html @@ -2,9 +2,9 @@ The group identifier of the task as seen in a namespace

Synopsis

     task_ns_gid:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the group id of the given task as seen in in the given user namespace.

diff --git a/tapsets/API-task-ns-pid.html b/tapsets/API-task-ns-pid.html index 2e48d0e7..75501c26 100644 --- a/tapsets/API-task-ns-pid.html +++ b/tapsets/API-task-ns-pid.html @@ -2,9 +2,9 @@ The process identifier of the task

Synopsis

     task_ns_pid:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This fucntion returns the process id of the given task based on the specified pid namespace..

diff --git a/tapsets/API-task-ns-tid.html b/tapsets/API-task-ns-tid.html index 2d0b0057..8b7e55f2 100644 --- a/tapsets/API-task-ns-tid.html +++ b/tapsets/API-task-ns-tid.html @@ -2,9 +2,9 @@ The thread identifier of the task as seen in a namespace

Synopsis

     task_ns_tid:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the thread id of the given task as seen in the pid namespace.

diff --git a/tapsets/API-task-ns-uid.html b/tapsets/API-task-ns-uid.html index 78a229f6..834975f9 100644 --- a/tapsets/API-task-ns-uid.html +++ b/tapsets/API-task-ns-uid.html @@ -2,8 +2,8 @@ The user identifier of the task

Synopsis

     task_ns_uid:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the user id of the given task.

diff --git a/tapsets/API-task-open-file-handles.html b/tapsets/API-task-open-file-handles.html index 39c8ab7a..dc817d8d 100644 --- a/tapsets/API-task-open-file-handles.html +++ b/tapsets/API-task-open-file-handles.html @@ -2,8 +2,8 @@ The number of open files of the task

Synopsis

     task_open_file_handles:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the number of open file handlers for the given task.

diff --git a/tapsets/API-task-parent.html b/tapsets/API-task-parent.html index 76458414..d17c420d 100644 --- a/tapsets/API-task-parent.html +++ b/tapsets/API-task-parent.html @@ -2,9 +2,9 @@ The task_struct of the parent task

Synopsis

     task_parent:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the parent task_struct of the given task. This address can be passed to the various task_*() functions to extract more task-specific data. diff --git a/tapsets/API-task-pid.html b/tapsets/API-task-pid.html index 04bafeac..53131de1 100644 --- a/tapsets/API-task-pid.html +++ b/tapsets/API-task-pid.html @@ -2,8 +2,8 @@ The process identifier of the task

Synopsis

     task_pid:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This fucntion returns the process id of the given task.

diff --git a/tapsets/API-task-prio.html b/tapsets/API-task-prio.html index 5af490b5..6a297f4c 100644 --- a/tapsets/API-task-prio.html +++ b/tapsets/API-task-prio.html @@ -2,8 +2,8 @@ The priority value of the task

Synopsis

     task_prio:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the priority value of the given task.

diff --git a/tapsets/API-task-start-time.html b/tapsets/API-task-start-time.html index 05139450..713447cb 100644 --- a/tapsets/API-task-start-time.html +++ b/tapsets/API-task-start-time.html @@ -2,9 +2,9 @@ Start time of the given task

Synopsis

     task_start_time:long(tid:long)
-

Arguments

tid

+

Arguments

tid

Thread id of the given task -

Description

+

Description

Returns the start time of the given task in nanoseconds since boot time or 0 if the task does not exist.

diff --git a/tapsets/API-task-state.html b/tapsets/API-task-state.html index 441b5373..826da5f1 100644 --- a/tapsets/API-task-state.html +++ b/tapsets/API-task-state.html @@ -2,9 +2,9 @@ The state of the task

Synopsis

     task_state:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

Return the state of the given task, one of: TASK_RUNNING (0), TASK_INTERRUPTIBLE (1), TASK_UNINTERRUPTIBLE (2), TASK_STOPPED (4), TASK_TRACED (8), EXIT_ZOMBIE (16), or EXIT_DEAD (32). diff --git a/tapsets/API-task-stime.html b/tapsets/API-task-stime.html index d897f8e8..122340dd 100644 --- a/tapsets/API-task-stime.html +++ b/tapsets/API-task-stime.html @@ -1,8 +1,8 @@ function::task_stime

Name

function::task_stime — System time of the task -

Synopsis

1) task_stime:long()
2) task_stime:long(tid:long)

Arguments

tid

+

Synopsis

1) task_stime:long()
2) task_stime:long(tid:long)

Arguments

tid

Thread id of the given task -

Description

1) Returns the system time of the current task in cputime. +

Description

1) Returns the system time of the current task in cputime. Does not include any time used by other tasks in this process, nor does it include any time of the children of this task.

2) Returns the system time of the given task in cputime, or zero if the task doesn't exist. diff --git a/tapsets/API-task-tid.html b/tapsets/API-task-tid.html index b88e0a66..e4347ac0 100644 --- a/tapsets/API-task-tid.html +++ b/tapsets/API-task-tid.html @@ -2,8 +2,8 @@ The thread identifier of the task

Synopsis

     task_tid:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the thread id of the given task.

diff --git a/tapsets/API-task-time-string-tid.html b/tapsets/API-task-time-string-tid.html index 3fe4bcd7..1d61186b 100644 --- a/tapsets/API-task-time-string-tid.html +++ b/tapsets/API-task-time-string-tid.html @@ -2,9 +2,9 @@ Human readable string of task time usage

Synopsis

     task_time_string_tid:string(tid:long)
-

Arguments

tid

+

Arguments

tid

Thread id of the given task -

Description

+

Description

Returns a human readable string showing the user and system time the given task has used up to now. For example “usr: 0m12.908s, sys: 1m6.851s”. diff --git a/tapsets/API-task-time-string.html b/tapsets/API-task-time-string.html index c67d5ad0..4a288556 100644 --- a/tapsets/API-task-time-string.html +++ b/tapsets/API-task-time-string.html @@ -2,9 +2,9 @@ Human readable string of task time usage

Synopsis

     task_time_string:string()
-

Arguments

+

Arguments

None -

Description

+

Description

Returns a human readable string showing the user and system time the current task has used up to now. For example “usr: 0m12.908s, sys: 1m6.851s”. diff --git a/tapsets/API-task-uid.html b/tapsets/API-task-uid.html index 0d3624e8..891a364a 100644 --- a/tapsets/API-task-uid.html +++ b/tapsets/API-task-uid.html @@ -2,8 +2,8 @@ The user identifier of the task

Synopsis

     task_uid:long(task:long)
-

Arguments

task

+

Arguments

task

task_struct pointer -

Description

+

Description

This function returns the user id of the given task.

diff --git a/tapsets/API-task-utime.html b/tapsets/API-task-utime.html index 498416d1..b4e5b781 100644 --- a/tapsets/API-task-utime.html +++ b/tapsets/API-task-utime.html @@ -1,8 +1,8 @@ function::task_utime

Name

function::task_utime — User time of the task -

Synopsis

1) task_utime:long()
2) task_utime:long(tid:long)

Arguments

tid

+

Synopsis

1) task_utime:long()
2) task_utime:long(tid:long)

Arguments

tid

Thread id of the given task -

Description

1) Returns the user time of the current task in cputime. +

Description

1) Returns the user time of the current task in cputime. Does not include any time used by other tasks in this process, nor does it include any time of the children of this task.

2) Returns the user time of the given task in cputime, or zero if the task doesn't exist. diff --git a/tapsets/API-tcp-disconnect-return.html b/tapsets/API-tcp-disconnect-return.html index 8b1942b9..af17c172 100644 --- a/tapsets/API-tcp-disconnect-return.html +++ b/tapsets/API-tcp-disconnect-return.html @@ -1,9 +1,9 @@ probe::tcp.disconnect.return

Name

probe::tcp.disconnect.return — TCP socket disconnection complete -

Synopsis

tcp.disconnect.return 

Values

name

+

Synopsis

tcp.disconnect.return 

Values

name

Name of this probe

ret

Error code (0: no error) -

Context

+

Context

The process which disconnects tcp

diff --git a/tapsets/API-tcp-disconnect.html b/tapsets/API-tcp-disconnect.html index 46cc51ab..b6e58a4d 100644 --- a/tapsets/API-tcp-disconnect.html +++ b/tapsets/API-tcp-disconnect.html @@ -1,21 +1,21 @@ probe::tcp.disconnect

Name

probe::tcp.disconnect — TCP socket disconnection -

Synopsis

tcp.disconnect 

Values

sock

- Network socket -

daddr

- A string representing the destination IP address +

Synopsis

tcp.disconnect 

Values

name

+ Name of this probe +

sport

+ TCP source port

flags

TCP flags (e.g. FIN, etc)

dport

TCP destination port -

name

- Name of this probe -

saddr

- A string representing the source IP address -

sport

- TCP source port

family

IP address family -

Context

+

daddr

+ A string representing the destination IP address +

sock

+ Network socket +

saddr

+ A string representing the source IP address +

Context

The process which disconnects tcp

diff --git a/tapsets/API-tcp-receive.html b/tapsets/API-tcp-receive.html index 40478a66..79b87a5e 100644 --- a/tapsets/API-tcp-receive.html +++ b/tapsets/API-tcp-receive.html @@ -1,31 +1,31 @@ probe::tcp.receive

Name

probe::tcp.receive — Called when a TCP packet is received -

Synopsis

tcp.receive 

Values

fin

- TCP FIN flag -

family

- IP address family -

saddr

- A string representing the source IP address -

name

- Name of the probe point -

dport

+

Synopsis

tcp.receive 

Values

dport

TCP destination port

iphdr

IP header address -

rst

- TCP RST flag +

syn

+ TCP SYN flag

protocol

Packet protocol from driver -

psh

- TCP PSH flag

sport

TCP source port -

urg

- TCP URG flag +

name

+ Name of the probe point

ack

TCP ACK flag -

syn

- TCP SYN flag +

saddr

+ A string representing the source IP address +

urg

+ TCP URG flag +

rst

+ TCP RST flag +

psh

+ TCP PSH flag

daddr

A string representing the destination IP address +

fin

+ TCP FIN flag +

family

+ IP address family

diff --git a/tapsets/API-tcp-recvmsg-return.html b/tapsets/API-tcp-recvmsg-return.html index 45c236a3..268596ed 100644 --- a/tapsets/API-tcp-recvmsg-return.html +++ b/tapsets/API-tcp-recvmsg-return.html @@ -1,19 +1,19 @@ probe::tcp.recvmsg.return

Name

probe::tcp.recvmsg.return — Receiving TCP message complete -

Synopsis

tcp.recvmsg.return 

Values

name

- Name of this probe -

dport

- TCP destination port +

Synopsis

tcp.recvmsg.return 

Values

family

+ IP address family

daddr

A string representing the destination IP address -

family

- IP address family -

sport

- TCP source port

saddr

A string representing the source IP address +

name

+ Name of this probe +

sport

+ TCP source port

size

Number of bytes received or error code if an error occurred. -

Context

+

dport

+ TCP destination port +

Context

The process which receives a tcp message

diff --git a/tapsets/API-tcp-recvmsg.html b/tapsets/API-tcp-recvmsg.html index 60dc090c..9e302ec2 100644 --- a/tapsets/API-tcp-recvmsg.html +++ b/tapsets/API-tcp-recvmsg.html @@ -1,21 +1,21 @@ probe::tcp.recvmsg

Name

probe::tcp.recvmsg — Receiving TCP message -

Synopsis

tcp.recvmsg 

Values

family

- IP address family +

Synopsis

tcp.recvmsg 

Values

size

+ Number of bytes to be received +

dport

+ TCP destination port +

name

+ Name of this probe

sport

TCP source port

saddr

A string representing the source IP address -

size

- Number of bytes to be received -

name

- Name of this probe -

dport

- TCP destination port +

family

+ IP address family

daddr

A string representing the destination IP address

sock

Network socket -

Context

+

Context

The process which receives a tcp message

diff --git a/tapsets/API-tcp-sendmsg-return.html b/tapsets/API-tcp-sendmsg-return.html index d6487ea1..6418056a 100644 --- a/tapsets/API-tcp-sendmsg-return.html +++ b/tapsets/API-tcp-sendmsg-return.html @@ -1,9 +1,9 @@ probe::tcp.sendmsg.return

Name

probe::tcp.sendmsg.return — Sending TCP message is done -

Synopsis

tcp.sendmsg.return 

Values

size

- Number of bytes sent or error code if an error occurred. -

name

+

Synopsis

tcp.sendmsg.return 

Values

name

Name of this probe -

Context

+

size

+ Number of bytes sent or error code if an error occurred. +

Context

The process which sends a tcp message

diff --git a/tapsets/API-tcp-sendmsg.html b/tapsets/API-tcp-sendmsg.html index 406d8cd6..9bf55c81 100644 --- a/tapsets/API-tcp-sendmsg.html +++ b/tapsets/API-tcp-sendmsg.html @@ -1,13 +1,13 @@ probe::tcp.sendmsg

Name

probe::tcp.sendmsg — Sending a tcp message -

Synopsis

tcp.sendmsg 

Values

name

+

Synopsis

tcp.sendmsg 

Values

size

+ Number of bytes to send +

name

Name of this probe

family

IP address family

sock

Network socket -

size

- Number of bytes to send -

Context

+

Context

The process which sends a tcp message

diff --git a/tapsets/API-tcp-setsockopt-return.html b/tapsets/API-tcp-setsockopt-return.html index 5f85230d..5356018c 100644 --- a/tapsets/API-tcp-setsockopt-return.html +++ b/tapsets/API-tcp-setsockopt-return.html @@ -1,9 +1,9 @@ probe::tcp.setsockopt.return

Name

probe::tcp.setsockopt.return — Return from setsockopt -

Synopsis

tcp.setsockopt.return 

Values

name

- Name of this probe -

ret

+

Synopsis

tcp.setsockopt.return 

Values

ret

Error code (0: no error) -

Context

+

name

+ Name of this probe +

Context

The process which calls setsockopt

diff --git a/tapsets/API-tcp-setsockopt.html b/tapsets/API-tcp-setsockopt.html index 1aba7032..ca6f3446 100644 --- a/tapsets/API-tcp-setsockopt.html +++ b/tapsets/API-tcp-setsockopt.html @@ -1,19 +1,19 @@ probe::tcp.setsockopt

Name

probe::tcp.setsockopt — Call to setsockopt -

Synopsis

tcp.setsockopt 

Values

family

- IP address family +

Synopsis

tcp.setsockopt 

Values

name

+ Name of this probe +

optlen

+ Used to access values for setsockopt

level

The level at which the socket options will be manipulated

optstr

Resolves optname to a human-readable format -

name

- Name of this probe -

optlen

- Used to access values for setsockopt -

sock

- Network socket

optname

TCP socket options (e.g. TCP_NODELAY, TCP_MAXSEG, etc) -

Context

+

sock

+ Network socket +

family

+ IP address family +

Context

The process which calls setsockopt

diff --git a/tapsets/API-tcpmib-ActiveOpens.html b/tapsets/API-tcpmib-ActiveOpens.html index 1641a5c5..7cb896b8 100644 --- a/tapsets/API-tcpmib-ActiveOpens.html +++ b/tapsets/API-tcpmib-ActiveOpens.html @@ -1,10 +1,10 @@ probe::tcpmib.ActiveOpens

Name

probe::tcpmib.ActiveOpens — Count an active opening of a socket -

Synopsis

tcpmib.ActiveOpens 

Values

op

+

Synopsis

tcpmib.ActiveOpens 

Values

op

value to be added to the counter (default value of 1)

sk

pointer to the struct sock being acted on -

Description

+

Description

The packet pointed to by skb is filtered by the function tcpmib_filter_key. If the packet passes the filter is is counted in the global ActiveOpens (equivalent to SNMP's MIB diff --git a/tapsets/API-tcpmib-AttemptFails.html b/tapsets/API-tcpmib-AttemptFails.html index 9f75267a..82a70a7f 100644 --- a/tapsets/API-tcpmib-AttemptFails.html +++ b/tapsets/API-tcpmib-AttemptFails.html @@ -1,10 +1,10 @@ probe::tcpmib.AttemptFails

Name

probe::tcpmib.AttemptFails — Count a failed attempt to open a socket -

Synopsis

tcpmib.AttemptFails 

Values

op

+

Synopsis

tcpmib.AttemptFails 

Values

op

value to be added to the counter (default value of 1)

sk

pointer to the struct sock being acted on -

Description

+

Description

The packet pointed to by skb is filtered by the function tcpmib_filter_key. If the packet passes the filter is is counted in the global AttemptFails (equivalent to SNMP's MIB diff --git a/tapsets/API-tcpmib-CurrEstab.html b/tapsets/API-tcpmib-CurrEstab.html index 2c697b76..072107df 100644 --- a/tapsets/API-tcpmib-CurrEstab.html +++ b/tapsets/API-tcpmib-CurrEstab.html @@ -1,10 +1,10 @@ probe::tcpmib.CurrEstab

Name

probe::tcpmib.CurrEstab — Update the count of open sockets -

Synopsis

tcpmib.CurrEstab 

Values

sk

+

Synopsis

tcpmib.CurrEstab 

Values

sk

pointer to the struct sock being acted on

op

value to be added to the counter (default value of 1) -

Description

+

Description

The packet pointed to by skb is filtered by the function tcpmib_filter_key. If the packet passes the filter is is counted in the global CurrEstab (equivalent to SNMP's MIB diff --git a/tapsets/API-tcpmib-EstabResets.html b/tapsets/API-tcpmib-EstabResets.html index 52a4c7e8..1657ea31 100644 --- a/tapsets/API-tcpmib-EstabResets.html +++ b/tapsets/API-tcpmib-EstabResets.html @@ -1,10 +1,10 @@ probe::tcpmib.EstabResets

Name

probe::tcpmib.EstabResets — Count the reset of a socket -

Synopsis

tcpmib.EstabResets 

Values

op

+

Synopsis

tcpmib.EstabResets 

Values

op

value to be added to the counter (default value of 1)

sk

pointer to the struct sock being acted on -

Description

+

Description

The packet pointed to by skb is filtered by the function tcpmib_filter_key. If the packet passes the filter is is counted in the global EstabResets (equivalent to SNMP's MIB diff --git a/tapsets/API-tcpmib-InSegs.html b/tapsets/API-tcpmib-InSegs.html index 82abc285..c390871a 100644 --- a/tapsets/API-tcpmib-InSegs.html +++ b/tapsets/API-tcpmib-InSegs.html @@ -1,10 +1,10 @@ probe::tcpmib.InSegs

Name

probe::tcpmib.InSegs — Count an incoming tcp segment -

Synopsis

tcpmib.InSegs 

Values

sk

- pointer to the struct sock being acted on -

op

+

Synopsis

tcpmib.InSegs 

Values

op

value to be added to the counter (default value of 1) -

Description

+

sk

+ pointer to the struct sock being acted on +

Description

The packet pointed to by skb is filtered by the function tcpmib_filter_key (or ipmib_filter_key for tcp v4). If the packet passes the filter is is diff --git a/tapsets/API-tcpmib-OutRsts.html b/tapsets/API-tcpmib-OutRsts.html index 536953b4..27a3243c 100644 --- a/tapsets/API-tcpmib-OutRsts.html +++ b/tapsets/API-tcpmib-OutRsts.html @@ -1,10 +1,10 @@ probe::tcpmib.OutRsts

Name

probe::tcpmib.OutRsts — Count the sending of a reset packet -

Synopsis

tcpmib.OutRsts 

Values

sk

- pointer to the struct sock being acted on -

op

+

Synopsis

tcpmib.OutRsts 

Values

op

value to be added to the counter (default value of 1) -

Description

+

sk

+ pointer to the struct sock being acted on +

Description

The packet pointed to by skb is filtered by the function tcpmib_filter_key. If the packet passes the filter is is counted in the global OutRsts (equivalent to SNMP's MIB diff --git a/tapsets/API-tcpmib-OutSegs.html b/tapsets/API-tcpmib-OutSegs.html index 4c9389f2..a88d8212 100644 --- a/tapsets/API-tcpmib-OutSegs.html +++ b/tapsets/API-tcpmib-OutSegs.html @@ -1,10 +1,10 @@ probe::tcpmib.OutSegs

Name

probe::tcpmib.OutSegs — Count the sending of a TCP segment -

Synopsis

tcpmib.OutSegs 

Values

op

+

Synopsis

tcpmib.OutSegs 

Values

op

value to be added to the counter (default value of 1)

sk

pointer to the struct sock being acted on -

Description

+

Description

The packet pointed to by skb is filtered by the function tcpmib_filter_key. If the packet passes the filter is is counted in the global OutSegs (equivalent to SNMP's MIB diff --git a/tapsets/API-tcpmib-PassiveOpens.html b/tapsets/API-tcpmib-PassiveOpens.html index 4c0d4a57..e8ab8231 100644 --- a/tapsets/API-tcpmib-PassiveOpens.html +++ b/tapsets/API-tcpmib-PassiveOpens.html @@ -1,10 +1,10 @@ probe::tcpmib.PassiveOpens

Name

probe::tcpmib.PassiveOpens — Count the passive creation of a socket -

Synopsis

tcpmib.PassiveOpens 

Values

op

- value to be added to the counter (default value of 1) -

sk

+

Synopsis

tcpmib.PassiveOpens 

Values

sk

pointer to the struct sock being acted on -

Description

+

op

+ value to be added to the counter (default value of 1) +

Description

The packet pointed to by skb is filtered by the function tcpmib_filter_key. If the packet passes the filter is is counted in the global PassiveOpens (equivalent to SNMP's MIB diff --git a/tapsets/API-tcpmib-RetransSegs.html b/tapsets/API-tcpmib-RetransSegs.html index e0f434eb..0e3e0a83 100644 --- a/tapsets/API-tcpmib-RetransSegs.html +++ b/tapsets/API-tcpmib-RetransSegs.html @@ -1,10 +1,10 @@ probe::tcpmib.RetransSegs

Name

probe::tcpmib.RetransSegs — Count the retransmission of a TCP segment -

Synopsis

tcpmib.RetransSegs 

Values

op

+

Synopsis

tcpmib.RetransSegs 

Values

op

value to be added to the counter (default value of 1)

sk

pointer to the struct sock being acted on -

Description

+

Description

The packet pointed to by skb is filtered by the function tcpmib_filter_key. If the packet passes the filter is is counted in the global RetransSegs (equivalent to SNMP's MIB diff --git a/tapsets/API-tcpmib-filter-key.html b/tapsets/API-tcpmib-filter-key.html index 9c093bdc..0f37dad8 100644 --- a/tapsets/API-tcpmib-filter-key.html +++ b/tapsets/API-tcpmib-filter-key.html @@ -2,11 +2,11 @@ Default filter function for tcpmib.* probes

Synopsis

     tcpmib_filter_key:long(sk:long,op:long)
-

Arguments

sk

+

Arguments

sk

pointer to the struct sock being acted on

op

value to be counted if sk passes the filter -

Description

+

Description

This function is a default filter function. The user can replace this function with their own. The user-supplied filter function returns an index key based on the values diff --git a/tapsets/API-tcpmib-get-state.html b/tapsets/API-tcpmib-get-state.html index 1418f488..79dc4044 100644 --- a/tapsets/API-tcpmib-get-state.html +++ b/tapsets/API-tcpmib-get-state.html @@ -2,8 +2,8 @@ Get a socket's state

Synopsis

     tcpmib_get_state:long(sk:long)
-

Arguments

sk

+

Arguments

sk

pointer to a struct sock -

Description

+

Description

Returns the sk_state from a struct sock.

diff --git a/tapsets/API-tcpmib-local-addr.html b/tapsets/API-tcpmib-local-addr.html index 70f196d4..91aaf9f4 100644 --- a/tapsets/API-tcpmib-local-addr.html +++ b/tapsets/API-tcpmib-local-addr.html @@ -2,8 +2,8 @@ Get the source address

Synopsis

     tcpmib_local_addr:long(sk:long)
-

Arguments

sk

+

Arguments

sk

pointer to a struct inet_sock -

Description

+

Description

Returns the saddr from a struct inet_sock in host order.

diff --git a/tapsets/API-tcpmib-local-port.html b/tapsets/API-tcpmib-local-port.html index 3ea1e4e4..ad61fc0b 100644 --- a/tapsets/API-tcpmib-local-port.html +++ b/tapsets/API-tcpmib-local-port.html @@ -2,8 +2,8 @@ Get the local port

Synopsis

     tcpmib_local_port:long(sk:long)
-

Arguments

sk

+

Arguments

sk

pointer to a struct inet_sock -

Description

+

Description

Returns the sport from a struct inet_sock in host order.

diff --git a/tapsets/API-tcpmib-remote-addr.html b/tapsets/API-tcpmib-remote-addr.html index 7e58f60e..be42e56d 100644 --- a/tapsets/API-tcpmib-remote-addr.html +++ b/tapsets/API-tcpmib-remote-addr.html @@ -2,8 +2,8 @@ Get the remote address

Synopsis

     tcpmib_remote_addr:long(sk:long)
-

Arguments

sk

+

Arguments

sk

pointer to a struct inet_sock -

Description

+

Description

Returns the daddr from a struct inet_sock in host order.

diff --git a/tapsets/API-tcpmib-remote-port.html b/tapsets/API-tcpmib-remote-port.html index 457197cb..80f792e5 100644 --- a/tapsets/API-tcpmib-remote-port.html +++ b/tapsets/API-tcpmib-remote-port.html @@ -2,8 +2,8 @@ Get the remote port

Synopsis

     tcpmib_remote_port:long(sk:long)
-

Arguments

sk

+

Arguments

sk

pointer to a struct inet_sock -

Description

+

Description

Returns the dport from a struct inet_sock in host order.

diff --git a/tapsets/API-text-str.html b/tapsets/API-text-str.html index ce5ac245..89764eb7 100644 --- a/tapsets/API-text-str.html +++ b/tapsets/API-text-str.html @@ -2,9 +2,9 @@ Escape any non-printable chars in a string

Synopsis

     text_str:string(input:string)
-

Arguments

input

+

Arguments

input

the string to escape -

Description

+

Description

This function accepts a string argument, and any ASCII characters that are not printable are replaced by the corresponding escape sequence in the diff --git a/tapsets/API-text-strn.html b/tapsets/API-text-strn.html index 0876fe7c..b3fdf5a7 100644 --- a/tapsets/API-text-strn.html +++ b/tapsets/API-text-strn.html @@ -2,14 +2,14 @@ Escape any non-printable chars in a string

Synopsis

     text_strn:string(input:string,len:long,quoted:long)
-

Arguments

input

+

Arguments

input

the string to escape

len

maximum length of string to return (0 implies MAXSTRINGLEN)

quoted

put double quotes around the string. If input string is truncated it will have “...” after the second quote -

Description

+

Description

This function accepts a string of designated length, and any ASCII characters that are not printable are replaced by the corresponding escape sequence in the diff --git a/tapsets/API-thread-indent-depth.html b/tapsets/API-thread-indent-depth.html index 63e8f76f..a9c0a908 100644 --- a/tapsets/API-thread-indent-depth.html +++ b/tapsets/API-thread-indent-depth.html @@ -2,9 +2,9 @@ returns the nested-depth of the current task

Synopsis

     thread_indent_depth:long(delta:long)
-

Arguments

delta

+

Arguments

delta

the amount of depth added/removed for each call -

Description

+

Description

This function returns an integer equal to the nested function-call depth starting from the outermost initial level. This function is useful for saving space (consumed by whitespace) in traces with long diff --git a/tapsets/API-thread-indent.html b/tapsets/API-thread-indent.html index 54934ad1..0e4e992f 100644 --- a/tapsets/API-thread-indent.html +++ b/tapsets/API-thread-indent.html @@ -2,9 +2,9 @@ returns an amount of space with the current task information

Synopsis

     thread_indent:string(delta:long)
-

Arguments

delta

+

Arguments

delta

the amount of space added/removed for each call -

Description

+

Description

This function returns a string with appropriate indentation for a thread. Call it with a small positive or matching negative delta. If this is the real outermost, diff --git a/tapsets/API-tid.html b/tapsets/API-tid.html index 4042be6a..2dcea78f 100644 --- a/tapsets/API-tid.html +++ b/tapsets/API-tid.html @@ -2,8 +2,8 @@ Returns the thread ID of a target process

Synopsis

     tid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the thread ID of the target process.

diff --git a/tapsets/API-tokenize.html b/tapsets/API-tokenize.html index 5e745613..cfe8b462 100644 --- a/tapsets/API-tokenize.html +++ b/tapsets/API-tokenize.html @@ -1,11 +1,11 @@ function::tokenize

Name

function::tokenize — Return the next non-empty token in a string -

Synopsis

1) tokenize:string(delim:string)
2) tokenize:string(input:string,delim:string)

Arguments

delim

+

Synopsis

1) tokenize:string(delim:string)
2) tokenize:string(input:string,delim:string)

Arguments

delim

set of characters that delimit the tokens

input

string to tokenize. If empty, returns the next non-empty token in the string passed in the previous call to tokenize. -

Description

1) This function returns the next token in the string +

Description

1) This function returns the next token in the string passed in the previous call to tokenize. If no delimiter is found, the entire remaining input string is * returned. It returns empty when no more tokens are available.

2) This function returns the next non-empty token in the diff --git a/tapsets/API-tty-init.html b/tapsets/API-tty-init.html index c3a22f74..b343c884 100644 --- a/tapsets/API-tty-init.html +++ b/tapsets/API-tty-init.html @@ -1,9 +1,9 @@ probe::tty.init

Name

probe::tty.init — Called when a tty is being initalized -

Synopsis

tty.init 

Values

driver_name

- the driver name -

name

+

Synopsis

tty.init 

Values

name

the driver .dev_name name

module

the module name +

driver_name

+ the driver name

diff --git a/tapsets/API-tty-ioctl.html b/tapsets/API-tty-ioctl.html index 711ffc60..8d05577b 100644 --- a/tapsets/API-tty-ioctl.html +++ b/tapsets/API-tty-ioctl.html @@ -1,9 +1,9 @@ probe::tty.ioctl

Name

probe::tty.ioctl — called when a ioctl is request to the tty -

Synopsis

tty.ioctl 

Values

cmd

- the ioctl command -

name

+

Synopsis

tty.ioctl 

Values

name

the file name

arg

the ioctl argument +

cmd

+ the ioctl command

diff --git a/tapsets/API-tty-open.html b/tapsets/API-tty-open.html index b2245a73..6bd933be 100644 --- a/tapsets/API-tty-open.html +++ b/tapsets/API-tty-open.html @@ -1,15 +1,15 @@ probe::tty.open

Name

probe::tty.open — Called when a tty is opened -

Synopsis

tty.open 

Values

file_flags

- the file flags -

inode_number

- the inode number -

file_name

- the file name -

file_mode

+

Synopsis

tty.open 

Values

file_mode

the file mode

inode_flags

the inode flags +

file_name

+ the file name

inode_state

the inode state +

inode_number

+ the inode number +

file_flags

+ the file flags

diff --git a/tapsets/API-tty-poll.html b/tapsets/API-tty-poll.html index a8cc16e4..6fa8024d 100644 --- a/tapsets/API-tty-poll.html +++ b/tapsets/API-tty-poll.html @@ -1,7 +1,7 @@ probe::tty.poll

Name

probe::tty.poll — Called when a tty device is being polled -

Synopsis

tty.poll 

Values

wait_key

- the wait queue key -

file_name

+

Synopsis

tty.poll 

Values

file_name

the tty file name +

wait_key

+ the wait queue key

diff --git a/tapsets/API-tty-read.html b/tapsets/API-tty-read.html index e42c9a83..2f0f9215 100644 --- a/tapsets/API-tty-read.html +++ b/tapsets/API-tty-read.html @@ -1,11 +1,11 @@ probe::tty.read

Name

probe::tty.read — called when a tty line will be read -

Synopsis

tty.read 

Values

file_name

- the file name lreated to the tty +

Synopsis

tty.read 

Values

nr

+ The amount of characters to be read

buffer

the buffer that will receive the characters -

nr

- The amount of characters to be read +

file_name

+ the file name lreated to the tty

driver_name

the driver name

diff --git a/tapsets/API-tty-receive.html b/tapsets/API-tty-receive.html index a6a4a36e..7401468b 100644 --- a/tapsets/API-tty-receive.html +++ b/tapsets/API-tty-receive.html @@ -1,17 +1,17 @@ probe::tty.receive

Name

probe::tty.receive — called when a tty receives a message -

Synopsis

tty.receive 

Values

cp

- the buffer that was received -

count

- The amount of characters received -

fp

- The flag buffer -

driver_name

- the driver name +

Synopsis

tty.receive 

Values

index

+ The tty Index

id

the tty id -

index

- The tty Index +

fp

+ The flag buffer

name

the name of the module file +

cp

+ the buffer that was received +

driver_name

+ the driver name +

count

+ The amount of characters received

diff --git a/tapsets/API-tty-register.html b/tapsets/API-tty-register.html index 7ea0eb99..579e4f0b 100644 --- a/tapsets/API-tty-register.html +++ b/tapsets/API-tty-register.html @@ -1,11 +1,11 @@ probe::tty.register

Name

probe::tty.register — Called when a tty device is registred -

Synopsis

tty.register 

Values

index

- the tty index requested -

module

+

Synopsis

tty.register 

Values

module

the module name -

name

- the driver .dev_name name

driver_name

the driver name +

index

+ the tty index requested +

name

+ the driver .dev_name name

diff --git a/tapsets/API-tty-release.html b/tapsets/API-tty-release.html index 94f3f493..7112ed37 100644 --- a/tapsets/API-tty-release.html +++ b/tapsets/API-tty-release.html @@ -1,13 +1,13 @@ probe::tty.release

Name

probe::tty.release — Called when the tty is closed -

Synopsis

tty.release 

Values

inode_state

+

Synopsis

tty.release 

Values

inode_state

the inode state -

inode_flags

- the inode flags

file_mode

the file mode

file_name

the file name +

inode_flags

+ the inode flags

inode_number

the inode number

file_flags

diff --git a/tapsets/API-tty-resize.html b/tapsets/API-tty-resize.html index 414f36e5..906530da 100644 --- a/tapsets/API-tty-resize.html +++ b/tapsets/API-tty-resize.html @@ -1,21 +1,21 @@ probe::tty.resize

Name

probe::tty.resize — Called when a terminal resize happens -

Synopsis

tty.resize 

Values

new_ypixel

- the new ypixel value -

new_row

- the new row value -

old_xpixel

- the old xpixel -

old_col

- the old col value -

name

- the tty name -

old_ypixel

- the old ypixel -

old_row

+

Synopsis

tty.resize 

Values

old_row

the old row value

new_xpixel

the new xpixel value +

old_ypixel

+ the old ypixel

new_col

the new col value +

old_xpixel

+ the old xpixel +

name

+ the tty name +

old_col

+ the old col value +

new_ypixel

+ the new ypixel value +

new_row

+ the new row value

diff --git a/tapsets/API-tty-unregister.html b/tapsets/API-tty-unregister.html index bbfa36b7..2fb1932c 100644 --- a/tapsets/API-tty-unregister.html +++ b/tapsets/API-tty-unregister.html @@ -1,11 +1,11 @@ probe::tty.unregister

Name

probe::tty.unregister — Called when a tty device is being unregistered -

Synopsis

tty.unregister 

Values

driver_name

- the driver name -

module

- the module name -

name

+

Synopsis

tty.unregister 

Values

name

the driver .dev_name name

index

the tty index requested +

driver_name

+ the driver name +

module

+ the module name

diff --git a/tapsets/API-tty-write.html b/tapsets/API-tty-write.html index 422dda8d..57d1d46e 100644 --- a/tapsets/API-tty-write.html +++ b/tapsets/API-tty-write.html @@ -1,11 +1,11 @@ probe::tty.write

Name

probe::tty.write — write to the tty line -

Synopsis

tty.write 

Values

file_name

+

Synopsis

tty.write 

Values

file_name

the file name lreated to the tty -

nr

- The amount of characters

buffer

the buffer that will be written

driver_name

the driver name +

nr

+ The amount of characters

diff --git a/tapsets/API-tz-ctime.html b/tapsets/API-tz-ctime.html index 9de83733..f7f8b11a 100644 --- a/tapsets/API-tz-ctime.html +++ b/tapsets/API-tz-ctime.html @@ -2,9 +2,9 @@ Convert seconds since epoch into human readable date/time string, with local time zone

Synopsis

     tz_ctime(epochsecs:)
-

Arguments

epochsecs

+

Arguments

epochsecs

number of seconds since epoch (as returned by gettimeofday_s) -

Description

+

Description

Takes an argument of seconds since the epoch as returned by gettimeofday_s. Returns a string of the same form as ctime, but offsets the epoch time for the local time zone, and appends the name of the diff --git a/tapsets/API-tz-gmtoff.html b/tapsets/API-tz-gmtoff.html index 5ca11eaf..57dc6193 100644 --- a/tapsets/API-tz-gmtoff.html +++ b/tapsets/API-tz-gmtoff.html @@ -2,9 +2,9 @@ Return local time zone offset

Synopsis

     tz_gmtoff()
-

Arguments

+

Arguments

None -

Description

+

Description

Returns the local time zone offset (seconds west of UTC), as passed by staprun at script startup only.

diff --git a/tapsets/API-tz-name.html b/tapsets/API-tz-name.html index 0586d882..9a81fdf4 100644 --- a/tapsets/API-tz-name.html +++ b/tapsets/API-tz-name.html @@ -2,9 +2,9 @@ Return local time zone name

Synopsis

     tz_name()
-

Arguments

+

Arguments

None -

Description

+

Description

Returns the local time zone name, as passed by staprun at script startup only.

diff --git a/tapsets/API-u-register.html b/tapsets/API-u-register.html index 6703a3c5..e242d79e 100644 --- a/tapsets/API-u-register.html +++ b/tapsets/API-u-register.html @@ -2,9 +2,9 @@ Return the unsigned value of the named CPU register

Synopsis

     u_register:long(name:string)
-

Arguments

name

+

Arguments

name

Name of the register to return -

Description

+

Description

Same as register(name), except that if the register is 32 bits wide, it is zero-extended to 64 bits.

diff --git a/tapsets/API-u32-arg.html b/tapsets/API-u32-arg.html index 154d967b..25f5ab95 100644 --- a/tapsets/API-u32-arg.html +++ b/tapsets/API-u32-arg.html @@ -2,9 +2,9 @@ Return function argument as unsigned 32-bit value

Synopsis

     u32_arg:long(n:long)
-

Arguments

n

+

Arguments

n

index of argument to return -

Description

+

Description

Return the unsigned 32-bit value of argument n, same as uint_arg.

diff --git a/tapsets/API-u64-arg.html b/tapsets/API-u64-arg.html index 00987e83..70329d93 100644 --- a/tapsets/API-u64-arg.html +++ b/tapsets/API-u64-arg.html @@ -2,9 +2,9 @@ Return function argument as unsigned 64-bit value

Synopsis

     u64_arg:long(n:long)
-

Arguments

n

+

Arguments

n

index of argument to return -

Description

+

Description

Return the unsigned 64-bit value of argument n, same as ulonglong_arg.

diff --git a/tapsets/API-uaddr.html b/tapsets/API-uaddr.html index 4916f9ef..b6f4e224 100644 --- a/tapsets/API-uaddr.html +++ b/tapsets/API-uaddr.html @@ -2,9 +2,9 @@ User space address of current running task

Synopsis

     uaddr:long()
-

Arguments

+

Arguments

None -

Description

+

Description

Returns the address in userspace that the current task was at when the probe occurred. When the current running task isn't a user space thread, or the address cannot be found, zero diff --git a/tapsets/API-ubacktrace.html b/tapsets/API-ubacktrace.html index e644e182..2a51f043 100644 --- a/tapsets/API-ubacktrace.html +++ b/tapsets/API-ubacktrace.html @@ -2,16 +2,16 @@ Hex backtrace of current user-space task stack.

Synopsis

     ubacktrace:string()
-

Arguments

+

Arguments

None -

Description

+

Description

Return a string of hex addresses that are a backtrace of the stack of the current task. Output may be truncated as per maximum string length. Returns empty string when current probe point cannot determine user backtrace. See backtrace for kernel traceback. -

Note

+

Note

To get (full) backtraces for user space applications and shared shared libraries not mentioned in the current script run stap with -d /path/to/exe-or-so and/or add --ldd to load all needed unwind data. diff --git a/tapsets/API-ucallers.html b/tapsets/API-ucallers.html index 5310b2a1..68926fa7 100644 --- a/tapsets/API-ucallers.html +++ b/tapsets/API-ucallers.html @@ -2,14 +2,14 @@ Return first n elements of user stack backtrace

Synopsis

     ucallers:string(n:long)
-

Arguments

n

+

Arguments

n

number of levels to descend in the stack (not counting the top level). If n is -1, print the entire stack. -

Description

+

Description

This function returns a string of the first n hex addresses from the backtrace of the user stack. Output may be truncated as per maximum string length (MAXSTRINGLEN). -

Note

+

Note

To get (full) backtraces for user space applications and shared shared libraries not mentioned in the current script run stap with -d /path/to/exe-or-so and/or add --ldd to load all needed unwind data. diff --git a/tapsets/API-udelay.html b/tapsets/API-udelay.html index c4fb0b3f..98a335b5 100644 --- a/tapsets/API-udelay.html +++ b/tapsets/API-udelay.html @@ -2,9 +2,9 @@ microsecond delay

Synopsis

     udelay(us:long)
-

Arguments

us

+

Arguments

us

Number of microseconds to delay. -

Description

+

Description

This function inserts a multi-microsecond busy-delay into a probe handler. It requires guru mode.

diff --git a/tapsets/API-udp-disconnect-return.html b/tapsets/API-udp-disconnect-return.html index 47b965ec..d69a2981 100644 --- a/tapsets/API-udp-disconnect-return.html +++ b/tapsets/API-udp-disconnect-return.html @@ -1,19 +1,19 @@ probe::udp.disconnect.return

Name

probe::udp.disconnect.return — UDP has been disconnected successfully -

Synopsis

udp.disconnect.return 

Values

sport

- UDP source port +

Synopsis

udp.disconnect.return 

Values

ret

+ Error code (0: no error)

saddr

A string representing the source IP address -

ret

- Error code (0: no error) +

sport

+ UDP source port +

name

+ The name of this probe

dport

UDP destination port

daddr

A string representing the destination IP address

family

IP address family -

name

- The name of this probe -

Context

+

Context

The process which requested a UDP disconnection

diff --git a/tapsets/API-udp-disconnect.html b/tapsets/API-udp-disconnect.html index 2129fe1f..01f6f076 100644 --- a/tapsets/API-udp-disconnect.html +++ b/tapsets/API-udp-disconnect.html @@ -1,21 +1,21 @@ probe::udp.disconnect

Name

probe::udp.disconnect — Fires when a process requests for a UDP disconnection -

Synopsis

udp.disconnect 

Values

sport

+

Synopsis

udp.disconnect 

Values

family

+ IP address family +

name

+ The name of this probe +

sport

UDP source port

saddr

A string representing the source IP address -

flags

- Flags (e.g. FIN, etc) +

daddr

+ A string representing the destination IP address

dport

UDP destination port -

name

- The name of this probe -

family

- IP address family +

flags

+ Flags (e.g. FIN, etc)

sock

Network socket used by the process -

daddr

- A string representing the destination IP address -

Context

+

Context

The process which requests a UDP disconnection

diff --git a/tapsets/API-udp-recvmsg-return.html b/tapsets/API-udp-recvmsg-return.html index 775d84fe..7a8808a2 100644 --- a/tapsets/API-udp-recvmsg-return.html +++ b/tapsets/API-udp-recvmsg-return.html @@ -1,19 +1,19 @@ probe::udp.recvmsg.return

Name

probe::udp.recvmsg.return — Fires whenever an attempt to receive a UDP message received is completed -

Synopsis

udp.recvmsg.return 

Values

name

- The name of this probe -

family

+

Synopsis

udp.recvmsg.return 

Values

family

IP address family

daddr

A string representing the destination IP address

dport

UDP destination port -

saddr

- A string representing the source IP address +

name

+ The name of this probe

sport

UDP source port +

saddr

+ A string representing the source IP address

size

Number of bytes received by the process -

Context

+

Context

The process which received a UDP message

diff --git a/tapsets/API-udp-recvmsg.html b/tapsets/API-udp-recvmsg.html index 0e648c5a..15f89c02 100644 --- a/tapsets/API-udp-recvmsg.html +++ b/tapsets/API-udp-recvmsg.html @@ -1,21 +1,21 @@ probe::udp.recvmsg

Name

probe::udp.recvmsg — Fires whenever a UDP message is received -

Synopsis

udp.recvmsg 

Values

daddr

- A string representing the destination IP address -

sock

- Network socket used by the process -

family

+

Synopsis

udp.recvmsg 

Values

family

IP address family -

name

- The name of this probe

dport

UDP destination port +

daddr

+ A string representing the destination IP address +

sock

+ Network socket used by the process

saddr

A string representing the source IP address -

sport

- UDP source port

size

Number of bytes received by the process -

Context

+

name

+ The name of this probe +

sport

+ UDP source port +

Context

The process which received a UDP message

diff --git a/tapsets/API-udp-sendmsg-return.html b/tapsets/API-udp-sendmsg-return.html index 939c577d..5c7330ab 100644 --- a/tapsets/API-udp-sendmsg-return.html +++ b/tapsets/API-udp-sendmsg-return.html @@ -1,9 +1,9 @@ probe::udp.sendmsg.return

Name

probe::udp.sendmsg.return — Fires whenever an attempt to send a UDP message is completed -

Synopsis

udp.sendmsg.return 

Values

size

+

Synopsis

udp.sendmsg.return 

Values

size

Number of bytes sent by the process

name

The name of this probe -

Context

+

Context

The process which sent a UDP message

diff --git a/tapsets/API-udp-sendmsg.html b/tapsets/API-udp-sendmsg.html index 1263d98f..463f96e1 100644 --- a/tapsets/API-udp-sendmsg.html +++ b/tapsets/API-udp-sendmsg.html @@ -1,21 +1,21 @@ probe::udp.sendmsg

Name

probe::udp.sendmsg — Fires whenever a process sends a UDP message -

Synopsis

udp.sendmsg 

Values

saddr

+

Synopsis

udp.sendmsg 

Values

family

+ IP address family +

size

+ Number of bytes sent by the process +

saddr

A string representing the source IP address +

name

+ The name of this probe

sport

UDP source port -

size

- Number of bytes sent by the process

sock

Network socket used by the process -

daddr

- A string representing the destination IP address -

name

- The name of this probe -

family

- IP address family

dport

UDP destination port -

Context

+

daddr

+ A string representing the destination IP address +

Context

The process which sent a UDP message

diff --git a/tapsets/API-uid.html b/tapsets/API-uid.html index 8464407c..c1dacfe2 100644 --- a/tapsets/API-uid.html +++ b/tapsets/API-uid.html @@ -2,8 +2,8 @@ Returns the user ID of a target process

Synopsis

     uid:long()
-

Arguments

+

Arguments

None -

Description

+

Description

This function returns the user ID of the target process.

diff --git a/tapsets/API-uint-arg.html b/tapsets/API-uint-arg.html index 46eadbbb..7efdb1be 100644 --- a/tapsets/API-uint-arg.html +++ b/tapsets/API-uint-arg.html @@ -2,9 +2,9 @@ Return function argument as unsigned int

Synopsis

     uint_arg:long(n:long)
-

Arguments

n

+

Arguments

n

index of argument to return -

Description

+

Description

Return the value of argument n as an unsigned int (i.e., a 32-bit integer zero-extended to 64 bits).

diff --git a/tapsets/API-ulong-arg.html b/tapsets/API-ulong-arg.html index ff968ca0..c77ba0f0 100644 --- a/tapsets/API-ulong-arg.html +++ b/tapsets/API-ulong-arg.html @@ -2,9 +2,9 @@ Return function argument as unsigned long

Synopsis

     ulong_arg:long(n:long)
-

Arguments

n

+

Arguments

n

index of argument to return -

Description

+

Description

Return the value of argument n as an unsigned long. On architectures where a long is 32 bits, the value is zero-extended to 64 bits. diff --git a/tapsets/API-ulonglong-arg.html b/tapsets/API-ulonglong-arg.html index 365b3d9c..58101f9a 100644 --- a/tapsets/API-ulonglong-arg.html +++ b/tapsets/API-ulonglong-arg.html @@ -2,9 +2,9 @@ Return function argument as 64-bit value

Synopsis

     ulonglong_arg:long(n:long)
-

Arguments

n

+

Arguments

n

index of argument to return -

Description

+

Description

Return the value of argument n as a 64-bit value. (Same as longlong_arg.)

diff --git a/tapsets/API-umodname.html b/tapsets/API-umodname.html index ca05a08a..de69f81e 100644 --- a/tapsets/API-umodname.html +++ b/tapsets/API-umodname.html @@ -2,9 +2,9 @@ Returns the (short) name of the user module.

Synopsis

     umodname:string(addr:long)
-

Arguments

addr

+

Arguments

addr

User-space address -

Description

+

Description

Returns the short name of the user space module for the current task that that the given address is part of. Reports an error when the address isn't in a (mapped in) module, or the module cannot be found for some reason. diff --git a/tapsets/API-usecs-to-string.html b/tapsets/API-usecs-to-string.html index 7172bbb2..6ede36c5 100644 --- a/tapsets/API-usecs-to-string.html +++ b/tapsets/API-usecs-to-string.html @@ -2,9 +2,9 @@ Human readable string for given microseconds

Synopsis

     usecs_to_string:string(usecs:long)
-

Arguments

usecs

+

Arguments

usecs

Number of microseconds to translate. -

Description

+

Description

Returns a string representing the number of microseconds as a human readable string consisting of “XmY.ZZZZZZs”, where X is the number of minutes, Y is the number of seconds and diff --git a/tapsets/API-user-buffer-quoted-error.html b/tapsets/API-user-buffer-quoted-error.html index 03149d25..760dff5c 100644 --- a/tapsets/API-user-buffer-quoted-error.html +++ b/tapsets/API-user-buffer-quoted-error.html @@ -2,13 +2,13 @@ Retrieves and quotes buffer from user space

Synopsis

     user_buffer_quoted_error:string(addr:long,inlen:long,outlen:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the buffer from

inlen

the exact length of the buffer to read

outlen

the maximum length of the output string -

Description

+

Description

Reads inlen characters of a buffer from the given user space memory address, and returns up to outlen characters, where any ASCII characters that are not printable are replaced by the corresponding escape diff --git a/tapsets/API-user-buffer-quoted.html b/tapsets/API-user-buffer-quoted.html index bcab8107..b541a9c1 100644 --- a/tapsets/API-user-buffer-quoted.html +++ b/tapsets/API-user-buffer-quoted.html @@ -2,13 +2,13 @@ Retrieves and quotes buffer from user space

Synopsis

     user_buffer_quoted:string(addr:long,inlen:long,outlen:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the buffer from

inlen

the exact length of the buffer to read

outlen

the maximum length of the output string -

Description

+

Description

Reads inlen characters of a buffer from the given user space memory address, and returns up to outlen characters, where any ASCII characters that are not printable are replaced by the corresponding escape diff --git a/tapsets/API-user-char-error.html b/tapsets/API-user-char-error.html index 95a64137..79d98a57 100644 --- a/tapsets/API-user-char-error.html +++ b/tapsets/API-user-char-error.html @@ -2,9 +2,9 @@ Retrieves a char value stored in user space

Synopsis

     user_char_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the char from -

Description

+

Description

Returns the char value from a given user space address. If the user space data is not accessible, an error will occur.

diff --git a/tapsets/API-user-char-warn.html b/tapsets/API-user-char-warn.html index 0cfc654a..ef0338b8 100644 --- a/tapsets/API-user-char-warn.html +++ b/tapsets/API-user-char-warn.html @@ -2,9 +2,9 @@ Retrieves a char value stored in user space

Synopsis

     user_char_warn:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the char from -

Description

+

Description

Returns the char value from a given user space address. Returns zero when user space data is not accessible and warns about the failure (but does not error). diff --git a/tapsets/API-user-char.html b/tapsets/API-user-char.html index 700ae6b5..293dae62 100644 --- a/tapsets/API-user-char.html +++ b/tapsets/API-user-char.html @@ -2,9 +2,9 @@ Retrieves a char value stored in user space

Synopsis

     user_char:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the char from -

Description

+

Description

Returns the char value from a given user space address. Returns zero when user space data is not accessible.

diff --git a/tapsets/API-user-int-error.html b/tapsets/API-user-int-error.html index 031679e8..9f7fbb5b 100644 --- a/tapsets/API-user-int-error.html +++ b/tapsets/API-user-int-error.html @@ -2,9 +2,9 @@ Retrieves an int value stored in user space

Synopsis

     user_int_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the int from -

Description

+

Description

Returns the int value from a given user space address. If the user space data is not accessible, an error will occur.

diff --git a/tapsets/API-user-int-warn.html b/tapsets/API-user-int-warn.html index 0b707907..c64184ad 100644 --- a/tapsets/API-user-int-warn.html +++ b/tapsets/API-user-int-warn.html @@ -2,9 +2,9 @@ Retrieves an int value stored in user space

Synopsis

     user_int_warn:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the int from -

Description

+

Description

Returns the int value from a given user space address. Returns zero when user space data is not accessible and warns about the failure (but does not error). diff --git a/tapsets/API-user-int.html b/tapsets/API-user-int.html index fbfab18a..f73257fa 100644 --- a/tapsets/API-user-int.html +++ b/tapsets/API-user-int.html @@ -2,9 +2,9 @@ Retrieves an int value stored in user space

Synopsis

     user_int:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the int from -

Description

+

Description

Returns the int value from a given user space address. Returns zero when user space data is not accessible.

diff --git a/tapsets/API-user-int16-error.html b/tapsets/API-user-int16-error.html index b7ef4749..24c99ddb 100644 --- a/tapsets/API-user-int16-error.html +++ b/tapsets/API-user-int16-error.html @@ -2,9 +2,9 @@ Retrieves a 16-bit integer value stored in user space

Synopsis

     user_int16_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the 16-bit integer from -

Description

+

Description

Returns the 16-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. diff --git a/tapsets/API-user-int16.html b/tapsets/API-user-int16.html index 0418af31..8e81c388 100644 --- a/tapsets/API-user-int16.html +++ b/tapsets/API-user-int16.html @@ -2,9 +2,9 @@ Retrieves a 16-bit integer value stored in user space

Synopsis

     user_int16:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the 16-bit integer from -

Description

+

Description

Returns the 16-bit integer value from a given user space address. Returns zero when user space data is not accessible.

diff --git a/tapsets/API-user-int32-error.html b/tapsets/API-user-int32-error.html index 9e133ede..23d493e0 100644 --- a/tapsets/API-user-int32-error.html +++ b/tapsets/API-user-int32-error.html @@ -2,9 +2,9 @@ Retrieves a 32-bit integer value stored in user space

Synopsis

     user_int32_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the 32-bit integer from -

Description

+

Description

Returns the 32-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. diff --git a/tapsets/API-user-int32.html b/tapsets/API-user-int32.html index 99c36e06..7186b7d1 100644 --- a/tapsets/API-user-int32.html +++ b/tapsets/API-user-int32.html @@ -2,9 +2,9 @@ Retrieves a 32-bit integer value stored in user space

Synopsis

     user_int32:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the 32-bit integer from -

Description

+

Description

Returns the 32-bit integer value from a given user space address. Returns zero when user space data is not accessible.

diff --git a/tapsets/API-user-int64-error.html b/tapsets/API-user-int64-error.html index 3a4d8373..57bd84f9 100644 --- a/tapsets/API-user-int64-error.html +++ b/tapsets/API-user-int64-error.html @@ -2,9 +2,9 @@ Retrieves a 64-bit integer value stored in user space

Synopsis

     user_int64_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the 64-bit integer from -

Description

+

Description

Returns the 64-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. diff --git a/tapsets/API-user-int64.html b/tapsets/API-user-int64.html index 34fca9bb..9b0fa2b0 100644 --- a/tapsets/API-user-int64.html +++ b/tapsets/API-user-int64.html @@ -2,9 +2,9 @@ Retrieves a 64-bit integer value stored in user space

Synopsis

     user_int64:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the 64-bit integer from -

Description

+

Description

Returns the 64-bit integer value from a given user space address. Returns zero when user space data is not accessible.

diff --git a/tapsets/API-user-int8-error.html b/tapsets/API-user-int8-error.html index fd77a3f3..a8597b50 100644 --- a/tapsets/API-user-int8-error.html +++ b/tapsets/API-user-int8-error.html @@ -2,9 +2,9 @@ Retrieves a 8-bit integer value stored in user space

Synopsis

     user_int8_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the 8-bit integer from -

Description

+

Description

Returns the 8-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. diff --git a/tapsets/API-user-int8.html b/tapsets/API-user-int8.html index 026da2ad..bbcd8fd4 100644 --- a/tapsets/API-user-int8.html +++ b/tapsets/API-user-int8.html @@ -2,9 +2,9 @@ Retrieves a 8-bit integer value stored in user space

Synopsis

     user_int8:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the 8-bit integer from -

Description

+

Description

Returns the 8-bit integer value from a given user space address. Returns zero when user space data is not accessible.

diff --git a/tapsets/API-user-long-error.html b/tapsets/API-user-long-error.html index 5997abfd..882afc4f 100644 --- a/tapsets/API-user-long-error.html +++ b/tapsets/API-user-long-error.html @@ -2,9 +2,9 @@ Retrieves a long value stored in user space

Synopsis

     user_long_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the long from -

Description

+

Description

Returns the long value from a given user space address. If the user space data is not accessible, an error will occur. Note that the size of the long depends on the architecture diff --git a/tapsets/API-user-long-warn.html b/tapsets/API-user-long-warn.html index e9edabe4..2bbf573e 100644 --- a/tapsets/API-user-long-warn.html +++ b/tapsets/API-user-long-warn.html @@ -2,9 +2,9 @@ Retrieves a long value stored in user space

Synopsis

     user_long_warn:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the long from -

Description

+

Description

Returns the long value from a given user space address. Returns zero when user space data is not accessible and warns about the failure (but does not error). Note that the size diff --git a/tapsets/API-user-long.html b/tapsets/API-user-long.html index 63453611..c25b756a 100644 --- a/tapsets/API-user-long.html +++ b/tapsets/API-user-long.html @@ -2,9 +2,9 @@ Retrieves a long value stored in user space

Synopsis

     user_long:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the long from -

Description

+

Description

Returns the long value from a given user space address. Returns zero when user space data is not accessible. Note that the size of the long depends on the architecture of the current user space diff --git a/tapsets/API-user-mode.html b/tapsets/API-user-mode.html index b591f569..6daa4951 100644 --- a/tapsets/API-user-mode.html +++ b/tapsets/API-user-mode.html @@ -2,9 +2,9 @@ Determines if probe point occurs in user-mode

Synopsis

     user_mode:long()
-

Arguments

+

Arguments

None -

Description

+

Description

Return 1 if the probe point occurred in user-mode. diff --git a/tapsets/API-user-short-error.html b/tapsets/API-user-short-error.html index ca16cc8f..41773b07 100644 --- a/tapsets/API-user-short-error.html +++ b/tapsets/API-user-short-error.html @@ -2,9 +2,9 @@ Retrieves a short value stored in user space

Synopsis

     user_short_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the short from -

Description

+

Description

Returns the short value from a given user space address. If the user space data is not accessible, an error will occur.

diff --git a/tapsets/API-user-short-warn.html b/tapsets/API-user-short-warn.html index 85a28622..4c2efdc0 100644 --- a/tapsets/API-user-short-warn.html +++ b/tapsets/API-user-short-warn.html @@ -2,9 +2,9 @@ Retrieves a short value stored in user space

Synopsis

     user_short_warn:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the short from -

Description

+

Description

Returns the short value from a given user space address. Returns zero when user space data is not accessible and warns about the failure (but does not error). diff --git a/tapsets/API-user-short.html b/tapsets/API-user-short.html index 50ea4eec..c81be904 100644 --- a/tapsets/API-user-short.html +++ b/tapsets/API-user-short.html @@ -2,9 +2,9 @@ Retrieves a short value stored in user space

Synopsis

     user_short:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the short from -

Description

+

Description

Returns the short value from a given user space address. Returns zero when user space data is not accessible.

diff --git a/tapsets/API-user-string-n-nofault.html b/tapsets/API-user-string-n-nofault.html new file mode 100644 index 00000000..fe51d5e3 --- /dev/null +++ b/tapsets/API-user-string-n-nofault.html @@ -0,0 +1,13 @@ +function::user_string_n_nofault

Name

function::user_string_n_nofault — + Retrieves string of given length from user space +

Synopsis

+    user_string_n_nofault(addr:long,n:long)
+

Arguments

addr

+ the user space address to retrieve the string from +

n

+ the maximum length of the string (if not null terminated) +

Description

+ Returns the C string of a maximum given length from a + given user space address. Returns the empty string when userspace + data is not accessible at the given address. +

diff --git a/tapsets/API-user-string-n-quoted.html b/tapsets/API-user-string-n-quoted.html index bc50dc87..5ec85ffc 100644 --- a/tapsets/API-user-string-n-quoted.html +++ b/tapsets/API-user-string-n-quoted.html @@ -1,6 +1,6 @@ -function::user_string_n_quoted

Name

function::user_string_n_quoted — +function::user_string_n_quoted

Name

function::user_string_n_quoted — Retrieves and quotes string from user space -

Synopsis

1) user_string_n_quoted:string(addr:long,n:long)
2) user_string_n_quoted:string(addr:long,inlen:long,outlen:long)

Arguments

addr

+

Synopsis

1) user_string_n_quoted:string(addr:long,n:long)
2) user_string_n_quoted:string(addr:long,inlen:long,outlen:long)

Arguments

addr

the user space address to retrieve the string from

n

the maximum length of the string (if not null terminated) @@ -8,7 +8,7 @@ the maximum length of the string to read (if not null terminated)

outlen

the maximum length of the output string -

Description

1) Returns up to n characters of a C string from the given +

Description

1) Returns up to n characters of a C string from the given user space memory address where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note that the string will be surrounded by double quotes. @@ -19,4 +19,4 @@ sequence in the returned string. Note that the string will be surrounded by double quotes. On the rare cases when userspace data is not accessible at the given address, the address itself is returned as a string, without - double quotes.

+ double quotes.

diff --git a/tapsets/API-user-string-n-warn.html b/tapsets/API-user-string-n-warn.html index ae529b73..c2355888 100644 --- a/tapsets/API-user-string-n-warn.html +++ b/tapsets/API-user-string-n-warn.html @@ -1,16 +1,16 @@ -function::user_string_n_warn

Name

function::user_string_n_warn — +function::user_string_n_warn

Name

function::user_string_n_warn — Retrieves string from user space -

Synopsis

1) user_string_n_warn:string(addr:long,n:long)
2) user_string_n_warn:string(addr:long,n:long,warn_msg:string)

Arguments

addr

+

Synopsis

1) user_string_n_warn:string(addr:long,n:long)
2) user_string_n_warn:string(addr:long,n:long,warn_msg:string)

Arguments

addr

the user space address to retrieve the string from

n

the maximum length of the string (if not null terminated)

warn_msg

the warning message to return when data isn't available -

Description

1) Returns up to n characters of a C string from a given +

Description

1) Returns up to n characters of a C string from a given user space memory address. Reports“<unknown>” on the rare cases when userspace data is not accessible and warns (but does not abort) about the failure.

2) Returns up to n characters of a C string from a given user space memory address. Reports the given warning message on the rare cases when userspace data is not accessible and warns (but does - not abort) about the failure.

+ not abort) about the failure.

diff --git a/tapsets/API-user-string-n.html b/tapsets/API-user-string-n.html index ccbb9d74..16b12e7a 100644 --- a/tapsets/API-user-string-n.html +++ b/tapsets/API-user-string-n.html @@ -1,14 +1,14 @@ -function::user_string_n

Name

function::user_string_n — +function::user_string_n

Name

function::user_string_n — Retrieves string of given length from user space -

Synopsis

1) user_string_n:string(addr:long,n:long)
2) user_string_n:string(addr:long,n:long,err_msg:string)

Arguments

addr

+

Synopsis

1) user_string_n:string(addr:long,n:long)
2) user_string_n:string(addr:long,n:long,err_msg:string)

Arguments

addr

the user space address to retrieve the string from

n

the maximum length of the string (if not null terminated)

err_msg

the error message to return when data isn't available -

Description

1) Returns the C string of a maximum given length from a +

Description

1) Returns the C string of a maximum given length from a given user space address. Reports an error on the rare cases when userspace data is not accessible at the given address.

2) Returns the C string of a maximum given length from a given user space address. Returns the given error message string on the rare cases when userspace data is not accessible at the given - address.

+ address.

diff --git a/tapsets/API-user-string-nofault.html b/tapsets/API-user-string-nofault.html new file mode 100644 index 00000000..55970174 --- /dev/null +++ b/tapsets/API-user-string-nofault.html @@ -0,0 +1,10 @@ +function::user_string_nofault

Name

function::user_string_nofault — + Retrieves string from user space +

Synopsis

+    user_string_nofault:string(addr:long)
+

Arguments

addr

+ the user space address to retrieve the string from +

Description

+ Returns the null terminated C string from a given user space + memory address. Returns the empty string if userspace data is not accessible. +

diff --git a/tapsets/API-user-string-quoted-utf16.html b/tapsets/API-user-string-quoted-utf16.html index d7f7f6cc..643dd11c 100644 --- a/tapsets/API-user-string-quoted-utf16.html +++ b/tapsets/API-user-string-quoted-utf16.html @@ -2,9 +2,9 @@ Quote given user UTF-16 string.

Synopsis

     user_string_quoted_utf16:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The user address to retrieve the string from -

Description

+

Description

This function combines quoting as per string_quoted and UTF-16 decoding as per user_string_utf16.

diff --git a/tapsets/API-user-string-quoted-utf32.html b/tapsets/API-user-string-quoted-utf32.html index 2b9b87df..dfa6f2c3 100644 --- a/tapsets/API-user-string-quoted-utf32.html +++ b/tapsets/API-user-string-quoted-utf32.html @@ -2,9 +2,9 @@ Quote given user UTF-32 string.

Synopsis

     user_string_quoted_utf32:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The user address to retrieve the string from -

Description

+

Description

This function combines quoting as per string_quoted and UTF-32 decoding as per user_string_utf32.

diff --git a/tapsets/API-user-string-quoted.html b/tapsets/API-user-string-quoted.html index ca7dc014..a0c62db8 100644 --- a/tapsets/API-user-string-quoted.html +++ b/tapsets/API-user-string-quoted.html @@ -1,14 +1,14 @@ -function::user_string_quoted

Name

function::user_string_quoted — +function::user_string_quoted

Name

function::user_string_quoted — Retrieves and quotes string from user space

Synopsis

     user_string_quoted:string(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the string from -

Description

+

Description

Returns the null terminated C string from a given user space memory address where any ASCII characters that are not printable are replaced by the corresponding escape sequence in the returned string. Note that the string will be surrounded by double quotes. On the rare cases when userspace data is not accessible at the given address, the address itself is returned as a string, without double quotes. -

+

diff --git a/tapsets/API-user-string-utf16.html b/tapsets/API-user-string-utf16.html index 2a7c4e06..4460d85e 100644 --- a/tapsets/API-user-string-utf16.html +++ b/tapsets/API-user-string-utf16.html @@ -1,10 +1,10 @@ function::user_string_utf16

Name

function::user_string_utf16 — Retrieves UTF-16 string from user memory -

Synopsis

1) user_string_utf16:string(addr:long)
2) user_string_utf16:string(addr:long,err_msg:string)

Arguments

addr

+

Synopsis

1) user_string_utf16:string(addr:long)
2) user_string_utf16:string(addr:long,err_msg:string)

Arguments

addr

The user address to retrieve the string from

err_msg

The error message to return when data isn't available -

Description

1) This function returns a null terminated UTF-8 string converted +

Description

1) This function returns a null terminated UTF-8 string converted from the UTF-16 string at a given user memory address. Reports an error on string copy fault or conversion error.

2) This function returns a null terminated UTF-8 string converted from the UTF-16 string at a given user memory address. Reports the given diff --git a/tapsets/API-user-string-utf32.html b/tapsets/API-user-string-utf32.html index d8db3bca..fe486beb 100644 --- a/tapsets/API-user-string-utf32.html +++ b/tapsets/API-user-string-utf32.html @@ -1,10 +1,10 @@ function::user_string_utf32

Name

function::user_string_utf32 — Retrieves UTF-32 string from user memory -

Synopsis

1) user_string_utf32:string(addr:long)
2) user_string_utf32:string(addr:long,err_msg:string)

Arguments

addr

+

Synopsis

1) user_string_utf32:string(addr:long)
2) user_string_utf32:string(addr:long,err_msg:string)

Arguments

addr

The user address to retrieve the string from

err_msg

The error message to return when data isn't available -

Description

1) This function returns a null terminated UTF-8 string converted +

Description

1) This function returns a null terminated UTF-8 string converted from the UTF-32 string at a given user memory address. Reports an error on string copy fault or conversion error.

2) This function returns a null terminated UTF-8 string converted from the UTF-32 string at a given user memory address. Reports the given diff --git a/tapsets/API-user-string-warn.html b/tapsets/API-user-string-warn.html index 963e662a..5b30f362 100644 --- a/tapsets/API-user-string-warn.html +++ b/tapsets/API-user-string-warn.html @@ -1,10 +1,10 @@ function::user_string_warn

Name

function::user_string_warn — Retrieves string from user space -

Synopsis

1) user_string_warn:string(addr:long)
2) user_string_warn:string(addr:long,warn_msg:string)

Arguments

addr

+

Synopsis

1) user_string_warn:string(addr:long)
2) user_string_warn:string(addr:long,warn_msg:string)

Arguments

addr

the user space address to retrieve the string from

warn_msg

the warning message to return when data isn't available -

Description

1) Returns the null terminated C string from a given user space +

Description

1) Returns the null terminated C string from a given user space memory address. Reports "" on the rare cases when userspace data is not accessible and warns (but does not abort) about the failure.

2) Returns the null terminated C string from a given user space memory address. Reports the given warning message on the rare cases diff --git a/tapsets/API-user-string.html b/tapsets/API-user-string.html index 72f0070d..bd2b316f 100644 --- a/tapsets/API-user-string.html +++ b/tapsets/API-user-string.html @@ -1,10 +1,10 @@ function::user_string

Name

function::user_string — Retrieves string from user space -

Synopsis

1) user_string:string(addr:long)
2) user_string:string(addr:long,err_msg:string)

Arguments

addr

+

Synopsis

1) user_string:string(addr:long)
2) user_string:string(addr:long,err_msg:string)

Arguments

addr

the user space address to retrieve the string from

err_msg

the error message to return when data isn't available -

Description

1) Returns the null terminated C string from a given user space +

Description

1) Returns the null terminated C string from a given user space memory address. Reports an error on the rare cases when userspace data is not accessible.

2) Returns the null terminated C string from a given user space memory address. Reports the given error message on the rare cases when diff --git a/tapsets/API-user-uint16-error.html b/tapsets/API-user-uint16-error.html index 49a2d01c..53d6ebe2 100644 --- a/tapsets/API-user-uint16-error.html +++ b/tapsets/API-user-uint16-error.html @@ -2,9 +2,9 @@ Retrieves an unsigned 16-bit integer value stored in user space

Synopsis

     user_uint16_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned 16-bit integer from -

Description

+

Description

Returns the unsigned 16-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. diff --git a/tapsets/API-user-uint16.html b/tapsets/API-user-uint16.html index 8e110f0d..18cadea9 100644 --- a/tapsets/API-user-uint16.html +++ b/tapsets/API-user-uint16.html @@ -2,9 +2,9 @@ Retrieves an unsigned 16-bit integer value stored in user space

Synopsis

     user_uint16:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned 16-bit integer from -

Description

+

Description

Returns the unsigned 16-bit integer value from a given user space address. Returns zero when user space data is not accessible.

diff --git a/tapsets/API-user-uint32-error.html b/tapsets/API-user-uint32-error.html index c7ca8f71..9da8c2da 100644 --- a/tapsets/API-user-uint32-error.html +++ b/tapsets/API-user-uint32-error.html @@ -2,9 +2,9 @@ Retrieves an unsigned 32-bit integer value stored in user space

Synopsis

     user_uint32_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned 32-bit integer from -

Description

+

Description

Returns the unsigned 32-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. diff --git a/tapsets/API-user-uint32.html b/tapsets/API-user-uint32.html index 37d01fd0..19881fcb 100644 --- a/tapsets/API-user-uint32.html +++ b/tapsets/API-user-uint32.html @@ -2,9 +2,9 @@ Retrieves an unsigned 32-bit integer value stored in user space

Synopsis

     user_uint32:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned 32-bit integer from -

Description

+

Description

Returns the unsigned 32-bit integer value from a given user space address. Returns zero when user space data is not accessible.

diff --git a/tapsets/API-user-uint64-error.html b/tapsets/API-user-uint64-error.html index 44a600d3..87bbd46d 100644 --- a/tapsets/API-user-uint64-error.html +++ b/tapsets/API-user-uint64-error.html @@ -2,9 +2,9 @@ Retrieves an unsigned 64-bit integer value stored in user space

Synopsis

     user_uint64_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned 64-bit integer from -

Description

+

Description

Returns the unsigned 64-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. diff --git a/tapsets/API-user-uint64.html b/tapsets/API-user-uint64.html index 8382e225..c63d1f13 100644 --- a/tapsets/API-user-uint64.html +++ b/tapsets/API-user-uint64.html @@ -2,9 +2,9 @@ Retrieves an unsigned 64-bit integer value stored in user space

Synopsis

     user_uint64:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned 64-bit integer from -

Description

+

Description

Returns the unsigned 64-bit integer value from a given user space address. Returns zero when user space data is not accessible.

diff --git a/tapsets/API-user-uint8-error.html b/tapsets/API-user-uint8-error.html index bf65f0f3..522b9dc5 100644 --- a/tapsets/API-user-uint8-error.html +++ b/tapsets/API-user-uint8-error.html @@ -2,9 +2,9 @@ Retrieves a unsigned 8-bit integer value stored in user space

Synopsis

     user_uint8_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned 8-bit integer from -

Description

+

Description

Returns the unsigned 8-bit integer value from a given user space address. If the user space data is not accessible, an error will occur. diff --git a/tapsets/API-user-uint8.html b/tapsets/API-user-uint8.html index 8ba3a596..37a481fc 100644 --- a/tapsets/API-user-uint8.html +++ b/tapsets/API-user-uint8.html @@ -2,9 +2,9 @@ Retrieves a unsigned 8-bit integer value stored in user space

Synopsis

     user_uint8:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned 8-bit integer from -

Description

+

Description

Returns the unsigned 8-bit integer value from a given user space address. Returns zero when user space data is not accessible. diff --git a/tapsets/API-user-ulong-error.html b/tapsets/API-user-ulong-error.html index 3d9a7c7c..8347fa04 100644 --- a/tapsets/API-user-ulong-error.html +++ b/tapsets/API-user-ulong-error.html @@ -2,9 +2,9 @@ Retrieves a unsigned long value stored in user space

Synopsis

     user_ulong_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned long from -

Description

+

Description

Returns the unsigned long value from a given user space address. If the user space data is not accessible, an error will occur. Note that the size of the unsigned long depends on the architecture diff --git a/tapsets/API-user-ulong-warn.html b/tapsets/API-user-ulong-warn.html index 5d03b06a..df846e0d 100644 --- a/tapsets/API-user-ulong-warn.html +++ b/tapsets/API-user-ulong-warn.html @@ -2,9 +2,9 @@ Retrieves an unsigned long value stored in user space

Synopsis

     user_ulong_warn:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned long from -

Description

+

Description

Returns the unsigned long value from a given user space address. Returns zero when user space data is not accessible and warns about the failure (but does not error). Note that the diff --git a/tapsets/API-user-ulong.html b/tapsets/API-user-ulong.html index 2abf9f85..ec02918a 100644 --- a/tapsets/API-user-ulong.html +++ b/tapsets/API-user-ulong.html @@ -2,9 +2,9 @@ Retrieves an unsigned long value stored in user space

Synopsis

     user_ulong:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned long from -

Description

+

Description

Returns the unsigned long value from a given user space address. Returns zero when user space data is not accessible. Note that the size of the unsigned long depends on the diff --git a/tapsets/API-user-ushort-error.html b/tapsets/API-user-ushort-error.html index ab2917c7..0a097d14 100644 --- a/tapsets/API-user-ushort-error.html +++ b/tapsets/API-user-ushort-error.html @@ -2,9 +2,9 @@ Retrieves an unsigned short value stored in user space

Synopsis

     user_ushort_error:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned short from -

Description

+

Description

Returns the unsigned short value from a given user space address. If the user space data is not accessible, an error will occur. diff --git a/tapsets/API-user-ushort-warn.html b/tapsets/API-user-ushort-warn.html index 4acf43d1..56f45450 100644 --- a/tapsets/API-user-ushort-warn.html +++ b/tapsets/API-user-ushort-warn.html @@ -2,9 +2,9 @@ Retrieves an unsigned short value stored in user space

Synopsis

     user_ushort_warn:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned short from -

Description

+

Description

Returns the unsigned short value from a given user space address. Returns zero when user space data is not accessible and warns about the failure (but does not error). diff --git a/tapsets/API-user-ushort.html b/tapsets/API-user-ushort.html index 5124b9a4..5b6ee065 100644 --- a/tapsets/API-user-ushort.html +++ b/tapsets/API-user-ushort.html @@ -2,9 +2,9 @@ Retrieves an unsigned short value stored in user space

Synopsis

     user_ushort:long(addr:long)
-

Arguments

addr

+

Arguments

addr

the user space address to retrieve the unsigned short from -

Description

+

Description

Returns the unsigned short value from a given user space address. Returns zero when user space data is not accessible.

diff --git a/tapsets/API-usrdev2kerndev.html b/tapsets/API-usrdev2kerndev.html index fd4a5223..7ada1da3 100644 --- a/tapsets/API-usrdev2kerndev.html +++ b/tapsets/API-usrdev2kerndev.html @@ -2,6 +2,6 @@ Converts a user-space device number into the format used in the kernel

Synopsis

     usrdev2kerndev:long(dev:long)
-

Arguments

dev

+

Arguments

dev

Device number in user-space format.

diff --git a/tapsets/API-ustack.html b/tapsets/API-ustack.html index 13b7ea31..5bf8170d 100644 --- a/tapsets/API-ustack.html +++ b/tapsets/API-ustack.html @@ -2,9 +2,9 @@ Return address at given depth of user stack backtrace

Synopsis

     ustack:long(n:long)
-

Arguments

n

+

Arguments

n

number of levels to descend in the stack. -

Description

+

Description

Performs a simple (user space) backtrace, and returns the element at the specified position. The results of the backtrace itself are cached, so that the backtrace computation is performed at most once diff --git a/tapsets/API-usymdata.html b/tapsets/API-usymdata.html index 4d9f52e5..472b8c77 100644 --- a/tapsets/API-usymdata.html +++ b/tapsets/API-usymdata.html @@ -2,9 +2,9 @@ Return the symbol and module offset of an address.

Synopsis

     usymdata:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The address to translate. -

Description

+

Description

Returns the (function) symbol name associated with the given address in the current task if known, the offset from the start and the size of the symbol, plus the module name (between diff --git a/tapsets/API-usymfile.html b/tapsets/API-usymfile.html index a0aa0ff5..b23b70a6 100644 --- a/tapsets/API-usymfile.html +++ b/tapsets/API-usymfile.html @@ -2,9 +2,9 @@ Return the file name of a given address.

Synopsis

     usymfile:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The address to translate. -

Description

+

Description

Returns the file name of the given address, if known. If the file name cannot be found, the hex string representation of the address will be returned. diff --git a/tapsets/API-usymfileline.html b/tapsets/API-usymfileline.html index 4ffc9565..44245fac 100644 --- a/tapsets/API-usymfileline.html +++ b/tapsets/API-usymfileline.html @@ -2,9 +2,9 @@ Return the file name and line number of an address.

Synopsis

     usymfileline:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The address to translate. -

Description

+

Description

Returns the file name and the (approximate) line number of the given address, if known. If the file name or the line number cannot be found, the hex string representation of the address will be returned. diff --git a/tapsets/API-usymline.html b/tapsets/API-usymline.html index 47d0941b..bee0d2f0 100644 --- a/tapsets/API-usymline.html +++ b/tapsets/API-usymline.html @@ -2,9 +2,9 @@ Return the line number of an address.

Synopsis

     usymline:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The address to translate. -

Description

+

Description

Returns the (approximate) line number of the given address, if known. If the line number cannot be found, the hex string representation of the address will be returned. diff --git a/tapsets/API-usymname.html b/tapsets/API-usymname.html index 0c07e34b..8ad536a6 100644 --- a/tapsets/API-usymname.html +++ b/tapsets/API-usymname.html @@ -2,9 +2,9 @@ Return the symbol of an address in the current task.

Synopsis

     usymname:string(addr:long)
-

Arguments

addr

+

Arguments

addr

The address to translate. -

Description

+

Description

Returns the (function) symbol name associated with the given address if known. If not known it will return the hex string representation of addr. diff --git a/tapsets/API-vm-brk.html b/tapsets/API-vm-brk.html index 39a3ceeb..1a7ff92a 100644 --- a/tapsets/API-vm-brk.html +++ b/tapsets/API-vm-brk.html @@ -1,11 +1,11 @@ probe::vm.brk

Name

probe::vm.brk — Fires when a brk is requested (i.e. the heap will be resized) -

Synopsis

vm.brk 

Values

length

- the length of the memory segment -

address

+

Synopsis

vm.brk 

Values

address

the requested address +

length

+ the length of the memory segment

name

name of the probe point -

Context

+

Context

The process calling brk.

diff --git a/tapsets/API-vm-fault-contains.html b/tapsets/API-vm-fault-contains.html index 5db33566..10a0ca44 100644 --- a/tapsets/API-vm-fault-contains.html +++ b/tapsets/API-vm-fault-contains.html @@ -2,7 +2,7 @@ Test return value for page fault reason

Synopsis

     vm_fault_contains:long(value:long,test:long)
-

Arguments

value

+

Arguments

value

the fault_type returned by vm.page_fault.return

test

the type of fault to test for (VM_FAULT_OOM or similar) diff --git a/tapsets/API-vm-kfree.html b/tapsets/API-vm-kfree.html index 9371e6f6..1f372225 100644 --- a/tapsets/API-vm-kfree.html +++ b/tapsets/API-vm-kfree.html @@ -1,6 +1,6 @@ probe::vm.kfree

Name

probe::vm.kfree — Fires when kfree is requested -

Synopsis

vm.kfree 

Values

call_site

+

Synopsis

vm.kfree 

Values

call_site

address of the function calling this kmemory function

ptr

pointer to the kmemory allocated which is returned by kmalloc diff --git a/tapsets/API-vm-kmalloc-node.html b/tapsets/API-vm-kmalloc-node.html index b17aea1b..f8d22513 100644 --- a/tapsets/API-vm-kmalloc-node.html +++ b/tapsets/API-vm-kmalloc-node.html @@ -1,19 +1,19 @@ probe::vm.kmalloc_node

Name

probe::vm.kmalloc_node — Fires when kmalloc_node is requested -

Synopsis

vm.kmalloc_node 

Values

bytes_req

+

Synopsis

vm.kmalloc_node 

Values

gfp_flag_name

+ type of kmemory to allocate(in string format) +

bytes_alloc

+ allocated Bytes +

caller_function

+ name of the caller function +

bytes_req

requested Bytes

name

name of the probe point -

ptr

- pointer to the kmemory allocated

call_site

address of the function caling this kmemory function -

gfp_flag_name

- type of kmemory to allocate(in string format) -

caller_function

- name of the caller function

gfp_flags

type of kmemory to allocate -

bytes_alloc

- allocated Bytes +

ptr

+ pointer to the kmemory allocated

diff --git a/tapsets/API-vm-kmalloc.html b/tapsets/API-vm-kmalloc.html index 9f155690..6bd30035 100644 --- a/tapsets/API-vm-kmalloc.html +++ b/tapsets/API-vm-kmalloc.html @@ -1,19 +1,19 @@ probe::vm.kmalloc

Name

probe::vm.kmalloc — Fires when kmalloc is requested -

Synopsis

vm.kmalloc 

Values

name

- name of the probe point -

bytes_req

- requested Bytes -

ptr

+

Synopsis

vm.kmalloc 

Values

ptr

pointer to the kmemory allocated

call_site

address of the kmemory function -

gfp_flag_name

- type of kmemory to allocate (in String format) +

gfp_flags

+ type of kmemory to allocate

caller_function

name of the caller function +

bytes_req

+ requested Bytes +

name

+ name of the probe point +

gfp_flag_name

+ type of kmemory to allocate (in String format)

bytes_alloc

allocated Bytes -

gfp_flags

- type of kmemory to allocate

diff --git a/tapsets/API-vm-kmem-cache-alloc-node.html b/tapsets/API-vm-kmem-cache-alloc-node.html index 8a4eea22..bf3b48f3 100644 --- a/tapsets/API-vm-kmem-cache-alloc-node.html +++ b/tapsets/API-vm-kmem-cache-alloc-node.html @@ -1,19 +1,19 @@ probe::vm.kmem_cache_alloc_node

Name

probe::vm.kmem_cache_alloc_node — Fires when kmem_cache_alloc_node is requested -

Synopsis

vm.kmem_cache_alloc_node 

Values

name

- name of the probe point +

Synopsis

vm.kmem_cache_alloc_node 

Values

ptr

+ pointer to the kmemory allocated +

call_site

+ address of the function calling this kmemory function +

gfp_flags

+ type of kmemory to allocate +

caller_function

+ name of the caller function

bytes_req

requested Bytes +

name

+ name of the probe point

gfp_flag_name

type of kmemory to allocate(in string format) -

caller_function

- name of the caller function -

gfp_flags

- type of kmemory to allocate

bytes_alloc

allocated Bytes -

ptr

- pointer to the kmemory allocated -

call_site

- address of the function calling this kmemory function

diff --git a/tapsets/API-vm-kmem-cache-alloc.html b/tapsets/API-vm-kmem-cache-alloc.html index e52076eb..f749b30d 100644 --- a/tapsets/API-vm-kmem-cache-alloc.html +++ b/tapsets/API-vm-kmem-cache-alloc.html @@ -1,19 +1,19 @@ probe::vm.kmem_cache_alloc

Name

probe::vm.kmem_cache_alloc — Fires when kmem_cache_alloc is requested -

Synopsis

vm.kmem_cache_alloc 

Values

ptr

- pointer to the kmemory allocated -

call_site

- address of the function calling this kmemory function. -

gfp_flag_name

+

Synopsis

vm.kmem_cache_alloc 

Values

gfp_flag_name

type of kmemory to allocate(in string format) -

caller_function

- name of the caller function.

bytes_alloc

allocated Bytes -

gfp_flags

- type of kmemory to allocate +

caller_function

+ name of the caller function.

name

name of the probe point

bytes_req

requested Bytes +

call_site

+ address of the function calling this kmemory function. +

gfp_flags

+ type of kmemory to allocate +

ptr

+ pointer to the kmemory allocated

diff --git a/tapsets/API-vm-kmem-cache-free.html b/tapsets/API-vm-kmem-cache-free.html index 8a33fea3..70a5c02a 100644 --- a/tapsets/API-vm-kmem-cache-free.html +++ b/tapsets/API-vm-kmem-cache-free.html @@ -1,11 +1,11 @@ probe::vm.kmem_cache_free

Name

probe::vm.kmem_cache_free — Fires when kmem_cache_free is requested -

Synopsis

vm.kmem_cache_free 

Values

name

+

Synopsis

vm.kmem_cache_free 

Values

name

Name of the probe point -

call_site

- Address of the function calling this kmemory function -

ptr

- Pointer to the kmemory allocated which is returned by kmem_cache

caller_function

Name of the caller function. +

ptr

+ Pointer to the kmemory allocated which is returned by kmem_cache +

call_site

+ Address of the function calling this kmemory function

diff --git a/tapsets/API-vm-mmap.html b/tapsets/API-vm-mmap.html index 164ee311..ad68ade9 100644 --- a/tapsets/API-vm-mmap.html +++ b/tapsets/API-vm-mmap.html @@ -1,11 +1,11 @@ probe::vm.mmap

Name

probe::vm.mmap — Fires when an mmap is requested -

Synopsis

vm.mmap 

Values

address

+

Synopsis

vm.mmap 

Values

address

the requested address

name

name of the probe point

length

the length of the memory segment -

Context

+

Context

The process calling mmap.

diff --git a/tapsets/API-vm-munmap.html b/tapsets/API-vm-munmap.html index c881f1ff..6fa14fcd 100644 --- a/tapsets/API-vm-munmap.html +++ b/tapsets/API-vm-munmap.html @@ -1,11 +1,11 @@ probe::vm.munmap

Name

probe::vm.munmap — Fires when an munmap is requested -

Synopsis

vm.munmap 

Values

address

+

Synopsis

vm.munmap 

Values

address

the requested address

name

name of the probe point

length

the length of the memory segment -

Context

+

Context

The process calling munmap.

diff --git a/tapsets/API-vm-oom-kill.html b/tapsets/API-vm-oom-kill.html index 6c15df44..86d11e70 100644 --- a/tapsets/API-vm-oom-kill.html +++ b/tapsets/API-vm-oom-kill.html @@ -1,10 +1,10 @@ probe::vm.oom_kill

Name

probe::vm.oom_kill — Fires when a thread is selected for termination by the OOM killer -

Synopsis

vm.oom_kill 

Values

name

+

Synopsis

vm.oom_kill 

Values

name

name of the probe point

task

the task being killed -

Context

+

Context

The process that tried to consume excessive memory, and thus triggered the OOM.

diff --git a/tapsets/API-vm-pagefault-return.html b/tapsets/API-vm-pagefault-return.html index 34acaaab..4edd98b8 100644 --- a/tapsets/API-vm-pagefault-return.html +++ b/tapsets/API-vm-pagefault-return.html @@ -1,11 +1,11 @@ probe::vm.pagefault.return

Name

probe::vm.pagefault.return — Indicates what type of fault occurred -

Synopsis

vm.pagefault.return 

Values

fault_type

+

Synopsis

vm.pagefault.return 

Values

name

+ name of the probe point +

fault_type

returns either 0 (VM_FAULT_OOM) for out of memory faults, 2 (VM_FAULT_MINOR) for minor faults, 3 (VM_FAULT_MAJOR) for major faults, or 1 (VM_FAULT_SIGBUS) if the fault was neither OOM, minor fault, nor major fault. -

name

- name of the probe point

diff --git a/tapsets/API-vm-pagefault.html b/tapsets/API-vm-pagefault.html index a4b75863..1920431c 100644 --- a/tapsets/API-vm-pagefault.html +++ b/tapsets/API-vm-pagefault.html @@ -1,12 +1,12 @@ probe::vm.pagefault

Name

probe::vm.pagefault — Records that a page fault occurred -

Synopsis

vm.pagefault 

Values

address

- the address of the faulting memory access; i.e. the address that caused the page fault -

name

- name of the probe point -

write_access

+

Synopsis

vm.pagefault 

Values

write_access

indicates whether this was a write or read access; 1 indicates a write, while 0 indicates a read -

Context

+

name

+ name of the probe point +

address

+ the address of the faulting memory access; i.e. the address that caused the page fault +

Context

The process which triggered the fault

diff --git a/tapsets/API-vm-write-shared-copy.html b/tapsets/API-vm-write-shared-copy.html index c3dfc3e2..7def5109 100644 --- a/tapsets/API-vm-write-shared-copy.html +++ b/tapsets/API-vm-write-shared-copy.html @@ -1,15 +1,15 @@ probe::vm.write_shared_copy

Name

probe::vm.write_shared_copy — Page copy for shared page write -

Synopsis

vm.write_shared_copy 

Values

zero

- boolean indicating whether it is a zero page - (can do a clear instead of a copy) -

address

+

Synopsis

vm.write_shared_copy 

Values

address

The address of the shared write

name

Name of the probe point -

Context

+

zero

+ boolean indicating whether it is a zero page + (can do a clear instead of a copy) +

Context

The process attempting the write. -

Description

+

Description

Fires when a write to a shared page requires a page copy. This is always preceded by a vm.write_shared.

diff --git a/tapsets/API-vm-write-shared.html b/tapsets/API-vm-write-shared.html index 8fea7ebb..fe1238c2 100644 --- a/tapsets/API-vm-write-shared.html +++ b/tapsets/API-vm-write-shared.html @@ -1,12 +1,12 @@ probe::vm.write_shared

Name

probe::vm.write_shared — Attempts at writing to a shared page -

Synopsis

vm.write_shared 

Values

name

- name of the probe point -

address

+

Synopsis

vm.write_shared 

Values

address

the address of the shared write -

Context

+

name

+ name of the probe point +

Context

The context is the process attempting the write. -

Description

+

Description

Fires when a process attempts to write to a shared page. If a copy is necessary, this will be followed by a vm.write_shared_copy. diff --git a/tapsets/API-warn.html b/tapsets/API-warn.html index 24d1d306..05d14b14 100644 --- a/tapsets/API-warn.html +++ b/tapsets/API-warn.html @@ -2,9 +2,9 @@ Send a line to the warning stream

Synopsis

     warn(msg:string)
-

Arguments

msg

+

Arguments

msg

The formatted message string -

Description

+

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. diff --git a/tapsets/API-workqueue-create.html b/tapsets/API-workqueue-create.html index 1cbaee50..b63e176a 100644 --- a/tapsets/API-workqueue-create.html +++ b/tapsets/API-workqueue-create.html @@ -1,6 +1,6 @@ probe::workqueue.create

Name

probe::workqueue.create — Creating a new workqueue -

Synopsis

workqueue.create 

Values

wq_thread

+

Synopsis

workqueue.create 

Values

wq_thread

task_struct of the workqueue thread

cpu

cpu for which the worker thread is created diff --git a/tapsets/API-workqueue-destroy.html b/tapsets/API-workqueue-destroy.html index 7b8bdd08..eb271760 100644 --- a/tapsets/API-workqueue-destroy.html +++ b/tapsets/API-workqueue-destroy.html @@ -1,5 +1,5 @@ probe::workqueue.destroy

Name

probe::workqueue.destroy — Destroying workqueue -

Synopsis

workqueue.destroy 

Values

wq_thread

+

Synopsis

workqueue.destroy 

Values

wq_thread

task_struct of the workqueue thread

diff --git a/tapsets/API-workqueue-execute.html b/tapsets/API-workqueue-execute.html index 2d838849..4825f8c4 100644 --- a/tapsets/API-workqueue-execute.html +++ b/tapsets/API-workqueue-execute.html @@ -1,9 +1,9 @@ probe::workqueue.execute

Name

probe::workqueue.execute — Executing deferred work -

Synopsis

workqueue.execute 

Values

work

- work_struct* being executed -

work_func

+

Synopsis

workqueue.execute 

Values

work_func

pointer to handler function

wq_thread

task_struct of the workqueue thread +

work

+ work_struct* being executed

diff --git a/tapsets/API-workqueue-insert.html b/tapsets/API-workqueue-insert.html index 7e343ed8..7b173638 100644 --- a/tapsets/API-workqueue-insert.html +++ b/tapsets/API-workqueue-insert.html @@ -1,9 +1,9 @@ probe::workqueue.insert

Name

probe::workqueue.insert — Queuing work on a workqueue -

Synopsis

workqueue.insert 

Values

work

- work_struct* being queued -

wq_thread

+

Synopsis

workqueue.insert 

Values

wq_thread

task_struct of the workqueue thread +

work

+ work_struct* being queued

work_func

pointer to handler function

diff --git a/tapsets/floatingpoint.stp.html b/tapsets/floatingpoint.stp.html new file mode 100644 index 00000000..e5f4dea9 --- /dev/null +++ b/tapsets/floatingpoint.stp.html @@ -0,0 +1,4 @@ +Chapter 35. Floating point processing Tapset

Chapter 35. Floating point processing Tapset

+ Utility functions to extract, convert, and perform arithmetic + on IEEE-754 doubles. +

diff --git a/tapsets/index.html b/tapsets/index.html index 38dfebc0..8aff4945 100644 --- a/tapsets/index.html +++ b/tapsets/index.html @@ -1,4 +1,4 @@ -SystemTap Tapset Reference Manual

SystemTap Tapset Reference Manual

SystemTap

Hackers 

+SystemTap Tapset Reference Manual

SystemTap Tapset Reference Manual

SystemTap

Hackers 

This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. @@ -149,6 +149,28 @@ Return function argument as signed 32-bit value

function::s64_arg — Return function argument as signed 64-bit value +
function::set_int_arg — + Set function argument as signed int +
function::set_long_arg — + Set argument as signed long +
function::set_longlong_arg — + Set function argument as 64-bit value +
function::set_pointer_arg — + Set function argument as pointer value +
function::set_s32_arg — + Set function argument as signed 32-bit value +
function::set_s64_arg — + Set function argument as signed 64-bit value +
function::set_u32_arg — + Set function argument as unsigned 32-bit value +
function::set_u64_arg — + Set function argument as unsigned 64-bit value +
function::set_uint_arg — + Set argument as unsigned int +
function::set_ulong_arg — + Set function argument as unsigned long +
function::set_ulonglong_arg — + Set function argument as 64-bit value
function::sid — Returns the session ID of the current process
function::sprint_backtrace — @@ -1037,10 +1059,14 @@ Retrieves string from user space
function::user_string_n — Retrieves string of given length from user space +
function::user_string_n_nofault — + Retrieves string of given length from user space
function::user_string_n_quoted — Retrieves and quotes string from user space
function::user_string_n_warn — Retrieves string from user space +
function::user_string_nofault — + Retrieves string from user space
function::user_string_quoted — Retrieves and quotes string from user space
function::user_string_quoted_utf16 — @@ -1107,6 +1133,8 @@ Writes a short value to user memory
function::set_user_string — Writes a string to user memory +
function::set_user_string_arg — + Writes a string to user memory.
function::set_user_string_n — Writes a string of given length to user memory
27. Guru tapsets
function::mdelay — @@ -1383,8 +1411,34 @@ Fires whenever JSON data is wanted by a reader.
34. Output file switching Tapset
function::switch_file — switch to the next output file -
35. Syscall Any Tapset
probe::syscall_any — +
35. Floating point processing Tapset
function::fp32_to_fp64 — + Convert fp32 to 64 bit floating point +
function::fp_add — + Addition between floating points +
function::fp_eq — + fp comparison function equal +
function::fp_le — + Check if first fp is less than or equal to +
function::fp_lt — + fp comparison function less than +
function::fp_mul — + Multiplication between floating points +
function::fp_rem — + Floating point division +
function::fp_sqrt — + Floating point square root +
function::fp_sub — + Subtraction between floating points +
function::fp_to_long — + Convert fp to int64 +
function::fp_to_string — + Convert 64 bit floating point to string +
function::long_to_fp — + Convert long int to 64 bit floating point +
function::string_to_fp — + Convert the given string into floating point +
36. Syscall Any Tapset
probe::syscall_any — Record entry into a syscall
probe::syscall_any.return — Record exit from a syscall -
36. syscalls

List of Tables

36.1. Syscalls list
+
37. syscalls

List of Tables

37.1. Syscalls list
diff --git a/tapsets/syscall_any.stp.html b/tapsets/syscall_any.stp.html index 0629b6c7..e1132ae6 100644 --- a/tapsets/syscall_any.stp.html +++ b/tapsets/syscall_any.stp.html @@ -1,7 +1,7 @@ -Chapter 35. Syscall Any Tapset

Chapter 35. Syscall Any Tapset

+Chapter 36. Syscall Any Tapset

Chapter 36. Syscall Any Tapset

This family of probe points is designed to provide low cost instrumentation for cases where only the syscall name (or number) and return value are required and there is no need for the detailed syscall argument values. They are restricted versions of syscall.* and syscall.*.return. -

+

diff --git a/tapsets/syscalls.html b/tapsets/syscalls.html index f262db27..ac34e60b 100644 --- a/tapsets/syscalls.html +++ b/tapsets/syscalls.html @@ -1,13 +1,13 @@ -Chapter 36. syscalls

Chapter 36. syscalls

+Chapter 37. syscalls

Chapter 37. syscalls

Following is an overview of available syscall probes and convenience variables they offer. By default, each syscall probe has name and argstr convenience variables, which are not included in the overview in order to keep it short. Non dwarf-based nd_syscall probes are supposed to have the same convenience variables.

-

Table 36.1. Syscalls list

syscallparams
+

Table 37.1. Syscalls list

syscallparams
b'accept - $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, abs_timeout_uaddr, abs_timeout_uaddr, act_str, act_str, act_str, act_str, act_uaddr, act_uaddr, act_uaddr, act_uaddr, actime, actime, addr, addr, addr, addr, addr, addr, addr, addr, addr_uaddr, addr_uaddr, addr_uaddr, addr_uaddr, addrlen, addrlen, addrlen_uaddr, addrlen_uaddr, addrlen_uaddr, advice, advice, advice, advice, advice, advice_str, advice_str, advice_str, advice_str, advice_str, arg1, arg2, arg2, arg2, arg3, arg3, arg4, arg4, arg5, arg5, arg, arg, arg, arg_uaddr, argp, args, args, args, args, args, attr_uaddr, attr_uaddr, backlog, brk, buf, buf, buf, buf_str, buf_str, buf_str, buf_str, buf_str, buf_str, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buffer_uaddr, buffer_uaddr, bufp_uaddr, bufsiz, bufsiz, bytecount, callout_info_uaddr, child_tid_uaddr, clk_id, clk_id, clk_id, clk_id, clk_id, clk_id, clk_id_str, clk_id_str, clk_id_str, clk_id_str, clk_id_str, clk_id_str, clockid, clockid, clockid_str, clockid_str, clone_flags, cmd, cmd, cmd, cmd, cmd, cmd, cmd, cmd, cmd, cmd, cmd_str, cmd_str, cmd_str, cmd_str, cmd_str, cmd_str, cmd_str, cmd_str, cmdline, cmdline_len, cmdstr, cmdstr, code, code_str, cookie, cookie, count, count, count, count, count, count, count, count, count, count, count, count, count, count, count, count, count, count, cpu, cpu_uaddr, ctx, ctx_id, ctx_id, ctx_id, ctxp_uaddr, data, data, data, data_str, data_uaddr, data_uaddr, description_str, description_uaddr, description_uaddr, destringid, dev, dev, dev, dev, dfd, dfd, dfd, dfd, dfd, dfd, dfd, dfd_str, dfd_str, dfd_str, dfd_str, dfd_str, dfd_str, dfd_str, dirent, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirp_uaddr, domainname_str, domainname_uaddr, egid, egid, egid, egid, egid_uaddr, entry, env_str, env_str, env_str, env_str, epfd, epfd, epfd, euid, euid, euid, euid, euid_uaddr, event_f_flags, event_f_flags_str, event_uaddr, events_uaddr, events_uaddr, events_uaddr, evp_uaddr, exceptfds, exceptfds, exceptfds_uaddr, exceptfds_uaddr, family, family, family_str, family_str, fanotify_fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd_in, fd_in, fd_out, fd_out, fdin, fdout, fds_uaddr, fds_uaddr, fildes, fildes, fildes_uaddr, filedes, filedes, filedes, filedes, filedes, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filesystemtype, flag, flag, flag_str, flag_str, flag_str, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, from, fsgid, fsuid, func, func, futex_uaddr, futex_uaddr, gid, group, group, group, group, group, group, group, group_fd, handle_uaddr, handle_uaddr, handler, handler_str, header_uaddr, header_uaddr, hostname_uaddr, how, how, how, how_str, how_str, how_str, id, idx1, idx2, in_fd, inc, info_str, info_uaddr, infop_uaddr, init_val, init_val_str, initrd_fd, int\nnd_syscall.compat_clock_nanosleep, int\nnd_syscall.compat_execve, int\nnd_syscall.compat_futimesat, int\nnd_syscall.compat_getitimer, int\nnd_syscall.compat_ppoll, int\nnd_syscall.compat_pselect6, int\nnd_syscall.compat_readahead, int\nnd_syscall.compat_select, int\nnd_syscall.compat_truncate64, int\nnd_syscall.compat_utimensat, int\nnd_syscall.compat_vmsplice, int\nnd_syscall.fallocate, int\nnd_syscall.futex, int\nnd_syscall.sigaction32, int\nnd_syscall.userfaultfd, iocb_uaddr, iocbpp_uaddr, ioprio, ioprio_str, iov, iov, kernel_fd, key, key, key, key_str, key_str, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len_uaddr, length, length, length, length, length, length, length, length, length, length, level, level, level, level_str, level_str, library, library_uaddr, liovcnt, liovcnt, list_head_uaddr, list_head_uaddr, list_uaddr, list_uaddr, list_uaddr, list_uaddr, list_uaddr, local_iov_uaddr, local_iov_uaddr, magic2, magic2_str, magic, magic_str, mask, mask, mask, mask, mask, mask_str, mask_str, mask_str, mask_str, mask_uaddr, mask_uaddr, maxevents, maxevents, maxevents, maxnode, maxnode, maxnode, maxnode, min_nr, mmsg_uaddr, mmsg_uaddr, mmsg_uaddr, mnt_id_uaddr, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode_str, mode_str, mode_str, mode_str, mode_str, mode_str, mode_str, mode_str, modtime, modtime, mount_dfd, mount_dfd_str, mountflags, mountflags_str, mqdes, mqdes, mqdes, mqdes, msg_len, msg_len, msg_prio, msg_prio_uaddr, msg_ptr_uaddr, msg_ptr_uaddr, msg_uaddr, msg_uaddr, msg_uaddr, msg_uaddr, msgflg, msgflg, msgflg, msgflg, msgflg, msgflg_str, msgflg_str, msgflg_str, msgflg_str, msgflg_str, msgp_uaddr, msgp_uaddr, msgp_uaddr, msgp_uaddr, msgsz, msgsz, msgsz, msgsz, msgtyp, msgtyp, msqid, msqid, msqid, msqid, msqid, msqid, my_addr_uaddr, n, n, name_str, name_str, name_str, name_str, name_str, name_str, name_str, name_str, name_str, name_str, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_user, namelen_uaddr, namelen_uaddr, nbytes, new_address, new_nodes, new_rlim_str, new_rlim_uaddr, new_root_str, new_size, newdfd, newdfd, newdfd, newdfd_str, newdfd_str, newdfd_str, newdirfd, newdirfd_str, newfd, newfd, newmask, newmask_str, newname, newname, newname, newname_str, newname_str, newname_str, newpath, newpath, newpath, newpath, nfds, nfds, nfds, nfds, nfds, nmask_uaddr, nmask_uaddr, nmask_uaddr, node_uaddr, nodes, notification_uaddr, nr, nr, nr_pages, nr_segments, nr_segs, nr_segs, nsems, nsops, nsops, nsops, nstype, nstype_str, num, oact_uaddr, oact_uaddr, oact_uaddr, oact_uaddr, off_in, off_in, off_out, off_out, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset_high, offset_low, offset_uaddr, oflag, oflag_str, old_address, old_nodes, old_rlim_uaddr, old_root_str, old_size, olddfd, olddfd, olddfd_str, olddfd_str, olddirfd, olddirfd_str, oldfd, oldfd, oldfd, oldname, oldname, oldname, oldname_str, oldname_str, oldname_str, oldpath, oldpath, oldpath, oldpath, oldset_uaddr, oldset_uaddr, op, op, op, op, op_str, op_str, operation, option, option, option, options, options, options, options_str, options_str, options_str, optlen, optlen_uaddr, optname, optname, optname_str, optname_str, optval_uaddr, optval_uaddr, out_fd, ovalue_uaddr, ovalue_uaddr, ovalue_uaddr, ovalue_uaddr, owner, owner, owner, owner, owner, owner, owner, p_uaddr, p_uaddr, p_uaddr, pages, parent_tid_uaddr, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname_str, pathname_uaddr, pathname_uaddr, payload_uaddr, persona, pgid, pgoff, pgoffset, pid1, pid2, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pipe0, pipe1, pkey, pkey, plen, policy, policy, policy, policy_str, policy_str, policy_str, policy_uaddr, prio, prot, prot, prot, prot, prot_str, prot_str, prot_str, prot_str, protocol, protocol, protocol_str, protocol_str, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, ptr_uaddr, readfds, readfds, readfds_uaddr, readfds_uaddr, rem_uaddr, rem_uaddr, rem_uaddr, rem_uaddr, remote_iov_uaddr, remote_iov_uaddr, req_str, req_str, req_str, req_str, req_uaddr, req_uaddr, req_uaddr, req_uaddr, request, request, res_uaddr, resource, resource, resource, resource_str, resource_str, result_uaddr, result_uaddr, rgid, rgid, rgid, rgid, rgid_uaddr, ringid, riovcnt, riovcnt, rlim_str, rlim_uaddr, rlim_uaddr, ruid, ruid, ruid, ruid, ruid_uaddr, rusage_uaddr, rusage_uaddr, s, s, s, s, s, s, s, s, s, s, s, s, s, s, sched_attr_str, sched_attr_str, sched_attr_uaddr, sched_attr_uaddr, seconds, segments_uaddr, semflg, semflg_str, semid, semid, semid, semid, semid, semnum, semnum, serv_addr_uaddr, set, set_str, set_str, set_uaddr, set_uaddr, set_uaddr, set_uaddr, sgid, sgid, sgid_uaddr, shmaddr_uaddr, shmaddr_uaddr, shmaddr_uaddr, shmflg, shmflg, shmflg, shmflg_str, shmflg_str, shmflg_str, shmid, shmid, shmid, shmid, sig, sig, sig, sig, sig, sig, sig, sig, sig, sig, sig_name, sig_name, sig_str, sig_str, sig_str, sig_str, sig_str, sig_str, sig_str, sig_str, siginfo_str, sigmask, sigmask, sigmask, sigmask, sigmask_uaddr, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, size, size, size, size, size, size, size, size, size, size, size, size, size, size, size, size, size, sockfd, sockfd, sockfd, sockfd, sockfd, sops_uaddr, sops_uaddr, sops_uaddr, source, special, special_str, stack_start, start, start, start, start, start, start, start, status, status, status, status_uaddr, status_uaddr, suid, suid, suid_uaddr, sv_uaddr, swapflags, swapflags_str, sz, sz, t_uaddr, t_uaddr, target, target, tcache_uaddr, tgid, tgid, tid, tidptr_uaddr, timeout, timeout, timeout, timeout, timeout, timeout_str, timeout_str, timeout_str, timeout_str, timeout_str, timeout_str, timeout_str, timeout_str, timeout_uaddr, timeout_uaddr, timeout_uaddr, timeout_uaddr, timeout_uaddr, timeout_uaddr, timeout_uaddr, timerid, timerid, timerid, timerid, timerid_uaddr, timestr, timeval, to_str, to_uaddr, tolen, tp_uaddr, tp_uaddr, tp_uaddr, tp_uaddr_str, tsp, tsp, tsp_str, tsp_str, tsp_str, tsp_str, tsp_uaddr, tsp_uaddr, turn_on, tv_str, tv_str, tv_uaddr, tv_uaddr, tv_uaddr, tvp_str, tvp_str, tvp_uaddr, tvp_uaddr, tvp_uaddr, tvp_uaddr_str, tvp_uaddr_str, tx_uaddr, tx_uaddr_str, type, type, type, type, type_str, type_str, type_str, type_str, type_uaddr, type_uaddr, tz_str, tz_str, tz_uaddr, tz_uaddr, tz_uaddr, u_attr_uaddr, u_info_str, u_info_str, u_info_uaddr, u_info_uaddr, u_mqstat_uaddr, u_name, u_name_uaddr, u_omqstat_uaddr, uaddr2_uaddr, uaddr2_uaddr, uaddr_af, uaddr_af, uaddr_ip, uaddr_ip, uaddr_ip_port, uaddr_ip_port, uaddr_ipv6_flowinfo, uaddr_ipv6_flowinfo, uaddr_ipv6_scope_id, uaddr_ipv6_scope_id, uargs, uargs, uargs_uaddr, ubuf_uaddr, ubuf_uaddr, ufds_uaddr, uid, uinfo_str, uinfo_str, uinfo_uaddr, uinfo_uaddr, uinfo_uaddr, umod_uaddr, uname, unshare_flags, unshare_flags_str, uoss_uaddr, usage_uaddr, uss_str, uss_uaddr, uthese_str, uthese_uaddr, utime_uaddr, utime_uaddr, uts_str, uts_uaddr, val3, val3, val, val, value_str, value_str, value_str, value_str, value_str, value_str, value_str, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, vec_uaddr, vector_uaddr, vector_uaddr, vector_uaddr, vector_uaddr, vector_uaddr, vector_uaddr, vlen, vlen, vlen, wd, whence, whence, whence_str, whence_str, which, which, which, which, which, which, which, which, which, which_str, which_str, which_str, which_str, which_str, which_str, who, who, who, who, who, who_str, writefds, writefds, writefds_uaddr, writefds_uaddr + $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $id, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, $regs, abs_timeout_uaddr, abs_timeout_uaddr, act_str, act_str, act_str, act_str, act_uaddr, act_uaddr, act_uaddr, act_uaddr, actime, actime, addr, addr, addr, addr, addr, addr, addr, addr, addr_uaddr, addr_uaddr, addr_uaddr, addr_uaddr, addrlen, addrlen, addrlen_uaddr, addrlen_uaddr, addrlen_uaddr, advice, advice, advice, advice, advice, advice_str, advice_str, advice_str, advice_str, advice_str, arg1, arg2, arg2, arg2, arg3, arg3, arg4, arg4, arg5, arg5, arg, arg, arg, arg_uaddr, argp, args, args, args, args, args, attr_uaddr, attr_uaddr, backlog, brk, buf, buf, buf, buf_str, buf_str, buf_str, buf_str, buf_str, buf_str, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buf_uaddr, buffer_uaddr, buffer_uaddr, bufp_uaddr, bufsiz, bufsiz, bytecount, callout_info_uaddr, child_tid_uaddr, clk_id, clk_id, clk_id, clk_id, clk_id, clk_id, clk_id_str, clk_id_str, clk_id_str, clk_id_str, clk_id_str, clk_id_str, clockid, clockid, clockid_str, clockid_str, clone_flags, cmd, cmd, cmd, cmd, cmd, cmd, cmd, cmd, cmd, cmd, cmd_str, cmd_str, cmd_str, cmd_str, cmd_str, cmd_str, cmd_str, cmd_str, cmdline, cmdline_len, cmdstr, cmdstr, code, code_str, cookie, cookie, count, count, count, count, count, count, count, count, count, count, count, count, count, count, count, count, count, count, cpu, cpu_uaddr, ctx, ctx_id, ctx_id, ctx_id, ctxp_uaddr, data, data, data, data_str, data_uaddr, data_uaddr, description_str, description_uaddr, description_uaddr, destringid, dev, dev, dev, dev, dfd, dfd, dfd, dfd, dfd, dfd, dfd, dfd_str, dfd_str, dfd_str, dfd_str, dfd_str, dfd_str, dfd_str, dirent, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirfd_str, dirp_uaddr, domainname_str, domainname_uaddr, egid, egid, egid, egid, egid_uaddr, entry, env_str, env_str, env_str, env_str, epfd, epfd, epfd, euid, euid, euid, euid, euid_uaddr, event_f_flags, event_f_flags_str, event_uaddr, events_uaddr, events_uaddr, events_uaddr, evp_uaddr, exceptfds, exceptfds, exceptfds_uaddr, exceptfds_uaddr, family, family, family_str, family_str, fanotify_fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd, fd_in, fd_in, fd_out, fd_out, fdin, fdout, fds_uaddr, fds_uaddr, fildes, fildes, fildes_uaddr, filedes, filedes, filedes, filedes, filedes, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filename_uaddr, filesystemtype, flag, flag, flag_str, flag_str, flag_str, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, flags_str, from, fsgid, fsuid, func, func, futex_uaddr, futex_uaddr, gid, group, group, group, group, group, group, group, group_fd, handle_uaddr, handle_uaddr, handler, handler_str, header_uaddr, header_uaddr, hostname_uaddr, how, how, how, how_str, how_str, how_str, id, idx1, idx2, in_fd, inc, info_str, info_uaddr, infop_uaddr, init_val, init_val_str, initrd_fd, int\nnd_syscall.compat_clock_nanosleep, int\nnd_syscall.compat_execve, int\nnd_syscall.compat_fadvise64_64, int\nnd_syscall.compat_fallocate, int\nnd_syscall.compat_ftruncate64, int\nnd_syscall.compat_futex, int\nnd_syscall.compat_futimesat, int\nnd_syscall.compat_getitimer, int\nnd_syscall.compat_ppoll, int\nnd_syscall.compat_pselect6, int\nnd_syscall.compat_readahead, int\nnd_syscall.compat_recvmmsg, int\nnd_syscall.compat_select, int\nnd_syscall.compat_truncate64, int\nnd_syscall.compat_utime, int\nnd_syscall.compat_utimensat, int\nnd_syscall.compat_vmsplice, int\nnd_syscall.fallocate, int\nnd_syscall.futex, int\nnd_syscall.pwritev, int\nnd_syscall.sigaction32, int\nnd_syscall.userfaultfd, iocb_uaddr, iocbpp_uaddr, ioprio, ioprio_str, iov, iov, kernel_fd, key, key, key, key_str, key_str, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len, len_uaddr, length, length, length, length, length, length, length, length, length, length, level, level, level, level_str, level_str, library, library_uaddr, liovcnt, liovcnt, list_head_uaddr, list_head_uaddr, list_uaddr, list_uaddr, list_uaddr, list_uaddr, list_uaddr, local_iov_uaddr, local_iov_uaddr, magic2, magic2_str, magic, magic_str, mask, mask, mask, mask, mask, mask_str, mask_str, mask_str, mask_str, mask_uaddr, mask_uaddr, maxevents, maxevents, maxevents, maxnode, maxnode, maxnode, maxnode, min_nr, mmsg_uaddr, mmsg_uaddr, mmsg_uaddr, mnt_id_uaddr, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode, mode_str, mode_str, mode_str, mode_str, mode_str, mode_str, mode_str, mode_str, modtime, modtime, mount_dfd, mount_dfd_str, mountflags, mountflags_str, mqdes, mqdes, mqdes, mqdes, msg_len, msg_len, msg_prio, msg_prio_uaddr, msg_ptr_uaddr, msg_ptr_uaddr, msg_uaddr, msg_uaddr, msg_uaddr, msg_uaddr, msgflg, msgflg, msgflg, msgflg, msgflg, msgflg_str, msgflg_str, msgflg_str, msgflg_str, msgflg_str, msgp_uaddr, msgp_uaddr, msgp_uaddr, msgp_uaddr, msgsz, msgsz, msgsz, msgsz, msgtyp, msgtyp, msqid, msqid, msqid, msqid, msqid, msqid, my_addr_uaddr, n, n, name_str, name_str, name_str, name_str, name_str, name_str, name_str, name_str, name_str, name_str, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_uaddr, name_user, namelen_uaddr, namelen_uaddr, nbytes, new_address, new_nodes, new_rlim_str, new_rlim_uaddr, new_root_str, new_size, newdfd, newdfd, newdfd, newdfd_str, newdfd_str, newdfd_str, newdirfd, newdirfd_str, newfd, newfd, newmask, newmask_str, newname, newname, newname, newname_str, newname_str, newname_str, newpath, newpath, newpath, newpath, nfds, nfds, nfds, nfds, nfds, nmask_uaddr, nmask_uaddr, nmask_uaddr, node_uaddr, nodes, notification_uaddr, nr, nr, nr_pages, nr_segments, nr_segs, nr_segs, nsems, nsops, nsops, nsops, nstype, nstype_str, num, oact_uaddr, oact_uaddr, oact_uaddr, oact_uaddr, off_in, off_in, off_out, off_out, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset, offset_high, offset_low, offset_uaddr, oflag, oflag_str, old_address, old_nodes, old_rlim_uaddr, old_root_str, old_size, olddfd, olddfd, olddfd_str, olddfd_str, olddirfd, olddirfd_str, oldfd, oldfd, oldfd, oldname, oldname, oldname, oldname_str, oldname_str, oldname_str, oldpath, oldpath, oldpath, oldpath, oldset_uaddr, oldset_uaddr, op, op, op, op, op_str, op_str, operation, option, option, option, options, options, options, options_str, options_str, options_str, optlen, optlen_uaddr, optname, optname, optname_str, optname_str, optval_uaddr, optval_uaddr, out_fd, ovalue_uaddr, ovalue_uaddr, ovalue_uaddr, ovalue_uaddr, owner, owner, owner, owner, owner, owner, owner, p_uaddr, p_uaddr, p_uaddr, pages, parent_tid_uaddr, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, path_uaddr, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname, pathname_str, pathname_uaddr, pathname_uaddr, payload_uaddr, persona, pgid, pgoff, pgoffset, pid1, pid2, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pid, pipe0, pipe1, pkey, pkey, plen, policy, policy, policy, policy_str, policy_str, policy_str, policy_uaddr, prio, prot, prot, prot, prot, prot_str, prot_str, prot_str, prot_str, protocol, protocol, protocol_str, protocol_str, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, pt_regs*, ptr_uaddr, readfds, readfds, readfds_uaddr, readfds_uaddr, rem_uaddr, rem_uaddr, rem_uaddr, rem_uaddr, remote_iov_uaddr, remote_iov_uaddr, req_str, req_str, req_str, req_str, req_uaddr, req_uaddr, req_uaddr, req_uaddr, request, request, res_uaddr, resource, resource, resource, resource_str, resource_str, result_uaddr, result_uaddr, rgid, rgid, rgid, rgid, rgid_uaddr, ringid, riovcnt, riovcnt, rlim_str, rlim_uaddr, rlim_uaddr, ruid, ruid, ruid, ruid, ruid_uaddr, rusage_uaddr, rusage_uaddr, s, s, s, s, s, s, s, s, s, s, s, s, s, s, sched_attr_str, sched_attr_str, sched_attr_uaddr, sched_attr_uaddr, seconds, segments_uaddr, semflg, semflg_str, semid, semid, semid, semid, semid, semnum, semnum, serv_addr_uaddr, set, set_str, set_str, set_uaddr, set_uaddr, set_uaddr, set_uaddr, sgid, sgid, sgid_uaddr, shmaddr_uaddr, shmaddr_uaddr, shmaddr_uaddr, shmflg, shmflg, shmflg, shmflg_str, shmflg_str, shmflg_str, shmid, shmid, shmid, shmid, sig, sig, sig, sig, sig, sig, sig, sig, sig, sig, sig_name, sig_name, sig_str, sig_str, sig_str, sig_str, sig_str, sig_str, sig_str, sig_str, siginfo_str, sigmask, sigmask, sigmask, sigmask, sigmask_uaddr, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, sigsetsize, size, size, size, size, size, size, size, size, size, size, size, size, size, size, size, size, size, sockfd, sockfd, sockfd, sockfd, sockfd, sops_uaddr, sops_uaddr, sops_uaddr, source, special, special_str, stack_start, start, start, start, start, start, start, start, status, status, status, status_uaddr, status_uaddr, suid, suid, suid_uaddr, sv_uaddr, swapflags, swapflags_str, sz, sz, t_uaddr, t_uaddr, target, target, tcache_uaddr, tgid, tgid, tid, tidptr_uaddr, timeout, timeout, timeout, timeout, timeout, timeout_str, timeout_str, timeout_str, timeout_str, timeout_str, timeout_str, timeout_str, timeout_str, timeout_uaddr, timeout_uaddr, timeout_uaddr, timeout_uaddr, timeout_uaddr, timeout_uaddr, timeout_uaddr, timerid, timerid, timerid, timerid, timerid_uaddr, timestr, timeval, to_str, to_uaddr, tolen, tp_uaddr, tp_uaddr, tp_uaddr, tp_uaddr_str, tsp, tsp, tsp_str, tsp_str, tsp_str, tsp_str, tsp_uaddr, tsp_uaddr, turn_on, tv_str, tv_str, tv_uaddr, tv_uaddr, tv_uaddr, tvp_str, tvp_str, tvp_uaddr, tvp_uaddr, tvp_uaddr, tvp_uaddr_str, tvp_uaddr_str, tx_uaddr, tx_uaddr_str, type, type, type, type, type_str, type_str, type_str, type_str, type_uaddr, type_uaddr, tz_str, tz_str, tz_uaddr, tz_uaddr, tz_uaddr, u_attr_uaddr, u_info_str, u_info_str, u_info_uaddr, u_info_uaddr, u_mqstat_uaddr, u_name, u_name_uaddr, u_omqstat_uaddr, uaddr2_uaddr, uaddr2_uaddr, uaddr_af, uaddr_af, uaddr_ip, uaddr_ip, uaddr_ip_port, uaddr_ip_port, uaddr_ipv6_flowinfo, uaddr_ipv6_flowinfo, uaddr_ipv6_scope_id, uaddr_ipv6_scope_id, uargs, uargs, uargs_uaddr, ubuf_uaddr, ubuf_uaddr, ufds_uaddr, uid, uinfo_str, uinfo_str, uinfo_uaddr, uinfo_uaddr, uinfo_uaddr, umod_uaddr, uname, unshare_flags, unshare_flags_str, uoss_uaddr, usage_uaddr, uss_str, uss_uaddr, uthese_str, uthese_uaddr, utime_uaddr, utime_uaddr, uts_str, uts_uaddr, val3, val3, val, val, value_str, value_str, value_str, value_str, value_str, value_str, value_str, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, value_uaddr, vec_uaddr, vector_uaddr, vector_uaddr, vector_uaddr, vector_uaddr, vector_uaddr, vector_uaddr, vlen, vlen, vlen, wd, whence, whence, whence_str, whence_str, which, which, which, which, which, which, which, which, which, which_str, which_str, which_str, which_str, which_str, which_str, who, who, who, who, who, who_str, writefds, writefds, writefds_uaddr, writefds_uaddr


diff --git a/tutorial/1_Introduction.html b/tutorial/1_Introduction.html new file mode 100644 index 00000000..932b8cbd --- /dev/null +++ b/tutorial/1_Introduction.html @@ -0,0 +1,155 @@ + + + + + +1 Introduction + + + + + + + + + + + + + + + + + + + + + +

+1 Introduction +

+ +

+Systemtap is a tool that allows developers and administrators to write +and reuse simple scripts to deeply examine the activities of a live +Linux system. Data may be extracted, filtered, and summarized quickly +and safely, to enable diagnoses of complex performance or functional +problems. + +

+NOTE: This tutorial does not describe every feature available in +systemtap. Please see the individual stap manual pages for +the most up-to-date information. These may be available installed on +your system, or at http://sourceware.org/systemtap/man/. + +

+ +

+The essential idea behind a systemtap script is to name events, +and to give them handlers. Whenever a specified event occurs, +the Linux kernel runs the handler as if it were a quick subroutine, +then resumes. There are several kind of events, such as entering or +exiting a function, a timer expiring, or the entire systemtap session +starting or stopping. A handler is a series of script language +statements that specify the work to be done whenever the event occurs. +This work normally includes extracting data from the event context, +storing them into internal variables, or printing results. + +

+ +

+Systemtap works by translating the script to C, running the system C +compiler to create a kernel module from that. When the module is +loaded, it activates all the probed events by hooking into the kernel. +Then, as events occur on any processor, the compiled handlers run. +Eventually, the session stops, the hooks are disconnected, and the +module removed. This entire process is driven from a single +command-line program, stap. + +

+ +

+ + + +
Figure: +A systemtap smoke test.
\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
+\begin{verbatim}...
+
+ +

+This paper assumes that you have installed systemtap and its +prerequisite kernel development tools and debugging data, so that you +can run the scripts such as the simple one in +Figure [*]. Log on as root, or even better, +login as a user that is a member of stapdev group or as a +user authorized to sudo, before running systemtap. + +

+ +

+ + + +
Figure: +A taste of systemtap: a system-wide strace, just for +the open system call.
\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
+\begin{verbatim}...
+
+ +

+ +

+ + + + diff --git a/tutorial/2_Tracing.html b/tutorial/2_Tracing.html new file mode 100644 index 00000000..d46e3e02 --- /dev/null +++ b/tutorial/2_Tracing.html @@ -0,0 +1,328 @@ + + + + + +2 Tracing + + + + + + + + + + + + + + + + + + + + + +Subsections + + + +
+ +

+2 Tracing +

+ +

+The simplest kind of probe is simply to trace an event. + +This is the effect of inserting strategically located print +statements into a program. This is often the first step of problem +solving: explore by seeing a history of what has happened. + +

+This style of instrumentation is the simplest. It just asks systemtap +to print something at each event. To express this in the script +language, you need to say where to probe and what to print there. + +

+ +

+2.1 Where to probe +

+ +

+Systemtap supports a number of built-in events. The library of +scripts that comes with systemtap, each called a “tapset”, may +define additional ones defined in terms of the built-in family. See +the stapprobes man page for details on these and many other +probe point families. All these +events are named using a unified syntax with dot-separated +parameterized identifiers: + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
beginThe startup of the systemtap session.
endThe end of the systemtap session.
kernel.function("sys_open")The entry to the function named +sys_open in the kernel.
syscall.close.returnThe return from the close system +call.
module("ext3").statement(0xdeadbeef)The addressed instruction +in the ext3 filesystem driver.
timer.ms(200)A timer that fires every 200 milliseconds.
timer.profileA timer that fires periodically on every CPU.
perf.hw.cache_missesA particular number of CPU cache misses have occurred.
procfs("status").readA process trying to read a synthetic file.
process("a.out").statement("*@main.c:200")Line 200 of the a.out program.
+ +

+Let's say that you would like to trace all function entries and exits +in a source file, say net/socket.c in the kernel. The +kernel.function probe point lets you express that easily, since +systemtap examines the kernel's debugging information to relate object +code to source code. It works like a debugger: if you can name or +place it, you can probe it. Use +kernel.function("*@net/socket.c").call for the function +entries1, +and kernel.function("*@net/socket.c").return for matching exits. Note +the use of wildcards in the function name part, and the subsequent +@FILENAME part. You can also put wildcards into the file name, +and even add a colon (:) and a line number, if you want to +restrict the search that precisely. Since systemtap will put a +separate probe in every place that matches a probe point, a few +wildcards can expand to hundreds or thousands of probes, so be careful +what you ask for. + +

+Once you identify the probe points, the skeleton of the systemtap +script appears. The probe keyword introduces a probe point, or +a comma-separated list of them. The following { and } +braces enclose the handler for all listed probe points. +

+probe kernel.function("*@net/socket.c") { }
+probe kernel.function("*@net/socket.c").return { }
+
+You can run this script as is, though with empty handlers there will +be no output. Put the two lines into a new file. Run +stap -v FILE. Terminate it any time with ^C. (The +-v option tells systemtap to print more verbose messages during +its processing. Try the -h option to see more options.) + +

+ +

+2.2 What to print +

+ +

+Since you are interested in each function that was entered and exited, +a line should be printed for each, containing the function name. In +order to make that list easy to read, systemtap should indent the +lines so that functions called by other traced functions are nested +deeper. To tell each single process apart from any others that may be +running concurrently, systemtap should also print the process ID in +the line. + +

+Systemtap provides a variety of such contextual data, ready for +formatting. They usually appear as function calls within the handler, +like you already saw in Figure [*]. See the +function::* man pages for those functions and more defined in the +tapset library, but here's a sampling: + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
tid()The id of the current thread.
pid()The process (task group) id of the current thread.
uid()The id of the current user.
execname()The name of the current process.
cpu()The current cpu number.
gettimeofday_s()Number of seconds since epoch.
get_cycles()Snapshot of hardware cycle counter.
pp()A string describing the probe point being currently handled.
ppfunc()If known, the the function name in which this probe was + placed.
$$varsIf available, a pretty-printed listing of all local + variables in scope.
print_backtrace()If possible, print a kernel backtrace.
print_ubacktrace()If possible, print a user-space backtrace.
+ +

+The values returned may be strings or numbers. The print() +built-in function accepts either as its sole argument. Or, you can +use the C-style printf() built-in, whose formatting argument +may include %s for a string, %d for a number. +printf and other functions take comma-separated arguments. +Don't forget a "\n" at the end. There exist more printing / +formatting functions too. + +

+A particularly handy function in the tapset library is +thread_indent. Given an indentation delta parameter, it stores +internally an indentation counter for each thread (tid()), and +returns a string with some generic trace data plus an appropriate +number of indentation spaces. That generic data includes a timestamp +(number of microseconds since the initial indentation for the thread), a +process name and the thread id itself. It therefore gives an idea not +only about what functions were called, but who called them, and how +long they took. Figure [*] shows the finished +script. It lacks a call to the exit() function, so you need to +interrupt it with ^C when you want the tracing to stop. + +

+ +

+ + + +
Figure: +Tracing and timing functions in net/sockets.c.
\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
+\begin{verbatim}...
+
+ +

+ +

+2.3 Exercises +

+ +

+ +

    +
  1. Use the -L option to systemtap to list all the kernel + functions named with the word “nit” in them. + +

    +

  2. +
  3. Trace some system calls (use syscall.NAME and + .return probe points), with the same thread_indent + probe handler as in Figure [*]. Print parameters + using $$parms and $$return. Interpret the results. + +

    +

  4. +
  5. Change figure [*] by removing the .call + modifier from the first probe. Note how function entry and function + return now don't match anymore. This is because now the first probe + will match both normal function entry and inlined functions. Try + putting the .call modifier back and add another probe just for + probe kernel.function("*@net/socket.c").inline + What printf statement can you come up with in the probe handler + to show the inlined function entries nicely in between the .call + and .return thread indented output? + +

    +

  6. +
+ +

+ +

+ + + + diff --git a/tutorial/3_Analysis.html b/tutorial/3_Analysis.html new file mode 100644 index 00000000..516d49c0 --- /dev/null +++ b/tutorial/3_Analysis.html @@ -0,0 +1,587 @@ + + + + + +3 Analysis + + + + + + + + + + + + + + + + + + + + + +Subsections + + + +
+ +

+3 Analysis +

+ +

+Pages of generic tracing text may give you enough information for +exploring a system. With systemtap, it is possible to analyze that +data, to filter, aggregate, transform, and summarize it. Different +probes can work together to share data. Probe handlers can use a rich +set of control constructs to describe algorithms, with a syntax taken +roughly from awk. With these tools, systemtap scripts can +focus on a specific question and provide a compact response: no +grep needed. + +

+ +

+3.1 Basic constructs +

+ +

+Most systemtap scripts include conditionals, to limit tracing or other +logic to those processes or users or whatever of interest. The +syntax is simple: + +

+ + + + + + + + + + +
if (EXPR) STATEMENT [else STATEMENT]if/else statement
while (EXPR) STATEMENTwhile loop
for (A; B; C) STATEMENTfor loop
+ +

+Scripts may use break/continue as in C. +Probe handlers can return early using next as in awk. +Blocks of statements are enclosed in { and }. In +systemtap, the semicolon (;) is accepted as a null statement +rather than as a statement terminator, so is only rarely2necessary. Shell-style (#), C-style (/* */), and +C++-style (//) comments are all accepted. + +

+Expressions look like C or awk, and support the usual +operators, precedences, and numeric literals. Strings are treated as +atomic values rather than arrays of characters. String concatenation +is done with the dot ("a" . "b"). Some examples: + +

+ + + + + + + + + + + + + +
(uid() > 100)probably an ordinary user
(execname() == "sed")current process is sed
(cpu() == 0 && gettimeofday_s() > 1140498000)after Feb. 21, 2006, on CPU 0
"hello" . " " . "world"a string in three easy pieces
+ +

+Variables may be used as well. Just pick a name, assign to it, and +use it in expressions. They are automatically initialized and +declared. The type of each identifier – string vs. number – is +automatically inferred by systemtap from the kinds of operators and +literals used on it. Any inconsistencies will be reported as errors. +Conversion between string and number types is done through explicit +function calls. + +

+ +

+ + + + + + + + + + + + + +
foo = gettimeofday_s()foo is a number
bar = "/usr/bin/" . execname()bar is a string
c++c is a number
s = sprint(2345)s becomes the string "2345"
+ +

+By default, variables are local to the probe they are used in. That +is, they are initialized, used, and disposed of at each probe handler +invocation. To share variables between probes, declare them global +anywhere in the script. Because of possible concurrency (multiple +probe handlers running on different CPUs), each global variable used +by a probe is automatically read- or write-locked while the handler is +running. + +

+ +

+ + + +
Figure: +Experimentally measuring CONFIG_HZ.
\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
+\begin{verbatim}...
+
+ +

+ +

+3.2 Target variables +

+ +

+A class of special “target variables” allow access to the probe +point context. In a symbolic +debugger, when you're stopped at a breakpoint, you can print values +from the program's context. In systemtap scripts, for those probe +points that match with specific executable point (rather than an +asynchronous event like a timer), you can do the same. + +

+In addition, you can take their address (the & operator), +pretty-print structures (the $ and $$ suffix), +pretty-print multiple variables in scope (the $$vars and +related variables), or cast pointers to their types (the @cast +operator), or test their existence / resolvability (the +@defined operator). Read about these in the manual pages. + +

+To know which variables are likely to be available, you will need to +be familiar with the kernel source you are probing. In addition, you +will need to check that the compiler has not optimized those values +into unreachable nonexistence. You can use +stap -L PROBEPOINT to enumerate the variables available there. + +

+Let's say that you are trying to trace filesystem reads/writes to a +particular device/inode. From your knowledge of the kernel, you know +that two functions of interest could be vfs_read and +vfs_write. Each takes a struct file * argument, inside +there is either a struct dentry * or struct path * which +has a struct dentry *. +The struct dentry * contains a struct inode *, and +so on. +Systemtap allows limited dereferencing of such pointer chains. +Two functions, user_string and kernel_string, can copy +char * target variables into systemtap strings. +Figure [*] demonstrates one way to monitor a +particular file (identified by device number and inode number). +The script selects the appropriate variants of dev_nr +andinode_nr based on the kernel version. +This example also demonstrates passing numeric command-line arguments +($1 etc.) into scripts. + +

+ +

+ + + +
Figure: +Watching for reads/writes to a particular file.
\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
+\begin{verbatim}...
+
+ +

+ +

+3.3 Functions +

+ +

+Functions are conveniently packaged reusable software: it would be a +shame to have to duplicate a complex condition expression or logging +directive in every placed it's used. So, systemtap lets you define +functions of your own. Like global variables, systemtap functions may +be defined anywhere in the script. They may take any number of string +or numeric arguments (by value), and may return a single string or +number. The parameter types are inferred as for ordinary variables, +and must be consistent throughout the program. Local and global +script variables are available, but target variables are not. +That's because there is no specific debugging-level context associated +with a function. + +

+A function is defined with the keyword function followed by a +name. Then comes a comma-separated formal argument list (just a list +of variable names). The { }-enclosed body consists of any list +of statements, including expressions that call functions. Recursion +is possible, up to a nesting depth limit. Figure [*] +displays function syntax. + +

+ +

+ + + +
Figure: +Some functions of dubious utility.
\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
+\begin{verbatim}...
+
+ +

+ +

+3.4 Arrays +

+ +

+Often, probes will want to share data that cannot be represented as a +simple scalar value. Much data is naturally tabular in nature, +indexed by some tuple of thread numbers, processor ids, names, time, +and so on. Systemtap offers associative arrays for this purpose. +These arrays are implemented as hash tables with a maximum size that +is fixed at startup. Because they are too large to be created +dynamically for individual probes handler runs, they must be declared +as global. + +

+ + + + + + + +
global adeclare global scalar or array variable
global b[400]declare array, reserving space for up to 400 tuples
+ +

+The basic operations for arrays are setting and looking up elements. +These are expressed in awk syntax: the array name followed by +an opening [ bracket, a comma-separated list of index +expressions, and a closing ] bracket. Each index expression +may be string or numeric, as long as it is consistently typed +throughout the script. + +

+ + + + + + + + + + + + + +
foo [4,"hello"] ++ increment the named array slot
processusage [uid(),execname()] ++update a statistic
times [tid()] = get_cycles()set a timestamp reference point
delta = get_cycles() - times [tid()]compute a timestamp delta
+ +

+Array elements that have not been set may be fetched, and return +a dummy null value (zero or an empty string) as appropriate. However, +assigning a null value does not delete the element: an explicit +delete statement is required. Systemtap provides syntactic sugar +for these operations, in the form of explicit membership testing and +deletion. + +

+ + + + + + + + + + +
if ([4,"hello"] in foo) { }membership test
delete times[tid()]deletion of a single element
delete timesdeletion of all elements
+ +

+One final and important operation is iteration over arrays. This uses +the keyword foreach. Like awk, this creates a loop that +iterates over key tuples of an array, not just values. In +addition, the iteration may be sorted by any single key or the +value by adding an extra + or - code. + +

+The break and continue statements work inside +foreach loops, too. Since arrays can be large but probe +handlers must not run for long, it is a good idea to exit iteration +early if possible. The limit option in the foreach +expression is one way. For simplicity, systemtap forbids any modification of an array while it is being iterated using a +foreach. + +

+ + + + + + + + + + +
foreach (x = [a,b] in foo) { fuss_with(x) }simple loop in arbitrary sequence
foreach ([a,b] in foo+ limit 5) { }loop in increasing sequence of value, stop after 5
foreach ([a-,b] in foo) { }loop in decreasing sequence of first key
+ +

+ +

+3.5 Aggregates +

+ +

+When we said above that values can only be strings or numbers, we lied +a little. There is a third type: statistics aggregates, or aggregates +for short. Instances of this type are used to collect statistics on +numerical values, where it is important to accumulate new data quickly +(without exclusive locks) and in large volume (storing only +aggregated stream statistics). This type only makes sense for global +variables, and may be stored individually or as elements of an array. + +

+To add a value to a statistics aggregate, systemtap uses the special +operator <<<. Think of it like C++'s << output +streamer: the left hand side object accumulates the data sample given +on the right hand side. This operation is efficient (taking a shared +lock) because the aggregate values are kept separately on each +processor, and are only aggregated across processors on request. + +

+

+a <<< delta_timestamp
+writes[execname()] <<< count
+
+ +

+To read the aggregate value, special functions are available to +extract a selected statistical function. The aggregate value +cannot be read by simply naming it as if it were an ordinary +variable. These operations take an exclusive lock on the respective +globals, and should therefore be relatively rare. The simple ones +are: @min, @max, @count, @avg, and +@sum, and evaluate to a single number. In addition, histograms +of the data stream may be extracted using the @hist_log and +@hist_linear. These evaluate to a special sort of array that +may at present3 only be printed. + +

+ + + + + + + + + + + + + +
@avg(a)the average of all the values accumulated + into a
print(@hist_linear(a,0,100,10))print an “ascii art” linear + histogram of the same data stream, + bounds $0 \ldots 100$, bucket width is $10$
@count(writes["zsh"])the number of times “zsh” + ran the probe handler
print(@hist_log(writes["zsh"]))print an “ascii art” logarithmic + histogram of the same data stream
+ +

+ +

+ +
+3.6 Safety +

+ +

+The full expressivity of the scripting language raises good questions +of safety. Here is a set of Q&A: + +

+

+
+
What about infinite loops? recursion? A probe handler is +bounded in time. The C code generated by systemtap includes explicit +checks that limit the total number of statements executed to a small +number. A similar limit is imposed on the nesting depth of function +calls. When either limit is exceeded, that probe handler cleanly +aborts and signals an error. The systemtap session is normally +configured to abort as a whole at that time. + +

+

+
+
What about running out of memory? No dynamic memory +allocation whatsoever takes place during the execution of probe +handlers. Arrays, function contexts, and buffers are allocated during +initialization. These resources may run out during a session, and +generally result in errors. + +

+

+
+
What about locking? If multiple probes seek conflicting +locks on the same global variables, one or more of them will time out, +and be aborted. Such events are tallied as “skipped” probes, and a +count is displayed at session end. A configurable number of skipped +probes can trigger an abort of the session. + +

+

+
+
What about null pointers? division by zero? The C code +generated by systemtap translates potentially dangerous operations to +routines that check their arguments at run time. These signal errors +if they are invalid. Many arithmetic and string operations silently +overflow if the results exceed representation limits. + +

+

+
+
What about bugs in the translator? compiler? While bugs +in the translator, or the runtime layer certainly exist4, our test suite gives some +assurance. Plus, the entire generated C code may be inspected (try +the -p3 option). Compiler bugs are unlikely to be of any +greater concern for systemtap than for the kernel as a whole. In +other words, if it was reliable enough to build the kernel, it will +build the systemtap modules properly too. + +

+

+
+
Is that the whole truth? In practice, there are several +weak points in systemtap and the underlying kprobes system at the time +of writing. Putting probes indiscriminately into unusually sensitive +parts of the kernel (low level context switching, interrupt +dispatching) has reportedly caused crashes in the past. We are +fixing these bugs as they are found, and +constructing a probe point “blocklist”, but it is not complete. + +

+

+
+ +

+ +

+3.7 Exercises +

+ +
    +
  1. Alter the last probe in timer-jiffies.stp to reset the +counters and continue reporting instead of exiting. + +

    +

  2. +
  3. Write a script that, every ten seconds, displays the top five +most frequent users of open system call during that interval. + +

    +

  4. +
  5. Write a script that experimentally measures the speed of the +get_cycles() counter on each processor. + +

    +

  6. +
  7. Use any suitable probe point to get an approximate profile of +process CPU usage: which processes/users use how much of each CPU. +
  8. +
+ +

+ +

+ + + + diff --git a/tutorial/4_Tapsets.html b/tutorial/4_Tapsets.html new file mode 100644 index 00000000..756423c0 --- /dev/null +++ b/tutorial/4_Tapsets.html @@ -0,0 +1,398 @@ + + + + + +4 Tapsets + + + + + + + + + + + + + + + + + + + + + +Subsections + + + +
+ +

+4 Tapsets +

+ +

+After writing enough analysis scripts for yourself, you may become +known as an expert to your colleagues, who will want to use your +scripts. Systemtap makes it possible to share in a controlled manner; +to build libraries of scripts that build on each other. In fact, all +of the functions (pid(), etc.) used in the scripts above come +from tapset scripts like that. A “tapset” is just a script that +designed for reuse by installation into a special directory. + +

+ +

+4.1 Automatic selection +

+ +

+Systemtap attempts to resolve references to global symbols (probes, +functions, variables) that are not defined within the script by a +systematic search through the tapset library for scripts that define +those symbols. Tapset scripts are installed under the default +directory named /usr/share/systemtap/tapset. A user may give +additional directories with the -I DIR option. Systemtap +searches these directories for script (.stp) files. + +

+The search process includes subdirectories that are specialized for a +particular kernel version and/or architecture, and ones that name only +larger kernel families. Naturally, the search is ordered from +specific to general, as shown in Figure [*]. + +

+ +

+ + + +
Figure: +Listing the tapset search path.
\begin{center}\begin{Sbox}\begin{minipage}{6in}
+\begin{verbatim}...
+
+ +

+When a script file is found that defines one of the undefined +symbols, that entire file is added to the probing session being +analyzed. This search is repeated until no more references can become +satisfied. Systemtap signals an error if any are still unresolved. + +

+This mechanism enables several programming idioms. First, it allows +some global symbols to be defined only for applicable kernel +version/architecture pairs, and cause an error if their use is +attempted on an inapplicable host. Similarly, the same symbol can be +defined differently depending on kernels, in much the same way that +different kernel include/asm/ARCH/ files contain macros that +provide a porting layer. + +

+Another use is to separate the default parameters of a tapset routine +from its implementation. For example, consider a tapset that defines +code for relating elapsed time intervals to process scheduling +activities. The data collection code can be generic with respect to +which time unit (jiffies, wall-clock seconds, cycle counts) it can +use. It should have a default, but should not require additional +run-time checks to let a user choose another. +Figure [*] shows a way. + +

+ +

+ + + +
Figure: +Providing an overrideable default.
\begin{center}\begin{Sbox}\begin{minipage}{6in}
+\begin{verbatim}...
+
+ +

+A tapset that exports only data may be as useful as ones that +exports functions or probe point aliases (see below). Such global +data can be computed and kept up-to-date using probes internal to the +tapset. Any outside reference to the global variable would +incidentally activate all the required probes. + +

+ +

+4.2 Probe point aliases +

+ +

+Probe point aliases allow creation of +new probe points from existing ones. This is useful if the new probe +points are named to provide a higher level of abstraction. For +example, the system-calls tapset defines probe point aliases of the +form syscall.open etc., in terms of lower level ones like +kernel.function("sys_open"). Even if some future kernel +renames sys_open, the aliased name can remain valid. + +

+A probe point alias definition looks like a normal probe. Both start +with the keyword probe and have a probe handler statement block +at the end. But where a normal probe just lists its probe points, an +alias creates a new name using the assignment (=) operator. +Another probe that names the new probe point will create an actual +probe, with the handler of the alias prepended. + +

+This prepending behavior serves several purposes. It allows the alias +definition to “preprocess” the context of the probe before passing +control to the user-specified handler. This has several possible uses: + + + + + + + + + + + + + +
if ($flag1 != $flag2) nextskip probe unless given condition is met
name = "foo"supply probe-describing values
var = $varextract target variable to plain local variable
 
+ +

+Figure [*] demonstrates a probe point alias +definition as well as its use. It demonstrates how a single probe +point alias can expand to multiple probe points, even to other +aliases. It also includes probe point wildcarding. These functions +are designed to compose sensibly. + +

+ +

+ + + +
Figure: +Classified system call activity.
\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
+\begin{verbatim}...
+
+ +

+ +

+ +
+4.3 Embedded C +

+ +

+Sometimes, a tapset needs provide data values from the kernel that +cannot be extracted using ordinary target variables ($var). This may be because the values are in complicated data structures, may +require lock awareness, or are defined by layers of macros. Systemtap +provides an “escape hatch” to go beyond what the language can safely +offer. In certain contexts, you may embed plain raw C in tapsets, +exchanging power for the safety guarantees listed in +section [*]. End-user scripts may not include +embedded C code, unless systemtap is run with the -g (“guru” +mode) option. Tapset scripts get guru mode privileges automatically. + +

+Embedded C can be the body of a script function. Instead enclosing +the function body statements in { and }, use %{ +and %}. Any enclosed C code is literally transcribed into the +kernel module: it is up to you to make it safe and correct. In order +to take parameters and return a value, macros STAP_ARG_* and +STAP_RETVALUE are made available. The familiar data-gathering +functions pid(), execname(), and their neighbours are +all embedded C functions. Figure [*] contains +another example. + +

+Since systemtap cannot examine the C code to infer these types, an +optional5 annotation +syntax is available to assist the type inference process. Simply +suffix parameter names and/or the function name with :string or +:long to designate the string or numeric type. In addition, +the script may include a %{ %} block at the outermost +level of the script, in order to transcribe declarative code like +#include <linux/foo.h>. These enable the embedded C functions +to refer to general kernel types. + +

+There are a number of safety-related constraints that should be +observed by developers of embedded C code. + +

    +
  1. Do not dereference pointers that are not known or testable valid. +
  2. +
  3. Do not call any kernel routine that may cause a sleep or fault. +
  4. +
  5. Consider possible undesirable recursion, where your embedded C +function calls a routine that may be the subject of a probe. If that +probe handler calls your embedded C function, you may suffer infinite +regress. Similar problems may arise with respect to non-reentrant +locks. +
  6. +
  7. If locking of a data structure is necessary, use a +trylock type call to attempt to take the lock. If that fails, +give up, do not block. +
  8. +
+ +

+ +

+ + + +
Figure: +Embedded C function.
\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
+\begin{verbatim}...
+
+ +

+ +

+4.4 Naming conventions +

+ +

+Using the tapset search mechanism just described, potentially many +script files can become selected for inclusion in a single session. +This raises the problem of name collisions, where different tapsets +accidentally use the same names for functions/globals. This can +result in errors at translate or run time. + +

+To control this problem, systemtap tapset developers are advised to +follow naming conventions. Here is some of the guidance. + +

    +
  1. Pick a unique name for your tapset, and substitute it for +TAPSET below. +
  2. +
  3. Separate identifiers meant to be used by tapset users from +those that are internal implementation artifacts. +
  4. +
  5. Document the first set in the appropriate man pages. +
  6. +
  7. Prefix the names of external identifiers with TAPSET_ if +there is any likelihood of collision with other tapsets or end-user +scripts. +
  8. +
  9. Prefix any probe point aliases with an appropriate prefix. +
  10. +
  11. Prefix the names of internal identifiers with __TAPSET_. +
  12. +
+ +

+ +

+4.5 Exercises +

+ +

+ +

    +
  1. Write a tapset that implements deferred and “cancelable” +logging. Export a function that enqueues a text string (into some +private array), returning an id token. Include a timer-based probe +that periodically flushes the array to the standard log output. +Export another function that, if the entry was not already flushed, +allows a text string to be cancelled from the queue. +One might speculate that similar functions and tapsets exist. + +

    +

  2. +
  3. Create a “relative timestamp” tapset with functions return all +the same values as the ones in the timestamp tapset, except that they +are made relative to the start time of the script. + +

    +

  4. +
  5. Create a tapset that exports a global array that contains a +mapping of recently seen process ID numbers to process names. +Intercept key system calls (execve?) to update the list +incrementally. + +

    +

  6. +
  7. Send your tapset ideas to the mailing list! +
  8. +
+ +

+ +

+ + + + diff --git a/tutorial/5_Further_information.html b/tutorial/5_Further_information.html new file mode 100644 index 00000000..6e6ae3da --- /dev/null +++ b/tutorial/5_Further_information.html @@ -0,0 +1,136 @@ + + + + + +5 Further information + + + + + + + + + + + + + + + + + + + + + +

+5 Further information +

+ +

+For further information about systemtap, several sources are available. + +

+There are man pages: + +

+ + + + + + + + + + + + + + + + + + + + + + +
stapsystemtap program usage, language summary
stappathsyour systemtap installation paths
stapprobesprobes / probe aliases provided by built-in tapsets
stapexa few basic example scripts
tapset::*summaries of the probes and functions in each tapset
probe::*detailed descriptions of each probe
function::*detailed descriptions of each function
+ +

+There is much more documentation and sample scripts included. You +may find them under /usr/share/doc/systemtap*/. + +

+Then, there is the source code itself. Since systemtap is free +software, you should have available the entire source code. The +source files in the tapset/ directory are also packaged along +with the systemtap binary. Since systemtap reads these files rather +than their documentation, they are the most reliable way to see what's +inside all the tapsets. Use the -v (verbose) command line +option, several times if you like, to show inner workings. + +

+Finally, there is the project web site +(http://sourceware.org/systemtap/) with several articles, +an archived public mailing list for users and developers +(systemtap@sourceware.org), IRC channels, +and a live GIT source repository. Come join us! + +

+ +

+ +

+ + + + diff --git a/tutorial/A_Glossary.html b/tutorial/A_Glossary.html new file mode 100644 index 00000000..c1b613fb --- /dev/null +++ b/tutorial/A_Glossary.html @@ -0,0 +1,60 @@ + + + + + +A. Glossary + + + + + + + + + + + + + + + + + + + + + +

+A. Glossary +

+Sorry, no glossary available. + +

+


+ + + diff --git a/tutorial/About_this_document.html b/tutorial/About_this_document.html new file mode 100644 index 00000000..8b489543 --- /dev/null +++ b/tutorial/About_this_document.html @@ -0,0 +1,59 @@ + + + + + +About this document ... + + + + + + + + + + + + + + + + + + + +

+About this document ... +

+

+This document was generated using the +LaTeX2HTML translator Version 2020.2 (Released July 1, 2020) +

+The command line arguments were:
+ latex2html -noaddress -show_section_numbers -custom_titles -local_icons -split 4 tutorial.tex -dir /tmp/stapdocsZU6/htdocs/tutorial/ +

+The translation was initiated on 2021-03-01 +


+ + + diff --git a/tutorial/B_Errors.html b/tutorial/B_Errors.html new file mode 100644 index 00000000..b400839c --- /dev/null +++ b/tutorial/B_Errors.html @@ -0,0 +1,360 @@ + + + + + +B. Errors + + + + + + + + + + + + + + + + + + + + + +Subsections + + + +
+ +

+B. Errors +

+ +

+We explain some common systemtap error messages in this section. Most +error messages include line/character numbers with which one can +locate the precise location of error in the script code. There is +sometimes a subsequent or prior line that elaborates. + +

+error at: filename:line:column: details + +

+ +

+B..1 Parse errors +

+ +

+

+
+
parse error: expected foo, saw bar $\ldots$ +
+The script contained a grammar error. A different type of construct +was expected in the given context. + +

+

+
+
parse error: embedded code in unprivileged script +
+The +script contained unsafe constructs such as embedded C (section +[*]), but was run without the -g (guru mode) +option. Confirm that the constructs are used safely, then try +again with -g. +
+
+ +

+ +

+B..2 Type errors +

+ +

+

+
+
semantic error: type mismatch for identifier 'foo' +$\ldots$ string vs. long +
+In this case, the identifier foo +was previously inferred as a numeric type (“long”), but at the given +point is being used as a string. Similar messages appear if an array +index or function parameter slot is used with conflicting types. + +

+

+
+
semantic error: unresolved type for identifier 'foo' + +
+The identifier foo was used, for example in a print, +but without any operations that could assign it a type. Similar +messages may appear if a symbol is misspelled by a typo. + +

+

+
+
semantic error: Expecting symbol or array index expression + +
+Something other than an assignable lvalue was on the left hand sign +of an assignment. +
+
+ +

+ +

+B..3 Symbol errors +

+ +

+

+
+
while searching for arity N function, semantic error: +unresolved function call +
+The script calls a function with N +arguments that does not exist. The function may exist with different +arity. + +

+

+
+
semantic error: array locals not supported: $\ldots$ +
+An +array operation is present for which no matching global declaration +was found. Similar messages appear if an array is used with +inconsistent arities. + +

+

+
+
semantic error: variable 'foo' modified during 'foreach' +
+The array foo is being modified (being assigned to or deleted from) +within an active foreach loop. This invalid operation is also +detected within a function called from within the loop. +
+
+ +

+ +

+B..4 Probing errors +

+ +

+

+
+
semantic error: probe point mismatch at position N, +while resolving probe point foo +
+A probe point was named that +neither directly understood by systemtap, nor defined as an alias by a +tapset script. The divergence from the “tree” of probe point +namespace is at position N (starting with zero at left). + +

+

+
+
semantic error: no match for probe point, while resolving +probe point foo +
+A probe point cannot be resolved for any of +a variety of reasons. It may be a debuginfo-based probe point such as +kernel.function("foobar") where no foobar function was +found. This can occur if the script specifies a wildcard on function +names, or an invalid file name or source line number. + +

+

+
+
semantic error: unresolved target-symbol expression +
+A +target variable was referred to in a probe handler that was not +resolvable. Or, a target variable is not valid at all in a context +such as a script function. This variable may have been elided by an +optimizing compiler, or may not have a suitable type, or there might +just be an annoying bug somewhere. Try again with a slightly +different probe point (use statement() instead of +function()) to search for a more cooperative neighbour in the +same area. + +

+

+
+
semantic error: libdwfl failure $\ldots$ +
+There was a +problem processing the debugging information. It may simply be +missing, or may have some consistency / correctness problems. Later +compilers tend to produce better debugging information, so if you can +upgrade and recompile your kernel/application, it may help. + +

+

+
+
semantic error: cannot find foo debuginfo +
+Similarly, +suitable debugging information was not found. Check that your kernel +build/installation includes a matching version of debugging data. +
+
+ +

+ +

+B..5 Runtime errors +

+ +

+Usually, run-time errors cause a script to terminate. Some of these +may be caught with the try { ... } catch { ... } construct. + +

+

+
+
WARNING: Number of errors: N, skipped probes: M +
+Errors and/or skipped probes occurred during this run. + +

+

+
+
division by 0 +
+The script code performed an invalid +division. + +

+

+
+
aggregate element not found +
+An statistics extractor +function other than @count was invoked on an aggregate that has +not had any values accumulated yet. This is similar to a division by +zero. + +

+

+
+
aggregation overflow +
+An array containing aggregate +values contains too many distinct key tuples at this time. + +

+

+
+
MAXNESTING exceeded +
+Too many levels of function call nesting +were attempted. + +

+

+
+
MAXACTION exceeded +
+The probe handler attempted to execute +too many statements. + +

+

+
+
kernel/user string copy fault at 0xaddr +
+The probe handler attempted to copy a string from kernel or user space +at an invalid address. + +

+

+
+
pointer dereference fault +
+There was a fault encountered during a pointer dereference operation such +as a target variable evaluation. + +

+

+
+ +

+ +

+ + + + diff --git a/tutorial/C_Acknowledgments.html b/tutorial/C_Acknowledgments.html new file mode 100644 index 00000000..933e8286 --- /dev/null +++ b/tutorial/C_Acknowledgments.html @@ -0,0 +1,63 @@ + + + + + +C. Acknowledgments + + + + + + + + + + + + + + + + + + + + + +

+C. Acknowledgments +

+ +

+The author thanks Martin Hunt, Will Cohen, and Jim Keniston for +improvement advice for this paper. + +

+


+ + + diff --git a/tutorial/Contents.html b/tutorial/Contents.html new file mode 100644 index 00000000..4ca8b858 --- /dev/null +++ b/tutorial/Contents.html @@ -0,0 +1,127 @@ + + + + + +Contents + + + + + + + + + + + + + + + + + + + + +
+ +

+Contents +

+ + + + +

+


+ + + diff --git a/tutorial/contents.png b/tutorial/contents.png new file mode 100644 index 0000000000000000000000000000000000000000..0c752c66c876acaa2131d43788a7406f5979f746 GIT binary patch literal 278 zcmV+x0qOpUP)n_8B^;cn$O_g|3BG{!1Fj&^JiWpJWLeA$WK=+#U`gfB`ZJpvc?v;;IiS zWN}RlBW%jSmz3^2R|i?JM0KMv+9z;7ee@a!R<*>X0K7&N_)1@@}28%Z6=9 t-O~MHw|5t0`TuI#<-T9Me##YR_J!+(UN4n;@(5@ygQu&X%Q~loCIFb&G|K=0 literal 0 HcmV?d00001 diff --git a/tutorial/footnode.html b/tutorial/footnode.html new file mode 100644 index 00000000..9f432ea5 --- /dev/null +++ b/tutorial/footnode.html @@ -0,0 +1,214 @@ + + + + + +Footnotes + + + + + + + + + + + + + + + + +
+
... +entries1
+
Without the .call qualifier, inlined function +instances are also probed, but they have no corresponding .return. + +
.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+
+
+
... rarely2
+
Use +them between consecutive expressions that place unary +,- +or mixed pre/post ++, in an ambiguous manner. + +
.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+
+
+
... present3
+
We anticipate support for indexing and looping +using foreach shortly. + +
.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+
+
+
... exist4
+
See +http://sourceware.org/bugzilla + +
.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+
+
+
... +optional5
+
This is only necessary if the types cannot be +inferred from other sources, such as the call sites. + +
.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+.
+
+
+
+ + diff --git a/tutorial/images.log b/tutorial/images.log index 436f324e..d4142ab7 100644 --- a/tutorial/images.log +++ b/tutorial/images.log @@ -1,209 +1,208 @@ -This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019) (preloaded format=pdflatex 2020.3.29) 11 JUN 2020 11:23 +This is pdfTeX, Version 3.14159265-2.6-1.40.21 (TeX Live 2020) (preloaded format=pdflatex 2021.3.1) 1 MAR 2021 20:27 entering extended mode restricted \write18 enabled. %&-line parsing enabled. **./images.tex (./images.tex -LaTeX2e <2018-12-01> - +LaTeX2e <2020-02-02> patch level 5 +L3 programming layer <2020-04-06> (/usr/share/texlive/texmf-dist/tex/latex/base/article.cls -Document Class: article 2018/09/03 v1.4i Standard LaTeX document class +Document Class: article 2019/12/20 v1.4l Standard LaTeX document class (/usr/share/texlive/texmf-dist/tex/latex/base/size10.clo -File: size10.clo 2018/09/03 v1.4i Standard LaTeX file (size option) +File: size10.clo 2019/12/20 v1.4l Standard LaTeX file (size option) ) -\c@part=\count80 -\c@section=\count81 -\c@subsection=\count82 -\c@subsubsection=\count83 -\c@paragraph=\count84 -\c@subparagraph=\count85 -\c@figure=\count86 -\c@table=\count87 -\abovecaptionskip=\skip41 -\belowcaptionskip=\skip42 -\bibindent=\dimen102 +\c@part=\count167 +\c@section=\count168 +\c@subsection=\count169 +\c@subsubsection=\count170 +\c@paragraph=\count171 +\c@subparagraph=\count172 +\c@figure=\count173 +\c@table=\count174 +\abovecaptionskip=\skip47 +\belowcaptionskip=\skip48 +\bibindent=\dimen134 ) (/usr/share/texlive/texmf-dist/tex/latex/base/ifthen.sty Package: ifthen 2014/09/29 v1.1c Standard LaTeX ifthen package (DPC) ) (/usr/share/texmf/tex/latex/html/html.sty (/usr/share/texlive/texmf-dist/tex/ latex/hyperref/hyperref.sty -Package: hyperref 2019/06/12 v6.88h Hypertext links for LaTeX -(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-hyperref.sty -Package: hobsub-hyperref 2016/05/16 v1.14 Bundle oberdiek, subset hyperref (HO) - -(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/hobsub-generic.sty -Package: hobsub-generic 2016/05/16 v1.14 Bundle oberdiek, subset generic (HO) -Package: hobsub 2016/05/16 v1.14 Construct package bundles (HO) -Package: infwarerr 2016/05/16 v1.4 Providing info/warning/error messages (HO) -Package: ltxcmds 2016/05/16 v1.23 LaTeX kernel commands for general use (HO) -Package: ifluatex 2016/05/16 v1.4 Provides the ifluatex switch (HO) -Package ifluatex Info: LuaTeX not detected. -Package: ifvtex 2016/05/16 v1.6 Detect VTeX and its facilities (HO) -Package ifvtex Info: VTeX not detected. -Package: intcalc 2016/05/16 v1.2 Expandable calculations with integers (HO) -Package: ifpdf 2018/09/07 v3.3 Provides the ifpdf switch -Package: etexcmds 2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO) -Package: kvsetkeys 2016/05/16 v1.17 Key value parser (HO) -Package: kvdefinekeys 2016/05/16 v1.4 Define keys (HO) -Package: pdftexcmds 2018/09/10 v0.29 Utility functions of pdfTeX for LuaTeX (HO +Package: hyperref 2020/01/14 v7.00d Hypertext links for LaTeX +(/usr/share/texlive/texmf-dist/tex/generic/ltxcmds/ltxcmds.sty +Package: ltxcmds 2019/12/15 v1.24 LaTeX kernel commands for general use (HO) +) (/usr/share/texlive/texmf-dist/tex/generic/iftex/iftex.sty +Package: iftex 2020/03/06 v1.0d TeX engine tests +) (/usr/share/texlive/texmf-dist/tex/latex/pdftexcmds/pdftexcmds.sty +Package: pdftexcmds 2019/11/24 v0.31 Utility functions of pdfTeX for LuaTeX (HO +) +(/usr/share/texlive/texmf-dist/tex/generic/infwarerr/infwarerr.sty +Package: infwarerr 2019/12/03 v1.5 Providing info/warning/error messages (HO) ) -Package pdftexcmds Info: LuaTeX not detected. Package pdftexcmds Info: \pdf@primitive is available. Package pdftexcmds Info: \pdf@ifprimitive is available. Package pdftexcmds Info: \pdfdraftmode found. -Package: pdfescape 2016/05/16 v1.14 Implements pdfTeX's escape features (HO) -Package: bigintcalc 2016/05/16 v1.4 Expandable calculations on big integers (HO -) -Package: bitset 2016/05/16 v1.2 Handle bit-vector datatype (HO) -Package: uniquecounter 2016/05/16 v1.3 Provide unlimited unique counter (HO) -) -Package hobsub Info: Skipping package `hobsub' (already loaded). -Package: letltxmacro 2016/05/16 v1.5 Let assignment for LaTeX macros (HO) -Package: hopatch 2016/05/16 v1.3 Wrapper for package hooks (HO) -Package: xcolor-patch 2016/05/16 xcolor patch -Package: atveryend 2016/05/16 v1.9 Hooks at the very end of document (HO) -Package atveryend Info: \enddocument detected (standard20110627). -Package: atbegshi 2016/06/09 v1.18 At begin shipout hook (HO) -Package: refcount 2016/05/16 v3.5 Data extraction from label references (HO) -Package: hycolor 2016/05/16 v1.8 Color options for hyperref/bookmark (HO) ) (/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty Package: keyval 2014/10/28 v1.15 key=value parser (DPC) -\KV@toks@=\toks14 -) (/usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty -Package: ifxetex 2010/09/12 v0.6 Provides ifxetex conditional -) (/usr/share/texlive/texmf-dist/tex/latex/oberdiek/auxhook.sty -Package: auxhook 2016/05/16 v1.4 Hooks for auxiliary files (HO) -) (/usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty -Package: kvoptions 2016/05/16 v3.12 Key value format for package options (HO) +\KV@toks@=\toks15 +) (/usr/share/texlive/texmf-dist/tex/generic/kvsetkeys/kvsetkeys.sty +Package: kvsetkeys 2019/12/15 v1.18 Key value parser (HO) +) (/usr/share/texlive/texmf-dist/tex/generic/kvdefinekeys/kvdefinekeys.sty +Package: kvdefinekeys 2019-12-19 v1.6 Define keys (HO) +) (/usr/share/texlive/texmf-dist/tex/generic/pdfescape/pdfescape.sty +Package: pdfescape 2019/12/09 v1.15 Implements pdfTeX's escape features (HO) +) (/usr/share/texlive/texmf-dist/tex/latex/hycolor/hycolor.sty +Package: hycolor 2020-01-27 v1.10 Color options for hyperref/bookmark (HO) +) (/usr/share/texlive/texmf-dist/tex/latex/letltxmacro/letltxmacro.sty +Package: letltxmacro 2019/12/03 v1.6 Let assignment for LaTeX macros (HO) +) (/usr/share/texlive/texmf-dist/tex/latex/auxhook/auxhook.sty +Package: auxhook 2019-12-17 v1.6 Hooks for auxiliary files (HO) +) (/usr/share/texlive/texmf-dist/tex/latex/kvoptions/kvoptions.sty +Package: kvoptions 2019/11/29 v3.13 Key value format for package options (HO) ) -\@linkdim=\dimen103 -\Hy@linkcounter=\count88 -\Hy@pagecounter=\count89 +\@linkdim=\dimen135 +\Hy@linkcounter=\count175 +\Hy@pagecounter=\count176 (/usr/share/texlive/texmf-dist/tex/latex/hyperref/pd1enc.def -File: pd1enc.def 2019/06/12 v6.88h Hyperref: PDFDocEncoding definition (HO) +File: pd1enc.def 2020/01/14 v7.00d Hyperref: PDFDocEncoding definition (HO) Now handling font encoding PD1 ... ... no UTF-8 mapping file for font encoding PD1 +) (/usr/share/texlive/texmf-dist/tex/generic/intcalc/intcalc.sty +Package: intcalc 2019/12/15 v1.3 Expandable calculations with integers (HO) +) (/usr/share/texlive/texmf-dist/tex/generic/etexcmds/etexcmds.sty +Package: etexcmds 2019/12/15 v1.7 Avoid name clashes with e-TeX commands (HO) ) -\Hy@SavedSpaceFactor=\count90 -(/usr/share/texlive/texmf-dist/tex/latex/latexconfig/hyperref.cfg -File: hyperref.cfg 2002/06/06 v1.2 hyperref configuration of TeXLive -) -Package hyperref Info: Hyper figures OFF on input line 4550. -Package hyperref Info: Link nesting OFF on input line 4555. -Package hyperref Info: Hyper index ON on input line 4558. -Package hyperref Info: Plain pages OFF on input line 4565. -Package hyperref Info: Backreferencing OFF on input line 4570. +\Hy@SavedSpaceFactor=\count177 +Package hyperref Info: Hyper figures OFF on input line 4547. +Package hyperref Info: Link nesting OFF on input line 4552. +Package hyperref Info: Hyper index ON on input line 4555. +Package hyperref Info: Plain pages OFF on input line 4562. +Package hyperref Info: Backreferencing OFF on input line 4567. Package hyperref Info: Implicit mode ON; LaTeX internals redefined. -Package hyperref Info: Bookmarks ON on input line 4803. -\c@Hy@tempcnt=\count91 +Package hyperref Info: Bookmarks ON on input line 4800. +\c@Hy@tempcnt=\count178 (/usr/share/texlive/texmf-dist/tex/latex/url/url.sty -\Urlmuskip=\muskip10 +\Urlmuskip=\muskip16 Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc. ) -LaTeX Info: Redefining \url on input line 5156. -\XeTeXLinkMargin=\dimen104 -\Fld@menulength=\count92 -\Field@Width=\dimen105 -\Fld@charsize=\dimen106 -Package hyperref Info: Hyper figures OFF on input line 6411. -Package hyperref Info: Link nesting OFF on input line 6416. -Package hyperref Info: Hyper index ON on input line 6419. -Package hyperref Info: backreferencing OFF on input line 6426. -Package hyperref Info: Link coloring OFF on input line 6431. -Package hyperref Info: Link coloring with OCG OFF on input line 6436. -Package hyperref Info: PDF/A mode OFF on input line 6441. -LaTeX Info: Redefining \ref on input line 6481. -LaTeX Info: Redefining \pageref on input line 6485. -\Hy@abspage=\count93 -\c@Item=\count94 -\c@Hfootnote=\count95 +LaTeX Info: Redefining \url on input line 5159. +\XeTeXLinkMargin=\dimen136 +(/usr/share/texlive/texmf-dist/tex/generic/bitset/bitset.sty +Package: bitset 2019/12/09 v1.3 Handle bit-vector datatype (HO) +(/usr/share/texlive/texmf-dist/tex/generic/bigintcalc/bigintcalc.sty +Package: bigintcalc 2019/12/15 v1.5 Expandable calculations on big integers (HO +) +)) +\Fld@menulength=\count179 +\Field@Width=\dimen137 +\Fld@charsize=\dimen138 +Package hyperref Info: Hyper figures OFF on input line 6430. +Package hyperref Info: Link nesting OFF on input line 6435. +Package hyperref Info: Hyper index ON on input line 6438. +Package hyperref Info: backreferencing OFF on input line 6445. +Package hyperref Info: Link coloring OFF on input line 6450. +Package hyperref Info: Link coloring with OCG OFF on input line 6455. +Package hyperref Info: PDF/A mode OFF on input line 6460. +LaTeX Info: Redefining \ref on input line 6500. +LaTeX Info: Redefining \pageref on input line 6504. +(/usr/share/texlive/texmf-dist/tex/generic/atbegshi/atbegshi.sty +Package: atbegshi 2019/12/05 v1.19 At begin shipout hook (HO) +) +\Hy@abspage=\count180 +\c@Item=\count181 +\c@Hfootnote=\count182 ) Package hyperref Info: Driver: hpdftex. (/usr/share/texlive/texmf-dist/tex/latex/hyperref/hpdftex.def -File: hpdftex.def 2019/06/12 v6.88h Hyperref driver for pdfTeX -\Fld@listcount=\count96 -\c@bookmark@seq@number=\count97 -(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/rerunfilecheck.sty -Package: rerunfilecheck 2016/05/16 v1.8 Rerun checks for auxiliary files (HO) +File: hpdftex.def 2020/01/14 v7.00d Hyperref driver for pdfTeX +(/usr/share/texlive/texmf-dist/tex/latex/atveryend/atveryend.sty +Package: atveryend 2019-12-11 v1.11 Hooks at the very end of document (HO) +Package atveryend Info: \enddocument detected (standard20110627). +) +\Fld@listcount=\count183 +\c@bookmark@seq@number=\count184 +(/usr/share/texlive/texmf-dist/tex/latex/rerunfilecheck/rerunfilecheck.sty +Package: rerunfilecheck 2019/12/05 v1.9 Rerun checks for auxiliary files (HO) +(/usr/share/texlive/texmf-dist/tex/generic/uniquecounter/uniquecounter.sty +Package: uniquecounter 2019/12/15 v1.4 Provide unlimited unique counter (HO) +) Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2 -82. +86. ) -\Hy@SectionHShift=\skip43 +\Hy@SectionHShift=\skip49 ) Package: html 1999/07/19 v1.38 hypertext commands for latex2html (nd, hws, rrm) -\c@lpart=\count98 -\c@lchapter=\count99 -\c@chapter=\count100 -\c@lsection=\count101 -\c@lsubsection=\count102 -\c@lsubsubsection=\count103 -\c@lparagraph=\count104 -\c@lsubparagraph=\count105 -\c@lsubsubparagraph=\count106 +\c@lpart=\count185 +\c@lchapter=\count186 +\c@chapter=\count187 +\c@lsection=\count188 +\c@lsubsection=\count189 +\c@lsubsubsection=\count190 +\c@lparagraph=\count191 +\c@lsubparagraph=\count192 +\c@lsubsubparagraph=\count193 \ptrfile=\write3 ) (/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty -Package: graphicx 2017/06/01 v1.1a Enhanced LaTeX Graphics (DPC,SPQR) +Package: graphicx 2019/11/30 v1.2a Enhanced LaTeX Graphics (DPC,SPQR) (/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty -Package: graphics 2017/06/25 v1.2c Standard LaTeX Graphics (DPC,SPQR) +Package: graphics 2019/11/30 v1.4a Standard LaTeX Graphics (DPC,SPQR) (/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty Package: trig 2016/01/03 v1.10 sin cos tan (DPC) ) (/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration ) -Package graphics Info: Driver file: pdftex.def on input line 99. +Package graphics Info: Driver file: pdftex.def on input line 105. (/usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def File: pdftex.def 2018/01/08 v1.0l Graphics/color driver for pdftex )) -\Gin@req@height=\dimen107 -\Gin@req@width=\dimen108 +\Gin@req@height=\dimen139 +\Gin@req@width=\dimen140 ) (/usr/share/texlive/texmf-dist/tex/latex/fancyvrb/fancyvrb.sty -Package: fancyvrb 2019/01/15 -Style option: `fancyvrb' v3.2a <2019/01/15> (tvz) -\FV@CodeLineNo=\count107 -\FV@InFile=\read1 -\FV@TabBox=\box27 -\c@FancyVerbLine=\count108 -\FV@StepNumber=\count109 +Package: fancyvrb 2020/01/13 v3.5 verbatim text (tvz,hv) +\FV@CodeLineNo=\count194 +\FV@InFile=\read2 +\FV@TabBox=\box45 +\c@FancyVerbLine=\count195 +\FV@StepNumber=\count196 \FV@OutFile=\write4 ) (/usr/share/texlive/texmf-dist/tex/latex/listings/listings.sty -\lst@mode=\count110 -\lst@gtempboxa=\box28 -\lst@token=\toks15 -\lst@length=\count111 -\lst@currlwidth=\dimen109 -\lst@column=\count112 -\lst@pos=\count113 -\lst@lostspace=\dimen110 -\lst@width=\dimen111 -\lst@newlines=\count114 -\lst@lineno=\count115 -\lst@maxwidth=\dimen112 +\lst@mode=\count197 +\lst@gtempboxa=\box46 +\lst@token=\toks16 +\lst@length=\count198 +\lst@currlwidth=\dimen141 +\lst@column=\count199 +\lst@pos=\count266 +\lst@lostspace=\dimen142 +\lst@width=\dimen143 +\lst@newlines=\count267 +\lst@lineno=\count268 +\lst@maxwidth=\dimen144 (/usr/share/texlive/texmf-dist/tex/latex/listings/lstmisc.sty -File: lstmisc.sty 2019/02/27 1.8b (Carsten Heinz) -\c@lstnumber=\count116 -\lst@skipnumbers=\count117 -\lst@framebox=\box29 +File: lstmisc.sty 2020/03/24 1.8d (Carsten Heinz) +\c@lstnumber=\count269 +\lst@skipnumbers=\count270 +\lst@framebox=\box47 ) (/usr/share/texlive/texmf-dist/tex/latex/listings/listings.cfg -File: listings.cfg 2019/02/27 1.8b listings configuration +File: listings.cfg 2020/03/24 1.8d listings configuration )) -Package: listings 2019/02/27 1.8b (Carsten Heinz) +Package: listings 2020/03/24 1.8d (Carsten Heinz) (/usr/share/texlive/texmf-dist/tex/latex/preprint/fullpage.sty Package: fullpage 1999/02/23 1.1 (PWD) -\FP@margin=\skip44 +\FP@margin=\skip50 ) (/usr/share/texlive/texmf-dist/tex/latex/fancybox/fancybox.sty Package: fancybox 2010/05/15 1.4 Style option: `fancybox' v1.4 <2010/05/15> (tvz) -\@fancybox=\box30 -\shadowsize=\dimen113 -\@Sbox=\box31 -\do@VerbBox=\toks16 -\the@fancyput=\toks17 -\this@fancyput=\toks18 -\EndVerbatimTokens=\toks19 +\@fancybox=\box48 +\shadowsize=\dimen145 +\@Sbox=\box49 +\do@VerbBox=\toks17 +\the@fancyput=\toks18 +\this@fancyput=\toks19 +\EndVerbatimTokens=\toks20 \Verbatim@Outfile=\write5 -\Verbatim@Infile=\read2 +\Verbatim@Infile=\read3 ) (/usr/share/texlive/texmf-dist/tex/latex/psnfss/charter.sty -Package: charter 2005/04/12 PSNFSS-v9.2a (P.Dyballa) +Package: charter 2020/03/25 PSNFSS-v9.3 (P.Dyballa) ) \@glossaryfile=\write6 \openout6 = `images.glo'. @@ -224,31 +223,26 @@ Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1368. Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1369. Package xcolor Info: Model `Gray' substituted by `gray' on input line 1370. Package xcolor Info: Model `wave' substituted by `hsb' on input line 1371. -) (/usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty -Package: inputenc 2018/08/11 v1.3c Input encoding file -\inpenc@prehook=\toks20 -\inpenc@posthook=\toks21 ) -\sizebox=\box32 +\sizebox=\box50 \lthtmlwrite=\write7 (/usr/share/texlive/texmf-dist/tex/latex/preview/preview.sty Package: preview 2017/04/24 12.1 (AUCTeX/preview-latex) (/usr/share/texlive/texmf-dist/tex/latex/preview/prtightpage.def -\PreviewBorder=\dimen114 +\PreviewBorder=\dimen146 ) -\pr@snippet=\count118 -\pr@box=\box33 -\pr@output=\toks22 +\pr@snippet=\count271 +\pr@box=\box51 +\pr@output=\toks21 +) +\lthtmlPageBox=\box52 +\lthtmlCropMarkHeight=\dimen147 +\lthtmlCropMarkDepth=\dimen148 +(/usr/share/texlive/texmf-dist/tex/latex/l3backend/l3backend-pdfmode.def +File: l3backend-pdfmode.def 2020-03-12 L3 backend support: PDF mode +\l__kernel_color_stack_int=\count272 +\l__pdf_internal_box=\box53 ) -\lthtmlPageBox=\box34 -\lthtmlCropMarkHeight=\dimen115 -\lthtmlCropMarkDepth=\dimen116 -! Too many }'s. -l.91 ...preview}\copy\lthtmlPageBox\end{preview}}} - % -You've closed more groups than you opened. -Such booboos are generally harmless, so keep going. - LaTeX Warning: Unused global option(s): [compatible]. @@ -256,70 +250,67 @@ LaTeX Warning: Unused global option(s): (./images.aux) \openout1 = `images.aux'. -LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 122. -LaTeX Font Info: ... okay on input line 122. -LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 122. -LaTeX Font Info: ... okay on input line 122. -LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 122. -LaTeX Font Info: ... okay on input line 122. -LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 122. -LaTeX Font Info: ... okay on input line 122. -LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 122. -LaTeX Font Info: ... okay on input line 122. -LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 122. -LaTeX Font Info: ... okay on input line 122. -LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 122. -LaTeX Font Info: ... okay on input line 122. -LaTeX Font Info: Try loading font information for OT1+bch on input line 122. - +LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 123. +LaTeX Font Info: ... okay on input line 123. +LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 123. +LaTeX Font Info: ... okay on input line 123. +LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 123. +LaTeX Font Info: ... okay on input line 123. +LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 123. +LaTeX Font Info: ... okay on input line 123. +LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 123. +LaTeX Font Info: ... okay on input line 123. +LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 123. +LaTeX Font Info: ... okay on input line 123. +LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 123. +LaTeX Font Info: ... okay on input line 123. +LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 123. +LaTeX Font Info: ... okay on input line 123. +LaTeX Font Info: Trying to load font information for OT1+bch on input line 1 +23. (/usr/share/texlive/texmf-dist/tex/latex/psnfss/ot1bch.fd File: ot1bch.fd 2004/10/18 font definitions for OT1/bch. ) -\AtBeginShipoutBox=\box35 -Package hyperref Info: Link coloring OFF on input line 122. +\AtBeginShipoutBox=\box54 +Package hyperref Info: Link coloring OFF on input line 123. (/usr/share/texlive/texmf-dist/tex/latex/hyperref/nameref.sty -Package: nameref 2016/05/21 v2.44 Cross-referencing by name of section -(/usr/share/texlive/texmf-dist/tex/generic/oberdiek/gettitlestring.sty -Package: gettitlestring 2016/05/16 v1.5 Cleanup title references (HO) +Package: nameref 2019/09/16 v2.46 Cross-referencing by name of section +(/usr/share/texlive/texmf-dist/tex/latex/refcount/refcount.sty +Package: refcount 2019/12/15 v3.6 Data extraction from label references (HO) +) (/usr/share/texlive/texmf-dist/tex/generic/gettitlestring/gettitlestring.sty +Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO) ) -\c@section@level=\count119 +\c@section@level=\count273 ) -LaTeX Info: Redefining \ref on input line 122. -LaTeX Info: Redefining \pageref on input line 122. -LaTeX Info: Redefining \nameref on input line 122. +LaTeX Info: Redefining \ref on input line 123. +LaTeX Info: Redefining \pageref on input line 123. +LaTeX Info: Redefining \nameref on input line 123. (./images.out) (./images.out) \@outlinefile=\write8 \openout8 = `images.out'. (/usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii [Loading MPS to PDF converter (version 2006.09.02).] -\scratchcounter=\count120 -\scratchdimen=\dimen117 -\scratchbox=\box36 -\nofMPsegments=\count121 -\nofMParguments=\count122 -\everyMPshowfont=\toks23 -\MPscratchCnt=\count123 -\MPscratchDim=\dimen118 -\MPnumerator=\count124 -\makeMPintoPDFobject=\count125 -\everyMPtoPDFconversion=\toks24 -) (/usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty -Package: epstopdf-base 2016/05/15 v2.6 Base part for package epstopdf -(/usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty -Package: grfext 2016/05/16 v1.2 Manage graphics extensions (HO) -) +\scratchcounter=\count274 +\scratchdimen=\dimen149 +\scratchbox=\box55 +\nofMPsegments=\count275 +\nofMParguments=\count276 +\everyMPshowfont=\toks22 +\MPscratchCnt=\count277 +\MPscratchDim=\dimen150 +\MPnumerator=\count278 +\makeMPintoPDFobject=\count279 +\everyMPtoPDFconversion=\toks23 +) (/usr/share/texlive/texmf-dist/tex/latex/epstopdf-pkg/epstopdf-base.sty +Package: epstopdf-base 2020-01-24 v2.11 Base part for package epstopdf Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4 -38. -Package grfext Info: Graphics extension search list: -(grfext) [.pdf,.png,.jpg,.mps,.jpeg,.jbig2,.jb2,.PDF,.PNG,.JPG,.JPE -G,.JBIG2,.JB2,.eps] -(grfext) \AppendGraphicsExtensions on input line 456. +85. (/usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg File: epstopdf-sys.cfg 2010/07/13 v1.3 Configuration of (r)epstopdf for TeX Liv e )) -\c@lstlisting=\count126 +\c@lstlisting=\count280 Preview: Fontsize 10pt Preview: PDFoutput 1 @@ -345,48 +336,12 @@ latex2htmlLength oddsidemargin=0.0pt latex2htmlLength evensidemargin=0.0pt - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.162 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.162 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.162 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - Runaway argument? ! Paragraph ended before \@xverbatim was complete. \par -l.162 \lthtmldisplayZ +l.163 \lthtmldisplayZ I suspect you've forgotten a `}', causing me to apply this control sequence to too much text. How can we recover? @@ -395,7 +350,7 @@ My plan is to forget the whole thing and hope for the best. ! You can't use `macro parameter character #' in internal vertical mode. ...ge}{4.5in} \begin {verbatim} \par ## cat hello-world.stp probe... -l.162 \lthtmldisplayZ +l.163 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -405,7 +360,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! Undefined control sequence. ...probe begin { print ("hello world\n ") exit () } \par ## stap ... -l.162 \lthtmldisplayZ +l.163 \lthtmldisplayZ The control sequence at the end of the top line of your error message was never \def'ed. If you have @@ -414,14 +369,14 @@ spelling (e.g., `I\hbox'). Otherwise just continue, and I'll forget about whatever was undefined. -Underfull \hbox (badness 10000) in paragraph at lines 162--162 +Underfull \hbox (badness 10000) in paragraph at lines 163--163 []\OT1/cmtt/m/n/10 cat hello-world.stp probe begin print ("hello world") exit [] ! You can't use `macro parameter character #' in internal vertical mode. ...("hello world\n ") exit () } \par ## stap hello-world.stp hell... -l.162 \lthtmldisplayZ +l.163 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -429,81 +384,21 @@ If you're in the wrong mode, you might be able to return to the right one by typing `I}' or `I$' or `I\par'. LaTeX Font Info: External font `cmex10' loaded for size -(Font) <7> on input line 162. +(Font) <7> on input line 163. LaTeX Font Info: External font `cmex10' loaded for size -(Font) <5> on input line 162. - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.162 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.162 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - +(Font) <5> on input line 163. -:makeimage398:lthtmlCropMarkHeight:=28.48334pt +:makeimage398:lthtmlCropMarkHeight:=71.65712pt -:makeimage398:lthtmlCropMarkDepth:=17.48332pt:1ex:=4.81999pt +:makeimage398:lthtmlCropMarkDepth:=0.0pt:1ex:=4.81999pt Preview: Tightpage -32891 -32891 32891 32891 [1{/usr/share/texlive/texmf-dist/fonts/map/pdftex/updmap/pdftex.map}] - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.191 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.191 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.191 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - Runaway argument? ! Paragraph ended before \@xverbatim was complete. \par -l.191 \lthtmldisplayZ +l.192 \lthtmldisplayZ I suspect you've forgotten a `}', causing me to apply this control sequence to too much text. How can we recover? @@ -512,7 +407,7 @@ My plan is to forget the whole thing and hope for the best. ! You can't use `macro parameter character #' in internal vertical mode. ...ge}{4.5in} \begin {verbatim} \par ## cat strace-open.stp probe... -l.191 \lthtmldisplayZ +l.192 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -522,7 +417,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! You can't use `macro parameter character #' in horizontal mode. ...{ printf ("} probe timer.ms(4000) ## after 4 seconds { exit ()... -l.191 \lthtmldisplayZ +l.192 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -530,14 +425,14 @@ If you're in the wrong mode, you might be able to return to the right one by typing `I}' or `I$' or `I\par'. -Underfull \hbox (badness 10000) in paragraph at lines 191--191 +Underfull \hbox (badness 10000) in paragraph at lines 192--192 []\OT1/cmtt/m/n/10 cat strace-open.stp probe syscall.open printf (" probe [] ! You can't use `macro parameter character #' in internal vertical mode. ... after 4 seconds { exit () } \par ## stap strace-open.stp vmwa... -l.191 \lthtmldisplayZ +l.192 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -547,7 +442,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! Missing $ inserted. $ -l.191 \lthtmldisplayZ +l.192 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -559,7 +454,7 @@ See the LaTeX manual or LaTeX Companion for explanation. Type H for immediate help. ... -l.191 \lthtmldisplayZ +l.192 \lthtmldisplayZ Try typing to proceed. If that doesn't work, type X to quit. @@ -567,7 +462,7 @@ If that doesn't work, type X to quit. ! Missing $ inserted. $ -l.191 \lthtmldisplayZ +l.192 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -576,12 +471,12 @@ really didn't forget anything, try typing `2' now; then my insertion and my current dilemma will both disappear. -Underfull \hbox (badness 10000) in paragraph at lines 191--191 +Underfull \hbox (badness 10000) in paragraph at lines 192--192 []\OT1/cmtt/m/n/10 stap strace-open.stp vmware-guestd(2206) open [] -Overfull \hbox (1651.51022pt too wide) in paragraph at lines 191--191 +Overfull \hbox (1651.51022pt too wide) in paragraph at lines 192--192 \OT1/cmtt/m/n/10 ("/etc/redhat-release", O$[]\OML/cmm/m/it/10 DONLY\OT1/cmr/m/n /10 )\OML/cmm/m/it/10 hald\OT1/cmr/m/n/10 (2360)\OML/cmm/m/it/10 open\OT1/cmr/m /n/10 ("\OML/cmm/m/it/10 =dev=hdc\OT1/cmr/m/n/10 "\OML/cmm/m/it/10 ; O[]DONLY\O @@ -606,76 +501,16 @@ m/m/it/10 O[]ONBLOCK\OT1/cmr/m/n/10 )$ [] -! LaTeX Error: Something's wrong--perhaps a missing \item. +:makeimage407:lthtmlCropMarkHeight:=83.93489pt -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.191 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.191 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -:makeimage407:lthtmlCropMarkHeight:=34.62222pt - -:makeimage407:lthtmlCropMarkDepth:=23.62221pt:1ex:=4.81999pt +:makeimage407:lthtmlCropMarkDepth:=0.0pt:1ex:=4.81999pt [2] - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.234 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.234 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.234 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - Runaway argument? ! Paragraph ended before \@xverbatim was complete. \par -l.234 \lthtmldisplayZ +l.235 \lthtmldisplayZ I suspect you've forgotten a `}', causing me to apply this control sequence to too much text. How can we recover? @@ -684,7 +519,7 @@ My plan is to forget the whole thing and hope for the best. ! You can't use `macro parameter character #' in internal vertical mode. ...ge}{4.5in} \begin {verbatim} \par ## cat socket-trace.stp prob... -l.234 \lthtmldisplayZ +l.235 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -692,20 +527,20 @@ If you're in the wrong mode, you might be able to return to the right one by typing `I}' or `I$' or `I\par'. -Overfull \hbox (16.03203pt too wide) in paragraph at lines 234--234 +Overfull \hbox (16.03203pt too wide) in paragraph at lines 235--235 []\OT1/cmtt/m/n/10 cat socket-trace.stp probe kernel.function("*@net/socket.c") .call [] -Underfull \hbox (badness 10000) in paragraph at lines 234--234 +Underfull \hbox (badness 10000) in paragraph at lines 235--235 \OT1/cmtt/m/n/10 printf (" probe kernel.function("*@net/socket.c").return [] ! You can't use `macro parameter character #' in internal vertical mode. ...cket.c").return { printf ("} \par ## stap socket-trace.stp 0 h... -l.234 \lthtmldisplayZ +l.235 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -715,7 +550,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! Missing $ inserted. $ -l.234 \lthtmldisplayZ +l.235 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -723,7 +558,7 @@ you left one out. Proceed, with fingers crossed. ! Missing { inserted. _ -l.234 \lthtmldisplayZ +l.235 \lthtmldisplayZ A left brace was mandatory here, so I've put one in. You might want to delete and/or insert some corrections @@ -733,7 +568,7 @@ so that I will find a matching right brace soon. ! Missing { inserted. _ -l.234 \lthtmldisplayZ +l.235 \lthtmldisplayZ A left brace was mandatory here, so I've put one in. You might want to delete and/or insert some corrections @@ -747,7 +582,7 @@ See the LaTeX manual or LaTeX Companion for explanation. Type H for immediate help. ... -l.234 \lthtmldisplayZ +l.235 \lthtmldisplayZ Try typing to proceed. If that doesn't work, type X to quit. @@ -755,7 +590,7 @@ If that doesn't work, type X to quit. ! Missing } inserted. } -l.234 \lthtmldisplayZ +l.235 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -766,7 +601,7 @@ my insertion and my current dilemma will both disappear. ! Missing } inserted. } -l.234 \lthtmldisplayZ +l.235 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -777,7 +612,7 @@ my insertion and my current dilemma will both disappear. ! Missing $ inserted. $ -l.234 \lthtmldisplayZ +l.235 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -786,12 +621,12 @@ really didn't forget anything, try typing `2' now; then my insertion and my current dilemma will both disappear. -Underfull \hbox (badness 10000) in paragraph at lines 234--234 +Underfull \hbox (badness 10000) in paragraph at lines 235--235 []\OT1/cmtt/m/n/10 stap socket-trace.stp 0 hald(2632): -> [] -Underfull \hbox (badness 10000) in paragraph at lines 234--234 +Underfull \hbox (badness 10000) in paragraph at lines 235--235 \OT1/cmtt/m/n/10 sock$[]\OML/cmm/m/it/10 oll\OT1/cmr/m/n/10 28\OML/cmm/m/it/10 hald\OT1/cmr/m/n/10 (2632) :\OML/cmm/m/it/10 < \OMS/cmsy/m/n/10 ^^@\OML/cmm/m/i t/10 sock[]oll\OT1/cmr/m/n/10 [\OML/cmm/m/it/10 :::\OT1/cmr/m/n/10 ]0\OML/cmm/m @@ -799,88 +634,28 @@ t/10 sock[]oll\OT1/cmr/m/n/10 [\OML/cmm/m/it/10 :::\OT1/cmr/m/n/10 ]0\OML/cmm/m [] -Underfull \hbox (badness 10000) in paragraph at lines 234--234 +Underfull \hbox (badness 10000) in paragraph at lines 235--235 \OML/cmm/m/it/10 sys[]ocketcall\OT1/cmr/m/n/10 1159\OML/cmm/m/it/10 ftp\OT1/cmr /m/n/10 (7223) : \OMS/cmsy/m/n/10 ^^@ \OML/cmm/m/it/10 > sys[]ocket\OT1/cmr/m/n /10 2173\OML/cmm/m/it/10 ftp\OT1/cmr/m/n/10 (7223) : [] -Overfull \hbox (1018.95952pt too wide) in paragraph at lines 234--234 +Overfull \hbox (1018.95952pt too wide) in paragraph at lines 235--235 \OMS/cmsy/m/n/10 ^^@ \OML/cmm/m/it/10 >[]$ [] -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.234 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.234 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -:makeimage416:lthtmlCropMarkHeight:=54.30556pt +:makeimage416:lthtmlCropMarkHeight:=123.30157pt -:makeimage416:lthtmlCropMarkDepth:=43.30556pt:1ex:=4.81999pt +:makeimage416:lthtmlCropMarkDepth:=0.0pt:1ex:=4.81999pt [3] - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.262 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.262 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.262 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - Runaway argument? ! Paragraph ended before \@xverbatim was complete. \par -l.262 \lthtmldisplayZ +l.263 \lthtmldisplayZ I suspect you've forgotten a `}', causing me to apply this control sequence to too much text. How can we recover? @@ -889,7 +664,7 @@ My plan is to forget the whole thing and hope for the best. ! You can't use `macro parameter character #' in internal vertical mode. ...ge}{4.5in} \begin {verbatim} \par ## cat timer-jiffies.stp glo... -l.262 \lthtmldisplayZ +l.263 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -899,7 +674,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! Missing $ inserted. $ -l.262 \lthtmldisplayZ +l.263 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -907,13 +682,13 @@ you left one out. Proceed, with fingers crossed. ! Missing $ inserted. $ -l.262 \lthtmldisplayZ +l.263 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. -Overfull \hbox (769.14987pt too wide) in paragraph at lines 262--262 +Overfull \hbox (769.14987pt too wide) in paragraph at lines 263--263 []\OT1/cmtt/m/n/10 cat timer-jiffies.stp global count$[]\OML/cmm/m/it/10 iffies ; count[]sprobetimer:jiffies\OT1/cmr/m/n/10 (100)[]\OML/cmm/m/it/10 probetimer: ms\OT1/cmr/m/n/10 (100)[]\OML/cmm/m/it/10 probetimer:ms\OT1/cmr/m/n/10 (12345)[ @@ -923,7 +698,7 @@ ms\OT1/cmr/m/n/10 (100)[]\OML/cmm/m/it/10 probetimer:ms\OT1/cmr/m/n/10 (12345)[ ! You can't use `macro parameter character #' in internal vertical mode. ...ies, count_ms, hz) exit () } \par ## stap timer-jiffies.stp ji... -l.262 \lthtmldisplayZ +l.263 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -933,7 +708,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! Missing $ inserted. $ -l.262 \lthtmldisplayZ +l.263 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -945,7 +720,7 @@ See the LaTeX manual or LaTeX Companion for explanation. Type H for immediate help. ... -l.262 \lthtmldisplayZ +l.263 \lthtmldisplayZ Try typing to proceed. If that doesn't work, type X to quit. @@ -953,7 +728,7 @@ If that doesn't work, type X to quit. ! Missing $ inserted. $ -l.262 \lthtmldisplayZ +l.263 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -962,76 +737,16 @@ really didn't forget anything, try typing `2' now; then my insertion and my current dilemma will both disappear. -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.262 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.262 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -:makeimage425:lthtmlCropMarkHeight:=27.65pt +:makeimage425:lthtmlCropMarkHeight:=69.99045pt -:makeimage425:lthtmlCropMarkDepth:=16.65pt:1ex:=4.81999pt +:makeimage425:lthtmlCropMarkDepth:=0.0pt:1ex:=4.81999pt [4] - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.295 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.295 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.295 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - Runaway argument? ! Paragraph ended before \@xverbatim was complete. \par -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I suspect you've forgotten a `}', causing me to apply this control sequence to too much text. How can we recover? @@ -1040,7 +755,7 @@ My plan is to forget the whole thing and hope for the best. ! You can't use `macro parameter character #' in internal vertical mode. ...ge}{4.5in} \begin {verbatim} \par ## cat inode-watch.stp probe... -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -1050,7 +765,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! Missing $ inserted. $ -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1058,7 +773,7 @@ you left one out. Proceed, with fingers crossed. ! Missing } inserted. } -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -1069,7 +784,7 @@ my insertion and my current dilemma will both disappear. ! Missing $ inserted. $ -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1077,7 +792,7 @@ you left one out. Proceed, with fingers crossed. ! Missing } inserted. } -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -1088,7 +803,7 @@ my insertion and my current dilemma will both disappear. ! Missing $ inserted. $ -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1096,7 +811,7 @@ you left one out. Proceed, with fingers crossed. ! Missing $ inserted. $ -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1104,7 +819,7 @@ you left one out. Proceed, with fingers crossed. ! Extra }, or forgotten $. ...le->f_path->dentry->d_inode->i_ino } else { dev_nr = $file->f_... -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've deleted a group-closing symbol because it seems to be spurious, as in `$x}$'. But perhaps the } is legitimate and @@ -1115,7 +830,7 @@ deleted material, e.g., by typing `I$}'. ! Missing } inserted. } -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -1126,7 +841,7 @@ my insertion and my current dilemma will both disappear. ! Missing $ inserted. $ -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1134,7 +849,7 @@ you left one out. Proceed, with fingers crossed. ! Missing $ inserted. $ -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1142,7 +857,7 @@ you left one out. Proceed, with fingers crossed. ! Extra }, or forgotten $. ... = $file->f_dentry->d_inode->i_ino } \par if (dev_nr == ($1 <<... -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've deleted a group-closing symbol because it seems to be spurious, as in `$x}$'. But perhaps the } is legitimate and @@ -1153,25 +868,25 @@ deleted material, e.g., by typing `I$}'. ! Missing $ inserted. $ -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. -Underfull \hbox (badness 10000) in paragraph at lines 295--295 +Underfull \hbox (badness 10000) in paragraph at lines 296--296 []\OT1/cmtt/m/n/10 cat inode-watch.stp probe kernel.function [] -Underfull \hbox (badness 10000) in paragraph at lines 295--295 +Underfull \hbox (badness 10000) in paragraph at lines 296--296 \OML/cmm/m/it/10 dentry\OT1/cmr/m/n/10 ))[]$\OT1/cmtt/m/n/10 file->f$[]\OML/cmm /m/it/10 ath\OMS/cmsy/m/n/10 ^^@ \OML/cmm/m/it/10 > dentry\OMS/cmsy/m/n/10 ^^@ \OML/cmm/m/it/10 > d[]node\OMS/cmsy/m/n/10 ^^@ \OML/cmm/m/it/10 > [] -Underfull \hbox (badness 1320) in paragraph at lines 295--295 +Underfull \hbox (badness 1320) in paragraph at lines 296--296 \OML/cmm/m/it/10 i[]b\OMS/cmsy/m/n/10 ^^@ \OML/cmm/m/it/10 > s[]evinode[]r \OT1 /cmr/m/n/10 =$\OT1/cmtt/m/n/10 file->f$[]\OML/cmm/m/it/10 ath\OMS/cmsy/m/n/10 ^ ^@ \OML/cmm/m/it/10 > dentry\OMS/cmsy/m/n/10 ^^@ \OML/cmm/m/it/10 > d[]node\OMS @@ -1179,7 +894,7 @@ Underfull \hbox (badness 1320) in paragraph at lines 295--295 [] -Underfull \hbox (badness 10000) in paragraph at lines 295--295 +Underfull \hbox (badness 10000) in paragraph at lines 296--296 \OML/cmm/m/it/10 i[]noelse[]$\OT1/cmtt/m/n/10 file->f$[]\OML/cmm/m/it/10 entry\ OMS/cmsy/m/n/10 ^^@ \OML/cmm/m/it/10 > d[]node\OMS/cmsy/m/n/10 ^^@ \OML/cmm/m/i t/10 > i[]b\OMS/cmsy/m/n/10 ^^@ \OML/cmm/m/it/10 > @@ -1188,7 +903,7 @@ t/10 > i[]b\OMS/cmsy/m/n/10 ^^@ \OML/cmm/m/it/10 > ! Missing $ inserted. $ -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1196,7 +911,7 @@ you left one out. Proceed, with fingers crossed. ! You can't use `macro parameter character #' in math mode. ...par if (dev_nr == ($1 << 20 | $2) ## major/minor device && ino... -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -1206,7 +921,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! Misplaced alignment tab character &. ... << 20 | $2) ## major/minor device & & inode_nr == $3) printf (... -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I can't figure out why you would want to use a tab mark here. If you just want an ampersand, the remedy is @@ -1218,7 +933,7 @@ might try typing `S' now just to see what is salvageable. ! Misplaced alignment tab character &. ...<< 20 | $2) ## major/minor device && inode_nr == $3) printf ("... -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I can't figure out why you would want to use a tab mark here. If you just want an ampersand, the remedy is @@ -1230,7 +945,7 @@ might try typing `S' now just to see what is salvageable. ! Missing $ inserted. $ -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1238,7 +953,7 @@ you left one out. Proceed, with fingers crossed. ! Extra }, or forgotten $. ...pid(), ppfunc(), dev_nr, inode_nr) } ## stat -c "fd03 133099 #... -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've deleted a group-closing symbol because it seems to be spurious, as in `$x}$'. But perhaps the } is legitimate and @@ -1249,7 +964,7 @@ deleted material, e.g., by typing `I$}'. ! You can't use `macro parameter character #' in math mode. ...(), ppfunc(), dev_nr, inode_nr) } ## stat -c "fd03 133099 ## s... -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -1259,7 +974,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! You can't use `macro parameter character #' in math mode. ...ode_nr) } ## stat -c "fd03 133099 ## stap inode-watch.stp 0xfd... -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -1273,7 +988,7 @@ See the LaTeX manual or LaTeX Companion for explanation. Type H for immediate help. ... -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ Try typing to proceed. If that doesn't work, type X to quit. @@ -1281,7 +996,7 @@ If that doesn't work, type X to quit. ! Missing $ inserted. $ -l.295 \lthtmldisplayZ +l.296 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -1290,20 +1005,20 @@ really didn't forget anything, try typing `2' now; then my insertion and my current dilemma will both disappear. -Underfull \hbox (badness 10000) in paragraph at lines 295--295 +Underfull \hbox (badness 10000) in paragraph at lines 296--296 []\OT1/cmtt/m/n/10 if (dev$[]\OML/cmm/m/it/10 r \OT1/cmr/m/n/10 == ($\OT1/cmtt/ m/n/10 1 << 20 | $\OT1/cmr/m/n/10 2)\OML/cmm/m/it/10 major=minordeviceinode[]r \OT1/cmr/m/n/10 ==$\OT1/cmtt/m/n/10 3) [] -Underfull \hbox (badness 10000) in paragraph at lines 295--295 +Underfull \hbox (badness 10000) in paragraph at lines 296--296 \OT1/cmtt/m/n/10 printf ("execname(), pid(), ppfunc(), dev$[]\OML/cmm/m/it/10 r ; inode[]r\OT1/cmr/m/n/10 )\OML/cmm/m/it/10 stat \OMS/cmsy/m/n/10 ^^@ [] -Overfull \hbox (231.6228pt too wide) in paragraph at lines 295--295 +Overfull \hbox (231.6228pt too wide) in paragraph at lines 296--296 \OML/cmm/m/it/10 c\OT1/cmr/m/n/10 "\OML/cmm/m/it/10 fd\OT1/cmr/m/n/10 03133099\ OML/cmm/m/it/10 stapinode \OMS/cmsy/m/n/10 ^^@ \OML/cmm/m/it/10 watch:stp\OT1/c mr/m/n/10 0\OML/cmm/m/it/10 xfd\OT1/cmr/m/n/10 3133099\OML/cmm/m/it/10 more\OT1 @@ -1314,76 +1029,16 @@ m/it/10 xfd\OT1/cmr/m/n/10 00003\OML/cmm/m/it/10 =\OT1/cmr/m/n/10 133099$ [] -! LaTeX Error: Something's wrong--perhaps a missing \item. +:makeimage434:lthtmlCropMarkHeight:=143.10156pt -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.295 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.295 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -:makeimage434:lthtmlCropMarkHeight:=64.20555pt - -:makeimage434:lthtmlCropMarkDepth:=53.20555pt:1ex:=4.81999pt -[5] - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.324 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.324 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.324 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - -Runaway argument? - -! Paragraph ended before \@xverbatim was complete. - - \par -l.324 \lthtmldisplayZ +:makeimage434:lthtmlCropMarkDepth:=0.0pt:1ex:=4.81999pt +[5] +Runaway argument? + +! Paragraph ended before \@xverbatim was complete. + + \par +l.325 \lthtmldisplayZ I suspect you've forgotten a `}', causing me to apply this control sequence to too much text. How can we recover? @@ -1392,7 +1047,7 @@ My plan is to forget the whole thing and hope for the best. ! You can't use `macro parameter character #' in internal vertical mode. ...ge}{4.5in} \begin {verbatim} \par ## Red Hat convention; see /... -l.324 \lthtmldisplayZ +l.325 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -1402,7 +1057,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! Missing $ inserted. $ -l.324 \lthtmldisplayZ +l.325 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1410,20 +1065,20 @@ you left one out. Proceed, with fingers crossed. ! Missing $ inserted. $ -l.324 \lthtmldisplayZ +l.325 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. -Underfull \hbox (badness 10000) in paragraph at lines 324--324 +Underfull \hbox (badness 10000) in paragraph at lines 325--325 []\OT1/cmtt/m/n/10 Red Hat convention; see /etc/login.defs [] ! You can't use `macro parameter character #' in internal vertical mode. ...uid_p (u) { return u < 500 } \par ## kernel device number asse... -l.324 \lthtmldisplayZ +l.325 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -1431,14 +1086,14 @@ If you're in the wrong mode, you might be able to return to the right one by typing `I}' or `I$' or `I\par'. -Underfull \hbox (badness 10000) in paragraph at lines 324--324 +Underfull \hbox (badness 10000) in paragraph at lines 325--325 []\OT1/cmtt/m/n/10 kernel device number assembly macro function makedev [] ! Missing $ inserted. $ -l.324 \lthtmldisplayZ +l.325 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1446,7 +1101,7 @@ you left one out. Proceed, with fingers crossed. ! You can't use `macro parameter character #' in math mode. ...unction trace_common () { printf("## no return value necessary... -l.324 \lthtmldisplayZ +l.325 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -1456,44 +1111,20 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! Missing $ inserted. $ -l.324 \lthtmldisplayZ +l.325 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. -Underfull \hbox (badness 10000) in paragraph at lines 324--324 +Underfull \hbox (badness 10000) in paragraph at lines 325--325 []\OT1/cmtt/m/n/10 function fibonacci (i) if (i < 1) return 0 else if (i < 2) [] -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.324 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. +:makeimage443:lthtmlCropMarkHeight:=118.26819pt - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.324 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -:makeimage443:lthtmlCropMarkHeight:=51.78886pt - -:makeimage443:lthtmlCropMarkDepth:=40.78886pt:1ex:=4.81999pt +:makeimage443:lthtmlCropMarkDepth:=0.0pt:1ex:=4.81999pt [6] :tex2html_wrap_inline488:lthtmlCropMarkHeight:=12.44444pt @@ -1505,48 +1136,12 @@ If that doesn't work, type X to quit. :tex2html_wrap_inline490:lthtmlCropMarkDepth:=0.0pt:1ex:=4.81999pt [8] - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.363 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.363 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.363 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - Runaway argument? ! Paragraph ended before \@xverbatim was complete. \par -l.363 \lthtmldisplayZ +l.364 \lthtmldisplayZ I suspect you've forgotten a `}', causing me to apply this control sequence to too much text. How can we recover? @@ -1555,7 +1150,7 @@ My plan is to forget the whole thing and hope for the best. ! You can't use `macro parameter character #' in internal vertical mode. ...page}{6in} \begin {verbatim} \par ## stap -p1 -vv -e 'probe be... -l.363 \lthtmldisplayZ +l.364 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -1563,118 +1158,63 @@ If you're in the wrong mode, you might be able to return to the right one by typing `I}' or `I$' or `I\par'. -Underfull \hbox (badness 10000) in paragraph at lines 363--363 +Underfull \hbox (badness 10000) in paragraph at lines 364--364 []\OT1/cmtt/m/n/10 stap -p1 -vv -e 'probe begin ' > /dev/null Created temporar y directory [] -Underfull \hbox (badness 10000) in paragraph at lines 363--363 +Underfull \hbox (badness 10000) in paragraph at lines 364--364 \OT1/cmtt/m/n/10 "/tmp/staplnEBh7" Searched '/usr/share/systemtap/tapset/2.6.15 /i686/*.stp', [] -Underfull \hbox (badness 10000) in paragraph at lines 363--363 +Underfull \hbox (badness 10000) in paragraph at lines 364--364 \OT1/cmtt/m/n/10 match count 0 Searched '/usr/share/systemtap/tapset/2.6.15/*.s tp', match [] -Underfull \hbox (badness 10000) in paragraph at lines 363--363 +Underfull \hbox (badness 10000) in paragraph at lines 364--364 \OT1/cmtt/m/n/10 count 0 Searched '/usr/share/systemtap/tapset/2.6/i686/*.stp', match [] -Underfull \hbox (badness 10000) in paragraph at lines 363--363 +Underfull \hbox (badness 10000) in paragraph at lines 364--364 \OT1/cmtt/m/n/10 count 0 Searched '/usr/share/systemtap/tapset/2.6/*.stp', matc h count 0 [] -Underfull \hbox (badness 10000) in paragraph at lines 363--363 +Underfull \hbox (badness 10000) in paragraph at lines 364--364 \OT1/cmtt/m/n/10 Searched '/usr/share/systemtap/tapset/i686/*.stp', match count 1 Searched [] -Underfull \hbox (badness 10000) in paragraph at lines 363--363 +Underfull \hbox (badness 10000) in paragraph at lines 364--364 \OT1/cmtt/m/n/10 '/usr/share/systemtap/tapset/*.stp', match count 12 Pass 1: pa rsed user script and [] -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.363 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.363 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. +Overfull \hbox (91.41998pt too wide) in paragraph at lines 364--364 + [][] + [] -:makeimage452:lthtmlCropMarkHeight:=58.48334pt +:makeimage452:lthtmlCropMarkHeight:=131.65712pt -:makeimage452:lthtmlCropMarkDepth:=47.48332pt:1ex:=4.81999pt +:makeimage452:lthtmlCropMarkDepth:=0.0pt:1ex:=4.81999pt [9] - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.390 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.390 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.390 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - Runaway argument? ! Paragraph ended before \@xverbatim was complete. \par -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I suspect you've forgotten a `}', causing me to apply this control sequence to too much text. How can we recover? @@ -1683,7 +1223,7 @@ My plan is to forget the whole thing and hope for the best. ! You can't use `macro parameter character #' in internal vertical mode. ...page}{6in} \begin {verbatim} \par ## cat tapset/time-common.st... -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -1693,7 +1233,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! Missing $ inserted. $ -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1701,7 +1241,7 @@ you left one out. Proceed, with fingers crossed. ! Missing { inserted. _ -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ A left brace was mandatory here, so I've put one in. You might want to delete and/or insert some corrections @@ -1711,7 +1251,7 @@ so that I will find a matching right brace soon. ! Missing { inserted. _ -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ A left brace was mandatory here, so I've put one in. You might want to delete and/or insert some corrections @@ -1721,7 +1261,7 @@ so that I will find a matching right brace soon. ! Missing { inserted. _ -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ A left brace was mandatory here, so I've put one in. You might want to delete and/or insert some corrections @@ -1731,7 +1271,7 @@ so that I will find a matching right brace soon. ! Missing { inserted. _ -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ A left brace was mandatory here, so I've put one in. You might want to delete and/or insert some corrections @@ -1741,7 +1281,7 @@ so that I will find a matching right brace soon. ! Missing { inserted. _ -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ A left brace was mandatory here, so I've put one in. You might want to delete and/or insert some corrections @@ -1751,7 +1291,7 @@ so that I will find a matching right brace soon. ! Missing $ inserted. $ -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1759,7 +1299,7 @@ you left one out. Proceed, with fingers crossed. ! Missing } inserted. } -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -1770,7 +1310,7 @@ my insertion and my current dilemma will both disappear. ! Missing } inserted. } -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -1781,7 +1321,7 @@ my insertion and my current dilemma will both disappear. ! Missing } inserted. } -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -1792,7 +1332,7 @@ my insertion and my current dilemma will both disappear. ! Missing } inserted. } -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -1803,7 +1343,7 @@ my insertion and my current dilemma will both disappear. ! Missing } inserted. } -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -1812,14 +1352,14 @@ really didn't forget anything, try typing `2' now; then my insertion and my current dilemma will both disappear. -Overfull \hbox (177.98473pt too wide) in paragraph at lines 390--390 +Overfull \hbox (177.98473pt too wide) in paragraph at lines 391--391 []\OT1/cmtt/m/n/10 cat tapset/time-common.stp global $[]$ [] ! You can't use `macro parameter character #' in internal vertical mode. ...alue() - __time_vars[name] } \par ## cat tapset/time-default.s... -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -1829,7 +1369,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! Missing $ inserted. $ -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1837,7 +1377,7 @@ you left one out. Proceed, with fingers crossed. ! Missing { inserted. _ -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ A left brace was mandatory here, so I've put one in. You might want to delete and/or insert some corrections @@ -1847,7 +1387,7 @@ so that I will find a matching right brace soon. ! Missing $ inserted. $ -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1855,7 +1395,7 @@ you left one out. Proceed, with fingers crossed. ! Missing } inserted. } -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -1866,7 +1406,7 @@ my insertion and my current dilemma will both disappear. ! You can't use `macro parameter character #' in internal vertical mode. ... return gettimeofday_us () } \par ## cat tapset-time-user.stp ... -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -1876,7 +1416,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! Missing $ inserted. $ -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -1884,7 +1424,7 @@ you left one out. Proceed, with fingers crossed. ! Extra }, or forgotten $. ...=0; i<100; i++) ; printf ("exit () } function __time_value () ... -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've deleted a group-closing symbol because it seems to be spurious, as in `$x}$'. But perhaps the } is legitimate and @@ -1895,7 +1435,7 @@ deleted material, e.g., by typing `I$}'. ! Missing { inserted. _ -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ A left brace was mandatory here, so I've put one in. You might want to delete and/or insert some corrections @@ -1905,7 +1445,7 @@ so that I will find a matching right brace soon. ! You can't use `macro parameter character #' in math mode. ..._value () { return get_ticks () } ## override for greater prec... -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -1919,7 +1459,7 @@ See the LaTeX manual or LaTeX Companion for explanation. Type H for immediate help. ... -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ Try typing to proceed. If that doesn't work, type X to quit. @@ -1927,7 +1467,7 @@ If that doesn't work, type X to quit. ! Missing } inserted. } -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -1938,7 +1478,7 @@ my insertion and my current dilemma will both disappear. ! Missing $ inserted. $ -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -1949,7 +1489,7 @@ my insertion and my current dilemma will both disappear. ! Missing } inserted. } -l.390 \lthtmldisplayZ +l.391 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -1958,7 +1498,7 @@ really didn't forget anything, try typing `2' now; then my insertion and my current dilemma will both disappear. -Underfull \hbox (badness 5460) in paragraph at lines 390--390 +Underfull \hbox (badness 5460) in paragraph at lines 391--391 []\OT1/cmtt/m/n/10 cat tapset-time-user.stp probe begin timer$[]\OML/cmm/m/it/ 10 egin\OT1/cmr/m/n/10 ("\OML/cmm/m/it/10 bench\OT1/cmr/m/n/10 ")\OML/cmm/m/it/ 10 for\OT1/cmr/m/n/10 (\OML/cmm/m/it/10 i \OT1/cmr/m/n/10 = 0; \OML/cmm/m/it/10 @@ -1966,76 +1506,21 @@ Underfull \hbox (badness 5460) in paragraph at lines 390--390 [] -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.390 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.390 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. +Overfull \hbox (91.41998pt too wide) in paragraph at lines 391--391 + [][] + [] -:makeimage461:lthtmlCropMarkHeight:=37.39883pt +:makeimage461:lthtmlCropMarkHeight:=89.48813pt -:makeimage461:lthtmlCropMarkDepth:=26.39883pt:1ex:=4.81999pt +:makeimage461:lthtmlCropMarkDepth:=0.0pt:1ex:=4.81999pt [10] - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.436 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.436 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.436 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - Runaway argument? ! Paragraph ended before \@xverbatim was complete. \par -l.436 \lthtmldisplayZ +l.437 \lthtmldisplayZ I suspect you've forgotten a `}', causing me to apply this control sequence to too much text. How can we recover? @@ -2044,7 +1529,7 @@ My plan is to forget the whole thing and hope for the best. ! You can't use `macro parameter character #' in internal vertical mode. ...ge}{4.5in} \begin {verbatim} \par ## cat probe-alias.stp probe... -l.436 \lthtmldisplayZ +l.437 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -2052,29 +1537,29 @@ If you're in the wrong mode, you might be able to return to the right one by typing `I}' or `I$' or `I\par'. -Underfull \hbox (badness 10000) in paragraph at lines 436--436 +Underfull \hbox (badness 10000) in paragraph at lines 437--437 []\OT1/cmtt/m/n/10 cat probe-alias.stp probe syscallgroup.io = syscall.open, [] -Underfull \hbox (badness 10000) in paragraph at lines 436--436 +Underfull \hbox (badness 10000) in paragraph at lines 437--437 \OT1/cmtt/m/n/10 syscall.close, syscall.read, syscall.write groupname = "io" [] -Underfull \hbox (badness 10000) in paragraph at lines 436--436 +Underfull \hbox (badness 10000) in paragraph at lines 437--437 []\OT1/cmtt/m/n/10 probe syscallgroup.process = syscall.fork, syscall.execve [] -Underfull \hbox (badness 10000) in paragraph at lines 436--436 +Underfull \hbox (badness 10000) in paragraph at lines 437--437 []\OT1/cmtt/m/n/10 probe syscallgroup.* groups [execname() . "/" . groupname] [] ! You can't use `macro parameter character #' in internal vertical mode. ...rintf ("} \par global groups \par ## stap probe-alias.stp 05-w... -l.436 \lthtmldisplayZ +l.437 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -2084,7 +1569,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! Missing $ inserted. $ -l.436 \lthtmldisplayZ +l.437 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -2096,7 +1581,7 @@ See the LaTeX manual or LaTeX Companion for explanation. Type H for immediate help. ... -l.436 \lthtmldisplayZ +l.437 \lthtmldisplayZ Try typing to proceed. If that doesn't work, type X to quit. @@ -2104,7 +1589,7 @@ If that doesn't work, type X to quit. ! Missing $ inserted. $ -l.436 \lthtmldisplayZ +l.437 \lthtmldisplayZ I've inserted something that you may have forgotten. (See the above.) @@ -2113,76 +1598,16 @@ really didn't forget anything, try typing `2' now; then my insertion and my current dilemma will both disappear. -! LaTeX Error: Something's wrong--perhaps a missing \item. +:makeimage470:lthtmlCropMarkHeight:=191.10156pt -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.436 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.436 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -:makeimage470:lthtmlCropMarkHeight:=88.20555pt - -:makeimage470:lthtmlCropMarkDepth:=77.20555pt:1ex:=4.81999pt +:makeimage470:lthtmlCropMarkDepth:=0.0pt:1ex:=4.81999pt [11] - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.473 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.473 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.473 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - Runaway argument? ! Paragraph ended before \@xverbatim was complete. \par -l.473 \lthtmldisplayZ +l.474 \lthtmldisplayZ I suspect you've forgotten a `}', causing me to apply this control sequence to too much text. How can we recover? @@ -2191,7 +1616,7 @@ My plan is to forget the whole thing and hope for the best. ! You can't use `macro parameter character #' in internal vertical mode. ...ge}{4.5in} \begin {verbatim} \par ## cat embedded-C.stp ##incl... -l.473 \lthtmldisplayZ +l.474 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -2201,7 +1626,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! You can't use `macro parameter character #' in horizontal mode. ...batim} \par ## cat embedded-C.stp ## include ##... -l.473 \lthtmldisplayZ +l.474 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -2211,7 +1636,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! You can't use `macro parameter character #' in horizontal mode. ...d-C.stp ##include ## include \pa... -l.473 \lthtmldisplayZ +l.474 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -2219,14 +1644,14 @@ If you're in the wrong mode, you might be able to return to the right one by typing `I}' or `I$' or `I\par'. -Underfull \hbox (badness 10000) in paragraph at lines 473--473 +Underfull \hbox (badness 10000) in paragraph at lines 474--474 []\OT1/cmtt/m/n/10 cat embedded-C.stp include include [] ! Missing $ inserted. $ -l.473 \lthtmldisplayZ +l.474 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. @@ -2234,7 +1659,7 @@ you left one out. Proceed, with fingers crossed. ! Misplaced alignment tab character &. ...p, *_n; list_for_each_safe(_p, _n, & current->tasks) { p = list... -l.473 \lthtmldisplayZ +l.474 \lthtmldisplayZ I can't figure out why you would want to use a tab mark here. If you just want an ampersand, the remedy is @@ -2246,13 +1671,13 @@ might try typing `S' now just to see what is salvageable. ! Missing $ inserted. $ -l.473 \lthtmldisplayZ +l.474 \lthtmldisplayZ I've inserted a begin-math/end-math symbol since I think you left one out. Proceed, with fingers crossed. -Underfull \hbox (badness 1077) in paragraph at lines 473--473 +Underfull \hbox (badness 1077) in paragraph at lines 474--474 []\OT1/cmtt/m/n/10 function task$[]\OML/cmm/m/it/10 xecname[]y[]id \OT1/cmr/m/n /10 : \OML/cmm/m/it/10 string\OT1/cmr/m/n/10 (\OML/cmm/m/it/10 pid \OT1/cmr/m/n /10 : \OML/cmm/m/it/10 long\OT1/cmr/m/n/10 )\OML/cmm/m/it/10 structtask[]truct @@ -2260,7 +1685,7 @@ Underfull \hbox (badness 1077) in paragraph at lines 473--473 [] -Underfull \hbox (badness 10000) in paragraph at lines 473--473 +Underfull \hbox (badness 10000) in paragraph at lines 474--474 \OML/cmm/m/it/10 p\OT1/cmr/m/n/10 ; \OML/cmm/m/it/10 structlist[]ead\OMS/cmsy/m /n/10 ^^C[]\OML/cmm/m/it/10 ; \OMS/cmsy/m/n/10 ^^C[]\OT1/cmr/m/n/10 ; \OML/cmm/ m/it/10 list[]or[]ach[]afe\OT1/cmr/m/n/10 ([]\OML/cmm/m/it/10 ;[] ; current\OMS @@ -2268,14 +1693,14 @@ m/it/10 list[]or[]ach[]afe\OT1/cmr/m/n/10 ([]\OML/cmm/m/it/10 ;[] ; current\OMS [] -Overfull \hbox (282.90851pt too wide) in paragraph at lines 473--473 +Overfull \hbox (282.90851pt too wide) in paragraph at lines 474--474 \OML/cmm/m/it/10 tasks\OT1/cmr/m/n/10 )[][]$ [] ! You can't use `macro parameter character #' in internal vertical mode. ...obe begin { printf("exit() } \par ## pgrep emacs 16641 ## stap... -l.473 \lthtmldisplayZ +l.474 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -2285,7 +1710,7 @@ return to the right one by typing `I}' or `I$' or `I\par'. ! You can't use `macro parameter character #' in horizontal mode. ...xit() } \par ## pgrep emacs 16641 ## stap -g embedded-C.stp -x... -l.473 \lthtmldisplayZ +l.474 \lthtmldisplayZ Sorry, but I'm not programmed to handle this case; I'll just pretend that you didn't ask for it. @@ -2293,61 +1718,37 @@ If you're in the wrong mode, you might be able to return to the right one by typing `I}' or `I$' or `I\par'. -Underfull \hbox (badness 10000) in paragraph at lines 473--473 +Underfull \hbox (badness 10000) in paragraph at lines 474--474 []\OT1/cmtt/m/n/10 pgrep emacs 16641 stap -g embedded-C.stp -x 16641 [] -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.473 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -! LaTeX Error: Something's wrong--perhaps a missing \item. - -See the LaTeX manual or LaTeX Companion for explanation. -Type H for immediate help. - ... - -l.473 \lthtmldisplayZ - -Try typing to proceed. -If that doesn't work, type X to quit. - - -:makeimage479:lthtmlCropMarkHeight:=57.78886pt +:makeimage479:lthtmlCropMarkHeight:=130.26819pt -:makeimage479:lthtmlCropMarkDepth:=46.78886pt:1ex:=4.81999pt +:makeimage479:lthtmlCropMarkDepth:=0.0pt:1ex:=4.81999pt [12] :tex2html_wrap_inline492:lthtmlCropMarkHeight:=7.05554pt :tex2html_wrap_inline492:lthtmlCropMarkDepth:=0.0pt:1ex:=4.81999pt [13] -Package atveryend Info: Empty hook `BeforeClearDocument' on input line 499. -Package atveryend Info: Empty hook `AfterLastShipout' on input line 499. +Package atveryend Info: Empty hook `BeforeClearDocument' on input line 500. +Package atveryend Info: Empty hook `AfterLastShipout' on input line 500. (./images.aux) -Package atveryend Info: Executing hook `AtVeryEndDocument' on input line 499. -Package atveryend Info: Executing hook `AtEndAfterFileList' on input line 499. +Package atveryend Info: Executing hook `AtVeryEndDocument' on input line 500. +Package atveryend Info: Executing hook `AtEndAfterFileList' on input line 500. Package rerunfilecheck Info: File `images.out' has not changed. (rerunfilecheck) Checksum: D41D8CD98F00B204E9800998ECF8427E;0. -Package atveryend Info: Empty hook `AtVeryVeryEnd' on input line 499. +Package atveryend Info: Empty hook `AtVeryVeryEnd' on input line 500. ) Here is how much of TeX's memory you used: - 7798 strings out of 494553 - 112696 string characters out of 6177318 - 206256 words of memory out of 5000000 - 11412 multiletter control sequences out of 15000+600000 - 4402 words of font info for 16 fonts, out of 8000000 for 9000 + 7980 strings out of 482555 + 118431 string characters out of 5952146 + 382753 words of memory out of 5000000 + 23509 multiletter control sequences out of 15000+600000 + 533100 words of font info for 26 fonts, out of 8000000 for 9000 14 hyphenation exceptions out of 8191 - 35i,11n,35p,274b,336s stack positions out of 5000i,500n,10000p,200000b,80000s + 42i,10n,37p,281b,325s stack positions out of 5000i,500n,10000p,200000b,80000s -Output written on images.pdf (13 pages, 125088 bytes). +Output written on images.pdf (13 pages, 125162 bytes). PDF statistics: 88 PDF objects out of 1000 (max. 8388607) 62 compressed objects within 1 object stream diff --git a/tutorial/images.pdf b/tutorial/images.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d32c6f6587dfe390fce1746b0e0664dedc4c1371 GIT binary patch literal 125162 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ÊGobl;MxcOv+aHtwl{sX{=2KIBduJyj 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%0D&4$6>~~y#RH#qjPFL#)#5B>)a=QEcifH`G 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 -$key = q/10;MSF=1.6;AAT/; +$key = q/10;MSF=1;AAT/; $cached_env_img{$key} = q|$10$|; -$key = q/ldots;MSF=1.6;AAT/; +$key = q/ldots;MSF=1;AAT/; $cached_env_img{$key} = q|$\ldots$|; -$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim42#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1.6;AAT/; +$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim42#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1;AAT/; $cached_env_img{$key} = q|\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
-\begin{verbatim}...|; +\begin{verbatim}...">;WIDTH="1104" HEIGHT="134"|; -$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim43#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1.6;AAT/; +$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim43#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1;AAT/; $cached_env_img{$key} = q|\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
-\begin{verbatim}...|; +\begin{verbatim}...">;WIDTH="1133" HEIGHT="175"|; -$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim45#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1.6;AAT/; +$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim45#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1;AAT/; $cached_env_img{$key} = q|\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
-\begin{verbatim}...|; +\begin{verbatim}...">;WIDTH="1133" HEIGHT="306"|; -$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim46#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1.6;AAT/; +$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim46#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1;AAT/; $cached_env_img{$key} = q|\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
-\begin{verbatim}...|; +\begin{verbatim}...">;WIDTH="1133" HEIGHT="129"|; -$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim47#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1.6;AAT/; +$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim47#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1;AAT/; $cached_env_img{$key} = q|\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
-\begin{verbatim}...|; +\begin{verbatim}...">;WIDTH="1133" HEIGHT="371"|; -$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim48#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1.6;AAT/; +$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim48#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1;AAT/; $cached_env_img{$key} = q|\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
-\begin{verbatim}...|; +\begin{verbatim}...">;WIDTH="1104" HEIGHT="289"|; -$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim52#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1.6;AAT/; +$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim52#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1;AAT/; $cached_env_img{$key} = q|\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
-\begin{verbatim}...|; +\begin{verbatim}...">;WIDTH="1104" HEIGHT="531"|; -$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim53#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1.6;AAT/; +$key = q/{makeimage}center{Sbox{minipage{{4.5in}preform{verbatim53#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1;AAT/; $cached_env_img{$key} = q|\begin{center}\begin{Sbox}\begin{minipage}{4.5in}
-\begin{verbatim}...|; +\begin{verbatim}...">;WIDTH="1133" HEIGHT="329"|; -$key = q/{makeimage}center{Sbox{minipage{{6in}preform{verbatim50#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1.6;AAT/; +$key = q/{makeimage}center{Sbox{minipage{{6in}preform{verbatim50#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1;AAT/; $cached_env_img{$key} = q|\begin{center}\begin{Sbox}\begin{minipage}{6in}
-\begin{verbatim}...|; +\begin{verbatim}...">;WIDTH="1161" HEIGHT="333"|; -$key = q/{makeimage}center{Sbox{minipage{{6in}preform{verbatim51#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1.6;AAT/; +$key = q/{makeimage}center{Sbox{minipage{{6in}preform{verbatim51#preform{minipage{Sbox{{fbox{TheSbox}{center{{makeimage};MSF=1;AAT/; $cached_env_img{$key} = q|\begin{center}\begin{Sbox}\begin{minipage}{6in}
-\begin{verbatim}...|; +\begin{verbatim}...">;WIDTH="1161" HEIGHT="193"|; 1; diff --git a/tutorial/images.tex b/tutorial/images.tex index bf2ab756..cd44e23b 100644 --- a/tutorial/images.tex +++ b/tutorial/images.tex @@ -35,8 +35,6 @@ \usepackage{xcolor} -\usepackage[]{inputenc} - \makeatletter @@ -82,36 +80,39 @@ \newbox\lthtmlPageBox \newdimen\lthtmlCropMarkHeight \newdimen\lthtmlCropMarkDepth -\long\def\lthtmlTightVBox#1#2{% - \setbox\lthtmlPageBox\vbox{\hbox{\catcode`\_=8 #2}}% +\long\def\lthtmlTightVBoxA#1{\def\lthtmllabel{#1} + \setbox\lthtmlPageBox\vbox\bgroup\catcode`\_=8 }% +\long\def\lthtmlTightVBoxZ{\egroup \lthtmlCropMarkHeight=\ht\lthtmlPageBox \advance \lthtmlCropMarkHeight 6pt \lthtmlCropMarkDepth=\dp\lthtmlPageBox - \lthtmltypeout{^^J:#1:lthtmlCropMarkHeight:=\the\lthtmlCropMarkHeight}% - \lthtmltypeout{^^J:#1:lthtmlCropMarkDepth:=\the\lthtmlCropMarkDepth:1ex:=\the \dimexpr 1ex}% - \begin{preview}\copy\lthtmlPageBox\end{preview}}}% -\long\def\lthtmlTightFBox#1#2{% + \lthtmltypeout{^^J:\lthtmllabel:lthtmlCropMarkHeight:=\the\lthtmlCropMarkHeight}% + \lthtmltypeout{^^J:\lthtmllabel:lthtmlCropMarkDepth:=\the\lthtmlCropMarkDepth:1ex:=\the \dimexpr 1ex}% + \begin{preview}\copy\lthtmlPageBox\end{preview}}% +\long\def\lthtmlTightFBoxA#1{\def\lthtmllabel{#1}% \adjustnormalsize\setbox\lthtmlPageBox=\vbox\bgroup % \let\ifinner=\iffalse \let\)\liih@math % - {\catcode`\_=8 #2}% + \bgroup\catcode`\_=8 }% +\long\def\lthtmlTightFBoxZ{\egroup \@next\next\@currlist{}{\def\next{\voidb@x}}% \expandafter\box\next\egroup % \lthtmlCropMarkHeight=\ht\lthtmlPageBox \advance \lthtmlCropMarkHeight 6pt \lthtmlCropMarkDepth=\dp\lthtmlPageBox - \lthtmltypeout{^^J:#1:lthtmlCropMarkHeight:=\the\lthtmlCropMarkHeight}% - \lthtmltypeout{^^J:#1:lthtmlCropMarkDepth:=\the\lthtmlCropMarkDepth:1ex:=\the \dimexpr 1ex}% + \lthtmltypeout{^^J:\lthtmllabel:lthtmlCropMarkHeight:=\the\lthtmlCropMarkHeight}% + \lthtmltypeout{^^J:\lthtmllabel:lthtmlCropMarkDepth:=\the\lthtmlCropMarkDepth:1ex:=\the \dimexpr 1ex}% \begin{preview}\copy\lthtmlPageBox\end{preview}}% - \long\def\lthtmlinlinemathA#1#2\lthtmlindisplaymathZ{\lthtmlTightVBox{#1}{#2}} - \def\lthtmlinlineA#1#2\lthtmlinlineZ{\lthtmlTightVBox{#1}{#2}} - \long\def\lthtmldisplayA#1#2\lthtmldisplayZ{\lthtmlTightVBox{#1}{#2}} - \long\def\lthtmlinlinemathA#1#2\lthtmlindisplaymathZ{\lthtmlTightVBox{#1}{#2}} - \def\lthtmlinlineA#1#2\lthtmlinlineZ{\lthtmlTightVBox{#1}{#2}} - \long\def\lthtmldisplayA#1#2\lthtmldisplayZ{\lthtmlTightVBox{#1}{#2}} + \long\def\lthtmlinlinemathA#1#2\lthtmlindisplaymathZ{\lthtmlTightVBoxA{#1}{\hbox\bgroup#2\egroup}\lthtmlTightVBoxZ} + \def\lthtmlinlineA#1#2\lthtmlinlineZ{\lthtmlTightVBoxA{#1}{\hbox\bgroup#2\egroup}\lthtmlTightVBoxZ} + \long\def\lthtmldisplayA#1#2\lthtmldisplayZ{\lthtmlTightVBoxA{#1}{#2}\lthtmlTightVBoxZ} \long\def\lthtmldisplayB#1#2\lthtmldisplayZ{\\edef\preveqno{(\theequation)}% - \lthtmlTightVBox{#1}{\let\@eqnnum\relax#2}} - \long\def\lthtmlfigureA#1#2\lthtmlfigureZ{\let\@savefreelist\@freelist - \lthtmlTightFBox{#1}{#2}\global\let\@freelist\@savefreelist} - \long\def\lthtmlpictureA#1#2\lthtmlpictureZ{\let\@savefreelist\@freelist - \lthtmlTightVBox{#1}{#2}\global\let\@freelist\@savefreelist} + \lthtmlTightVBoxA{#1}{\let\@eqnnum\relax#2}\lthtmlTightVBoxZ} + \long\def\lthtmlfigureA#1{\let\@savefreelist\@freelist + \lthtmlTightFBoxA{#1}} + \long\def\lthtmlfigureZ{ + \lthtmlTightFBoxZ\global\let\@freelist\@savefreelist} + \long\def\lthtmlpictureA#1{\let\@savefreelist\@freelist + \lthtmlTightVBoxA{#1}} + \long\def\lthtmlpictureZ{ + \lthtmlTightVBoxZ\global\let\@freelist\@savefreelist} \def\lthtmlcheckvsize{\ifdim\ht\sizebox<\vsize \ifdim\wd\sizebox<\hsize\expandafter\hfill\fi \expandafter\vfill \else\expandafter\vss\fi}% diff --git a/tutorial/img1.png b/tutorial/img1.png new file mode 100644 index 0000000000000000000000000000000000000000..e06cfd61b3b894443120a94e2c846c8872522065 GIT binary patch literal 5528 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 literal 0 HcmV?d00001 diff --git a/tutorial/img10.png b/tutorial/img10.png new file mode 100644 index 0000000000000000000000000000000000000000..74e1c0825682c0383e39c60dc0f4868bf079936c GIT binary patch literal 17955 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 z zPHvjfe%@fn@zL^aA}8M=m|iJ=_!YMTJ6sZt%A*U~mde(ES5{ub+dhviARbFKo&Ti* zh#~1@N4=~X{C|XCj;w5(1t5?GD^+3l7=-TrNigXXrz?xHBryLSlq|8Eg~}A@*u|N8 zF1mdDgo6COuF}jxX2n+J8nT~|IKFx0{FZsm_#P0VdC9X2lR_eRUd^e}oF%kQ%{E!v znvcFDV5*+*f`An`@%A0R^tD0 zN++lxiH)-5Fd7y>h>`>%AP^=O&$-sJw(k_v$TxwF3AM{ot$-YU^EUJIlyxOg@=*UE zjGPVAMok0l-5-_rg_QIvcXbA~cTzBc`?s}o29g(?hXcoaB?1(U$sqCYf6J(;4Rl<4 z@U4nm=vs0{_4Q~BdSXuut}c)~ECk%+7>!lqV-BQ790q45mE1nzdFdc-VICXgri0M*aSHeE;AuXYGLwuMsUYAi9!^>lL%Wmnw`U0))sErgLo|k65D7jUiq{{&n>Pgzi95`m#z zE6b7~(mw|GGcHPDF)JC^$0*5ev?Dtd0aU24O*cGfeolM?v5j#S3CV(8uPeT&Wqu>Ma!YSV2m#6s&=@fWm36gPD+i%s*oVz07&+` zGC`14=q~%C8PyXaEN#d)Myc`5qo&+h908N_qeSK|C{xSx<9W|S!FiVtJ$R_)DO)nt z7w2$|9IG=hZC3dM6Bo=y#T5(lKQ~Yr%d4Ln*!Lzb%)__i>@Sm>1RSl}MDD!yCK|== z&kfQre5C({z0Cx~Y!4dA_IrMKKa^12h^Aux&NGtU0j8;&$)!1v<32BcC5da^z+QN( z?SaC}{^a|=uHydqT-=Ia)Uk2Ai2{Q=VA6KmHyYELPP)u6bLQ

#)(;YFBK{!`M(B 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 ZL#S5THwm(Ry&nMjNQ)}~YeWqL{~ww@uZ#cy literal 0 HcmV?d00001 diff --git a/tutorial/img12.png b/tutorial/img12.png new file mode 100644 index 0000000000000000000000000000000000000000..68e7a7221e88cfe1e697ef9eb694d13151b7ffb6 GIT binary patch literal 23910 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 literal 0 HcmV?d00001 diff --git a/tutorial/img2.png b/tutorial/img2.png new file mode 100644 index 0000000000000000000000000000000000000000..e55ae75b880d6525f30c857e56f0da8a58314a27 GIT binary patch literal 14473 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 SPX4`PC?};XStD*5^nU?tOTFI! literal 0 HcmV?d00001 diff --git a/tutorial/img3.png b/tutorial/img3.png new file mode 100644 index 0000000000000000000000000000000000000000..a01fff284a1cd2b6b9c172cab21ff8d60c9500b7 GIT binary patch literal 23093 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 ZaHCnYHQDmQ!B6Kw%S)?B)kvB`{|k}Iq%!~j literal 0 HcmV?d00001 diff --git a/tutorial/img4.png b/tutorial/img4.png new file mode 100644 index 0000000000000000000000000000000000000000..348b11b9265f8bc02466ce7d60cefc50c81c2c89 GIT binary patch literal 9334 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 JwNfU*{{?e>_PGE6 literal 0 HcmV?d00001 diff --git a/tutorial/img5.png b/tutorial/img5.png new file mode 100644 index 0000000000000000000000000000000000000000..1b1bca6f8f63b4d107c5eb7a23f0dedad160d5ae GIT binary patch literal 32769 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 Qyt2?#gTR!_mCOSF1D`PV9{>OV literal 0 HcmV?d00001 diff --git a/tutorial/img7.png b/tutorial/img7.png new file mode 100644 index 0000000000000000000000000000000000000000..e004740d73bfef809a8814c95a4d0f513e3a282b GIT binary patch literal 481 zcmV<70UrK|P)H`S+ z078Sf>+E2I;H*S?BD!epdW~UEmO-YMp zx>B3NOlXGFFyjuDth(APxgmY*3*wlXW>anI%!o&Vh#W%0Rhv8}as-80*wMUM6-2_# zP-$A+s0scXb5`4y(wx!e-gk(qIiY$R1dZJY4yfkmWM2Aj{KosA?n{ZH~E*^CMABxH*u>UQI%5VE*!b2i1UbSk~%$YOG%E~%AI#N?pLqbBFot=%0j1(0W1q1|=UaIc`YG5o0@(X5gcy=QV z$XVd&;us<^H8~;Sg4F>Armg9Dk_{RC?FswNiL&t(D(F@`R+_Q@Vq;_CLgtQAfg|Zt znS|QJAJoWAh_VZ`h!;HaWMb22VaFQ1NQ?b}3?2m>i$3!v{Am`bW7zs5;Irt18o>$G z0^iu1?rJkX|J=>U8OLccpZiFPNaN?3Pa9kwvMC(=_EFlS?&SZ6p8y literal 0 HcmV?d00001 diff --git a/tutorial/img9.png b/tutorial/img9.png new file mode 100644 index 0000000000000000000000000000000000000000..92dc3d3f65fca393db8b3e50d6384dd95ff853ad GIT binary patch literal 31553 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�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 + + + + +tutorial + + + + + + + + + + + + + + + + +

+ + +

+

+Systemtap tutorial + +
+ +

+ + +
+Frank Ch. Eigler <fche@redhat.com> +
+March 1, 2021 +
+ +

+


+ + + + + +

+ + + diff --git a/tutorial/labels.pl b/tutorial/labels.pl index fd8de624..94458e99 100644 --- a/tutorial/labels.pl +++ b/tutorial/labels.pl @@ -1,4 +1,4 @@ -# LaTeX2HTML 2018.3 (Released July 19, 2018) +# LaTeX2HTML 2020.2 (Released July 1, 2020) # Associate labels original text with physical files. @@ -53,7 +53,7 @@ $noresave{$key} = "$nosave"; 1; -# LaTeX2HTML 2018.3 (Released July 19, 2018) +# LaTeX2HTML 2020.2 (Released July 1, 2020) # labels from external_latex_labels array. diff --git a/tutorial/next.png b/tutorial/next.png new file mode 100644 index 0000000000000000000000000000000000000000..1628652aac7cff4b24228abd9908c320c6026a7c GIT binary patch literal 245 zcmVQ2aP`rsfsL)H8>rF50IrEKQ7U2mrM!9=R9*Dw1X+@W9RTx^a-#5T6$bi^4|h!q3s vo9V3RdqZP$JTTh9!JZ)`voZLAB<&|;0_>J~#QNZkD16SAR=O4@7anKqmC5&ngT;#rH1+qK z20S~FlZynq-MY=T{~%>KNs884sExd44P^%bf!zNDPxW#x21^f><@$FgzM-=J5cLN5 WGDyh~oC>l40000fWJ4@hJr9=)Yx5|PDs2VC9?nk002ovPDHLkV1i^Ya=-up literal 0 HcmV?d00001 diff --git a/tutorial/prev_g.png b/tutorial/prev_g.png new file mode 100644 index 0000000000000000000000000000000000000000..476d9568c900e2ada6c2019b67eeee166a5f1288 GIT binary patch literal 327 zcmV-N0l5B&P)18~ zIpil5yY|hg&aw;rvXQ~olHp&x|G5Aw{ug* Z|8M28X+2RX!WaMm002ovPDHLkV1gF^iYx#C literal 0 HcmV?d00001 diff --git a/tutorial/tutorial.css b/tutorial/tutorial.css new file mode 100644 index 00000000..19f0f1bc --- /dev/null +++ b/tutorial/tutorial.css @@ -0,0 +1,63 @@ +/* Century Schoolbook font is very similar to Computer Modern Math: cmmi */ +.MATH { font-family: "Century Schoolbook", serif; } +.MATH I { font-family: "Century Schoolbook", serif; font-style: italic } +.BOLDMATH { font-family: "Century Schoolbook", serif; font-weight: bold } +DIV.equation { text-align-last:justify; white-space: nowrap; } /* place eq nos */ +SPAN.MATH { display:inline-block; } /* don't stretch spaces inside eqn */ + +DIV.author_info { text-align:center; } /* latex centers author */ + +.LEFT { text-align:left; } +.CENTER { text-align:center; } +.CENTER > * { margin:auto; } +.RIGHT { text-align:right; } +.TOP { vertical-align:top; } +.MIDDLE { vertical-align:middle; } +.BOTTOM { vertical-align:bottom; } + +IMG.LEFT { float:left; } +IMG.RIGHT { float:right; } +IMG.TOP { vertical-align:top; } +IMG.BOTTOM { vertical-align:baseline; } + +CAPTION.BOTTOM { caption-side:bottom; } + +DL.COMPACT > dt { float:left; padding-right: 1em; } +BODY { width:95%; max-width:50em; margin:auto; } + +/* implement both fixed-size and relative sizes */ +.XTINY { font-size : xx-small } +.TINY { font-size : x-small } +.SCRIPTSIZE { font-size : smaller } +.FOOTNOTESIZE { font-size : small } +.SMALL { } +.LARGE { } +.XLARGE { font-size : large } +.XXLARGE { font-size : x-large } +.HUGE { font-size : larger } +.XHUGE { font-size : xx-large } + +/* heading styles */ +H1 { } +H2 { } +H3 { } +H4 { } +H5 { } + +/* mathematics styles */ +DIV.displaymath { text-align:center; } /* math displays */ +TD.eqno { width:0; } /* equation-number cells */ +TABLE.PAD TD { padding:3px; } +TABLE.BORDER TD { border:1px solid black; } +TABLE.equation { width:100%; } /* place eq nos at right/left edge */ +TABLE.equation > * { vertical-align:baseline; } +TABLE.equation TD { white-space:nowrap; } +TABLE { border-collapse: collapse; } + +/* document-specific styles come next */ +DIV.center { } +DIV.em { } +DIV.navigation { } +PRE.preform { } +SPAN.tt { } +SPAN.arabic { } diff --git a/tutorial/tutorial.html b/tutorial/tutorial.html new file mode 100644 index 00000000..c4d3a424 --- /dev/null +++ b/tutorial/tutorial.html @@ -0,0 +1,139 @@ + + + + + +tutorial + + + + + + + + + + + + + + + + + + + +

+

+Systemtap tutorial + +
+ +

+ + +
+Frank Ch. Eigler <fche@redhat.com> +
+March 1, 2021 +
+ +

+


+ + + + + +

+ + + diff --git a/tutorial/up.png b/tutorial/up.png new file mode 100644 index 0000000000000000000000000000000000000000..3937e168f44bc997766dbe3b9383bd1db44f094d GIT binary patch literal 211 zcmeAS@N?(olHy`uVBq!ia0vp^Qa~)h#LU3J`0lmo0U(Dbz$e6Y|Ni~?`T5VEKaXZ$ zILr2UCs3TRB*-tA!Qt7BG$5zc)5S5QVoq$YAz!lrkL&!DV=`*aVJGv=2TrrsUKR?`=XF~0x$5q(BOL&qeQ?X^G$FnGH9 KxvX2RVNRAoooEaAn8>@(e1sRI!V#<^f)p#-WVQt^!{}{R!<_yH~7!&%|GmpxjXG& eckJV{U(78Bbom$-1qlM(%HZkh=d#Wzp$Pz8Iac=o literal 0 HcmV?d00001 -- 2.43.5