A recent change in systemtap's uprobes kernel module lets it skip singlestepping after a breakpoint on easily emulated instructions, especially NOPs.
This is significant for SDT, our userspace static probes, because those probes always insert a NOP for systemtap to put a breakpoint on. Using our benchmark scripts/probe_perf/bench.sh, which measures the overhead of nearly 4 million probe hits, I get these elapsed times:
not instrumented: 0.86s
uprobes w/ sstep: 16.46s
uprobes w/o sstep: 7.81s
I believe this is a very worthwhile and easy change to backport into RHEL's systemtap package.
This commit is needed to fix powerpc:
We are also waiting on IBM folks to see if we need additions in powerpc's arch_validate_probed_insn().
uprobes_ppc: Don't emulate privileged MSR opcodes
(FLW) I believe it's good to go...
Red Hat Enterprise Linux 6.0 is now available and should resolve
the problem described in this bug report. This report is therefore being closed
with a resolution of CURRENTRELEASE. You may reopen this bug report if the
solution does not work for you.