Workaround for Linux Perf Probes issue for Oracle Tracing

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 :

Capture 01

Error !

Applying the workaround (tracing the next instruction : kskthewt+2)

perf probe -x oracle  kskthewt+2 timestamp=%di event=%si

Capture 02

Perfect it’s working !

Let’s inspect the code :

Capture 03

Good that’s what we wanted !

That’s it 😀

One thought on “Workaround for Linux Perf Probes issue for Oracle Tracing

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

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s