1ERROR::PASS2(7stap)                                        ERROR::PASS2(7stap)
2
3
4

NAME

6       error::pass2 - systemtap pass-2 errors
7
8

DESCRIPTION

10       Errors  that  occur  during  pass 2 (elaboration) can have a variety of
11       causes.  Common types include:
12
13
14       unavailable probe point classes
15              Some types of probe points are only available on certain  system
16              versions, architectures, and configurations.  For example, user-
17              space process.*  probes may require utrace or uprobes capability
18              in the kernel for this architecture.
19
20
21       unavailable probe points
22              Some  probe  points  may  be  individually unavailable even when
23              their class is fine.  For example, kprobe.function("foobar") may
24              fail  if  function foobar does not exist in the kernel any more.
25              Debugging or symbol data may be absent for some types of  .func‐
26              tion  or .statement probes; check for availability of debuginfo.
27              Try the stap-prep program to download  possibly-required  debug‐
28              info.   Use  a  wildcard parameter such as stap -l 'kprobe.func‐
29              tion("*foo*")' to locate still-existing variants.  Use  !  or  ?
30              probe  point  suffixes  to  denote optional / preferred-alterna‐
31              tives, to let the working parts of a script continue.
32
33
34       typos  There might be a spelling error in the probe point  name  ("syc‐
35              sall"  vs.  "syscall").  Wildcard probes may not find a match at
36              all in the tapsets.  Recheck the names using stap -l PROBEPOINT.
37              Another  common mistake is to use the .  operator instead of the
38              correct -> when  dereferencing  context  variable  subfields  or
39              pointers:   $foo->bar->baz   even   if   in   C  one  would  say
40              foo->bar.baz.
41
42
43       unavailable context variables
44              Systemtap scripts often wish to refer to variables from the con‐
45              text  of  the  probed  programs using $variable notation.  These
46              variables may not always be available, depending on versions  of
47              the  compiler,  debugging/optimization flags used, architecture,
48              etc.  Use stap -L PROBEPOINT to list available context variables
49              for given probes.  Use the @defined() expression to test for the
50              resolvability of a context variable expression.  Consider  using
51              the  stap  --skip-badvars option to silently replace misbehaving
52              context variable expressions with zero.
53
54
55       module cache inconsistencies
56              Occasionally,  the  systemtap   module   cache   ($HOME/.system‐
57              tap/cache)  might contain obsolete information from a prior sys‐
58              tem configuration/version, and produce false results as  system‐
59              tap attempts to reuse it.  Retrying with stap --poison-cache ...
60              forces new information to be generated.  Note: this  should  not
61              happen and likely represents a systemtap bug.  Please report it.
62
63

GATHERING MORE INFORMATION

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

SEE ALSO

70       stap(1),
71       stap-prep(1),
72       stapprobes(3stap),
73       probe::*(3stap),
74       error::dwarf(7stap),
75       error::inode-uprobes(7stap),
76       warning::debuginfo(7stap),
77       error::reporting(7stap)
78
79
80
81                                                           ERROR::PASS2(7stap)
Impressum