Provided by: systemtap-doc_2.3-1ubuntu1.4_all bug

NAME

       error::pass2 - systemtap pass-2 errors

DESCRIPTION

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

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

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),    stapprobes(3stap),    probe::*(3stap),    error::dwarf(7stap),   error::inode-
       uprobes(7stap), warning::debuginfo(7stap), error::reporting(7stap)

                                                                              ERROR::PASS2(7stap)