Some test cases assume presence of uretprobes_p, inferred from uprobes_p.
With this new predicate, they can check for uretprobes support proper.
}
+proc uretprobes_p {} {
+ set path "/proc/kallsyms"
+ if {! [uprobes_p]} { return 0 }
+ if {! [catch {exec grep -q uretprobe $path} dummy]} { return 1 }
+ if {! [catch {exec grep -q utrace_attach $path} dummy]} { return 1 }
+ return 0
+}
+
+
+
proc dyninst_p {} {
global env
process(string).library(string).function(number).return -
process(string).library(string).function(string).return
{
- setup_kfail UPROBES *-*-*
+ if {![uretprobes_p]} { setup_kfail URETPROBES *-*-* }
}
process(number).insn -
process(number).insn.block -
process(string).insn -
process(string).insn.block
{
- setup_kfail KERNEL *-*-*
+ setup_kfail UTRACE *-*-*
}
process(string).library(string).plt.statement(number) -
process(string).library(string).plt(string).statement(number) -
process(string).library(string).function(number).return -
process(string).library(string).function(string).return
{
- setup_kfail UPROBES *-*-*
+ if {![uretprobes_p]} { setup_kfail URETPROBES *-*-* }
}
}