0

I just installed systemtap. When I wanted to use stap -o to send the result into a file, I got an error: sudo stap -o a.out b.stp

semantic error: unable to find member 'mnt_parent' for struct vfsmount (alternatives: mnt_root mnt_sb mnt_flags): operator '->' at /usr/share/systemtap/tapset/dentry.stp:104:54
source:                         if (@cast(vfsmnt, "vfsmount")->mnt_parent == vfsmnt)

I am so confused with the language systemtap uses. Can any one help me?

Gonghan
  • 287
  • 2
  • 3
  • 10

1 Answers1

0

The error message seems pretty clear; the specified file is trying to reference a member of struct vfsmount (mnt_parent) that does not appear to exist.

That file is part of the systemtap distribution, so it's not your fault. What is the problem however is that your version of systemtap is too old for your kernel. (Newer kernels break APIs/ABIs all the time, so dependent tools must play catch-up periodically.) Please try a newer version.

fche
  • 2,641
  • 20
  • 28