As explained in my previous post there is some issues with uprobes and the recent kernel/oracle version.Based on the workaround that i described i will show in this short blog post how we can put a probe point on oracle function using Linux Perf. Sadly i haven’t figured out a way to do that using systemtap (Special thanks to Frank Ch. Eigler for his help)
Test oracle 12.2.0.1/OEL6/UEK4
This example is based on Luca Canali Post Linux Perf Probes for Oracle Tracing
Tracing pmon wait events using perf :
Error !
Applying the workaround (tracing the next instruction : kskthewt+2)
perf probe -x oracle kskthewt+2 timestamp=%di event=%si
Perfect it’s working !
Let’s inspect the code :
Good that’s what we wanted !
That’s it 😀
Do we know what broke uprobes support for NOPs? I would expect NOPs to be easier to handle… – That’s an idea for another blog post 🙂