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