This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: How to understand "?" in probe alias?


Nan Xiao <xiaonan830818@gmail.com> writes:

> [...]
> probe vm.pagefault = kernel.function("__handle_mm_fault@mm/memory.c") ?,
>                      kernel.function("handle_mm_fault@mm/memory.c") ?
> [...]  How to understand "?" in probe alias? After checking Language
> reference [...] I can't find the explanations of it.

You're right; that particular book doesn't seem to mention it.
But [man stap] refers to [man stapprobes], which includes:


    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.


- FChE


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]